48.3 MB
/srv/reproducible-results/rbuild-debian/r-b-build.DNVKvaht/b1/erlang_27.0.1+dfsg-3_i386.changes vs.
/srv/reproducible-results/rbuild-debian/r-b-build.DNVKvaht/b2/erlang_27.0.1+dfsg-3_i386.changes
8.66 KB
Files
    
Offset 1, 50 lines modifiedOffset 1, 50 lines modified
  
1 ·1753969e4129408d0fe422ae31d7f38c·21100·debug·optional·erlang-asn1-dbgsym_27.0.1+dfsg-3_i386.deb1 ·1753969e4129408d0fe422ae31d7f38c·21100·debug·optional·erlang-asn1-dbgsym_27.0.1+dfsg-3_i386.deb
2 ·d96043e89f3a329d5e490fd7de6fc3f7·891968·interpreters·optional·erlang-asn1_27.0.1+dfsg-3_i386.deb2 ·4eaf5646b839bd9a39ce8f7b83892d15·891984·interpreters·optional·erlang-asn1_27.0.1+dfsg-3_i386.deb
3 ·05008bad1222724f73a69e8ac9dc3d5a·7107968·debug·optional·erlang-base-dbgsym_27.0.1+dfsg-3_i386.deb3 ·05008bad1222724f73a69e8ac9dc3d5a·7107968·debug·optional·erlang-base-dbgsym_27.0.1+dfsg-3_i386.deb
4 ·f8197128c3e413b1e39cf234907614d2·11187504·interpreters·optional·erlang-base_27.0.1+dfsg-3_i386.deb4 ·20cd6051dbcb01bf3bb0b489027bb7b3·11187512·interpreters·optional·erlang-base_27.0.1+dfsg-3_i386.deb
5 ·2754cc478c536f21c6501eb39146d7d0·36948·debug·optional·erlang-common-test-dbgsym_27.0.1+dfsg-3_i386.deb5 ·2754cc478c536f21c6501eb39146d7d0·36948·debug·optional·erlang-common-test-dbgsym_27.0.1+dfsg-3_i386.deb
6 ·c6103dd5af227d7195e861fdba31f697·1309544·interpreters·optional·erlang-common-test_27.0.1+dfsg-3_i386.deb6 ·7ca1172fb64e7c00d02267c8b1c06709·1309552·interpreters·optional·erlang-common-test_27.0.1+dfsg-3_i386.deb
7 ·afbfa6be25c1f9f79da6075768eb19ea·97428·debug·optional·erlang-crypto-dbgsym_27.0.1+dfsg-3_i386.deb7 ·afbfa6be25c1f9f79da6075768eb19ea·97428·debug·optional·erlang-crypto-dbgsym_27.0.1+dfsg-3_i386.deb
8 ·7b367a07c9bbf6dd485ede7f5e07c998·182528·interpreters·optional·erlang-crypto_27.0.1+dfsg-3_i386.deb 
9 ·218648390b945ce82fea6905d2ae94d6·478696·interpreters·optional·erlang-debugger_27.0.1+dfsg-3_i386.deb 
10 ·38fbb8e0697fa9f526fae3fd6d89b62a·314716·interpreters·optional·erlang-dev_27.0.1+dfsg-3_i386.deb8 ·07dc9907705c72bd2f09f4ee9c05339a·182548·interpreters·optional·erlang-crypto_27.0.1+dfsg-3_i386.deb
 9 ·ff61b8cdab1279a04afa4c3da29794fc·478716·interpreters·optional·erlang-debugger_27.0.1+dfsg-3_i386.deb
 10 ·dc4577d8bb0055b1d0590e6172d3a8c4·314760·interpreters·optional·erlang-dev_27.0.1+dfsg-3_i386.deb
11 ·a5fe42748277e05aebd39ad64768c2e6·70252·debug·optional·erlang-dialyzer-dbgsym_27.0.1+dfsg-3_i386.deb11 ·a5fe42748277e05aebd39ad64768c2e6·70252·debug·optional·erlang-dialyzer-dbgsym_27.0.1+dfsg-3_i386.deb
12 ·ac7317e24ac6ac79a24ace7fa7e88412·1077340·interpreters·optional·erlang-dialyzer_27.0.1+dfsg-3_i386.deb12 ·0dafe9bfd6b1facb3ed7e753a79483dd·1077348·interpreters·optional·erlang-dialyzer_27.0.1+dfsg-3_i386.deb
13 ·ece942b2abf5faa59885f68e8b5e6a23·809056·interpreters·optional·erlang-diameter_27.0.1+dfsg-3_i386.deb 
14 ·4cf94bc4033f3320d8434145f8f0a84d·16573380·doc·optional·erlang-doc_27.0.1+dfsg-3_all.deb13 ·ba38296a104f724208f7a791f8c6662a·809076·interpreters·optional·erlang-diameter_27.0.1+dfsg-3_i386.deb
 14 ·9524e15aca99094bb8ec5b8bb794a32c·16573408·doc·optional·erlang-doc_27.0.1+dfsg-3_all.deb
15 ·02258eadc25d9b6205b068b6b69a6629·459268·interpreters·optional·erlang-edoc_27.0.1+dfsg-3_i386.deb15 ·6e53e61d7b6701ced441e75b6d6d3083·459296·interpreters·optional·erlang-edoc_27.0.1+dfsg-3_i386.deb
 16 ·cbe0776aa681a906cc8cb05ba59f6cbf·137660·interpreters·optional·erlang-eldap_27.0.1+dfsg-3_i386.deb
16 ·86663bd4bf237a748bf130e7960ee7ba·137632·interpreters·optional·erlang-eldap_27.0.1+dfsg-3_i386.deb 
17 ·7fc931a0264dbfbefd7baaa9856e4eed·185196·interpreters·optional·erlang-et_27.0.1+dfsg-3_i386.deb 
18 ·7181439054ee187d052dd517f10416a5·171420·interpreters·optional·erlang-eunit_27.0.1+dfsg-3_i386.deb17 ·c715166456a0bf73996023d517c7c51b·185212·interpreters·optional·erlang-et_27.0.1+dfsg-3_i386.deb
19 ·18e19557e81695aaf95ad017a15245e5·963300·interpreters·optional·erlang-examples_27.0.1+dfsg-3_all.deb 
20 ·d6e844852a63e06ca81d2c96142e98b5·105608·interpreters·optional·erlang-ftp_27.0.1+dfsg-3_i386.deb18 ·0c90659257b5a784e84aa10b7e3dec51·171448·interpreters·optional·erlang-eunit_27.0.1+dfsg-3_i386.deb
 19 ·94906edcc16f720caa7fd60e81cc4ddd·963316·interpreters·optional·erlang-examples_27.0.1+dfsg-3_all.deb
 20 ·eef7b806bbaf593919e8e402b96869d6·105632·interpreters·optional·erlang-ftp_27.0.1+dfsg-3_i386.deb
21 ·11cdbec33c92e484470d3dc68b67c1a5·667664·interpreters·optional·erlang-inets_27.0.1+dfsg-3_i386.deb21 ·8c0f47f3db73b288f64d6d38a891d0af·667680·interpreters·optional·erlang-inets_27.0.1+dfsg-3_i386.deb
22 ·251451fdf2a68c3edb8259a42e74e9be·113116·interpreters·optional·erlang-jinterface_27.0.1+dfsg-3_all.deb22 ·e3d7c9a1decb6d4f3240d5930a4b03fa·113152·interpreters·optional·erlang-jinterface_27.0.1+dfsg-3_all.deb
23 ·45379e825cdcfcc8846a038b74008aad·60032·debug·optional·erlang-megaco-dbgsym_27.0.1+dfsg-3_i386.deb23 ·45379e825cdcfcc8846a038b74008aad·60032·debug·optional·erlang-megaco-dbgsym_27.0.1+dfsg-3_i386.deb
24 ·952bc0d27c275ae41e1c99c363493aef·3686288·interpreters·optional·erlang-megaco_27.0.1+dfsg-3_i386.deb24 ·7591869834a96a948ab7768bbf14bd17·3686312·interpreters·optional·erlang-megaco_27.0.1+dfsg-3_i386.deb
25 ·5744ef7a2119d488be2aa35dcda2e2d5·897748·interpreters·optional·erlang-mnesia_27.0.1+dfsg-3_i386.deb 
26 ·2135a2ab7f4931c882f971c48542bd6d·92804·interpreters·optional·erlang-mode_27.0.1+dfsg-3_all.deb25 ·809a7b6ddf884263a94a458d7e04c292·897776·interpreters·optional·erlang-mnesia_27.0.1+dfsg-3_i386.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 ·860e6e6da11dabe6d580f75ab3b460a7·1027804·interpreters·optional·erlang-observer_27.0.1+dfsg-3_i386.deb28 ·13e5d8f418d8b39f2f22a42843a468d2·1027832·interpreters·optional·erlang-observer_27.0.1+dfsg-3_i386.deb
29 ·c70832e4f36d59bbd2673d71821a5fb9·53584·debug·optional·erlang-odbc-dbgsym_27.0.1+dfsg-3_i386.deb29 ·c70832e4f36d59bbd2673d71821a5fb9·53584·debug·optional·erlang-odbc-dbgsym_27.0.1+dfsg-3_i386.deb
30 ·17b43a498d31a03a48231e5b12e19077·70960·interpreters·optional·erlang-odbc_27.0.1+dfsg-3_i386.deb30 ·565737a0521fd7c4a1bac290fbb3c44e·70972·interpreters·optional·erlang-odbc_27.0.1+dfsg-3_i386.deb
31 ·520f9486b18600c04d0cc3e7cedfcedc·17384·debug·optional·erlang-os-mon-dbgsym_27.0.1+dfsg-3_i386.deb31 ·520f9486b18600c04d0cc3e7cedfcedc·17384·debug·optional·erlang-os-mon-dbgsym_27.0.1+dfsg-3_i386.deb
32 ·7809da53a4369fef6e50802d69f2d6c6·112284·interpreters·optional·erlang-os-mon_27.0.1+dfsg-3_i386.deb 
33 ·ae9f895dbd15ed2564291e296a87af92·210576·interpreters·optional·erlang-parsetools_27.0.1+dfsg-3_i386.deb 
34 ·434354c222d915cb545c1d4b3b61cf0d·777900·interpreters·optional·erlang-public-key_27.0.1+dfsg-3_i386.deb 
35 ·32a9b9403b49bbdd300cbe3a28a9631f·384164·interpreters·optional·erlang-reltool_27.0.1+dfsg-3_i386.deb32 ·b50ec0d16e8ca639306006c0bf852300·112304·interpreters·optional·erlang-os-mon_27.0.1+dfsg-3_i386.deb
 33 ·80eb893ea48c8e912692cc35b2034fa0·210584·interpreters·optional·erlang-parsetools_27.0.1+dfsg-3_i386.deb
 34 ·c9991716bdaaf30fb89e6516259a20dd·777920·interpreters·optional·erlang-public-key_27.0.1+dfsg-3_i386.deb
 35 ·ab4442822a8e68d25cc1c80b34b5eeb8·384184·interpreters·optional·erlang-reltool_27.0.1+dfsg-3_i386.deb
36 ·9ed6af8e3bab1895cb1d2b49cfd8abcb·23480·debug·optional·erlang-runtime-tools-dbgsym_27.0.1+dfsg-3_i386.deb36 ·9ed6af8e3bab1895cb1d2b49cfd8abcb·23480·debug·optional·erlang-runtime-tools-dbgsym_27.0.1+dfsg-3_i386.deb
37 ·90447604dfcc5b1d38c85eca7aeadc1f·244660·interpreters·optional·erlang-runtime-tools_27.0.1+dfsg-3_i386.deb37 ·04a73e2fd55ca06a7d23780358babe42·244676·interpreters·optional·erlang-runtime-tools_27.0.1+dfsg-3_i386.deb
38 ·4d02eca028f82cafd741ebb4eb189158·1950508·interpreters·optional·erlang-snmp_27.0.1+dfsg-3_i386.deb 
39 ·0c6e47ffe5648804f75f41235b9c3215·6110640·interpreters·optional·erlang-src_27.0.1+dfsg-3_all.deb 
40 ·4b233bf988c41f424a39e79df2548532·1004020·interpreters·optional·erlang-ssh_27.0.1+dfsg-3_i386.deb 
41 ·902891f5ed832b41681afdd11d6ee174·1793532·interpreters·optional·erlang-ssl_27.0.1+dfsg-3_i386.deb38 ·701a56e62a6eee66230357ca3aa6f78d·1950536·interpreters·optional·erlang-snmp_27.0.1+dfsg-3_i386.deb
 39 ·373e4c50c0fa6d388e2fc4a79be8cc05·6110664·interpreters·optional·erlang-src_27.0.1+dfsg-3_all.deb
 40 ·03ac9fe07fbdba7edcefb48e3500f2a6·1004460·interpreters·optional·erlang-ssh_27.0.1+dfsg-3_i386.deb
 41 ·4967359dd09bb9e9bcfb840ff0961573·1793544·interpreters·optional·erlang-ssl_27.0.1+dfsg-3_i386.deb
42 ·680f62100f3de9f0eff9a0e3dadffdd3·337620·interpreters·optional·erlang-syntax-tools_27.0.1+dfsg-3_i386.deb42 ·4238c11044338c1efcc0125874deb4de·337632·interpreters·optional·erlang-syntax-tools_27.0.1+dfsg-3_i386.deb
43 ·3f41649527ac9381753576ef8d6e202d·113156·interpreters·optional·erlang-tftp_27.0.1+dfsg-3_i386.deb 
44 ·7c7803b779aa0252657bd9f4f7a005a4·620808·interpreters·optional·erlang-tools_27.0.1+dfsg-3_i386.deb43 ·2765f460d679405f2bfcfc69e8f133f6·113184·interpreters·optional·erlang-tftp_27.0.1+dfsg-3_i386.deb
 44 ·c64cf111e22e05bd7f485f795d8a76cf·620832·interpreters·optional·erlang-tools_27.0.1+dfsg-3_i386.deb
45 ·5ef640f24d724d515e004fbee94c3102·5298608·debug·optional·erlang-wx-dbgsym_27.0.1+dfsg-3_i386.deb45 ·5ef640f24d724d515e004fbee94c3102·5298608·debug·optional·erlang-wx-dbgsym_27.0.1+dfsg-3_i386.deb
46 ·7a361bb11f8bcd48eb6a1bfbcab92c5c·4487592·interpreters·optional·erlang-wx_27.0.1+dfsg-3_i386.deb46 ·025ea6393f8889ba4a19b30efce9f1cb·4487600·interpreters·optional·erlang-wx_27.0.1+dfsg-3_i386.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 ·7d5d8214f1a73e70c3da02d234dbcd48·1331760·interpreters·optional·erlang-xmerl_27.0.1+dfsg-3_i386.deb48 ·ab177172082dc42fdda88b2d41651136·1331776·interpreters·optional·erlang-xmerl_27.0.1+dfsg-3_i386.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
14.9 KB
erlang-asn1_27.0.1+dfsg-3_i386.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·····1512·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1512·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···890264·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···890280·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)····22044·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)····22044·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_i386.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····12732·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0····12732·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0·11174580·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0·11174588·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_i386.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··1306708·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··1306716·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_i386.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···181252·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···181272·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)···152796·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)···152796·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)····13744·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)····13744·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)····13872·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)····13872·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_i386.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
33.5 KB
erlang-dev_27.0.1+dfsg-3_i386.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·····3648·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····3652·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···310876·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···310916·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
32.9 KB
data.tar.xz
32.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)···237490·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/lib/libei.a169 -rw-r--r--···0·root·········(0)·root·········(0)···237490·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/lib/libei.a
170 -rw-r--r--···0·root·········(0)·root·········(0)···232846·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/lib/libei_st.a170 -rw-r--r--···0·root·········(0)·root·········(0)···232846·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
18.1 KB
./usr/bin/erlang-depends
    
Offset 7, 308 lines modifiedOffset 7, 308 lines modified
7 -define(VERSION,·"1:27.0.1+dfsg").7 -define(VERSION,·"1:27.0.1+dfsg").
8 -define(ABI_VERSION,·"17.0").8 -define(ABI_VERSION,·"17.0").
9 -define(PCRE_VERSION,·"8.44").9 -define(PCRE_VERSION,·"8.44").
  
10 %·Since·all·packages·required·built·application·to·run·may·be·unavailable10 %·Since·all·packages·required·built·application·to·run·may·be·unavailable
11 %·on·build·stage·it's·necessary·to·list·all·module-package·relationships11 %·on·build·stage·it's·necessary·to·list·all·module-package·relationships
12 %·explicitly:12 %·explicitly:
13 -define(MODULES,·[{"zip",·"erlang-base"},13 -define(MODULES,·[{"dets_server",·"erlang-base"},
14 {"file_sorter",·"erlang-base"}, 
15 {"io_lib",·"erlang-base"}, 
16 {"supervisor_bridge",·"erlang-base"}, 
17 {"timer",·"erlang-base"}, 
18 {"erl_compile",·"erlang-base"}, 
19 {"gb_trees",·"erlang-base"}, 
20 {"digraph_utils",·"erlang-base"}, 
21 {"erl_bits",·"erlang-base"},14 {"erl_pp",·"erlang-base"},
 15 {"sofs",·"erlang-base"},
 16 {"base64",·"erlang-base"},
 17 {"unicode_util",·"erlang-base"},
22 {"dets",·"erlang-base"},18 {"dets",·"erlang-base"},
 19 {"gb_sets",·"erlang-base"},
 20 {"erl_posix_msg",·"erlang-base"},
 21 {"supervisor_bridge",·"erlang-base"},
 22 {"shell_docs_markdown",·"erlang-base"},
 23 {"uri_string",·"erlang-base"},
 24 {"error_logger_tty_h",·"erlang-base"},
 25 {"gen_statem",·"erlang-base"},
 26 {"maps",·"erlang-base"},
 27 {"edlin_type_suggestion",·"erlang-base"},
23 {"erl_anno",·"erlang-base"},28 {"edlin",·"erlang-base"},
24 {"proc_lib",·"erlang-base"},29 {"shell_default",·"erlang-base"},
25 {"gen_server",·"erlang-base"},30 {"gen_server",·"erlang-base"},
 31 {"lists",·"erlang-base"},
 32 {"erl_compile",·"erlang-base"},
 33 {"dets_utils",·"erlang-base"},
26 {"qlc_pt",·"erlang-base"},34 {"dict",·"erlang-base"},
27 {"erl_stdlib_errors",·"erlang-base"}, 
28 {"erl_features",·"erlang-base"}, 
29 {"io_lib_pretty",·"erlang-base"},35 {"win32reg",·"erlang-base"},
30 {"unicode",·"erlang-base"},36 {"dets_v9",·"erlang-base"},
31 {"ordsets",·"erlang-base"},37 {"ordsets",·"erlang-base"},
32 {"shell_default",·"erlang-base"},38 {"shell",·"erlang-base"},
33 {"argparse",·"erlang-base"},39 {"sets",·"erlang-base"},
 40 {"otp_internal",·"erlang-base"},
34 {"beam_lib",·"erlang-base"},41 {"proc_lib",·"erlang-base"},
 42 {"ms_transform",·"erlang-base"},
 43 {"gen_fsm",·"erlang-base"},
35 {"filelib",·"erlang-base"},44 {"filelib",·"erlang-base"},
36 {"slave",·"erlang-base"}, 
37 {"calendar",·"erlang-base"}, 
38 {"eval_bits",·"erlang-base"}, 
39 {"random",·"erlang-base"}, 
40 {"escript",·"erlang-base"}, 
41 {"gen_statem",·"erlang-base"}, 
42 {"io_lib_fread",·"erlang-base"}, 
43 {"proplists",·"erlang-base"},45 {"proplists",·"erlang-base"},
44 {"re",·"erlang-base"}, 
45 {"erl_expand_records",·"erlang-base"}, 
46 {"edlin_key",·"erlang-base"}, 
47 {"sofs",·"erlang-base"},46 {"shell_docs",·"erlang-base"},
 47 {"erl_abstract_code",·"erlang-base"},
48 {"orddict",·"erlang-base"},48 {"qlc_pt",·"erlang-base"},
49 {"erl_error",·"erlang-base"}, 
50 {"erl_scan",·"erlang-base"},49 {"erl_tar",·"erlang-base"},
51 {"error_logger_file_h",·"erlang-base"},50 {"eval_bits",·"erlang-base"},
52 {"io_lib_format",·"erlang-base"},51 {"io_lib_format",·"erlang-base"},
 52 {"calendar",·"erlang-base"},
 53 {"slave",·"erlang-base"},
53 {"edlin_expand",·"erlang-base"},54 {"edlin_expand",·"erlang-base"},
54 {"erl_internal",·"erlang-base"}, 
55 {"gen_fsm",·"erlang-base"}, 
56 {"sys",·"erlang-base"}, 
57 {"shell",·"erlang-base"}, 
58 {"digraph",·"erlang-base"}, 
59 {"dict",·"erlang-base"}, 
60 {"win32reg",·"erlang-base"}, 
61 {"lists",·"erlang-base"},55 {"erl_bits",·"erlang-base"},
 56 {"file_sorter",·"erlang-base"},
 57 {"timer",·"erlang-base"},
 58 {"zip",·"erlang-base"},
 59 {"epp",·"erlang-base"},
62 {"erl_abstract_code",·"erlang-base"},60 {"erl_scan",·"erlang-base"},
 61 {"pool",·"erlang-base"},
63 {"string",·"erlang-base"},62 {"string",·"erlang-base"},
 63 {"erl_stdlib_errors",·"erlang-base"},
64 {"gen",·"erlang-base"}, 
65 {"uri_string",·"erlang-base"}, 
66 {"array",·"erlang-base"},64 {"math",·"erlang-base"},
67 {"base64",·"erlang-base"}, 
68 {"qlc",·"erlang-base"},65 {"digraph",·"erlang-base"},
69 {"ms_transform",·"erlang-base"}, 
70 {"shell_docs_markdown",·"erlang-base"}, 
71 {"json",·"erlang-base"}, 
72 {"erl_parse",·"erlang-base"},66 {"erl_eval",·"erlang-base"},
73 {"gen_event",·"erlang-base"}, 
74 {"rand",·"erlang-base"}, 
75 {"supervisor",·"erlang-base"}, 
76 {"gb_sets",·"erlang-base"}, 
77 {"sets",·"erlang-base"}, 
78 {"dets_sup",·"erlang-base"}, 
79 {"peer",·"erlang-base"}, 
80 {"edlin_type_suggestion",·"erlang-base"}, 
81 {"binary",·"erlang-base"},67 {"binary",·"erlang-base"},
82 {"edlin",·"erlang-base"},68 {"argparse",·"erlang-base"},
83 {"edlin_context",·"erlang-base"}, 
84 {"io",·"erlang-base"},69 {"io",·"erlang-base"},
85 {"otp_internal",·"erlang-base"}, 
86 {"erl_lint",·"erlang-base"},70 {"erl_lint",·"erlang-base"},
 71 {"edlin_key",·"erlang-base"},
 72 {"io_lib",·"erlang-base"},
87 {"erl_tar",·"erlang-base"},73 {"gb_trees",·"erlang-base"},
88 {"shell_docs",·"erlang-base"}, 
89 {"erl_posix_msg",·"erlang-base"}, 
90 {"ets",·"erlang-base"},74 {"peer",·"erlang-base"},
 75 {"erl_error",·"erlang-base"},
 76 {"escript",·"erlang-base"},
 77 {"erl_features",·"erlang-base"},
91 {"queue",·"erlang-base"},78 {"queue",·"erlang-base"},
92 {"epp",·"erlang-base"},79 {"gen_event",·"erlang-base"},
93 {"math",·"erlang-base"}, 
94 {"maps",·"erlang-base"}, 
95 {"erl_pp",·"erlang-base"}, 
96 {"c",·"erlang-base"},80 {"c",·"erlang-base"},
 81 {"ets",·"erlang-base"},
 82 {"sys",·"erlang-base"},
 83 {"io_lib_fread",·"erlang-base"},
 84 {"random",·"erlang-base"},
Max diff block lines reached; 13436/18462 bytes (72.78%) of diff not shown.
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_i386.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·····1852·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1852·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··1075296·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··1075304·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_i386.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·····2152·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····2152·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
47.4 MB
erlang-doc_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····39200·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0····39176·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0·16533988·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0·16534040·2024-08-29·10:53:40.000000·data.tar.xz
29.0 KB
control.tar.xz
28.9 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
28.4 KB
./md5sums
30.0 B
./md5sums
Files differ
28.4 KB
line order
Max HTML report size reached
47.4 MB
data.tar.xz
47.4 MB
data.tar
134 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-4825F052.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)···635234·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)···635260·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 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
259 -rw-r--r--···0·root·········(0)·root·········(0)·····6084·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/tutorial.html259 -rw-r--r--···0·root·········(0)·root·········(0)·····6338·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/tutorial.html
260 -rw-r--r--···0·root·········(0)·root·········(0)····26009·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/upcoming_incompatibilities.html260 -rw-r--r--···0·root·········(0)·root·········(0)····26094·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/upcoming_incompatibilities.html
261 -rw-r--r--···0·root·········(0)·root·········(0)·····6013·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/wx.html261 -rw-r--r--···0·root·········(0)·root·········(0)·····6289·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/wx.html
262 -rw-r--r--···0·root·········(0)·root·········(0)·····6025·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/xmerl.html262 -rw-r--r--···0·root·········(0)·root·········(0)·····6305·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/xmerl.html
263 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/263 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/
264 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/264 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/
265 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/265 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/
266 -rw-r--r--···0·root·········(0)·root·········(0)·····2047·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/.build266 -rw-r--r--···0·root·········(0)·root·········(0)·····2047·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/.build
267 -rw-r--r--···0·root·········(0)·root·········(0)·····5756·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/404.html267 -rw-r--r--···0·root·········(0)·root·········(0)·····5756·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/404.html
268 -rw-r--r--···0·root·········(0)·root·········(0)····51154·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/absform.html268 -rw-r--r--···0·root·········(0)·root·········(0)····51154·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/absform.html
269 -rw-r--r--···0·root·········(0)·root·········(0)····10103·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/alt_disco.html269 -rw-r--r--···0·root·········(0)·root·········(0)····10103·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/alt_disco.html
Offset 309, 15 lines modifiedOffset 309, 15 lines modified
309 -rw-r--r--···0·root·········(0)·root·········(0)····23236·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/dist/lato-latin-300-normal-YUMVEFOL.woff2309 -rw-r--r--···0·root·········(0)·root·········(0)····23236·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/dist/lato-latin-300-normal-YUMVEFOL.woff2
310 -rw-r--r--···0·root·········(0)·root·········(0)····23580·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/dist/lato-latin-400-normal-W7754I4D.woff2310 -rw-r--r--···0·root·········(0)·root·········(0)····23580·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/dist/lato-latin-400-normal-W7754I4D.woff2
311 -rw-r--r--···0·root·········(0)·root·········(0)····23040·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/dist/lato-latin-700-normal-2XVSBPG4.woff2311 -rw-r--r--···0·root·········(0)·root·········(0)····23040·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/dist/lato-latin-700-normal-2XVSBPG4.woff2
312 -rw-r--r--···0·root·········(0)·root·········(0)·····5624·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/dist/lato-latin-ext-300-normal-VPGGJKJL.woff2312 -rw-r--r--···0·root·········(0)·root·········(0)·····5624·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
Max diff block lines reached; 112806/137312 bytes (82.15%) 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-4825F052.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>132 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>464 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>154 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>154 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>393 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>217 <p>Copyright·©·1996-2024·<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-4825F052.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>132 <p>Copyright·©·1996-2024·<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 {}
    
Offset 2, 8 lines modifiedOffset 2, 8 lines modified
2 _\x8E_\x8r_\x8l_\x8a_\x8n_\x8g_\x8/_\x8O_\x8T_\x8P2 _\x8E_\x8r_\x8l_\x8a_\x8n_\x8g_\x8/_\x8O_\x8T_\x8P
3 v27.0.13 v27.0.1
4 ····*·Pages4 ····*·Pages
5 Search·documentation·of·Erlang/OTP[q···················]5 Search·documentation·of·Erlang/OTP[q···················]
6 Settings6 Settings
7 Search·HexDocs7 Search·HexDocs
8 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_\x8e8 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
9 Copyright·©·1996-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B9 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>136 <p>Copyright·©·1996-2024·<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
320 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
3.41 KB
OEBPS/content.opf
3.38 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="6961203133-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="6961203133-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6961203133-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="6961203133-2">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="6961203133-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="6961203133-3">}</span><span·class="w"> 
143 </span><span·class="nf">stop</span><span·class="p"·data-group-id="6961203133-4">(</span><span·class="n">State</span><span·class="p"·data-group-id="6961203133-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="2875614848-1">(</span><span·class="n">StartType</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·740,·SHA:·8bc99c8e1ca6479763d2f4d046a61d1a8cbd29db820636d6b5ac2ab3d95f7fa3·...·]
 143 </span><span·class="nf">stop</span><span·class="p"·data-group-id="2875614848-4">(</span><span·class="n">State</span><span·class="p"·data-group-id="2875614848-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="3433826573-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="3433826573-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="3686293938-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="3686293938-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="3433826573-2">(</span><span·class="ss">application</span><span·class="p"·data-group-id="3433826573-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="3686293938-2">(</span><span·class="ss">application</span><span·class="p"·data-group-id="3686293938-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="3433826573-3">(</span><span·class="p"·data-group-id="3433826573-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><spa[·...·truncated·by·diffoscope;·len:·115,·SHA:·9b52a2ec14e7b555a60a1a90327bb82864d71af900b2cbdd2d44fc18ab1f94ad·...·]-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="3686293938-3">(</span><span·class="p"·data-group-id="3686293938-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><spa[·...·truncated·by·diffoscope;·len:·115,·SHA:·912ba68f102a03691b24dc976a685a218bf8d51d4c55ca5e0cd1dc6419e63d7a·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
157 </span><span·class="nf">start</span><span·class="p"·data-group-id="3433826573-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="3433826573-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="3686293938-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="3686293938-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="3433826573-6">(</span><span·class="p"·data-group-id="3433826573-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="3686293938-6">(</span><span·class="p"·data-group-id="3686293938-6">)</span><span·class="p">.</span><span·class="w">
  
159 </span><span·class="nf">stop</span><span·class="p"·data-group-id="3433826573-7">(</span><span·class="p">_</span><span·class="n">State</span><span·class="p"·data-group-id="3433826573-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="3686293938-7">(</span><span·class="p">_</span><span·class="n">State</span><span·class="p"·data-group-id="3686293938-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="6635778904-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="4844482842-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="6635778904-2">[</span><span·class="p"·data-group-id="6635778904-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="6635778904-3">}</span><span·class="p">,</span><span·class="w">181 ·</span><span·class="p"·data-group-id="4844482842-2">[</span><span·class="p"·data-group-id="4844482842-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="4844482842-3">}</span><span·class="p">,</span><span·class="w">
182 ··</span><span·class="p"·data-group-id="6635778904-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="6635778904-4">}</span><span·class="p">,</span><span·class="w">182 ··</span><span·class="p"·data-group-id="4844482842-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="4844482842-4">}</span><span·class="p">,</span><span·class="w">
183 ··</span><span·class="p"·data-group-id="6635778904-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6635778904-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:·fbf48492cb39cbd2a66d61d93ed30fa06c4e18f5f7d8c91ff72dc6fc26b683fc·...·]-5">}</span><span·class="p">,</span><span·class="w">183 ··</span><span·class="p"·data-group-id="4844482842-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4844482842-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:·9d4d318a3b0f6779ef498288e9659066b11211d40bf944a354f70132249c0460·...·]-5">}</span><span·class="p">,</span><span·class="w">
184 ··</span><span·class="p"·data-group-id="6635778904-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6635778904-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="6635778904-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·1f8af697d42a05ed93cfeb2cd7b56f2c2f015c56c93fe440701c4b4a5ce4e268·...·]-7">}</span><span·class="p">,</span><span·class="w">184 ··</span><span·class="p"·data-group-id="4844482842-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4844482842-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="4844482842-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·2cc09b7be96ef8a5768c09302da96f26a791dda99f233d621b3f091a9f2a45ae·...·]-7">}</span><span·class="p">,</span><span·class="w">
185 ··</span><span·class="p"·data-group-id="6635778904-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6635778904-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:·5523ac5cdd3409e08281d0fc188e264c6b9343476801925879ec5f89be7b8452·...·]-9">}</span><span·class="p">,</span><span·class="w">185 ··</span><span·class="p"·data-group-id="4844482842-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4844482842-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:·b1137c79330339f0ca4efd3d23da4e851ecd8ab67bff9dacab2b697edfc2bee4·...·]-9">}</span><span·class="p">,</span><span·class="w">
186 ··</span><span·class="p"·data-group-id="6635778904-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6635778904-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="6635778904-13">[</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·80b8ab9143367eb2fe03d42c19ad0431d21f176114191763a02ccaaf1a551f31·...·]-11">}</span><span·class="w">186 ··</span><span·class="p"·data-group-id="4844482842-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4844482842-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="4844482842-13">[</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·42f81c002d74bd4d7b6406467004a4a6e7686f84f48adfd15c4f8964c16f8430·...·]-11">}</span><span·class="w">
187 ·</span><span·class="p"·data-group-id="6635778904-2">]</span><span·class="p"·data-group-id="6635778904-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="4844482842-2">]</span><span·class="p"·data-group-id="4844482842-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="7996039019-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="7996039019-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="9469193945-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="9469193945-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="7996039019-2">(</span><span·class="p"·data-group-id="7996039019-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="9469193945-2">(</span><span·class="p"·data-group-id="9469193945-2">)</span><span·class="p">.</span><span·class="w">
310 </span><span·class="p"·data-group-id="7996039019-3">[</span><span·class="p"·data-group-id="7996039019-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:·ee825b0dd5fcb74491caa21cdf953eb364de125d03bc143a52e106efe1a438a9·...·]-4">}</span><span·class="p">,</span><span·class="w">310 </span><span·class="p"·data-group-id="9469193945-3">[</span><span·class="p"·data-group-id="9469193945-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:·2287793ca41ff269ebf1c2c9de29a7d3a17a7cc648f1127238ad34929054bc88·...·]-4">}</span><span·class="p">,</span><span·class="w">
311 ·</span><span·class="p"·data-group-id="7996039019-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="7996039019-5">}</span><span·class="p">,</span><span·class="w">311 ·</span><span·class="p"·data-group-id="9469193945-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="9469193945-5">}</span><span·class="p">,</span><span·class="w">
312 ·</span><span·class="p"·data-group-id="7996039019-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="7996039019-6">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·6fc755c7cc8719f99e60036cb407c1e4a1ae857451f7041d17fbbead9529ade0·...·]-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="9469193945-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="9469193945-6">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·acb668f1a5d78eac2e261e88a66e833adeb87eacf6caa3856ba473cded50fa5c·...·]-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="6584930910-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="6584930910-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="3190213689-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="3190213689-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="6584930910-2">(</span><span·class="p"·data-group-id="6584930910-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="3190213689-2">(</span><span·class="p"·data-group-id="3190213689-2">)</span><span·class="p">.</span><span·class="w">
317 </span><span·class="p"·data-group-id="6584930910-3">[</span><span·class="p"·data-group-id="6584930910-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:·627eb600d5f09d3928152c680466357dc9d3a93416d8cc0aa8034a782bfe04e3·...·]-4">}</span><span·class="p">,</span><span·class="w">317 </span><span·class="p"·data-group-id="3190213689-3">[</span><span·class="p"·data-group-id="3190213689-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:·4d6b0c17f22605ab1a2440da03a7e914c80f8e0160de459f34cce5e619fb4b2c·...·]-4">}</span><span·class="p">,</span><span·class="w">
318 ·</span><span·class="p"·data-group-id="6584930910-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="6584930910-5">}</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·da0d4e0a65a90bd8c2a93679f5c540baa2c2f868722a544ffe511bf88f18f65f·...·]-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="3190213689-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="3190213689-5">}</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·4631fc728c5d52c7033b09aec735bfd3d32af19874a4e2da544ffeb1e58dde52·...·]-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="3304083401-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="3304083401-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="8382676162-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="8382676162-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="3304083401-2">(</span><span·class="p"·data-group-id="3304083401-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="8382676162-2">(</span><span·class="p"·data-group-id="8382676162-2">)</span><span·class="p">.</span><span·class="w">
328 </span><span·class="p"·data-group-id="3304083401-3">[</span><span·class="p"·data-group-id="3304083401-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:·30a5a0f7b07f0f871816bad18fccf10e76a716c196e21f5e1663bb98710b4ca2·...·]-4">}</span><span·class="p">,</span><span·class="w">328 </span><span·class="p"·data-group-id="8382676162-3">[</span><span·class="p"·data-group-id="8382676162-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:·3860b3ddeca3734c50d9a90e1ab65e0e3de0cb61d12a978e5dee87983044a317·...·]-4">}</span><span·class="p">,</span><span·class="w">
329 ·</span><span·class="p"·data-group-id="3304083401-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="3304083401-5">}</span><span·class="p">,</span><span·class="w">329 ·</span><span·class="p"·data-group-id="8382676162-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="8382676162-5">}</span><span·class="p">,</span><span·class="w">
330 ·</span><span·class="p"·data-group-id="3304083401-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="3304083401-6">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·34c17bf5d8c4cdb8baa99a601d2f241754fb2d5a47da357ba9082fac8179030e·...·]-3">]</span></code></pre><p>If·the·application·is·not·already·loaded,·the·application·controller·first·loads330 ·</span><span·class="p"·data-group-id="8382676162-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="8382676162-6">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·6990921563b8e68926b77f4742f9926b62442076fd44f6765e5fbdce1cbd06e6·...·]-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="3905737331-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="3031854847-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="3905737331-2">[</span><span·class="p"·data-group-id="3905737331-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="3905737331-3">}</span><span·class="p">,</span><span·class="w">355 ·</span><span·class="p"·data-group-id="3031854847-2">[</span><span·class="p"·data-group-id="3031854847-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="3031854847-3">}</span><span·class="p">,</span><span·class="w">
356 ··</span><span·class="p"·data-group-id="3905737331-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="3905737331-4">}</span><span·class="p">,</span><span·class="w">356 ··</span><span·class="p"·data-group-id="3031854847-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="3031854847-4">}</span><span·class="p">,</span><span·class="w">
357 ··</span><span·class="p"·data-group-id="3905737331-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3905737331-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:·9e7ea8210110070f8e4687128d36e06e86ee9fb56d39f3aae9a49002840e2d14·...·]-5">}</span><span·class="p">,</span><span·class="w">357 ··</span><span·class="p"·data-group-id="3031854847-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3031854847-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:·1e33cdc62c770a150e7417b1ee041dce64665761e4e6bea5abc4786b56915f69·...·]-5">}</span><span·class="p">,</span><span·class="w">
358 ··</span><span·class="p"·data-group-id="3905737331-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3905737331-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="3905737331-8">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·57aba78075eb1b1a4c1c0b7e358331061cbc90a7b63b7f71ea73396e0c9419db·...·]-7">}</span><span·class="p">,</span><span·class="w">358 ··</span><span·class="p"·data-group-id="3031854847-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3031854847-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="3031854847-8">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·a2908546656ea384f05883681fe49bd8f15a9f19b0ae88c40f0ebad9b8b64f48·...·]-7">}</span><span·class="p">,</span><span·class="w">
359 ··</span><span·class="p"·data-group-id="3905737331-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3905737331-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">st[·...·truncated·by·diffoscope;·len:·182,·SHA:·78f0aa8d6230bf4bd6ba46087537d0558c13740d792de444dcad7b9953eee0ce·...·]-9">}</span><span·class="p">,</span><span·class="w">359 ··</span><span·class="p"·data-group-id="3031854847-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3031854847-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">st[·...·truncated·by·diffoscope;·len:·182,·SHA:·618b56d5e87278fc2290652b9c0537f1f6b9eaead324c23702b9c51dd56753e5·...·]-9">}</span><span·class="p">,</span><span·class="w">
360 ··</span><span·class="p"·data-group-id="3905737331-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3905737331-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="3905737331-13">[</sp[·...·truncated·by·diffoscope;·len:·152,·SHA:·5831063f5c5e1922359796e00218d21049cd791e1a90a829dd099ba669db03e1·...·]-11">}</span><span·class="p">,</span><span·class="w">360 ··</span><span·class="p"·data-group-id="3031854847-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3031854847-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="3031854847-13">[</sp[·...·truncated·by·diffoscope;·len:·152,·SHA:·c26c7932a8711a6ae54cd7602cdd4b88cdb2ae9450715d1fbe9780ea1dd0fe0d·...·]-11">}</span><span·class="p">,</span><span·class="w">
361 ··</span><span·class="p"·data-group-id="3905737331-14">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3905737331-15">[</span><span·class="p"·data-group-id="3905737331-16">{</span><span·class="ss">file</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·223,·SHA:·bfa6467571c94fc53848b2af4ce11a55a6c4bab396c3f78ac8d4a43751654545·...·]-14">}</span><span·class="w">361 ··</span><span·class="p"·data-group-id="3031854847-14">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3031854847-15">[</span><span·class="p"·data-group-id="3031854847-16">{</span><span·class="ss">file</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·223,·SHA:·f46c72a18f7ee50c356dde9a1f057876f19bbfbddb4521513a2ca4d2a1425ab2·...·]-14">}</span><span·class="w">
362 ·</span><span·class="p"·data-group-id="3905737331-2">]</span><span·class="p"·data-group-id="3905737331-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="3031854847-2">]</span><span·class="p"·data-group-id="3031854847-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="9786241036-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="9786241036-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:·a62bf9f6a4396a255b93d855f87064d3f3d914d16bb3fd27b0dd6328e230cc52·...·]-3">]</span><span·class="w">366 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="3414720844-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="3414720844-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:·38c55120ff1cbde894272ef118d2cdd519400298243a3e8af06e68380171b88b·...·]-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="9786241036-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="9786241036-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="3414720844-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="3414720844-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="9786241036-5">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="9786241036-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="3414720844-5">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="3414720844-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="9786241036-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="9786241036-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="3414720844-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="3414720844-6">)</span><span·class="p">.</span><span·class="w">
371 </span><span·class="p"·data-group-id="9786241036-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="9786241036-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="3414720844-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="3414720844-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="8674268607-1">[</span><span·class="p"·data-group-id="8674268607-2">{</span><span·class="n">Application1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8674268607-3">[</span><span·class="p"·data-group-id="8674268607-4">[·...·truncated·by·diffoscope;·len:·331,·SHA:·c32f5cebb2dc87133cb3320da89ce1b2deab372ac155732bc1bdab88e8d3e292·...·]-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="4629562786-1">[</span><span·class="p"·data-group-id="4629562786-2">{</span><span·class="n">Application1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4629562786-3">[</span><span·class="p"·data-group-id="4629562786-4">[·...·truncated·by·diffoscope;·len:·331,·SHA:·56d7af305c0fdb66a3d93ba77c67645a52a8212d672a2791fe542f1a3fc44644·...·]-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="7643523471-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="6801975901-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
128 ·</span><span·class="p"·data-group-id="7643523471-2">[</span><span·class="p"·data-group-id="7643523471-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7643523471-4">[</span><span·class="p"·data-group-id="7643523471-5"[·...·truncated·by·diffoscope;·len:·316,·SHA:·834a7b4c979b56ca8cbd6a751a58d2ab0fafa0c80752bba63804d303f19671cd·...·]1-2">]</span><span·class="p">,</span><span·class="w">128 ·</span><span·class="p"·data-group-id="6801975901-2">[</span><span·class="p"·data-group-id="6801975901-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6801975901-4">[</span><span·class="p"·data-group-id="6801975901-5"[·...·truncated·by·diffoscope;·len:·316,·SHA:·855446fec85af19115689fe27568b32bada547208dac4c7d5f7a6822afcdef87·...·]1-2">]</span><span·class="p">,</span><span·class="w">
129 ·</span><span·class="p"·data-group-id="7643523471-6">[</span><span·class="p"·data-group-id="7643523471-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7643523471-8">[</span><span·class="p"·data-group-id="7643523471-9"[·...·truncated·by·diffoscope;·len:·316,·SHA:·e3b17910aeef3684cd53d69251ca38df62cb837e2cafd8a32168402d07471289·...·]1-6">]</span><span·class="w">129 ·</span><span·class="p"·data-group-id="6801975901-6">[</span><span·class="p"·data-group-id="6801975901-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6801975901-8">[</span><span·class="p"·data-group-id="6801975901-9"[·...·truncated·by·diffoscope;·len:·316,·SHA:·cb1375e8b3b21ec90dafe4490fa81b0404d5c8a5cee0cc5783c94a6fe5fdfebb·...·]1-6">]</span><span·class="w">
130 </span><span·class="p"·data-group-id="7643523471-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="6801975901-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="5392939896-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="2213961282-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
150 ·</span><span·class="p"·data-group-id="5392939896-2">[</span><span·class="p"·data-group-id="5392939896-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5392939896-4">[</span><span·class="p"·data-group-id="5392939896-5"[·...·truncated·by·diffoscope;·len:·319,·SHA:·f81ddd4828ac52030bd798e3d074b51ac06b57b0036aefd0c75290e5299c483d·...·]-2">]</span><span·class="p">,</span><span·class="w">150 ·</span><span·class="p"·data-group-id="2213961282-2">[</span><span·class="p"·data-group-id="2213961282-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2213961282-4">[</span><span·class="p"·data-group-id="2213961282-5"[·...·truncated·by·diffoscope;·len:·319,·SHA:·7cdd3e55324e96c41aabb2f7edb8dda2ce198cde6add142da1b112e0fdd4ddb5·...·]-2">]</span><span·class="p">,</span><span·class="w">
151 ·</span><span·class="p"·data-group-id="5392939896-6">[</span><span·class="p"·data-group-id="5392939896-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5392939896-8">[</span><span·class="p"·data-group-id="5392939896-9"[·...·truncated·by·diffoscope;·len:·319,·SHA:·f81cb0e2d9f94a860a3340520bf140aa474009162c7400880d6e82e3502d5258·...·]-6">]</span><span·class="w">151 ·</span><span·class="p"·data-group-id="2213961282-6">[</span><span·class="p"·data-group-id="2213961282-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2213961282-8">[</span><span·class="p"·data-group-id="2213961282-9"[·...·truncated·by·diffoscope;·len:·319,·SHA:·f5f53ca3d72c20450a9b5e57a84440fbb17449bad32c1df3bd827ad663c46491·...·]-6">]</span><span·class="w">
152 </span><span·class="p"·data-group-id="5392939896-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="2213961282-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="0016370828-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="2388719398-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
167 ·</span><span·class="p"·data-group-id="0016370828-2">[</span><span·class="p"·data-group-id="0016370828-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0016370828-4">[</span><span·class="p"·data-group-id="0016370828-5">{</span><span·class="ss">update</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0016370828-6">{</span><span·class="ss">advanced</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0016370828-7">[</span><span·class="p"·data-group-id="0016370828-7">]</span><span·class="p"·data-group-id="0016370828-6">}</span><span·class="p"·data-group-id="0016370828-5">}</span><span·class="p"·data-group-id="0016370828-4">]</span><span·class="p"·data-group-id="0016370828-3">}</span><span·class="p"·data-group-id="0016370828-2">]</span><span·class="p">,</span><span·class="w"> 
168 ·</span><span·class="p"·data-group-id="0016370828-8">[</span><span·class="p"·data-group-id="0016370828-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0016370828-10">[</span><span·class="p"·data-group-id="0016370828-1[·...·truncated·by·diffoscope;·len:·667,·SHA:·8cc5c918d2eebfa86cb9c15e57208968340ad975a2492dc64044e42efd9ef07c·...·]</span><span·class="w">167 ·</span><span·class="p"·data-group-id="2388719398-2">[</span><span·class="p"·data-group-id="2388719398-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2388719398-4">[</span><span·class="p"·data-group-id="2388719398-5"[·...·truncated·by·diffoscope;·len:·683,·SHA:·93e6fa7a6469ffcca1ee6c664ebeda19474edeff8d8cd49d29e7300063df8d1b·...·]</span><span·class="w">
 168 ·</span><span·class="p"·data-group-id="2388719398-8">[</span><span·class="p"·data-group-id="2388719398-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2388719398-10">[</span><span·class="p"·data-group-id="2388719398-11">{</span><span·class="ss">update</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2388719398-12">{</span><span·class="ss">advanced</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2388719398-13">[</span><span·class="p"·data-group-id="2388719398-13">]</span><span·class="p"·data-group-id="2388719398-12">}</span><span·class="p"·data-group-id="2388719398-11">}</span><span·class="p"·data-group-id="2388719398-10">]</span><span·class="p"·data-group-id="2388719398-9">}</span><span·class="p"·data-group-id="2388719398-8">]</span><span·class="w">
169 </span><span·class="p"·data-group-id="0016370828-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="2388719398-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="3928143889-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="3928143889-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="5000703185-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="5000703185-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="3928143889-2">(</span><span·class="p"·data-group-id="3928143889-3">[</span><span·class="ss">code_change</span><span·class="p">/</span><span·class="mi">3</span><span·class="p"·data-group-id="3928143889-3">]</span><span·class="p"·data-group-id="3928143889-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="5000703185-2">(</span><span·class="p"·data-group-id="5000703185-3">[</span><span·class="ss">code_change</span><span·class="p">/</span><span·class="mi">3</span><span·class="p"·data-group-id="5000703185-3">]</span><span·class="p"·data-group-id="5000703185-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="3928143889-4">(</span><span·class="p"·data-group-id="3928143889-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="3928143889-5">}</span><s[·...·truncated·by·diffoscope;·len:·391,·SHA:·746cd34dfbcff3242bc25ecc502f526a15fa69e0e69cc9d42510ddb45a1ac5b2·...·]-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="5000703185-4">(</span><span·class="p"·data-group-id="5000703185-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="5000703185-5">}</span><s[·...·truncated·by·diffoscope;·len:·391,·SHA:·9090c662014d2f5196a758333ae24f6ce264aa8578c3c46b81662b3555869d6a·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
178 ····</span><span·class="p"·data-group-id="3928143889-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="3928143889-7">}</span><span·class="p">;</span><span·class="w">178 ····</span><span·class="p"·data-group-id="5000703185-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="5000703185-7">}</span><span·class="p">;</span><span·class="w">
179 </span><span·class="nf">code_change</span><span·class="p"·data-group-id="3928143889-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:·e1feda925b5ae13052c2af9f261aea5114d205f96d7650acad0819d1a0d345d8·...·]-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="5000703185-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:·3b1e0f297cf0024d1d7f4c9024e7db479f3fb2f2e71afa79e998ecd439de27b8·...·]-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
180 ····</span><span·class="p"·data-group-id="3928143889-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3928143889-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:·e21f35695754c1f427e8e50a48a7be8eaba36852fefd86488880b4330422b5e8·...·]-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="5000703185-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5000703185-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:·68763dc67d859e19732ffd81966bc936f3c5ee2441baf7748ddaf1a2e4a8d0bd·...·]-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="9627475517-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="9627475517-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="1601430080-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="1601430080-1">}</span><span·class="w">
198 </span><span·class="p"·data-group-id="9627475517-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="9627475517-3">{</span><span·class="ss">advanced<[·...·truncated·by·diffoscope;·len:·254,·SHA:·9cb1e120f107f7d4d116cf21d3c2d42359fa8d3bdebd5e5910c53df8b8036ae9·...·]-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="1601430080-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="1601430080-3">{</span><span·class="ss">advanced<[·...·truncated·by·diffoscope;·len:·254,·SHA:·114b1bfd206b5b8c0f683445f7d1fb501f204bd554ba29bb8485dd58bf02145c·...·]-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="2325254035-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">200 </span><span·class="p"·data-group-id="9210071553-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
201 ·</span><span·class="p"·data-group-id="2325254035-2">[</span><span·class="p"·data-group-id="2325254035-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2325254035-4">[</span><span·class="p"·data-group-id="2325254035-5"[·...·truncated·by·diffoscope;·len:·499,·SHA:·acd2a78d74e974bf90a952ce69a379eaba69ee8e660c213dcbfa4a964ea9b20d·...·]-2">]</span><span·class="p">,</span><span·class="w">201 ·</span><span·class="p"·data-group-id="9210071553-2">[</span><span·class="p"·data-group-id="9210071553-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9210071553-4">[</span><span·class="p"·data-group-id="9210071553-5"[·...·truncated·by·diffoscope;·len:·499,·SHA:·25e892b316b032e08c5685c7744986fe45048a1f0cf845fa6983daf648388bba·...·]-2">]</span><span·class="p">,</span><span·class="w">
202 ·</span><span·class="p"·data-group-id="2325254035-7">[</span><span·class="p"·data-group-id="2325254035-8">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2325254035-9">[</span><span·class="p"·data-group-id="2325254035-10[·...·truncated·by·diffoscope;·len:·503,·SHA:·79027f2b436450c5ba19859c3412a6ea6e2c721a1467e511cadecce1d053b1db·...·]-7">]</span><span·class="w">202 ·</span><span·class="p"·data-group-id="9210071553-7">[</span><span·class="p"·data-group-id="9210071553-8">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9210071553-9">[</span><span·class="p"·data-group-id="9210071553-10[·...·truncated·by·diffoscope;·len:·503,·SHA:·71c386de0bf1a3855630c15178469dfee4508003ca949699aaa7ce3151e83dc8·...·]-7">]</span><span·class="w">
203 </span><span·class="p"·data-group-id="2325254035-1">}</span><span·class="p">.</span><span·class="w">203 </span><span·class="p"·data-group-id="9210071553-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="2325254035-12">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">205 </span><span·class="p"·data-group-id="9210071553-12">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
206 ·</span><span·class="p"·data-group-id="2325254035-13">[</span><span·class="p"·data-group-id="2325254035-14">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2325254035-15">[</span><span·class="p"·data-group-id="2325254035[·...·truncated·by·diffoscope;·len:·326,·SHA:·2c96776936a788000cf1028e6d264d68b3ce80a0c0d57fb1d6dd730c9e970f3b·...·]-13">]</span><span·class="p">,</span><span·class="w">206 ·</span><span·class="p"·data-group-id="9210071553-13">[</span><span·class="p"·data-group-id="9210071553-14">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9210071553-15">[</span><span·class="p"·data-group-id="9210071553[·...·truncated·by·diffoscope;·len:·326,·SHA:·ee246a96341cffec7dcb267910b4e7ad3f1be090f055b623a04292eb00474970·...·]-13">]</span><span·class="p">,</span><span·class="w">
207 ·</span><span·class="p"·data-group-id="2325254035-17">[</span><span·class="p"·data-group-id="2325254035-18">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2325254035-19">[</span><span·class="p"·data-group-id="2325254035[·...·truncated·by·diffoscope;·len:·326,·SHA:·a1cd2384ac28709912f2d3fd69a887374c85611b490873d51a226e64d284fb8d·...·]-17">]</span><span·class="w">207 ·</span><span·class="p"·data-group-id="9210071553-17">[</span><span·class="p"·data-group-id="9210071553-18">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9210071553-19">[</span><span·class="p"·data-group-id="9210071553[·...·truncated·by·diffoscope;·len:·326,·SHA:·1dcf66eb2eb38c4688a1432a8570fe5c099840ba1b4d1230a8c7182a60ea211c·...·]-17">]</span><span·class="w">
208 </span><span·class="p"·data-group-id="2325254035-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="9210071553-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="5482561479-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="2627622537-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
210 ·</span><span·class="p"·data-group-id="5482561479-2">[</span><span·class="p"·data-group-id="5482561479-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">210 ·</span><span·class="p"·data-group-id="2627622537-2">[</span><span·class="p"·data-group-id="2627622537-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">
211 ···</span><span·class="p"·data-group-id="5482561479-4">[</span><span·class="p"·data-group-id="5482561479-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="5482561479-5">}</span><span·class="p">,</span><span·class="w">211 ···</span><span·class="p"·data-group-id="2627622537-4">[</span><span·class="p"·data-group-id="2627622537-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="2627622537-5">}</span><span·class="p">,</span><span·class="w">
212 ····</span><span·class="p"·data-group-id="5482561479-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="5482561479-7">[</span><span·class="ss">ch3</sp[·...·truncated·by·diffoscope;·len:·256,·SHA:·9922ae5b99831a84dcb5c6ae4671e856db5f85d17dd846aef37af250c9096ff1·...·]-2">]</span><span·class="p">,</span><span·class="w">212 ····</span><span·class="p"·data-group-id="2627622537-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="2627622537-7">[</span><span·class="ss">ch3</sp[·...·truncated·by·diffoscope;·len:·256,·SHA:·8e799015aeacf88a3f0e8c0ab45ced470749abca396c14b910ff715f30f8d8c0·...·]-2">]</span><span·class="p">,</span><span·class="w">
213 ·</span><span·class="p"·data-group-id="5482561479-8">[</span><span·class="p"·data-group-id="5482561479-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">213 ·</span><span·class="p"·data-group-id="2627622537-8">[</span><span·class="p"·data-group-id="2627622537-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">
214 ···</span><span·class="p"·data-group-id="5482561479-10">[</span><span·class="p"·data-group-id="5482561479-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="5482561479-11">}</span><span·class="p">,</span><span·class="w">214 ···</span><span·class="p"·data-group-id="2627622537-10">[</span><span·class="p"·data-group-id="2627622537-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="2627622537-11">}</span><span·class="p">,</span><span·class="w">
215 ····</span><span·class="p"·data-group-id="5482561479-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="5482561479-13">[</span><span·class="ss">ch3</[·...·truncated·by·diffoscope;·len:·261,·SHA:·9955c16866a9f467d40112f4a0cf1be31be8e24d1f6f73ad82066351c2cf4c55·...·]-8">]</span><span·class="w">215 ····</span><span·class="p"·data-group-id="2627622537-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="2627622537-13">[</span><span·class="ss">ch3</[·...·truncated·by·diffoscope;·len:·261,·SHA:·8fa2570d3a86b9e2a45e2dc2dc75167aeb57449f391f2cae86cd145c9a5cf16a·...·]-8">]</span><span·class="w">
216 </span><span·class="p"·data-group-id="5482561479-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="2627622537-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="3190104388-1">{</span><span·class="ss">ch4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3190104388-2">{</span><span·class="ss">ch4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</spa[·...·truncated·by·diffoscope;·len:·196,·SHA:·a0c5757af880bf3185c191084ec97f18178e8b0c9431d491948886a99bff115b·...·]8-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="3625632768-1">{</span><span·class="ss">ch4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3625632768-2">{</span><span·class="ss">ch4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</spa[·...·truncated·by·diffoscope;·len:·196,·SHA:·6f058e6564b29ad79f2fdd15b50c9de59a6cf9c5a3e3c7ce29f5c1a1720f2780·...·]8-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="3190104388-4">[</span><span·class="ss">ch4</span><span·class="p"·data-group-id="3190104388-4">]</span><span·class="p"·data-group-id="3190104388-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="3625632768-4">[</span><span·class="ss">ch4</span><span·class="p"·data-group-id="3625632768-4">]</span><span·class="p"·data-group-id="3625632768-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="7040197998-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="8965242593-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
235 ·</span><span·class="p"·data-group-id="7040197998-2">[</span><span·class="p"·data-group-id="7040197998-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7040197998-4">[</span><span·class="p"·data-group-id="7040197998-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="7040197998-6">{</span><span·class="ss">advanced</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7040197998-7">[</span><span·class="p"·data-group-id="7040197998-7">]</span><span·class="p"·data-group-id="7040197998-6">}</span><span·class="p"·data-group-id="7040197998-5">}</span><span·class="p"·data-group-id="7040197998-4">]</span><span·class="p"·data-group-id="7040197998-3">}</span><span·class="p"·data-group-id="7040197998-2">]</span><span·class="p">,</span><span·class="w"> 
236 ·</span><span·class="p"·data-group-id="7040197998-8">[</span><span·class="p"·data-group-id="7040197998-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7040197998-10">[</span><span·class="p"·data-group-id="7040197998-1[·...·truncated·by·diffoscope;·len:·667,·SHA:·5591ee3675060724c03ae58dd7b6a874a4ca2a36b96784c11be36424211a7e43·...·]</span><span·class="w">235 ·</span><span·class="p"·data-group-id="8965242593-2">[</span><span·class="p"·data-group-id="8965242593-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8965242593-4">[</span><span·class="p"·data-group-id="8965242593-5"[·...·truncated·by·diffoscope;·len:·683,·SHA:·7fbd566a49e9920795ef0fc0b9f644ca2ce6dee2c056982884af519b48013454·...·]</span><span·class="w">
 236 ·</span><span·class="p"·data-group-id="8965242593-8">[</span><span·class="p"·data-group-id="8965242593-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8965242593-10">[</span><span·class="p"·data-group-id="8965242593-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="8965242593-12">{</span><span·class="ss">advanced</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8965242593-13">[</span><span·class="p"·data-group-id="8965242593-13">]</span><span·class="p"·data-group-id="8965242593-12">}</span><span·class="p"·data-group-id="8965242593-11">}</span><span·class="p"·data-group-id="8965242593-10">]</span><span·class="p"·data-group-id="8965242593-9">}</span><span·class="p"·data-group-id="8965242593-8">]</span><span·class="w">
237 </span><span·class="p"·data-group-id="7040197998-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="8965242593-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="4424345351-1">(</span><span·class="ss">ch4</span><span·class="p"·data-group-id="4424345351-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="6838735385-1">(</span><span·class="ss">ch4</span><span·class="p"·data-group-id="6838735385-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="4424345351-2">(</span><span·class="p"·data-group-id="4424345351-3">[</span><span·class="ss">system_code_change</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="4424345351-3">]</span><span·class="p"·data-group-id="442434[·...·truncated·by·diffoscope;·len:·4,·SHA:·121076a4131f0eb802fd9f9c68c6aa8aafbe66ce76d85c9635a3403cf1016dca·...·]-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="6838735385-2">(</span><span·class="p"·data-group-id="6838735385-3">[</span><span·class="ss">system_code_change</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="6838735385-3">]</span><span·class="p"·data-group-id="683873[·...·truncated·by·diffoscope;·len:·4,·SHA:·f53c1ad5dbded0ff16324748bb2e64405601acde699e59a59e25c3b6cd35554a·...·]-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="4424345351-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:·79c5f853868b79fd6fbeb188bdac1953525e7a0f50aa49fd89f1c1ce118d9fb0·...·]-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="6838735385-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:·38a3e272cfc5e79f213cddc33e4b7ded691bc89b087481f9fa2c836812df9074·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
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="1101464491-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="1101464491-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="9861053744-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="9861053744-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="1101464491-2">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="1101464491-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="9861053744-2">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="9861053744-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>224 <p>Copyright·©·1996-2024·<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="7380146819-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="7380146819-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="5351642697-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="5351642697-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="7380146819-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="7380146819-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="5351642697-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="5351642697-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="7380146819-3">(</span><span·class="p"·data-group-id="7380146819-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="7380146819-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·b16804e1caa4b3162a9bc45b09dbc74fe45ec2e36371538bba2c26ae3682e67b·...·]-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="5351642697-3">(</span><span·class="p"·data-group-id="5351642697-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="5351642697-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·3f1bea2007975abdb2b99ac943ce73ce633316380125d1acf23d678d3372bdc1·...·]-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="7380146819-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:·678e33372ade21089669394767f2e321c34f9f7f50269e13998c90d38ce939aa·...·]-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="5351642697-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:·3e3dc9a94ddfdceecd8d9d99ccf7ccefa8d08ab00c6f2f13b7b2b2cb05b1ebb1·...·]-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="7380146819-6">(</span><span·class="p"·data-group-id="7380146819-7">[</span><span·class="p"·data-group-id="7380146819-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="7380146819-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="5351642697-6">(</span><span·class="p"·data-group-id="5351642697-7">[</span><span·class="p"·data-group-id="5351642697-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="5351642697-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="3487513701-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="3487513701-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="3730338593-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="3730338593-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="3487513701-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="3487513701-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="3730338593-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="3730338593-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="3487513701-3">(</span><span·class="p"·data-group-id="3487513701-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3487513701-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·58,·SHA:·94c750b96b9936a2c5c43f2700dbf50428a997365cd5e6139d3d7638431e9300·...·]-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="3730338593-3">(</span><span·class="p"·data-group-id="3730338593-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3730338593-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·58,·SHA:·2a99d698f5a5f0d7ea4bb4d1e27b7374f44e49934e8ccb2197d1eef7d2b4ac91·...·]-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="3487513701-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><spa[·...·truncated·by·diffoscope;·len:·68,·SHA:·0d3d903bd285404a876c7451b9f82f7809c098c64999431813b45d953f65b2b5·...·]-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="3730338593-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><spa[·...·truncated·by·diffoscope;·len:·68,·SHA:·b6338b859ce760e77e47aeb23d1fb6b2b2716ae36b0d8f9687fc8e2dae408af1·...·]-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="3487513701-6">(</span><span·class="p"·data-group-id="3487513701-7">[</span><span·class="p"·data-group-id="3487513701-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="3487513701-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="3730338593-6">(</span><span·class="p"·data-group-id="3730338593-7">[</span><span·class="p"·data-group-id="3730338593-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="3730338593-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="3619564430-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="3619564430-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="0550712738-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="0550712738-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="3619564430-2">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="3619564430-3">(</span><span·class="n">List</span><span·class="p"·data-group-id="3619564430-3">)</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·134,·SHA:·00ef76609339579dff8358f26dd5dfa9286c2433f9f67d986b0a8be88b2fbc89·...·]-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="0550712738-2">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="0550712738-3">(</span><span·class="n">List</span><span·class="p"·data-group-id="0550712738-3">)</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·134,·SHA:·4246f1e6468765ced07e13359413042431715b68adbafc65aa72bb9f073a833e·...·]-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="3619564430-4">(</span><span·class="p"·data-group-id="3619564430-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3619564430-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·54bd8a88b624dd09686807a76016a7aff1b81b117539fe7db8685d7670571cce·...·]-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="0550712738-4">(</span><span·class="p"·data-group-id="0550712738-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="0550712738-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·c9406e26c4dec50cd3a2b63d235520ae995b50a0737bb0a0e0bbe7fc45448464·...·]-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="3619564430-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><sp[·...·truncated·by·diffoscope;·len:·69,·SHA:·f5c66fb0bd0313f8904400e19e57168869508e25da78a36654f75a6aef7203e5·...·]-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="0550712738-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><sp[·...·truncated·by·diffoscope;·len:·69,·SHA:·18219618d05ceafc14b9fc2a2fe7db2fd35c6b9caf5e20f60eea7b41d9966e39·...·]-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="3619564430-7">(</span><span·class="p"·data-group-id="3619564430-8">[</span><span·class="p"·data-group-id="3619564430-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="3619564430-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="0550712738-7">(</span><span·class="p"·data-group-id="0550712738-8">[</span><span·class="p"·data-group-id="0550712738-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="0550712738-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="7933169985-1">(</span><span·class="p"·data-group-id="7933169985-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="7933169985-2">]</span><span·class="p"·data-group-id="7933169985-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="7544971943-1">(</span><span·class="p"·data-group-id="7544971943-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="7544971943-2">]</span><span·class="p"·data-group-id="7544971943-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="7933169985-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="7933169985-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="7544971943-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="7544971943-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="7933169985-4">(</span><span·class="p"·data-group-id="7933169985-5">[</span><span·class="p"·data-group-id="7933169985-5">]</span><span·class="p"·data-group-id="7933169985-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="7544971943-4">(</span><span·class="p"·data-group-id="7544971943-5">[</span><span·class="p"·data-group-id="7544971943-5">]</span><span·class="p"·data-group-id="7544971943-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="4782646907-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="4782646907-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="6496403679-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="6496403679-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
143 ····</span><span·class="p"·data-group-id="4782646907-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="4782646907-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="4782646907-3">)</span><span·class="p"·data-group-id="4782646907-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="4782646907-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4782646907-4">)</span><span·class="w">·</span><span·class="p">[·...·truncated·by·diffoscope;·len:·239,·SHA:·db4f4543c0f602e6b3d5c20cf03f65ac24fe0747d0be33f17a6d3e6fb05739ec·...·]">143 ····</span><span·class="p"·data-group-id="6496403679-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="6496403679-3">(</span><span·class="n">T</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·118,·SHA:·be69085a5d016eb79b51ada7257525e7cb0b72a93416ac86ab2ca571d325da0e·...·]">
 144 </span><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="6496403679-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6496403679-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6496403679-5">[</span><span·class="p"·data-group-id="6496403679-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="2607596841-1">{</span><span·class="n">Bin4</span><span·class="p">,</span><span·class="n">Bin3</span><span·class="p"·data-group-id="2607596841-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="3295589090-1">{</span><span·class="n">Bin4</span><span·class="p">,</span><span·class="n">Bin3</span><span·class="p"·data-group-id="3295589090-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="7459520390-1">(</span><span·class="ss">repack</span><span·class="p"·data-group-id="7459520390-1">)</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="0377585846-1">(</span><span·class="ss">repack</span><span·class="p"·data-group-id="0377585846-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="7459520390-2">(</span><span·class="p"·data-group-id="7459520390-3">[</span><span·class="ss">repack</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="7459520390-3">]</span><span·class="p"·data-group-id="7459520390-2">)</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="0377585846-2">(</span><span·class="p"·data-group-id="0377585846-3">[</span><span·class="ss">repack</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="0377585846-3">]</span><span·class="p"·data-group-id="0377585846-2">)</span><span·class="p">.</span><span·class="w">
  
262 </span><span·class="nf">repack</span><span·class="p"·data-group-id="7459520390-4">(</span><span·class="n">Bin</span><span·class="p"·data-group-id="7459520390-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="7459520390-5">(<[·...·truncated·by·diffoscope;·len:·73,·SHA:·082f8ff7a44208538291f5194a383f21caa8e5ea1c4f2ce0fafe03e7c3c59108·...·]-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="0377585846-4">(</span><span·class="n">Bin</span><span·class="p"·data-group-id="0377585846-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="0377585846-5">(<[·...·truncated·by·diffoscope;·len:·73,·SHA:·91ce5b565c19584430fbb01ee99518b9c50aa751d414118c7369c28d913ba7dc·...·]-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="7459520390-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="7459520390-6">)</span><span·class="p">.</span><span·class="w">263 ····</span><span·class="nf">repack</span><span·class="p"·data-group-id="0377585846-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="0377585846-6">)</span><span·class="p">.</span><span·class="w">
  
264 </span><span·class="nf">repack</span><span·class="p"·data-group-id="7459520390-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:·16159c1178f3cce4a07c2d3afcda2e69aa80f4d48143e95aefe6dec67b08a71d·...·]-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="0377585846-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:·24efe24cb02976e9a119d2fb1d0a611e84f98d8647cab1ac4f9b34e8ced2ce81·...·]-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="7459520390-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:·57da805e3acb6e4a5ba5afda4d8b54a0ca6d1f063e21e4ee439bcd8f371ee30c·...·]-8">)</span><span·class="p">;</span><span·class="w">265 ····</span><span·class="nf">repack</span><span·class="p"·data-group-id="0377585846-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:·27d4e98100942ec987bbca0b55fe5b83cc85611dcf89033b167c26a32cf08947·...·]-8">)</span><span·class="p">;</span><span·class="w">
266 </span><span·class="nf">repack</span><span·class="p"·data-group-id="7459520390-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="7459520390-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="0377585846-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="0377585846-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="2484472982-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="2484472982-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="5920066487-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="5920066487-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
312 ····</span><span·class="p"·data-group-id="2484472982-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="2484472982-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="2484472982-3">)</span><span·class="p"·data-group-id="2484472982-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="2484472982-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2484472982-4">)</span><span·class="w">·</span><span·class="p">[·...·truncated·by·diffoscope;·len:·257,·SHA:·bad62f6e1fb6639425f6f45dece13138129f435b6383f1abf12dcdb904f90568·...·]312 ····</span><span·class="p"·data-group-id="5920066487-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="5920066487-3">(</span><span·class="n">T</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·120,·SHA:·c334ee4cbb7a909c1338e5eaf80cba70c39450e093215d3349b6b255e58e91e8·...·]
 313 </span><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="5920066487-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="5920066487-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5920066487-5">[</span><span·class="p"·data-group-id="5920066487-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="2632420036-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="2632420036-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="3537800225-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="3537800225-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="2632420036-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="2632420036-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="3537800225-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="3537800225-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="2632420036-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="2632420036-3">)</span><span·class="p">;</span><span·class="w">331 ····</span><span·class="nf">after_zero</span><span·class="p"·data-group-id="3537800225-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="3537800225-3">)</span><span·class="p">;</span><span·class="w">
332 </span><span·class="nf">after_zero</span><span·class="p"·data-group-id="2632420036-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2632420036-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="3537800225-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3537800225-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="8224311110-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="8224311110-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="3869905862-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="3869905862-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="8224311110-2">(</span><span·class="n">T</span><span·class="p"·data-group-id="8224311110-2">)</span><span·class="p">;</span><span·class="w">336 ····</span><span·class="nf">after_zero</span><span·class="p"·data-group-id="3869905862-2">(</span><span·class="n">T</span><span·class="p"·data-group-id="3869905862-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="3629364874-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="3629364874-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="4449262853-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="4449262853-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="9890296048-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="9890296048-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="1487082136-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="1487082136-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
341 ····</span><span·class="p"·data-group-id="9890296048-2">{</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="9890296048-3">(</span><span·class="n">Acc</span><span·class="p"·data-group-id="9890296048-3">)</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·76,·SHA:·e1b90d0bcafa201739c6681c12428c6d5fcf4c262467cbb4ae0b1a59862a14ff·...·]-2">}</span><span·class="p">;</span><span·class="w">341 ····</span><span·class="p"·data-group-id="1487082136-2">{</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="1487082136-3">(</span><span·class="n">Acc</span><span·class="p"·data-group-id="1487082136-3">)</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·76,·SHA:·82031ec33a28e63e5331159983a928f2320d42a515cc522387fe90ffa78f4fca·...·]-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="9890296048-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:·150,·SHA:·d8c7bca3170bad3884469d8bfb030d7bb05823c8a56a46e17003424d11fe4266·...·]-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="1487082136-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:·150,·SHA:·b2c705d8d60827a98f4ca0ef9720a47f8e620964c307d770935577120056f11f·...·]-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="9890296048-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:·34,·SHA:·79a429639ab23acc27e80de7ca71950e221710419f6ff9ae0b8327cfa6fbc79c·...·]-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="1487082136-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:·34,·SHA:·66dc9ab1e60356ceef9e2ea2ef86ab0d6144eac783c10677f5a25777c8b34ffb·...·]-5">)</span><span·class="p">;</span><span·class="w">
344 </span><span·class="nf">all_but_zeroes_to_list</span><span·class="p"·data-group-id="9890296048-6">(</span><span·class="p">&lt;&lt;</span><span·class="n">Byte</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">·</[·...·truncated·by·diffoscope;·len:·152,·SHA:·1a9a67f2f73806779a40bbcfd43549ed5c8d049adbcd1bc66f046162cfa7fb35·...·]-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">344 </span><span·class="nf">all_but_zeroes_to_list</span><span·class="p"·data-group-id="1487082136-6">(</span><span·class="p">&lt;&lt;</span><span·class="n">Byte</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">·</[·...·truncated·by·diffoscope;·len:·152,·SHA:·77d119f0c0144ab4101a82d72f0810311c4e6646d4182a089f50dfaf4200ed08·...·]-6">)</span><span·class="w">·</span><span·class="p">-&gt;</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="7544959898-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="7544959898-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="5142814254-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="5142814254-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="7544959898-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="7544959898-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="5142814254-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="5142814254-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="7544959898-3">(</span><span·class="n">Dgram</span><span·class="p"·data-group-id="7544959898-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="5142814254-3">(</span><span·class="n">Dgram</span><span·class="p"·data-group-id="5142814254-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="7544959898-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="7544959898-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="5142814254-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="5142814254-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="7596122995-1">(</span><span·class="n">X</span><span·class="o">+</span><span·class="mi">1</span><span·class="p"·data-group-id="7596122995-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="2780523503-1">(</span><span·class="n">X</span><span·class="o">+</span><span·class="mi">1</span><span·class="p"·data-group-id="2780523503-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="4633492485-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:·115,·SHA:·738a0e80ca4e3efce13975cef6ea71e03acd59384f6b5f8ae4678ad74293b2c8·...·]-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="2694079651-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:·115,·SHA:·b275259a1d2f507067937d47c8977c5e22cd5c1f4d7b2859d8e17492b8867ae3·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
257 ···</span><span·class="p"·data-group-id="4633492485-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">T</span><span·class="p"·data-group-id="4633492485-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="9081317063-1">(</span><span·[·...·truncated·by·diffoscope;·len:·213,·SHA:·92cbfc7bd50f391bf8552725b8149647b2b405402067326ed214a443a4d48fd9·...·]257 ···</span><span·class="p"·data-group-id="2694079651-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">T</span><span·class="p"·data-group-id="2694079651-2">}</span><span·class="p">.</span></code></pre><p>The·two·occurrences·of·<code[·...·truncated·by·diffoscope;·len:·77,·SHA:·b79cd7a1b3a5d65635c58ed8a311bdfe1e6d3c335245d3f0a149a77a129ced39·...·]
 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="8808904035-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="8808904035-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="9081317063-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">T</span><span·class="p"·data-group-id="9081317063-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="8808904035-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">T</span><span·class="p"·data-group-id="8808904035-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="9535310045-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:·0dc72eb7c1ce56f5448b82327f8c6936fc7d649311b05531d4b6f84d8a0dd8e0·...·]-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="6802275460-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:·e1306a4b1255071bf386dce1d719dc584234be611e3704c68cb67b60a0f3e9af·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
270 ···</span><span·class="p"·data-group-id="9535310045-2">{</span><span·class="n">Payload</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="9535310045-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="6802275460-2">{</span><span·class="n">Payload</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="6802275460-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="2377514358-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="2377514358-2">(</spa[·...·truncated·by·diffoscope;·len:·515,·SHA:·aee3d95a407a02a4ea7910a480e0129c8230b4b46aada1ee6194f3cdc419f18b·...·]-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="3898322950-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="3898322950-2">(</spa[·...·truncated·by·diffoscope;·len:·515,·SHA:·ba02d35440196ed1e3ae097f40f5edcecc60043713dc7e0e4e710b7cca0d0d8e·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
272 ···</span><span·class="p"·data-group-id="2377514358-4">{</span><span·class="n">Payload</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="2377514358-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="3898322950-4">{</span><span·class="n">Payload</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="3898322950-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="6867263361-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:·668,·SHA:·eb428a55dcb1dd9275c41aee698a47adb3c53e6645f1c869b8cff303d6fd6147·...·]-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="2820020088-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:·668,·SHA:·6ebbcea31df11f3402bc91fe92d52d45aa6567665e11086701c52938e327dbbc·...·]-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="4598590230-1">(</span><span·class="n">T</span><span·class="p"·data-group-id="4598590230-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="6701148364-1">(</span><span·class="n">T</span><span·class="p"·data-group-id="6701148364-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="4598590230-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="4598590230-2">)</span><span·class="p">.</span><span·class="w">286 ····</span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="6701148364-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="6701148364-2">)</span><span·class="p">.</span><span·class="w">
  
287 </span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="4598590230-3">(</span><span·class="p"·data-group-id="4598590230-4">[</span><span·class="p"·data-group-id="4598590230-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:·eddf35b9f3984752646676296ff1ee3ad105c6f73a6a24760d983126f2e3b7c2·...·]-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="6701148364-3">(</span><span·class="p"·data-group-id="6701148364-4">[</span><span·class="p"·data-group-id="6701148364-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:·b297da38f43effae122bf5341d01358c030ce85113dcc5a2753156ca9c6edc85·...·]-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="4598590230-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:·4d4a581d65de87d25f73104276a4585c334b738f94e76be36f1bb9e805d595e2·...·]-6">)</span><span·class="p">;</span><span·class="w">288 ····</span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="6701148364-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:·d81775f7bf42baccd32da303cda4a070e771472065bbd6c6c00a1e00f286f0e6·...·]-6">)</span><span·class="p">;</span><span·class="w">
289 </span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="4598590230-7">(</span><span·class="p"·data-group-id="4598590230-8">[</span><span·class="p"·data-group-id="4598590230-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="4598590230-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="6701148364-7">(</span><span·class="p"·data-group-id="6701148364-8">[</span><span·class="p"·data-group-id="6701148364-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="6701148364-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>340 <p>Copyright·©·1996-2024·<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="2643163726-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="2643163726-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="1724805197-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="1724805197-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="2643163726-2">(</span><span·class="p"·data-group-id="2643163726-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:·653639032fdce1fdcc8a84184d4c26127646875ff3b421424244a02c93ee2728·...·]-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="1724805197-2">(</span><span·class="p"·data-group-id="1724805197-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:·7849750e08c020c006ebdd576039cee1385e226934ccdb493390e04efd611130·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
157 </span><span·class="nf">start</span><span·class="p"·data-group-id="2643163726-4">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="2643163726-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="1724805197-4">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="1724805197-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="2643163726-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="2643163726-6">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·b1a97ba89f1e82316099d69b81c1ca41a99050638f204d0c91b98ff995eb8134·...·]-5">)</span><span·class="p">.</span><span·class="w">158 ··</span><span·class="nf">spawn</span><span·class="p"·data-group-id="1724805197-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="1724805197-6">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·94a4d46a679cf088cbd7b002891fd62b0e8ef156aa93c8ce47a1e820279ee2b0·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
159 </span><span·class="nf">init</span><span·class="p"·data-group-id="2643163726-7">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="2643163726-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="1724805197-7">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="1724805197-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="2643163726-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="2643163726-9">(</span><span·class="p"·data-group-id="2643163726-9">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·d3ef646302a8687b95acf27fe59d63ab4cc79aa3a496624ae29ee85717e429bd·...·]-8">)</span><span·class="p">,</span><span·class="w">160 ··</span><span·class="nf">register</span><span·class="p"·data-group-id="1724805197-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="1724805197-9">(</span><span·class="p"·data-group-id="1724805197-9">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·9f3f9df29b1045246bec945509bf3f953feea8a841671c4f69d3b25cacf3737b·...·]-8">)</span><span·class="p">,</span><span·class="w">
161 ··</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="2643163726-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="2643163726-10">)</span><span·class="p">,</span><span·class="w">161 ··</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="1724805197-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="1724805197-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="2643163726-11">(</span><span·class="p"·data-group-id="2643163726-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="2643163726-12">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·389,·SHA:·af19a4728ccdb5c0239e3d01bb446435041a99fa957f90a92619c53a79cc7733·...·]-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="1724805197-11">(</span><span·class="p"·data-group-id="1724805197-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="1724805197-12">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·389,·SHA:·180cb493382257e71d662c2886d98e6becc8f2388568f5d8c33764eeca748c15·...·]-11">)</span><span·class="p">,</span><span·class="w">
163 ··</span><span·class="nf">loop</span><span·class="p"·data-group-id="2643163726-15">(</span><span·class="n">Port</span><span·class="p"·data-group-id="2643163726-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="1724805197-15">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1724805197-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="4756951957-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="4756951957-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="0475098830-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="0475098830-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="4756951957-2">(</span><span·class="p"·data-group-id="4756951957-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="4756951957-3">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·a3fb9381520a438b67bfb0fc825f4dadec23296ce65fe7cd90650afbd66fcac9·...·]-2">)</span><span·class="p">.</span><span·class="w">165 ··</span><span·class="nf">call_port</span><span·class="p"·data-group-id="0475098830-2">(</span><span·class="p"·data-group-id="0475098830-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="0475098830-3">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·bd3cca3d8eb5f89bc8bb5f9d83a1ee8d0a841f07b0f5ffa69d6414e5ddeef183·...·]-2">)</span><span·class="p">.</span><span·class="w">
166 </span><span·class="nf">bar</span><span·class="p"·data-group-id="4756951957-4">(</span><span·class="n">Y</span><span·class="p"·data-group-id="4756951957-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="0475098830-4">(</span><span·class="n">Y</span><span·class="p"·data-group-id="0475098830-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="4756951957-5">(</span><span·class="p"·data-group-id="4756951957-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="4756951957-6">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·a3fb9381520a438b67bfb0fc825f4dadec23296ce65fe7cd90650afbd66fcac9·...·]-5">)</span><span·class="p">.</span><span·class="w">167 ··</span><span·class="nf">call_port</span><span·class="p"·data-group-id="0475098830-5">(</span><span·class="p"·data-group-id="0475098830-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="0475098830-6">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·bd3cca3d8eb5f89bc8bb5f9d83a1ee8d0a841f07b0f5ffa69d6414e5ddeef183·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
168 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="4756951957-7">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="4756951957-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="0475098830-7">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="0475098830-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="4756951957-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="4756951957-9">(</span><span·class="p"·data-group-id="4756951957-9">)</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·6d9a85dab3a4b575f5c76600aee31a250a99685c2310de727a966ac338d5b549·...·]-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="0475098830-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="0475098830-9">(</span><span·class="p"·data-group-id="0475098830-9">)</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·6f2cd52498c2b7534193694800be9b4e64b7552d67eeaf4a6dbc5cd54ac4b0ad·...·]-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="4756951957-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="4756951957-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">171 ····</span><span·class="p"·data-group-id="0475098830-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="0475098830-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="5763695470-1">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5763695470-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="0153800837-1">(</span><span·class="n">Port</span><span·class="p"·data-group-id="0153800837-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="5763695470-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="5763695470-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 ····</span><span·class="p"·data-group-id="0153800837-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="0153800837-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="5763695470-3">{</span><span·class="nf">self</span><span·class="p"·data-group-id="5763695470-4">(</span><span·class="p"·data-group-id="5763695470-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5763695470-5">{</span[·...·truncated·by·diffoscope;·len:·336,·SHA:·6c3eaf19087540a2bafb87ef3ae801eec7f9cfa9eed1b81aa0482cd7efb6ac5b·...·]-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="0153800837-3">{</span><span·class="nf">self</span><span·class="p"·data-group-id="0153800837-4">(</span><span·class="p"·data-group-id="0153800837-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0153800837-5">{</span[·...·truncated·by·diffoscope;·len:·336,·SHA:·3c7780f1a227dfa6740bd63307d71336f705eab7b07108408f0bbfe3b5ec7e32·...·]-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="5763695470-7">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5763695470-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:·64ffbc71e629e23ef40a2e69d87b17837a9d5b73cece3e63df63a853bdbdd249·...·]-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 ········</span><span·class="p"·data-group-id="0153800837-7">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0153800837-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:·fe85488ee0b9a1d72786fcd1578c8ae58c7f7ea5ded1a03dab9f4199d8867ca5·...·]-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="5763695470-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="5763695470-10">(</span><span·class="n">Data</span><span·class="p"·data-group-id="5763695470-10[·...·truncated·by·diffoscope;·len:·51,·SHA:·e559e0b241c2c8e6fe1c96f9f02b470c53578176ec2e0b26062628116efe9c2b·...·]-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="0153800837-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="0153800837-10">(</span><span·class="n">Data</span><span·class="p"·data-group-id="0153800837-10[·...·truncated·by·diffoscope;·len:·51,·SHA:·145605fa4389221f8370b6e6c2306f6948b086527a084347376b8563a1443408·...·]-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="5763695470-11">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5763695470-11">)</span><span·class="w">181 ······</span><span·class="nf">loop</span><span·class="p"·data-group-id="0153800837-11">(</span><span·class="n">Port</span><span·class="p"·data-group-id="0153800837-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="3626962538-1">(</span><span·class="p"·data-group-id="3626962538-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="3626962538-2">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·2091a97ee53adde40832056626c3de3ea41e700dbcf94b7014a6746c744b8787·...·]-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="1245574814-1">(</span><span·class="p"·data-group-id="1245574814-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="1245574814-2">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·5ef51530a907c2238bbc416bd8100b6b8f17898340264e13eea7dde05e8c9d30·...·]-3">]</span><span·class="p">;</span><span·class="w">
186 </span><span·class="nf">encode</span><span·class="p"·data-group-id="3626962538-4">(</span><span·class="p"·data-group-id="3626962538-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="3626962538-5">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·479398d3a3cbef3fc2737c912b64fdf9bdb56cf0600221883283bfd586338927·...·]-6">]</span><span·class="p">.</span><span·class="w">186 </span><span·class="nf">encode</span><span·class="p"·data-group-id="1245574814-4">(</span><span·class="p"·data-group-id="1245574814-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="1245574814-5">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·4a4f9254c503b670d7761c9626e179531d0efe9fc87eb754c03cf6e5d0108a6d·...·]-6">]</span><span·class="p">.</span><span·class="w">
  
187 </span><span·class="nf">decode</span><span·class="p"·data-group-id="3626962538-7">(</span><span·class="p"·data-group-id="3626962538-8">[</span><span·class="n">Int</span><span·class="p"·data-group-id="3626962538-8">]</span><span·class="p"·data-group-id="3626962538-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="1245574814-7">(</span><span·class="p"·data-group-id="1245574814-8">[</span><span·class="n">Int</span><span·class="p"·data-group-id="1245574814-8">]</span><span·class="p"·data-group-id="1245574814-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="1034107440-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="1034107440-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="3418876469-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="3418876469-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="1034107440-2">(</span><span·class="p"·data-group-id="1034107440-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:·04571cddb1e703ec892ed524d73986b503e6a46dd34ccf7429460f791ef90cf7·...·]-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="3418876469-2">(</span><span·class="p"·data-group-id="3418876469-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:·5de5c86bbd3c6e537f7ed309a08385a13ae5c6f0d1a7e900ecc5c69c2cdec053·...·]-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="1034107440-4">(</span><span·class="p"·data-group-id="1034107440-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:·d042db6f3e1d291d5659cdf4a80a16057337aa60a69da120ce1d2a91248c5d5b·...·]-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="3418876469-4">(</span><span·class="p"·data-group-id="3418876469-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:·42232fd73be4795aee8f88ad6a9d6950a1a40179f214e5355610bf95ca4569f7·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
191 </span><span·class="nf">start</span><span·class="p"·data-group-id="1034107440-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="1034107440-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="3418876469-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="3418876469-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="1034107440-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="1034107440-8">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·a40579807b9ec026550342aa61af7dc2f1866307ef3b0ed359adb5dd77bf54b1·...·]-7">)</span><span·class="p">.</span><span·class="w">192 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="3418876469-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="3418876469-8">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·c047742cdef9cc5f86afba5240b394b902875f9b226fd150fc87c8c25501fc3c·...·]-7">)</span><span·class="p">.</span><span·class="w">
193 </span><span·class="nf">stop</span><span·class="p"·data-group-id="1034107440-9">(</span><span·class="p"·data-group-id="1034107440-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="3418876469-9">(</span><span·class="p"·data-group-id="3418876469-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="1034107440-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="1034107440-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="3418876469-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="3418876469-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="1034107440-11">(</span><span·class="p"·data-group-id="1034107440-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="1034107440-12">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·68c85195050dbdd8973e5e1435c3ad1f1c0fd7824252bb80f7b31715b6af07dd·...·]-11">)</span><span·class="p">.</span><span·class="w">196 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="3418876469-11">(</span><span·class="p"·data-group-id="3418876469-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="3418876469-12">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·319eec27473de1d3b5b4acd3f875722cc5f79450d09898a0137a996bbb600b9d·...·]-11">)</span><span·class="p">.</span><span·class="w">
197 </span><span·class="nf">bar</span><span·class="p"·data-group-id="1034107440-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="1034107440-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="3418876469-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="3418876469-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="1034107440-14">(</span><span·class="p"·data-group-id="1034107440-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="1034107440-15">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·68c85195050dbdd8973e5e1435c3ad1f1c0fd7824252bb80f7b31715b6af07dd·...·]-14">)</span><span·class="p">.</span><span·class="w">198 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="3418876469-14">(</span><span·class="p"·data-group-id="3418876469-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="3418876469-15">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·319eec27473de1d3b5b4acd3f875722cc5f79450d09898a0137a996bbb600b9d·...·]-14">)</span><span·class="p">.</span><span·class="w">
  
199 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="1034107440-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="1034107440-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="3418876469-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="3418876469-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="1034107440-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="1034107440-18">(</span><span·class="p"·data-group-id="1034107440-18">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·17ac1970e83334f61b485ee3fcc04e412a94f987c916b1713221b07ed98e8f63·...·]-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="3418876469-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="3418876469-18">(</span><span·class="p"·data-group-id="3418876469-18">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·caf19080a224aa9c9ca294b46e1d9523773d93065a4aa707ca0212e730b67cc9·...·]-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="1034107440-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="1034107440-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">202 »       </span><span·class="p"·data-group-id="3418876469-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="3418876469-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="1034107440-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="1034107440-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="3418876469-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="3418876469-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="1034107440-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="1034107440-22">(</span><span·class="p"·data-group-id="1034107440-22">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·cc64fadf1b04fbac13645e0c64ba7517fac06c38c901c8cd4e85c3e9df4034af·...·]-21">)</span><span·class="p">,</span><span·class="w">206 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="3418876469-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="3418876469-22">(</span><span·class="p"·data-group-id="3418876469-22">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·a4ef1c0a268d04b19dba409d2e545efd71a970aab80f8c69c0a1c5d5db476552·...·]-21">)</span><span·class="p">,</span><span·class="w">
207 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="1034107440-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="1034107440-23">)</span><span·class="p">,</span><span·class="w">207 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="3418876469-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="3418876469-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="1034107440-24">(</span><span·class="p"·data-group-id="1034107440-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="1034107440-25">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·389,·SHA:·b815d94ce29bbf0e3bb2ccf19c211ba9ba807a9b90f94d6fc05f4dc9d294b40a·...·]-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="3418876469-24">(</span><span·class="p"·data-group-id="3418876469-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="3418876469-25">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·389,·SHA:·bdc7cd69c5041ceaf7c4850e4dd46298ff1372b813860de306a7efc040602122·...·]-24">)</span><span·class="p">,</span><span·class="w">
209 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="1034107440-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1034107440-28">)</span><span·class="p">.</span><span·class="w">209 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="3418876469-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="3418876469-28">)</span><span·class="p">.</span><span·class="w">
  
210 </span><span·class="nf">loop</span><span·class="p"·data-group-id="1034107440-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1034107440-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="3418876469-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="3418876469-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="1034107440-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="1034107440-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">212 »       </span><span·class="p"·data-group-id="3418876469-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="3418876469-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="1034107440-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1034107440-32">(</span><span·class="p"·data-group-id="1034107440-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1034107440-33">{</[·...·truncated·by·diffoscope;·len:·343,·SHA:·29ca4e81613febafa59b1880948f716c0485821e729b97ee368f10bd41566c75·...·]-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="3418876469-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="3418876469-32">(</span><span·class="p"·data-group-id="3418876469-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3418876469-33">{</[·...·truncated·by·diffoscope;·len:·343,·SHA:·1d75ab0433446c983a4e6c3b68d985a079f7254cb609a641de47d5eba1e98224·...·]-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="1034107440-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1034107440-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:·b476659b772394589501beebb86bbf05efdb11b46cbf9e26fb1a9b418cbf71b5·...·]-35">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">215 »       »       </span><span·class="p"·data-group-id="3418876469-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3418876469-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:·76fbe1155fa77f49f8612b5e0b87053c13d148c6210bfbbaaa3f99b32413c5ac·...·]-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="1034107440-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="1034107440-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="1034107440-3[·...·truncated·by·diffoscope;·len:·52,·SHA:·8f49208031a7a75700ab871eb318f529a18b6af3b71c4b3537c60eb399ebdb53·...·]-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="3418876469-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="3418876469-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="3418876469-3[·...·truncated·by·diffoscope;·len:·52,·SHA:·54ced3043d6a7a066144e87cfb76df0631cd06cf8c7817f01a9576c2471075a8·...·]-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="1034107440-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1034107440-39">)</span><span·class="p">;</span><span·class="w">218 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="3418876469-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="3418876469-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="1034107440-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1034107440-41">(</span><span·class="p"·data-group-id="1034107440-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:·4dbf877bf3760d3d6dbd20c8482c29f75f7da5cb0e1a2568c4a90e6c151a3cfe·...·]-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="3418876469-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="3418876469-41">(</span><span·class="p"·data-group-id="3418876469-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:·76a8069765310da0683f05e49f5797066604ba0c4e16c5300e755dd380760c34·...·]-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="1034107440-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="1034107440-42">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">222 »       »       </span><span·class="p"·data-group-id="3418876469-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="3418876469-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="1034107440-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="1034107440-43">)</span><span·class="w">223 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="3418876469-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="3418876469-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="1034107440-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="1034107440-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">225 »       </span><span·class="p"·data-group-id="3418876469-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="3418876469-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="1034107440-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="1034107440-45">)</span><span·class="w">226 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="3418876469-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="3418876469-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="1034107440-46">(</span><span·class="p"·data-group-id="1034107440-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="1034107440-47">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·3c626c5c92763ba7bea3081ba5355ed4ea284c764c66c02866e46bbf414193e8·...·]-48">]</span><span·class="p">;</span><span·class="w">228 </span><span·class="nf">encode</span><span·class="p"·data-group-id="3418876469-46">(</span><span·class="p"·data-group-id="3418876469-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="3418876469-47">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·cebc881f341db13e97227c8398d19aea78c01eabdd88ddbfa8fc42d47d6f95d0·...·]-48">]</span><span·class="p">;</span><span·class="w">
229 </span><span·class="nf">encode</span><span·class="p"·data-group-id="1034107440-49">(</span><span·class="p"·data-group-id="1034107440-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="1034107440-50">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·45552206b25d9943c8a0fb2341f5b48a4041461b31e2d79166f64338b656230b·...·]-51">]</span><span·class="p">.</span><span·class="w">229 </span><span·class="nf">encode</span><span·class="p"·data-group-id="3418876469-49">(</span><span·class="p"·data-group-id="3418876469-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="3418876469-50">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·04f1ef8e0b4ae6d6f02a5280f30a9f04012acc72255df8dceb61f0be3dbe2d6f·...·]-51">]</span><span·class="p">.</span><span·class="w">
  
230 </span><span·class="nf">decode</span><span·class="p"·data-group-id="1034107440-52">(</span><span·class="p"·data-group-id="1034107440-53">[</span><span·class="n">Int</span><span·class="p"·data-group-id="1034107440-53">]</span><span·class="p"·data-group-id="1034107440-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="3418876469-52">(</span><span·class="p"·data-group-id="3418876469-53">[</span><span·class="n">Int</span><span·class="p"·data-group-id="3418876469-53">]</span><span·class="p"·data-group-id="3418876469-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="5288911339-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">14.2</span><span·class="p"·data-group-id="5288911339-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="5288911339-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1283,·SHA:·08620d79c29cf28fa9dddd9dd85869245e206a48c28192f872c2aeb2e17ee525·...·]-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="9035170841-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">14.2</span><span·class="p"·data-group-id="9035170841-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="9035170841-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1283,·SHA:·e653b796652ba95b48df069135a6f47ba4f261df00a0a0a9f2e8277294b0d619·...·]-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="5288911339-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:·28813de5724b864c33d9c6d864a4ea5332af9724549f14c005f7b1db117f4327·...·]-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="9035170841-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:·c8b154a8061bf92a08048346c16c669289f174f86452aacf61b48f5de17635e6·...·]-8">)</span><span·class="gp·unselectable">
342 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="5288911339-10">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="5288911339-10">)</span><span·class="p">.</span><span·class="w">342 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="9035170841-10">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="9035170841-10">)</span><span·class="p">.</span><span·class="w">
343 </span><span·class="p"·data-group-id="5288911339-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex1</span><span·class="p"·data-group-id="5288911339-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:·6a2dfd980282530688f3c204a7d6cc130d910f9fc342716ef72e4e885d196e1f·...·]-1">)</span><span·class="p">.</span><span·class="w">343 </span><span·class="p"·data-group-id="9035170841-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex1</span><span·class="p"·data-group-id="9035170841-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:·e01aeb4eae83a40ab656cacc69fcfc7e90c970a4c0fa2d02c3c149a6b48394ad·...·]-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="9093584897-2">(</span><span·class="mi">3</span><span·class="p"·data-group-id="9093584897-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="6633937091-2">(</span><span·class="mi">3</span><span·class="p"·data-group-id="6633937091-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="9093584897-3">(</span><span·class="mi">5</span><span·class="p"·data-group-id="9093584897-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="6633937091-3">(</span><span·class="mi">5</span><span·class="p"·data-group-id="6633937091-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="9093584897-4">(</span><span·class="p"·data-group-id="9093584897-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="6633937091-4">(</span><span·class="p"·data-group-id="6633937091-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="2470316395-1">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="2470316395-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="1733145053-1">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="1733145053-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="2470316395-2">(</span><span·class="p"·data-group-id="2470316395-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:·9d271113823e11372d0b6b3e64aacc75e950c5aa36fed6edb496b0766967919c·...·]-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="1733145053-2">(</span><span·class="p"·data-group-id="1733145053-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:·05bc349cce946dd9580baf8c58c19f365f64d3ff156268d8f0a244911844f4e2·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
160 </span><span·class="nf">start</span><span·class="p"·data-group-id="2470316395-4">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="2470316395-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="1733145053-4">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="1733145053-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="2470316395-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="2470316395-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="1733145053-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="1733145053-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="2470316395-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="2470316395-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="1733145053-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="1733145053-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="2470316395-7">(</span><span·class="p"·data-group-id="2470316395-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="2470316395-8">}</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·240f32e47bbcb0b64fc2be30a5fa511eaafdf35091ed4eb160db0bfafd2018d2·...·]-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="1733145053-7">(</span><span·class="p"·data-group-id="1733145053-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="1733145053-8">}</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·8765b68a65695d16ae075545e1c0f14d498ab226c0c6addcf9fa51dd6456f7bb·...·]-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="2470316395-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="2470316395-10">[</span><sp[·...·truncated·by·diffoscope;·len:·124,·SHA:·67850c622c8d88a2d74d87003c4e04aa058e15540fe76cc416ea045a2ddd3c47·...·]-9">)</span><span·class="p">.</span><span·class="w">166 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="1733145053-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="1733145053-10">[</span><sp[·...·truncated·by·diffoscope;·len:·124,·SHA:·4598829c3a06029df4460384cbaf15a347c6bbae33062c7360d29529ddcd2632·...·]-9">)</span><span·class="p">.</span><span·class="w">
  
167 </span><span·class="nf">init</span><span·class="p"·data-group-id="2470316395-11">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="2470316395-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="1733145053-11">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="1733145053-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="2470316395-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="2470316395-13">(</span><span·class="p"·data-group-id="2470316395-13">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·c018a7567acf8ed730ecd100b00b24077a4234476ad8ad6ed94649bf67117e5d·...·]-12">)</span><span·class="p">,</span><span·class="w">168 ··</span><span·class="nf">register</span><span·class="p"·data-group-id="1733145053-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="1733145053-13">(</span><span·class="p"·data-group-id="1733145053-13">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·d8fdaafe68985e92329d6ccb794cb9e3f5ec0e084e0eb3cfa38d1f1e88442f5f·...·]-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="2470316395-14">(</span><span·class="p"·data-group-id="2470316395-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="2470316395-15">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2470316395-16">[</span><span·class="p"·data-group-id="2470316395-16">]</span><span·class="p"·data-group-id="2470316395-14">)</span><span·class="p">,</span><span·class="w"> 
170 ··</span><span·class="nf">loop</span><span·class="p"·data-group-id="2470316395-17">(</span><span·class="n">Port</span><span·class="p"·data-group-id="2470316395-17">)</span><span·class="p">.</span></code></pre><p>Now·<code·class="inline">complex5:foo/1</code>·and·<code·class="inl[·...·truncated·by·diffoscope;·len:·58,·SHA:·45e7c70a754fdc59e37b2c30e2b6adee52e89d4e295d5ab50d0fe0d96c96f8f3·...·]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="1733145053-14">(</span><span·class="p"·data-group-id="1733145053-15">{</span><span·class="nb">spawn</span><[·...·truncated·by·diffoscope;·len:·383,·SHA:·6a064af5b223dd761a937b86d145fb37d0fe9ed1091634707bd7f8978fb230fb·...·]
 170 ··</span><span·class="nf">loop</span><span·class="p"·data-group-id="1733145053-17">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1733145053-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="1716534645-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="1716534645-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="6728292603-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="6728292603-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="1716534645-2">(</span><span·class="p"·data-group-id="1716534645-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="1716534645-3">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·60b63957bfda33a0b1f405ff4b641610f2157bf60530a4ce6d7f10e7faf6c579·...·]-2">)</span><span·class="p">.</span><span·class="w">172 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="6728292603-2">(</span><span·class="p"·data-group-id="6728292603-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="6728292603-3">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·499d9048dc08dd834331702739e95ea6d8c0d5720a291f06e973b0d00663301b·...·]-2">)</span><span·class="p">.</span><span·class="w">
173 </span><span·class="nf">bar</span><span·class="p"·data-group-id="1716534645-4">(</span><span·class="n">Y</span><span·class="p"·data-group-id="1716534645-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="6728292603-4">(</span><span·class="n">Y</span><span·class="p"·data-group-id="6728292603-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="1716534645-5">(</span><span·class="p"·data-group-id="1716534645-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="1716534645-6">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·60b63957bfda33a0b1f405ff4b641610f2157bf60530a4ce6d7f10e7faf6c579·...·]-5">)</span><span·class="p">.</span><span·class="w">174 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="6728292603-5">(</span><span·class="p"·data-group-id="6728292603-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="6728292603-6">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·499d9048dc08dd834331702739e95ea6d8c0d5720a291f06e973b0d00663301b·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
175 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="1716534645-7">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="1716534645-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="6728292603-7">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="6728292603-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="1716534645-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="1716534645-9">(</span><span·class="p"·data-group-id="1716534645-9">)</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·84ec280171fc5bf6fd53daa8afe3b8de73a6922d5593c9b8a32f2594bae453e1·...·]-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="6728292603-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="6728292603-9">(</span><span·class="p"·data-group-id="6728292603-9">)</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·10bd0450efbc8c7674b4cb2bedea5350027bf74ac3e2fa24a0e3ee0e782b744d·...·]-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="1716534645-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="1716534645-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 ········</span><span·class="p"·data-group-id="6728292603-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="6728292603-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="2329801908-1">(</span><span·class="n">Port</span><span·class="p"·data-group-id="2329801908-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="9818557800-1">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9818557800-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="2329801908-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="2329801908-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">182 ········</span><span·class="p"·data-group-id="9818557800-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="9818557800-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="2329801908-3">{</span><span·class="nf">self</span><span·class="p"·data-group-id="2329801908-4">(</span><span·class="p"·data-group-id="2329801908-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2329801908-5">{</span[·...·truncated·by·diffoscope;·len:·336,·SHA:·e4b264c14dc957ed2e00383d6192d89a633b0306f2a7a00ac0c5bd38d300f9a6·...·]-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="9818557800-3">{</span><span·class="nf">self</span><span·class="p"·data-group-id="9818557800-4">(</span><span·class="p"·data-group-id="9818557800-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9818557800-5">{</span[·...·truncated·by·diffoscope;·len:·336,·SHA:·2f99cd899196033469ba88d9f83fc5b79263d63ab51bb7feaae9042ec79025d2·...·]-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="2329801908-7">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2329801908-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:·31b4b833eea1c2b6bd4046daa321d56205b76edd4e4f7da1b4a9309ca4f0d6ca·...·]-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">185 ················</span><span·class="p"·data-group-id="9818557800-7">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9818557800-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:·2632f2b98ad160136642484bd0b4c460bc30e15026a936a912ad832fa17e2c3a·...·]-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="2329801908-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="2329801908-10">(</span><span·class="n">Data</span><span·class="p"·data-group-id="2329801908-10[·...·truncated·by·diffoscope;·len:·51,·SHA:·8dbc2f76089eeb1b5258e28c360ad52bf704122108a670cfd46b14980fabd507·...·]-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="9818557800-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="9818557800-10">(</span><span·class="n">Data</span><span·class="p"·data-group-id="9818557800-10[·...·truncated·by·diffoscope;·len:·51,·SHA:·aa074c8851ac634f0dcbaba5900f0000f4c9c05cb7a7cf539af7bafe79b1e3e0·...·]-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="2329801908-11">(</span><span·class="n">Port</span><span·class="p"·data-group-id="2329801908-11">)</span><span·class="w">188 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="9818557800-11">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9818557800-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="1615583069-1">(</span><span·class="p"·data-group-id="1615583069-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="1615583069-2">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·4479d3021c44690373f83056b9fed9ea5fdabe989be3cd437f0cb0a1d0a7b634·...·]-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="2645206145-1">(</span><span·class="p"·data-group-id="2645206145-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="2645206145-2">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·3b2e2cadb7ae3f6c8578f90cbdfa33c4a51cdef027b7aac5ce554af7449db3f6·...·]-3">]</span><span·class="p">;</span><span·class="w">
193 </span><span·class="nf">encode</span><span·class="p"·data-group-id="1615583069-4">(</span><span·class="p"·data-group-id="1615583069-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="1615583069-5">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·37e07476ec171eef2dc0ace73308bf3f4d95167315a41b44d940d77ff255cf77·...·]-6">]</span><span·class="p">.</span><span·class="w">193 </span><span·class="nf">encode</span><span·class="p"·data-group-id="2645206145-4">(</span><span·class="p"·data-group-id="2645206145-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="2645206145-5">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·d2b867c29dec1363e60e2ad434add2b262e5d0951b3e28733ba5ce81ce4cf032·...·]-6">]</span><span·class="p">.</span><span·class="w">
  
194 </span><span·class="nf">decode</span><span·class="p"·data-group-id="1615583069-7">(</span><span·class="p"·data-group-id="1615583069-8">[</span><span·class="n">Int</span><span·class="p"·data-group-id="1615583069-8">]</span><span·class="p"·data-group-id="1615583069-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="2645206145-7">(</span><span·class="p"·data-group-id="2645206145-8">[</span><span·class="n">Int</span><span·class="p"·data-group-id="2645206145-8">]</span><span·class="p"·data-group-id="2645206145-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="9260154808-1">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="9260154808-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="4469748542-1">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="4469748542-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="9260154808-2">(</span><span·class="p"·data-group-id="9260154808-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:·ed3c3c0bf16556c9c0709d379c22e041822ab98f1f1fca988ea650ef0c30998d·...·]-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="4469748542-2">(</span><span·class="p"·data-group-id="4469748542-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:·87d39e241d94b3213ebad8b003ff3d79c163d61585e953187c6a8643d29557bf·...·]-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="9260154808-4">(</span><span·class="p"·data-group-id="9260154808-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:·77d26c2dae0cea9dbdffb39366cae49abff57397a8c2c7e1e0ebc49d81b84217·...·]-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="4469748542-4">(</span><span·class="p"·data-group-id="4469748542-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:·e586821ef2fa274475d3cbd8115ea22ac1f71f1ff0b159e1432bb83cd026ecb4·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
199 </span><span·class="nf">start</span><span·class="p"·data-group-id="9260154808-6">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="9260154808-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="4469748542-6">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="4469748542-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="9260154808-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="9260154808-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="4469748542-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="4469748542-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="9260154808-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="9260154808-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="4469748542-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="4469748542-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="9260154808-9">(</span><span·class="p"·data-group-id="9260154808-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="9260154808-10">}</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·19b70e7174b48bc29a1a137bc766f7dffb03efeaafcefc45d90f5b9c8164266e·...·]-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="4469748542-9">(</span><span·class="p"·data-group-id="4469748542-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="4469748542-10">}</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·e365b76bf2bb2331d6a25b985236eca22a6d1c0346077bf0896350dd3a486069·...·]-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="9260154808-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="9260154808-12">[</span><s[·...·truncated·by·diffoscope;·len:·125,·SHA:·fa95d4790d8c43d619708f37232cb498041ec6d334bbd4bcbe9a9d6c0d87b689·...·]-11">)</span><span·class="p">.</span><span·class="w">205 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="4469748542-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="4469748542-12">[</span><s[·...·truncated·by·diffoscope;·len:·125,·SHA:·509c55de29b12585ba351a3ad2e27984da983ab31308d8c8f952b77c6321e2af·...·]-11">)</span><span·class="p">.</span><span·class="w">
  
206 </span><span·class="nf">init</span><span·class="p"·data-group-id="9260154808-13">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="9260154808-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="4469748542-13">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="4469748542-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="9260154808-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="9260154808-15">(</span><span·class="p"·data-group-id="9260154808-15">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·40ef41b4065fe692f388de2482f76746b421e7b7b4fae6c61c547157a186c084·...·]-14">)</span><span·class="p">,</span><span·class="w">207 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="4469748542-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="4469748542-15">(</span><span·class="p"·data-group-id="4469748542-15">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·d7970945d5e89beb3e2a1916a6e0ba1d7eabad0753fdae879fcc2aded0743139·...·]-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="9260154808-16">(</span><span·class="p"·data-group-id="9260154808-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="9260154808-17">}</span><span·class="p">[·...·truncated·by·diffoscope;·len:·181,·SHA:·c32ba5da2d5f722dc0567f8263d394b86964c10346f978d8f7815630884f3d86·...·]-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="4469748542-16">(</span><span·class="p"·data-group-id="4469748542-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="4469748542-17">}</span><span·class="p">[·...·truncated·by·diffoscope;·len:·181,·SHA:·4c1991fd213cc926117b9c7d43e6722158d5994392731a80fab11fedd4bc770c·...·]-16">)</span><span·class="p">,</span><span·class="w">
209 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="9260154808-19">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9260154808-19">)</span><span·class="p">.</span><span·class="w">209 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="4469748542-19">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4469748542-19">)</span><span·class="p">.</span><span·class="w">
  
210 </span><span·class="nf">stop</span><span·class="p"·data-group-id="9260154808-20">(</span><span·class="p"·data-group-id="9260154808-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="4469748542-20">(</span><span·class="p"·data-group-id="4469748542-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="9260154808-21">(</span><span·class="n">X</span><span·class="p"·data-group-id="9260154808-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="4469748542-21">(</span><span·class="n">X</span><span·class="p"·data-group-id="4469748542-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="9260154808-22">(</span><span·class="p"·data-group-id="9260154808-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="9260154808-23">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·910497d7d93e32a8d69b1b10620a845e58004bf7f458159828df2dca1400c16c·...·]-22">)</span><span·class="p">.</span><span·class="w">213 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="4469748542-22">(</span><span·class="p"·data-group-id="4469748542-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="4469748542-23">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·7fddd2514251e5db78e695c583fc0b116324494760a888aff8c62b33fc183d1b·...·]-22">)</span><span·class="p">.</span><span·class="w">
214 </span><span·class="nf">bar</span><span·class="p"·data-group-id="9260154808-24">(</span><span·class="n">Y</span><span·class="p"·data-group-id="9260154808-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="4469748542-24">(</span><span·class="n">Y</span><span·class="p"·data-group-id="4469748542-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="9260154808-25">(</span><span·class="p"·data-group-id="9260154808-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="9260154808-26">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·910497d7d93e32a8d69b1b10620a845e58004bf7f458159828df2dca1400c16c·...·]-25">)</span><span·class="p">.</span><span·class="w">215 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="4469748542-25">(</span><span·class="p"·data-group-id="4469748542-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="4469748542-26">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·7fddd2514251e5db78e695c583fc0b116324494760a888aff8c62b33fc183d1b·...·]-25">)</span><span·class="p">.</span><span·class="w">
  
216 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="9260154808-27">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="9260154808-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="4469748542-27">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="4469748542-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="9260154808-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="9260154808-29">(</span><span·class="p"·data-group-id="9260154808-29">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·a1a2e6708451916b15c57753f24070254395e400aec42a7d1c0f97131fda2a24·...·]-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="4469748542-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="4469748542-29">(</span><span·class="p"·data-group-id="4469748542-29">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·37f4864304c1140db2f23a0c3a3e75f026780925c17e0b74858feaeedd2d51da·...·]-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="9260154808-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="9260154808-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 »       </span><span·class="p"·data-group-id="4469748542-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="4469748542-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="9260154808-31">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9260154808-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="4469748542-31">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4469748542-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="9260154808-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="9260154808-32">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 »       </span><span·class="p"·data-group-id="4469748542-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="4469748542-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="9260154808-33">{</span><span·class="nf">self</span><span·class="p"·data-group-id="9260154808-34">(</span><span·class="p"·data-group-id="9260154808-34">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9260154808-35">{</[·...·truncated·by·diffoscope;·len:·343,·SHA:·9ff5ce72c46178bbd9a3f19cc7c376b3be35f881ef9fc3a30643d4f91043beb5·...·]-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="4469748542-33">{</span><span·class="nf">self</span><span·class="p"·data-group-id="4469748542-34">(</span><span·class="p"·data-group-id="4469748542-34">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4469748542-35">{</[·...·truncated·by·diffoscope;·len:·343,·SHA:·03e3d8ba024405745a5b361091e22cd4e829663a96d229b767d06e6800101185·...·]-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="9260154808-37">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9260154808-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:·ed3ab3601d84b5446cd4f5e406706ffcf80557ba77f5b350f0c2a49811e695e8·...·]-37">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 »       »       </span><span·class="p"·data-group-id="4469748542-37">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4469748542-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:·ec13eb49cae6f9c9e47332b76c7388195b9086a5213c5e19803921d542b3ad50·...·]-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="9260154808-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="9260154808-40">(</span><span·class="n">Data</span><span·class="p"·data-group-id="9260154808-4[·...·truncated·by·diffoscope;·len:·52,·SHA:·1e2d04d7ca7f44732c6e5cf59812e5f65a9566c588f950809e44918f953805c4·...·]-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="4469748542-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="4469748542-40">(</span><span·class="n">Data</span><span·class="p"·data-group-id="4469748542-4[·...·truncated·by·diffoscope;·len:·52,·SHA:·19e8bc209c98d2973c5a324984b7aa6b5d2985cd28deaaf2ce221cd8f92de7cc·...·]-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="9260154808-41">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9260154808-41">)</span><span·class="p">;</span><span·class="w">230 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="4469748542-41">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4469748542-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="9260154808-42">{</span><span·class="nf">self</span><span·class="p"·data-group-id="9260154808-43">(</span><span·class="p"·data-group-id="9260154808-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:·dc4e19bf0b7aed24e3292be9de0989ec381249ce068b2fb156ce57b8c045d142·...·]-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="4469748542-42">{</span><span·class="nf">self</span><span·class="p"·data-group-id="4469748542-43">(</span><span·class="p"·data-group-id="4469748542-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:·ee7e0cea63498cc7b14826f4692a7d2d46958457d0335c295ee14a5793e45a29·...·]-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="9260154808-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="9260154808-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">234 »       »       </span><span·class="p"·data-group-id="4469748542-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="4469748542-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="9260154808-45">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="9260154808-45">)</span><span·class="w">235 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="4469748542-45">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="4469748542-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="9260154808-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="9260154808-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">237 »       </span><span·class="p"·data-group-id="4469748542-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="4469748542-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="9260154808-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="9260154808-48">[</sp[·...·truncated·by·diffoscope;·len:·127,·SHA:·36146e4d0da04a88ddfe5caa3a793c855fedfb0892973218c5d3d2cda2479940·...·]-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="4469748542-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="4469748542-48">[</sp[·...·truncated·by·diffoscope;·len:·127,·SHA:·d7b72235db6f45308a1dec6cf68c273d22f2f40a836af57243ddfbfa1e89a2a8·...·]-47">)</span><span·class="p">,</span><span·class="w">
239 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="9260154808-49">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="9260154808-49">)</span><span·class="w">239 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="4469748542-49">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="4469748542-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="9260154808-50">(</span><span·class="p"·data-group-id="9260154808-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="9260154808-51">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·f23bf4b2e99458903d0fa56fffefcf58b8eb7c7a4696546d4df01b1b87ed3468·...·]-52">]</span><span·class="p">;</span><span·class="w">241 </span><span·class="nf">encode</span><span·class="p"·data-group-id="4469748542-50">(</span><span·class="p"·data-group-id="4469748542-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="4469748542-51">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·df953b0f40f765e2b1315bd5476b902317f2a42c8b95d8945ce15cc605d2ccbc·...·]-52">]</span><span·class="p">;</span><span·class="w">
242 </span><span·class="nf">encode</span><span·class="p"·data-group-id="9260154808-53">(</span><span·class="p"·data-group-id="9260154808-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="9260154808-54">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·38150559f5f0af49537b8da76a941aa3106f03b254bc6ed869b91a256f4cd5c5·...·]-55">]</span><span·class="p">.</span><span·class="w">242 </span><span·class="nf">encode</span><span·class="p"·data-group-id="4469748542-53">(</span><span·class="p"·data-group-id="4469748542-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="4469748542-54">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·16b0f38383fa479073814dcc1042c1f573ab5168ba182e5cbcbca47cb836bed5·...·]-55">]</span><span·class="p">.</span><span·class="w">
  
243 </span><span·class="nf">decode</span><span·class="p"·data-group-id="9260154808-56">(</span><span·class="p"·data-group-id="9260154808-57">[</span><span·class="n">Int</span><span·class="p"·data-group-id="9260154808-57">]</span><span·class="p"·data-group-id="9260154808-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="4469748542-56">(</span><span·class="p"·data-group-id="4469748542-57">[</span><span·class="n">Int</span><span·class="p"·data-group-id="4469748542-57">]</span><span·class="p"·data-group-id="4469748542-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="2985603209-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">14.2</span><span·class="p"·data-group-id="2985603209-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="2985603209-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1283,·SHA:·2f7354641ec1722f1a09adfa04f826c8f79c54c21e9a38d4230a025a05395a83·...·]-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="6232816972-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">14.2</span><span·class="p"·data-group-id="6232816972-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="6232816972-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1283,·SHA:·a56ee857278726381ea57ea241a2ac2b49925c1b05aa19c6c2729b1bb4e6ccce·...·]-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="2985603209-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:·1dbb64d7a1d2ea8c7a250dcacdc4083b6b79929de675e2f60b4c754882b9387f·...·]-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="6232816972-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:·a93baa85e2c8bde6ed3897d0476caf43d0d840a04278b0abb650626556278c3c·...·]-8">)</span><span·class="gp·unselectable">
356 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="2985603209-10">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="2985603209-10">)</span><span·class="p">.</span><span·class="w">356 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="6232816972-10">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="6232816972-10">)</span><span·class="p">.</span><span·class="w">
357 </span><span·class="p"·data-group-id="2985603209-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex5</span><span·class="p"·data-group-id="2985603209-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:·6f74be21549570c25e5363f92f358e9db04b6e1c2a624b1f488ab2a3eae1695b·...·]-1">)</span><span·class="p">.</span><span·class="w">357 </span><span·class="p"·data-group-id="6232816972-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex5</span><span·class="p"·data-group-id="6232816972-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:·404dce1c639562175b43fdce9058c3d6efdb83ae9eb40b77121b2f8f26f22197·...·]-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">
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>169 <p>Copyright·©·1996-2024·<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="2855974415-1">(</span><span·class="n">Module</span><span·class="p"·data-group-id="2855974415-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="6273268153-1">(</span><span·class="n">Module</span><span·class="p"·data-group-id="6273268153-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="2855974415-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="2855974415-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="6273268153-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="6273268153-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="4312234522-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="4312234522-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="9734051154-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="9734051154-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="4312234522-2">(</span><span·class="p"·data-group-id="4312234522-3">[</span><span·class="ss">loop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="4312234522-3">]</span><span·class="p"·data-group-id="4312234522-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="9734051154-2">(</span><span·class="p"·data-group-id="9734051154-3">[</span><span·class="ss">loop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="9734051154-3">]</span><span·class="p"·data-group-id="9734051154-2">)</span><span·class="p">.</span><span·class="w">
  
165 </span><span·class="nf">loop</span><span·class="p"·data-group-id="4312234522-4">(</span><span·class="p"·data-group-id="4312234522-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="9734051154-4">(</span><span·class="p"·data-group-id="9734051154-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="4312234522-5">(</span><span·class="p"·data-group-id="4312234522-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="9734051154-5">(</span><span·class="p"·data-group-id="9734051154-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="4312234522-6">(</span><span·class="p"·data-group-id="4312234522-6">)</span><span·class="w">171 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="9734051154-6">(</span><span·class="p"·data-group-id="9734051154-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="1723838319-1">(</span><span·class="n">Name</span><span·class="o">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1723838319-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="0776929407-1">(</span><span·class="n">Name</span><span·class="o">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0776929407-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="7292492564-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="7292492564-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="7934618750-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="7934618750-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="7292492564-2">(</span><span·class="ss">load_my_nifs</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7292492564-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="7934618750-2">(</span><span·class="ss">load_my_nifs</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7934618750-2">)</span><span·class="p">.</span><span·class="w">
  
197 </span><span·class="nf">load_my_nifs</span><span·class="p"·data-group-id="7292492564-3">(</span><span·class="p"·data-group-id="7292492564-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="7934618750-3">(</span><span·class="p"·data-group-id="7934618750-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="7292492564-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="7292492564-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="7934618750-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="7934618750-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>252 <p>Copyright·©·1996-2024·<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="5502114857-1">(</span><span·class="p"·data-group-id="5502114857-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="5502114857-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·60,·SHA:·be71a6b89a020953df6aa7cc59542c43979cd835f9c8692a2d8055978ceaf14e·...·]-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="3942025886-1">(</span><span·class="p"·data-group-id="3942025886-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3942025886-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·60,·SHA:·065c0e889d9597bd0fcbb665854a3e366eb96652ca4d35d0e061764bcae0531e·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
126 ····</span><span·class="p"·data-group-id="5502114857-3">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">my_plus_plus</span><span·class="p"·data-group-id="5502114857-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:·8d869952acb61f412b3d9dc363d88e9664244108ba28fd35825f82dc07488aca·...·]-3">]</span><span·class="p">;</span><span·class="w">126 ····</span><span·class="p"·data-group-id="3942025886-3">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">my_plus_plus</span><span·class="p"·data-group-id="3942025886-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:·6626743aabb3ad14109a1e321c6f543293d5495f511871f8311213375a560820·...·]-3">]</span><span·class="p">;</span><span·class="w">
127 </span><span·class="nf">my_plus_plus</span><span·class="p"·data-group-id="5502114857-5">(</span><span·class="p"·data-group-id="5502114857-6">[</span><span·class="p"·data-group-id="5502114857-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</span><span·class="p"·data-group-id="5502114857-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="3942025886-5">(</span><span·class="p"·data-group-id="3942025886-6">[</span><span·class="p"·data-group-id="3942025886-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</span><span·class="p"·data-group-id="3942025886-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="8661621694-1">(</span><span·class="p"·data-group-id="8661621694-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="8661621694-2">]</span><span·class="p"·data-group-id="8661621694-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="9889478613-1">(</span><span·class="p"·data-group-id="9889478613-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="9889478613-2">]</span><span·class="p"·data-group-id="9889478613-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="8661621694-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="8661621694-3">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="p"·data-group-id="8661621694-4">[</span><span·class="n">H</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·1b082665fb566a921fdde542fbdea5c0754421642989cf200b0ed401b83754c4·...·]-4">]</span><span·class="p">;</span><span·class="w">129 ····</span><span·class="nf">naive_reverse</span><span·class="p"·data-group-id="9889478613-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="9889478613-3">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="p"·data-group-id="9889478613-4">[</span><span·class="n">H</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·2e76557504d46c2f2166d5f7e1dea50e6896c38d69e964871825503390548258·...·]-4">]</span><span·class="p">;</span><span·class="w">
130 </span><span·class="nf">naive_reverse</span><span·class="p"·data-group-id="8661621694-5">(</span><span·class="p"·data-group-id="8661621694-6">[</span><span·class="p"·data-group-id="8661621694-6">]</span><span·class="p"·data-group-id="8661621694-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="9889478613-5">(</span><span·class="p"·data-group-id="9889478613-6">[</span><span·class="p"·data-group-id="9889478613-6">]</span><span·class="p"·data-group-id="9889478613-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
131 ····</span><span·class="p"·data-group-id="8661621694-7">[</span><span·class="p"·data-group-id="8661621694-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="9889478613-7">[</span><span·class="p"·data-group-id="9889478613-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="9258275546-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="9258275546-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="7929489971-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="7929489971-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="9258275546-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9258275546-3">[</span><span·class="p"·data-group-id="9258275546-3">]</span><span·class="p"·data-group-id="9258275546-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="7929489971-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7929489971-3">[</span><span·class="p"·data-group-id="7929489971-3">]</span><span·class="p"·data-group-id="7929489971-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="9258275546-4">(</span><span·class="p"·data-group-id="9258275546-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="9258275546-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·04be8ae8306559e3dff99d9e088fd0ef3fe94c474f23fffaf2435bac83224766·...·]-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="7929489971-4">(</span><span·class="p"·data-group-id="7929489971-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="7929489971-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·01380261c86b1207b7b3546f1c708e208d0646cfbbc6134af4738027c4520769·...·]-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="9258275546-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9258275546-7">[</span><span·class="n">H</span><span·class="p"·data-group-id="9258275546-7">]</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·108,·SHA:·e84d8da805aff705643e68308bf462e886d49fbc4e29f135f834b6a3ccd73de5·...·]-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="7929489971-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7929489971-7">[</span><span·class="n">H</span><span·class="p"·data-group-id="7929489971-7">]</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·108,·SHA:·ec4aee07e8195993b76e306ed3ea4b0af6fca5f81a37aa6ad40b587dc14235cb·...·]-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="9258275546-8">(</span><span·class="p"·data-group-id="9258275546-9">[</span><span·class="p"·data-group-id="9258275546-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="9258275546-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="7929489971-8">(</span><span·class="p"·data-group-id="7929489971-9">[</span><span·class="p"·data-group-id="7929489971-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="7929489971-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="0396964728-1">(</span><span·class="p"·data-group-id="0396964728-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="0396964728-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·f920a450b6009a3d293403b2cdd79d9a57a26642669635e447ea3904f404ae6c·...·]-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="9588454671-1">(</span><span·class="p"·data-group-id="9588454671-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="9588454671-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·477a0139b689a0ee41afc4055caaba51c43790c6835b8757af1970e6f7901a7e·...·]-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="0396964728-3">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0396964728-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">Acc</span><span·class="p"·data-group-id="0396[·...·truncated·by·diffoscope;·len:·59,·SHA:·534b9151636c33b2bfc67a392ab45d81650600cdacd42a61f52708a665e8689c·...·]-3">)</span><span·class="p">;</span><span·class="w">139 ····</span><span·class="nf">vanilla_reverse</span><span·class="p"·data-group-id="9588454671-3">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9588454671-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">Acc</span><span·class="p"·data-group-id="9588[·...·truncated·by·diffoscope;·len:·59,·SHA:·3580a040cffb5b79e4e195cda26cc94cc363a3ccc020e77c69b1d6a62c80123d·...·]-3">)</span><span·class="p">;</span><span·class="w">
140 </span><span·class="nf">vanilla_reverse</span><span·class="p"·data-group-id="0396964728-5">(</span><span·class="p"·data-group-id="0396964728-6">[</span><span·class="p"·data-group-id="0396964728-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="0396964728-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="9588454671-5">(</span><span·class="p"·data-group-id="9588454671-6">[</span><span·class="p"·data-group-id="9588454671-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="9588454671-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="5620633483-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="5620633483-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="4983079399-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="4983079399-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="5620633483-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5620633483-3">(</span><span·class="p"·data-group-id="5620633483-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="4983079399-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4983079399-3">(</span><span·class="p"·data-group-id="4983079399-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="5620633483-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="5620633483-5">[</span><span·class="n">State</span><span·class="o">#</[·...·truncated·by·diffoscope;·len:·180,·SHA:·287d5e96fe163ca5da3b308c754dd68745f457224bd3480215f4ea5870bc5572·...·]-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="4983079399-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="4983079399-5">[</span><span·class="n">State</span><span·class="o">#</[·...·truncated·by·diffoscope;·len:·180,·SHA:·6d50ff30124c8afb49ce13a39bf716a55d09acc2048761b31456eae3e7d85621·...·]-4">)</span><span·class="w">
170 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="5620633483-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="4983079399-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="2570046209-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="2570046209-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="2913815493-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="2913815493-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="2570046209-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2570046209-3">(</span><span·class="p"·data-group-id="2570046209-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="2913815493-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2913815493-3">(</span><span·class="p"·data-group-id="2913815493-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="2570046209-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="2570046209-5">[</span><span·class="nf">map_get</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·287,·SHA:·707c6decd349529979d083ebc6e1eb528a9b6e899d433f9f6d96b867e4061e64·...·]-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="2913815493-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="2913815493-5">[</span><span·class="nf">map_get</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·287,·SHA:·37e9c3066ffc4d7bd55facc8a27ae1e4f7134de48e97d93fc812465d98ecd4b6·...·]-4">)</span><span·class="w">
175 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="2570046209-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="2913815493-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="2254050274-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:·54fd2f20c02f18387c0d2daef467d41671fdc6f5f155bb3c2c3d19d650882b72·...·]-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="1848855475-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:·e8160388021bced1adcde93abf45780d03d6901f385300ffcc9575b65eadcabd·...·]-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="2254050274-2">(</span><span·class="p"·data-group-id="2254050274-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="1848855475-2">(</span><span·class="p"·data-group-id="1848855475-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="2254050274-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="2254050274-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="1848855475-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="1848855475-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="9051268622-1">(</span><span·class="p"·data-group-id="9051268622-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="8436716563-1">(</span><span·class="p"·data-group-id="8436716563-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="9051268622-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="9051268622-3">(</span><span·class="mi">1</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·147,·SHA:·d9cd24ad544a19d1f9c73c6b58daf0a89e98bea13a36d4fb4d1795abbc9aa48e·...·]-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="8436716563-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="8436716563-3">(</span><span·class="mi">1</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·147,·SHA:·f825d8e4224c45acd7c8a399a6fd8019a62a5f69d92a44c93c9260be328e1b35·...·]-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="4076615493-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="4076615493-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="1913337761-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="1913337761-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="4554980031-1">(</span><span·class="p"·data-group-id="4554980031-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="2434316853-1">(</span><span·class="p"·data-group-id="2434316853-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="4554980031-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4554980031-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="4554980031-3">)</span><span[·...·truncated·by·diffoscope;·len:·852,·SHA:·ad1994a89e8f08118606654042ded2164ef85583b67dc0d74d305894fbc0db2b·...·]-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="2434316853-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2434316853-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="2434316853-3">)</span><span[·...·truncated·by·diffoscope;·len:·852,·SHA:·b0bdc8230755968b8d463ad46ac66ddbf00bb6fbe1dd8530f0df4881311104b5·...·]-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="4554980031-7">{</span><span·class="ss">data</span><span·class="o">=</span><span·class="n">Shared</span><span·class="p"·data-group-id="4554980031-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="2434316853-7">{</span><span·class="ss">data</span><span·class="o">=</span><span·class="n">Shared</span><span·class="p"·data-group-id="2434316853-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="9632229289-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="9632229289-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="6267056067-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="6267056067-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="9632229289-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="9632229289-3">(</span><span·class="p"·data-group-id="9632229289-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="6267056067-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="6267056067-3">(</span><span·class="p"·data-group-id="6267056067-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="9632229289-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="9632229289-5">[</span><span·class="n">Info</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·74,·SHA:·becaa89081c465a519d4127127be8cb7f9f9d288aea13ae2ab2dd360034c08c6·...·]-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="6267056067-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="6267056067-5">[</span><span·class="n">Info</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·74,·SHA:·0648b27cb7c54f10705a90b81b6bc70cdac2ec60f1a492f98b1a49455599e9a7·...·]-4">)</span><span·class="w">
196 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="9632229289-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="6267056067-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="1187559136-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="1187559136-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="2059496102-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="2059496102-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="1187559136-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="1187559136-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="2059496102-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="2059496102-2">)</span><span·class="p">,</span><span·class="w">
199 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="1187559136-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1187559136-4">(</span><span·class="p"·data-group-id="1187559136-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="2059496102-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2059496102-4">(</span><span·class="p"·data-group-id="2059496102-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="1187559136-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="1187559136-6">[</span><span·class="n">Info</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·74,·SHA:·1be723fb6dab3a4616662f1174ec4a11ed6ad6a819940833c1a3f963da534948·...·]-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="2059496102-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="2059496102-6">[</span><span·class="n">Info</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·74,·SHA:·c90d19c597618bf43489a0b296ff7a95dfd42323f1c97752887de90912093d5f·...·]-5">)</span><span·class="w">
201 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="1187559136-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="2059496102-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="0272685333-1">(</span><span·class="nf">list_to_atom</span><span·class="p"·data-group-id="0272685333-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="0272685333-2">)</[·...·truncated·by·diffoscope;·len:·196,·SHA:·3af34e108cc0ae3108384f6425f4b39ce68558e6043a10a38df44d57210064a3·...·]-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="5255338538-1">(</span><span·class="nf">list_to_atom</span><span·class="p"·data-group-id="5255338538-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="5255338538-2">)</[·...·truncated·by·diffoscope;·len:·196,·SHA:·e92efa82a8dc631aa81cfdd7d63f8b4eb0a44ffeeed694471dc587a8812c3188·...·]-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="8296222492-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="8296222492-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="8296222492-2">(</span><span·class="n">L</span><span·class="p"·data-group-id="8296222492-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="0563833907-1">(</span><span[·...·truncated·by·diffoscope;·len:·363,·SHA:·9109f892135eb2898144fe86c0259ea795b219aeee44f08b1d29b98248bb8efe·...·]</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="8823930815-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="8823930815-1">)</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·301,·SHA:·31917a790039de3aa8d91d858c51eb4951e0bdecf88afdca0019c25b3611c32f·...·]</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="5457483578-1">(</span><span·class="p"·data-group-id="5457483578-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="p"·data-group-id="5457483578-2">]</span><span·class="o">=</span><span·class="n">L</span><span·class="p"·data-group-id="5457483578-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="8646371171-1">(</span><span·class="n">T0</span><span·class="p"·data-group-id="8646371171-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="8646371171-2">(<[·...·truncated·by·diffoscope;·len:·72,·SHA:·f0e695cdf4c2ccaf8a34cff5ee2dcf63e365fe7f7c51d39e5cf0c19aca1b2081·...·]-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="3137330484-1">(</span><span·class="n">T0</span><span·class="p"·data-group-id="3137330484-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="3137330484-2">(<[·...·truncated·by·diffoscope;·len:·72,·SHA:·e43f10099a88f89143021739a35f084f096ebfb05582687664b2b44e7406716a·...·]-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="8646371171-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="8646371171-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="3137330484-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="3137330484-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="8646371171-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="8646371171-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="3137330484-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="3137330484-4">)</span><span·class="p">,</span><span·class="w">
248 ····</span><span·class="nf">setelement</span><span·class="p"·data-group-id="8646371171-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="8646371171-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="3137330484-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="3137330484-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">
Max diff block lines reached; 752/53286 bytes (1.41%) 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="2161053582-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="2024253002-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="2161053582-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="2024253002-1">}</span><span·class="p">.</span><span·class="w">
201 </span><span·class="p"·data-group-id="2161053582-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="2024253002-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="2161053582-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="2024253002-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="3373645016-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="3373645016-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="8472123654-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="8472123654-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="3373645016-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="3373645016-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="8472123654-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="8472123654-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="3373645016-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="3373645016-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="8472123654-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="8472123654-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="6250940195-1">(</span><span·class="p"·data-group-id="6250940195-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="5835268514-1">(</span><span·class="p"·data-group-id="5835268514-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="6250940195-2">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="6250940195-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="5835268514-2">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="5835268514-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="0196227040-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="0196227040-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="0990379050-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="0990379050-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="0196227040-2">(</span><span·class="mi">2</span><span·class="p"·data-group-id="0196227040-2">)</span><span·class="p">.</span><span·class="w">273 2&gt;·</span><span·class="n">Fun1</span><span·class="p"·data-group-id="0990379050-2">(</span><span·class="mi">2</span><span·class="p"·data-group-id="0990379050-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="9287055632-1">(</span><span·class="p"·data-group-id="9287055632-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="9526462668-1">(</span><span·class="p"·data-group-id="9526462668-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="9287055632-2">(</span><span·class="n">F</span><span·class="p"·data-group-id="9287055632-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="9526462668-2">(</span><span·class="n">F</span><span·class="p"·data-group-id="9526462668-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="9287055632-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="9287055632-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="9526462668-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="9526462668-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="9287055632-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="9287055632-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="9526462668-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="9526462668-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="8010101134-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="8010101134-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="0633014383-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="0633014383-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="8010101134-2">(</span><span·class="p"·data-group-id="8010101134-3">[</span><span·class="ss">loop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8010101134-3">]</span><span·class="p"·data-group-id="8010101134-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="0633014383-2">(</span><span·class="p"·data-group-id="0633014383-3">[</span><span·class="ss">loop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0633014383-3">]</span><span·class="p"·data-group-id="0633014383-2">)</span><span·class="p">.</span><span·class="w">
  
309 </span><span·class="nf">loop</span><span·class="p"·data-group-id="8010101134-4">(</span><span·class="p"·data-group-id="8010101134-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="0633014383-4">(</span><span·class="p"·data-group-id="0633014383-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="8010101134-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="8010101134-6">[</span><span·class="nf">s[·...·truncated·by·diffoscope;·len:·210,·SHA:·146bb3ef53b28100e07feccaf4a8cd92896e0f817a14556942c064a5d03f457e·...·]-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="0633014383-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="0633014383-6">[</span><span·class="nf">s[·...·truncated·by·diffoscope;·len:·210,·SHA:·bce28920135e470bb287f054d48889479ba98b1d68c91f15a9721e79a1cc4a3a·...·]-5">)</span><span·class="p">,</span><span·class="w">
313 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="8010101134-8">(</span><span·class="p"·data-group-id="8010101134-8">)</span><span·class="w">313 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="0633014383-8">(</span><span·class="p"·data-group-id="0633014383-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="8010101134-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="8010101134-10">[</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·64,·SHA:·8dca3983d43b4bb86d9d15ea10c9a7331449a1912297b27d452b40ef347f3dc1·...·]-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="0633014383-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="0633014383-10">[</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·64,·SHA:·3f0394752ceed239fd863976c563e033172f0c1715a2db27dd908b50c7ef3b03·...·]-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="3888371451-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="3888371451-2">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><[·...·truncated·by·diffoscope;·len:·92,·SHA:·c6a33c97f1375d67cc84e568367c098154738d243aaf0187612ca2b4817159c5·...·]1-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="8413767621-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="8413767621-2">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><[·...·truncated·by·diffoscope;·len:·92,·SHA:·a9e695175a51ee1e0432f8f70aa2150f41b40f50ec61c9f1c53acf8c9757f5f4·...·]1-1">}</span><span·class="p">.</span><span·class="w">
327 </span><span·class="p"·data-group-id="3888371451-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="3888371451-4">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><[·...·truncated·by·diffoscope;·len:·92,·SHA:·55d415b153e34e74286369e4a672d3f724e0be684d11263b9f55053b4e9632c9·...·]1-3">}</span><span·class="gp·unselectable">327 </span><span·class="p"·data-group-id="8413767621-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="8413767621-4">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><[·...·truncated·by·diffoscope;·len:·92,·SHA:·5dd4fd4af89c22887622a73af29a2bb7f8d259445fcf0cab863898ef1aaa3576·...·]1-3">}</span><span·class="gp·unselectable">
328 2&gt;·</span><span·class="nf">element</span><span·class="p"·data-group-id="3888371451-5">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">P</span><span·class="p"·data-group-id="3888371451-5">)</span><span·class="p">.</span><span·class="w">328 2&gt;·</span><span·class="nf">element</span><span·class="p"·data-group-id="8413767621-5">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">P</span><span·class="p"·data-group-id="8413767621-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="3888371451-6">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="n">P</span><span·class="p"·data-group-id="3888371451-6">)</span><span·class="p">.</span><span·class="w">330 3&gt;·</span><span·class="nf">element</span><span·class="p"·data-group-id="8413767621-6">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="n">P</span><span·class="p"·data-group-id="8413767621-6">)</span><span·class="p">.</span><span·class="w">
331 </span><span·class="p"·data-group-id="3888371451-7">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><span·class="p"·data-group-id="3888371451-7">}</span><span·class="gp·unselectable">331 </span><span·class="p"·data-group-id="8413767621-7">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><span·class="p"·data-group-id="8413767621-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="3888371451-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="3888371451-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="8413767621-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="8413767621-8">)</span><span·class="p">.</span><span·class="w">
333 </span><span·class="p"·data-group-id="3888371451-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="3888371451-10">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span>[·...·truncated·by·diffoscope;·len:·94,·SHA:·18283383add2e8f0f0e8927a07ba1abd3125b127128578c0b4100766bef32608·...·]1-9">}</span><span·class="gp·unselectable">333 </span><span·class="p"·data-group-id="8413767621-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="8413767621-10">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span>[·...·truncated·by·diffoscope;·len:·94,·SHA:·3fd746bc857f231ad0226d3e469c2a014a6e1e7aa1c7bc9be7f5125da8d02d63·...·]1-9">}</span><span·class="gp·unselectable">
334 5&gt;·</span><span·class="nf">tuple_size</span><span·class="p"·data-group-id="3888371451-11">(</span><span·class="n">P</span><span·class="p"·data-group-id="3888371451-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="8413767621-11">(</span><span·class="n">P</span><span·class="p"·data-group-id="8413767621-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="3888371451-12">(</span><span·class="p"·data-group-id="3888371451-13">{</span><span·class="p"·data-group-id="3888371451-13">}</span><span·class="p"·data-group-id="3888371451-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="8413767621-12">(</span><span·class="p"·data-group-id="8413767621-13">{</span><span·class="p"·data-group-id="8413767621-13">}</span><span·class="p"·data-group-id="8413767621-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="3888371451-14">(</span><span·class="p"·data-group-id="3888371451-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="3888371451-15">}</span><s[·...·truncated·by·diffoscope;·len:·38,·SHA:·4833c69d0d2c82f7623b6aaa4b642e5f479caac0edc800693391326dbfb13e32·...·]1-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="8413767621-14">(</span><span·class="p"·data-group-id="8413767621-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="8413767621-15">}</span><s[·...·truncated·by·diffoscope;·len:·38,·SHA:·77943eb1236bd4b66a72471f1cee55998b5dadcb88ddb57006ec0f7a6fbc907f·...·]1-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="5099001263-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:·62d94bb8d413c898b79ea63009de729a95b159bd85c71ea959bbc8615e8b61b4·...·]-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="4882950719-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:·354925e6b08fdbeaf08cff3e8133ce4b7ea655eb419d2153fec2958fcdcbdd04·...·]-1">}</span><span·class="p">.</span><span·class="w">
348 </span><span·class="p"·data-group-id="5099001263-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:·7dde6adea9041f60b9d4fdbb6b663a34e9f6ff1ec6a0e06f125dbcff3485ad85·...·]-3">}</span><span·class="gp·unselectable">348 </span><span·class="p"·data-group-id="4882950719-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:·d0c16266a2da13789ccdb066f984c21f6037f33c51259f3f3f68b04008f57c50·...·]-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="5099001263-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="5099001263-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="4882950719-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="4882950719-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="5099001263-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="5099001263-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="4882950719-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="4882950719-6">)</span><span·class="p">.</span><span·class="w">
352 </span><span·class="p"·data-group-id="5099001263-7">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><span·class="p"·data-group-id="5099001263-7">}</span><span·class="gp·unselectable">352 </span><span·class="p"·data-group-id="4882950719-7">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><span·class="p"·data-group-id="4882950719-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>336 <p>Copyright·©·1996-2024·<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="0592019493-1">(</span><span·class="ss">ch1</span><span·class="p"·data-group-id="0592019493-1">)</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="8005722490-1">(</span><span·class="ss">ch1</span><span·class="p"·data-group-id="8005722490-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="0592019493-2">(</span><span·class="p"·data-group-id="0592019493-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0592019493-3">]</span><span·class="p"·data-group-id="0592019493-2">)</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="8005722490-2">(</span><span·class="p"·data-group-id="8005722490-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8005722490-3">]</span><span·class="p"·data-group-id="8005722490-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="0592019493-4">(</span><span·class="p"·data-group-id="0592019493-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:·7b942b9801fd569b38356592e2c41c9f92f0d5e7aaa5bf01a91654321a2fc57c·...·]-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="8005722490-4">(</span><span·class="p"·data-group-id="8005722490-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:·08363753afb356389d64395aa46c816f1a84a2b63788fb99234455a3aa7ffa67·...·]-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="0592019493-6">(</span><span·class="p"·data-group-id="0592019493-7">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0592019493-7">]</span><span·class="p"·data-group-id="0592019493-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="8005722490-6">(</span><span·class="p"·data-group-id="8005722490-7">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8005722490-7">]</span><span·class="p"·data-group-id="8005722490-6">)</span><span·class="p">.</span><span·class="w">
  
163 </span><span·class="nf">start</span><span·class="p"·data-group-id="0592019493-8">(</span><span·class="p"·data-group-id="0592019493-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="8005722490-8">(</span><span·class="p"·data-group-id="8005722490-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="0592019493-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="0592019493-10">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·178e26d4182c1f34636635ea454ed2544f8b4d79d7246842143078e9530c39d6·...·]-9">)</span><span·class="p">.</span><span·class="w">164 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8005722490-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="8005722490-10">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·590a7f2383b16aaf55a42e463a302af23382d0f1836e4672f0b2257526f9e8a3·...·]-9">)</span><span·class="p">.</span><span·class="w">
  
165 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="0592019493-11">(</span><span·class="p"·data-group-id="0592019493-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="8005722490-11">(</span><span·class="p"·data-group-id="8005722490-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="0592019493-12">{</span><span·class="nf">self</span><span·class="p"·data-group-id="0592019493-13">(</span><span·class="p"·data-group-id="0592019493-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:·4e5769e052f5d9c718215f32f81a62d40b3ee78545753c6e5254c42d49a4ecf9·...·]-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="8005722490-12">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8005722490-13">(</span><span·class="p"·data-group-id="8005722490-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:·8e2886a855587dc03bc22733455db090486d80e58f44c41391d06b905de2b30e·...·]-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="0592019493-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="0592019493-14">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">168 ········</span><span·class="p"·data-group-id="8005722490-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="8005722490-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="0592019493-15">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="0592019493-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="8005722490-15">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="8005722490-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="0592019493-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="0592019493-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="8005722490-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="8005722490-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="0592019493-17">(</span><span·class="p"·data-group-id="0592019493-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="8005722490-17">(</span><span·class="p"·data-group-id="8005722490-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="0592019493-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="0592019493-19">(</span><span·class="p"·data-group-id="0592019493-19">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·f065e086f26c99e8fe0aee0a24f4a3f4c7862afbc59fd99391a46e569ac53c0a·...·]-18">)</span><span·class="p">,</span><span·class="w">175 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="8005722490-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="8005722490-19">(</span><span·class="p"·data-group-id="8005722490-19">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·17d4ace7e5336d338772e61078ddcb8dad211627e14cd7bce9b7bc1bf4b44326·...·]-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="0592019493-20">(</span><span·class="p"·data-group-id="0592019493-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="8005722490-20">(</span><span·class="p"·data-group-id="8005722490-20">)</span><span·class="p">,</span><span·class="w">
177 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="0592019493-21">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="0592019493-21">)</span><span·class="p">.</span><span·class="w">177 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8005722490-21">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="8005722490-21">)</span><span·class="p">.</span><span·class="w">
  
178 </span><span·class="nf">loop</span><span·class="p"·data-group-id="0592019493-22">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="0592019493-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="8005722490-22">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="8005722490-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="0592019493-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="0592019493-23">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">180 ········</span><span·class="p"·data-group-id="8005722490-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="8005722490-23">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
181 ············</span><span·class="p"·data-group-id="0592019493-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="0592019493-24">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·143,·SHA:·07a81aab27f0f95980641ccfe7c08456c631e744b04876fff6dde84a49a1eaac·...·]-25">)</span><span·class="p">,</span><span·class="w">181 ············</span><span·class="p"·data-group-id="8005722490-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="8005722490-24">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·143,·SHA:·ca475d5d3166b42d5e015f288e37098dfeedc7cc4b47d75d47fc93ea01cbb7a9·...·]-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="0592019493-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="0592019493-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="8005722490-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="8005722490-26">}</span><span·class="p">,</span><span·class="w">
183 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="0592019493-27">(</span><span·class="n">Chs2</span><span·class="p"·data-group-id="0592019493-27">)</span><span·class="p">;</span><span·class="w">183 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="8005722490-27">(</span><span·class="n">Chs2</span><span·class="p"·data-group-id="8005722490-27">)</span><span·class="p">;</span><span·class="w">
184 ········</span><span·class="p"·data-group-id="0592019493-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="0592019493-28">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">184 ········</span><span·class="p"·data-group-id="8005722490-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="8005722490-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="0592019493-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="0592019493-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="8005722490-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="8005722490-29">)</span><span·class="p">,</span><span·class="w">
186 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="0592019493-30">(</span><span·class="n">Chs2</span><span·class="p"·data-group-id="0592019493-30">)</span><span·class="w">186 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="8005722490-30">(</span><span·class="n">Chs2</span><span·class="p"·data-group-id="8005722490-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="0711872595-1">(</span><span·class="ss">server</span><span·class="p"·data-group-id="0711872595-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="8345038477-1">(</span><span·class="ss">server</span><span·class="p"·data-group-id="8345038477-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="0711872595-2">(</span><span·class="p"·data-group-id="0711872595-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="0711872595-3">]</span><span·class="p"·data-group-id="0711872595-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="8345038477-2">(</span><span·class="p"·data-group-id="8345038477-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="8345038477-3">]</span><span·class="p"·data-group-id="8345038477-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="0711872595-4">(</span><span·class="p"·data-group-id="0711872595-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><spa[·...·truncated·by·diffoscope;·len:·115,·SHA:·bd5fadcdb268db4a380986bb3e5fb58f2e97b6339329b4b48fe0d2a2bb11ac12·...·]-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="8345038477-4">(</span><span·class="p"·data-group-id="8345038477-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><spa[·...·truncated·by·diffoscope;·len:·115,·SHA:·fec8abc1b9a25a4ef9fb611ce6feeeb75aecc036138d6f08a38814d65a3b8106·...·]-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="0711872595-6">(</span><span·class="p"·data-group-id="0711872595-7">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="0711872595-7">]</span><span·class="p"·data-group-id="0711872595-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="8345038477-6">(</span><span·class="p"·data-group-id="8345038477-7">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="8345038477-7">]</span><span·class="p"·data-group-id="8345038477-6">)</span><span·class="p">.</span><span·class="w">
  
191 </span><span·class="nf">start</span><span·class="p"·data-group-id="0711872595-8">(</span><span·class="n">Mod</span><span·class="p"·data-group-id="0711872595-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="8345038477-8">(</span><span·class="n">Mod</span><span·class="p"·data-group-id="8345038477-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="0711872595-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="0711872595-10">[</span><span·class="n">Mod</span>[·...·truncated·by·diffoscope;·len:·95,·SHA:·9284ccd43643578cad131e199623eacf96d2d321c89a89737ab1addc40771f29·...·]-9">)</span><span·class="p">.</span><span·class="w">192 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8345038477-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="8345038477-10">[</span><span·class="n">Mod</span>[·...·truncated·by·diffoscope;·len:·95,·SHA:·dcac17218ca136ddea82c56395008faed2b588caafab84bd6201f7b38bccc85c·...·]-9">)</span><span·class="p">.</span><span·class="w">
  
193 </span><span·class="nf">call</span><span·class="p"·data-group-id="0711872595-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="0711872595-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="8345038477-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="8345038477-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="0711872595-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="0711872595-13">(</span><span·class="p"·data-group-id="0711872595-13">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·5fadf4586725ece0bd7d029956d3303a00d346096da08af548317c035f0e391a·...·]-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="8345038477-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="8345038477-13">(</span><span·class="p"·data-group-id="8345038477-13">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·5d973a838a07d99bd6a6678d7805653a30e474d2abd9b89c9f82d49a48b03be0·...·]-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="0711872595-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="0711872595-14">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">196 ········</span><span·class="p"·data-group-id="8345038477-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="8345038477-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="0711872595-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="0711872595-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="8345038477-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="8345038477-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="0711872595-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="0711872595-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="8345038477-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="8345038477-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="0711872595-17">(</span><span·class="n">Mod</span><span·class="p"·data-group-id="0711872595-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="8345038477-17">(</span><span·class="n">Mod</span><span·class="p"·data-group-id="8345038477-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="0711872595-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="0711872595-19">(</span><span·class="p"·data-group-id="0711872595-19">)</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·cf02e3bb008be144b5e15e9a7068a510df4b5a3f8ff7365b1c3b12ecf9247b6f·...·]-18">)</span><span·class="p">,</span><span·class="w">203 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="8345038477-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="8345038477-19">(</span><span·class="p"·data-group-id="8345038477-19">)</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·836e32f1664df9a3a36ab0412726feb11713c6ed632c10f3671913b19e8c8c44·...·]-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="0711872595-20">(</span><span·class="p"·data-group-id="0711872595-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="8345038477-20">(</span><span·class="p"·data-group-id="8345038477-20">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="0711872595-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="0711872595-21">)</span><span·class="p">.</span><span·class="w">205 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8345038477-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="8345038477-21">)</span><span·class="p">.</span><span·class="w">
  
206 </span><span·class="nf">loop</span><span·class="p"·data-group-id="0711872595-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="0711872595-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="8345038477-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="8345038477-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="0711872595-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="0711872595-23">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 ········</span><span·class="p"·data-group-id="8345038477-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="8345038477-23">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
209 ············</span><span·class="p"·data-group-id="0711872595-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="0711872595-24">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·278,·SHA:·735b2416ecc3c8b73319718b9ade4b5b97e4925034c984976ff13ad20c2eb6ed·...·]-25">)</span><span·class="p">,</span><span·class="w">209 ············</span><span·class="p"·data-group-id="8345038477-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="8345038477-24">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·278,·SHA:·4d81a0bbd65d4d8459335fc0b6b4c01963a779b282b4ef96257c3fea70a747b9·...·]-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="0711872595-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="0711872595-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="8345038477-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="8345038477-26">}</span><span·class="p">,</span><span·class="w">
211 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="0711872595-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="0711872595-27">)</span><span·class="p">;</span><span·class="w">211 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="8345038477-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="8345038477-27">)</span><span·class="p">;</span><span·class="w">
212 ········</span><span·class="p"·data-group-id="0711872595-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="0711872595-28">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">212 ········</span><span·class="p"·data-group-id="8345038477-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="8345038477-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="0711872595-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="0711872595-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="8345038477-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="8345038477-29">)</span><span·class="p">,</span><span·class="w">
214 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="0711872595-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="0711872595-30">)</span><span·class="w">214 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="8345038477-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="8345038477-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="2580673436-1">(</span><span·class="ss">ch2</span><span·class="p"·data-group-id="2580673436-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="3671778145-1">(</span><span·class="ss">ch2</span><span·class="p"·data-group-id="3671778145-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="2580673436-2">(</span><span·class="p"·data-group-id="2580673436-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="2580673436-3">]</span><span·class="p"·data-group-id="2580673436-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="3671778145-2">(</span><span·class="p"·data-group-id="3671778145-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="3671778145-3">]</span><span·class="p"·data-group-id="3671778145-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="2580673436-4">(</span><span·class="p"·data-group-id="2580673436-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:·cfe195439de1abecd9c7a222636af1369b23ec91a1ba761d04d5ef626f9996d2·...·]-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="3671778145-4">(</span><span·class="p"·data-group-id="3671778145-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:·1a7de358370125920c86a5dffba42a2fc55b820d5be7ff3433ea4f8e2da3ce5a·...·]-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="2580673436-6">(</span><span·class="p"·data-group-id="2580673436-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:·254,·SHA:·6eb968b8ff77e120e9e91724606ae6c851905a549de94a01473cd6298262c922·...·]-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="3671778145-6">(</span><span·class="p"·data-group-id="3671778145-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:·254,·SHA:·9358a52fd4f9778ad976db1bb46d684c83bc5a454f9e07bdee5d2ffea07ef4da·...·]-6">)</span><span·class="p">.</span><span·class="w">
  
219 </span><span·class="nf">start</span><span·class="p"·data-group-id="2580673436-8">(</span><span·class="p"·data-group-id="2580673436-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="3671778145-8">(</span><span·class="p"·data-group-id="3671778145-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="2580673436-9">(</span><span·class="ss">ch2</span><span·class="p"·data-group-id="2580673436-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="3671778145-9">(</span><span·class="ss">ch2</span><span·class="p"·data-group-id="3671778145-9">)</span><span·class="p">.</span><span·class="w">
  
221 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="2580673436-10">(</span><span·class="p"·data-group-id="2580673436-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="3671778145-10">(</span><span·class="p"·data-group-id="3671778145-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="2580673436-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="2580673436-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="3671778145-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="3671778145-11">)</span><span·class="p">.</span><span·class="w">
  
223 </span><span·class="nf">free</span><span·class="p"·data-group-id="2580673436-12">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="2580673436-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="3671778145-12">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="3671778145-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="2580673436-13">(</span><span·class="ss">ch2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2580673436-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:·92,·SHA:·22afad0bbd368da61822b98cfec092c15f4fbcfce6ee9ee187c3055371818c9e·...·]-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="3671778145-13">(</span><span·class="ss">ch2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3671778145-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:·92,·SHA:·d6b336d3404b1c2dc354c36612a65078b4425a8ff70907715c67c52fdbb29779·...·]-13">)</span><span·class="p">.</span><span·class="w">
  
225 </span><span·class="nf">init</span><span·class="p"·data-group-id="2580673436-15">(</span><span·class="p"·data-group-id="2580673436-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="3671778145-15">(</span><span·class="p"·data-group-id="3671778145-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="2580673436-16">(</span><span·class="p"·data-group-id="2580673436-16">)</span><span·class="p">.</span><span·class="w">226 ····</span><span·class="nf">channels</span><span·class="p"·data-group-id="3671778145-16">(</span><span·class="p"·data-group-id="3671778145-16">)</span><span·class="p">.</span><span·class="w">
  
227 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="2580673436-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="2580673436-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="3671778145-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="3671778145-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="2580673436-18">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="2580673436-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="3671778145-18">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="3671778145-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="2580673436-19">(</span><span·class="p"·data-group-id="2580673436-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="2580673436-20">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·788dfaebb0a868e4b59e455e9590a75fef05503a923abe357fdc817f6a8c270f·...·]-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="3671778145-19">(</span><span·class="p"·data-group-id="3671778145-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="3671778145-20">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·cc599bf78db71f44beb7417b0cb5293a193a6380119033fe9f149d3c00cd8e7f·...·]-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="2580673436-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="2580673436-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="3671778145-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="3671778145-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="1106962938-1">(</span><span·class="p"·data-group-id="1106962938-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="6825252479-1">(</span><span·class="p"·data-group-id="6825252479-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
240 ···</span><span·class="p"·data-group-id="1106962938-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="1106962938-3">[</span><span·class="p"·data-group-id="1106962938-3">]</span>[·...·truncated·by·diffoscope;·len:·498,·SHA:·eefd92cf5bdfc3b940cc088b1a57543b25b4da41bfb03ea7e5aabdc5f39bb1f2·...·]-2">}</span><span·class="p">.</span><span·class="w">240 ···</span><span·class="p"·data-group-id="6825252479-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="6825252479-3">[</span><span·class="p"·data-group-id="6825252479-3">]</span>[·...·truncated·by·diffoscope;·len:·498,·SHA:·4b18ffd40f8dfb20f5bab453211e12edd64784b773103e84d6dc0922eb20f884·...·]-2">}</span><span·class="p">.</span><span·class="w">
  
241 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="1106962938-5">(</span><span·class="p"·data-group-id="1106962938-6">{</span><span·class="n">Allocated</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1106962938-7">[</span><span·class="n">H</span><span·class="p">|</span>[·...·truncated·by·diffoscope;·len:·294,·SHA:·586afb6ca16c12dcedd77db61b0e903354830d8070fee705d655540bdf48b947·...·]-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="6825252479-5">(</span><span·class="p"·data-group-id="6825252479-6">{</span><span·class="n">Allocated</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6825252479-7">[</span><span·class="n">H</span><span·class="p">|</span>[·...·truncated·by·diffoscope;·len:·294,·SHA:·29dca52d3a20d6634f5f8e75a146e83a4c958c53fca07b901ed324940828534e·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
242 ···</span><span·class="p"·data-group-id="1106962938-8">{</span><span·class="n">H</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1106962938-9">{</span><span·class="p"·data-group-id="1106962938-10">[</span><span·class="n">H</span><span·class="p">|</span><span·c[·...·truncated·by·diffoscope;·len:·245,·SHA:·9279c551ff21b71237676560d00873b972fb89d79f42b497223d6737e69cf217·...·]-8">}</span><span·class="p">.</span><span·class="w">242 ···</span><span·class="p"·data-group-id="6825252479-8">{</span><span·class="n">H</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6825252479-9">{</span><span·class="p"·data-group-id="6825252479-10">[</span><span·class="n">H</span><span·class="p">|</span><span·c[·...·truncated·by·diffoscope;·len:·245,·SHA:·98d7d13b93b8657c2e8fafb5bd58f4ac3ad9a00a76b8e9d758541071aa2b22cf·...·]-8">}</span><span·class="p">.</span><span·class="w">
  
243 </span><span·class="nf">free</span><span·class="p"·data-group-id="1106962938-11">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1106962938-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:·5833e316e2ed946ea2c1243e9dd88ebd49ab7d38c7a78b488f5a55df4f23a649·...·]-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="6825252479-11">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6825252479-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:·3583b667b7fce3d93f3b12e40aac958a0bc292a5219cb76c9c8dd6973a2de03a·...·]-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="1106962938-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="1106962938-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="6825252479-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="6825252479-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="1106962938-14">{</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="1106962938-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:·aa9f0844270d6e733c559a9a6f28b8c83773c9dc0c16244b72ac6a14437a895d·...·]-14">}</span><span·class="p">;</span><span·class="w">246 ·········</span><span·class="p"·data-group-id="6825252479-14">{</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="6825252479-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:·6c9064754bb68cdf6c35af9063a3cfe7cf5403ebc883dd096e658dbf9cf9e04b·...·]-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="4007483909-1">(</span><span·class="ss">chs3</span><span·class="p"·data-group-id="4007483909-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="5789474704-1">(</span><span·class="ss">chs3</span><span·class="p"·data-group-id="5789474704-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="4007483909-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="4007483909-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="5789474704-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="5789474704-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="4007483909-3">(</span><span·class="ss">chs3</span><span·class="p"·data-group-id="4007483909-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="5789474704-3">(</span><span·class="ss">chs3</span><span·class="p"·data-group-id="5789474704-3">)</span><span·class="p">.</span><span·class="w">
259 </span><span·class="p">.</span><span·class="o">/</span><span·class="ss">chs3</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">undefined</span><span·class="w">·</span><span·class="ss">call</span><span·class="o">-</span><span·class="ss">back</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="ss">handle_call</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">259 </span><span·class="p">.</span><span·class="o">/</span><span·class="ss">chs3</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">undefined</span><span·class="w">·</span><span·class="ss">call</span><span·class="o">-</span><span·class="ss">back</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="ss">handle_call</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">
Max diff block lines reached; 980/60381 bytes (1.62%) 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="3183444241-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="3183444241-1">)</span><span·class="mi">1</span><span·class="o"[·...·truncated·by·diffoscope;·len:·157,·SHA:·14efc600fd749171af4cfcaa3b4e04ac3f4cd3d6d008ed634d1fd19ddf166c87·...·]1-2">)</span><span·class="p">.</span><span·class="w">149 </span><span·class="p"·data-group-id="9766169091-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="9766169091-1">)</span><span·class="mi">1</span><span·class="o"[·...·truncated·by·diffoscope;·len:·157,·SHA:·07a561fac2ee019bb2f8199c4319fe3061781899486d140951ce5cf70527a1da·...·]1-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="3183444241-3">(</span><span·class="p"·data-group-id="3183444241-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="9766169091-3">(</span><span·class="p"·data-group-id="9766169091-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="2791561142-1">(</span><span·class="p"·data-group-id="2791561142-1">)</span><span·class="p">.</span><span·class="w">154 1&gt;·</span><span·class="nf">node</span><span·class="p"·data-group-id="3353314548-1">(</span><span·class="p"·data-group-id="3353314548-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="2791561142-2">(</span><span·class="p"·data-group-id="2791561142-3">[</span><span·class="ss">dilbert</span><span·class="p">,</span><span·class="ss">shortnames</span><span·class="p"·data-group-id="2791561142-3">]</span><span·class="p"·data-group-id="27915611[·...·truncated·by·diffoscope;·len:·2,·SHA:·73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049·...·]-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="3353314548-2">(</span><span·class="p"·data-group-id="3353314548-3">[</span><span·class="ss">dilbert</span><span·class="p">,</span><span·class="ss">shortnames</span><span·class="p"·data-group-id="3353314548-3">]</span><span·class="p"·data-group-id="33533145[·...·truncated·by·diffoscope;·len:·2,·SHA:·98010bd9270f9b100b6214a21754fd33bdc8d41b2bc9f9dd16ff54d3c34ffd71·...·]-2">)</span><span·class="p">.</span><span·class="w">
157 </span><span·class="p"·data-group-id="2791561142-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="2791561142-4">}</span><span·class="gp·unselectable">157 </span><span·class="p"·data-group-id="3353314548-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="3353314548-4">}</span><span·class="gp·unselectable">
158 (dilbert@uab)3&gt;·</span><span·class="nf">node</span><span·class="p"·data-group-id="2791561142-5">(</span><span·class="p"·data-group-id="2791561142-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="3353314548-5">(</span><span·class="p"·data-group-id="3353314548-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>361 <p>Copyright·©·1996-2024·<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="9514312333-1">[</span><span·class="p"·data-group-id="9514312333-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="8692567243-1">[</span><span·class="p"·data-group-id="8692567243-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
158 ··</span><span·class="p"·data-group-id="9514312333-3">[</span><span·class="p"·data-group-id="9514312333-4">{</span><span·class="ss">distributed</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9514312333-5">[</span><span·class="p"·data-group-id="9514312333-6">[·...·truncated·by·diffoscope;·len:·711,·SHA:·4f617228a1b4b52130dc11ada82d40022e3c78a3ac6e5a2198495eb12b7472a8·...·]3-4">}</span><span·class="p">,</span><span·class="w">158 ··</span><span·class="p"·data-group-id="8692567243-3">[</span><span·class="p"·data-group-id="8692567243-4">{</span><span·class="ss">distributed</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8692567243-5">[</span><span·class="p"·data-group-id="8692567243-6">[·...·truncated·by·diffoscope;·len:·711,·SHA:·fb24484028aa6b5e86ffa1efffbbee0c5b99cddf3cb0909c566ffd816e0ab9c3·...·]3-4">}</span><span·class="p">,</span><span·class="w">
159 ···</span><span·class="p"·data-group-id="9514312333-9">{</span><span·class="ss">sync_nodes_mandatory</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9514312333-10">[</span><span·class="ss">cp2@cave</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·118,·SHA:·dc74b532038a80010fad3b6ec7eca3a89fa6d5526baabdf2e1d8103d49ada40c·...·]3-9">}</span><span·class="p">,</span><span·class="w">159 ···</span><span·class="p"·data-group-id="8692567243-9">{</span><span·class="ss">sync_nodes_mandatory</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8692567243-10">[</span><span·class="ss">cp2@cave</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·118,·SHA:·53c268b99075edff1b3d55bb95fac6f8170c42dad52e820e43c0a965abd3eabf·...·]3-9">}</span><span·class="p">,</span><span·class="w">
160 ···</span><span·class="p"·data-group-id="9514312333-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="9514312333-11">}</span><span·class="w">160 ···</span><span·class="p"·data-group-id="8692567243-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="8692567243-11">}</span><span·class="w">
161 ··</span><span·class="p"·data-group-id="9514312333-3">]</span><span·class="w">161 ··</span><span·class="p"·data-group-id="8692567243-3">]</span><span·class="w">
162 ·</span><span·class="p"·data-group-id="9514312333-2">}</span><span·class="w">162 ·</span><span·class="p"·data-group-id="8692567243-2">}</span><span·class="w">
163 </span><span·class="p"·data-group-id="9514312333-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="8692567243-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="8472435814-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="8472435814-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="0051442948-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="0051442948-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="2442120338-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="2442120338-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="2397096175-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="2397096175-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="3704909061-1">(</span><span·class="p"·data-group-id="3704909061-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="3704909061-2">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·100,·SHA:·5f7b07798e87662ace6fcbf0c38f6ca105c5efe0e876de7885c127d5f82d9b89·...·]-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="0098124904-1">(</span><span·class="p"·data-group-id="0098124904-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="0098124904-2">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·100,·SHA:·a585ac7bd91ca24a4b248c688d1fffa30c16df410bc6990eb436465ffabc9e67·...·]-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="7318091823-1">(</span><span·class="p"·data-group-id="7318091823-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="7318091823-2">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·98,·SHA:·ed0b7e887d5cf250f855cd70140ed8bd84b3100e8b215402e37a144104b4c737·...·]23-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="4483702023-1">(</span><span·class="p"·data-group-id="4483702023-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="4483702023-2">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·98,·SHA:·c0af2603d4d06861b5d9367c9f67f4be801d9857a03d377a34379dd5359c5447·...·]23-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>262 <p>Copyright·©·1996-2024·<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="8616166977-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="8616166977-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="2716838311-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="2716838311-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="8616166977-2">(</span><span·class="p"·data-group-id="8616166977-3">[</span><span·class="ss">add</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="8616166977-3">]</span><span·class="p"·data-group-id="8616166977-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="2716838311-2">(</span><span·class="p"·data-group-id="2716838311-3">[</span><span·class="ss">add</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="2716838311-3">]</span><span·class="p"·data-group-id="2716838311-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="8616166977-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="8616166977-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="2716838311-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="2716838311-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="6340070461-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="6340070461-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="3914650506-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="3914650506-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="6340070461-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="6340070461-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="3914650506-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="3914650506-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="6340070461-3">(</span><span·class="p"·data-group-id="6340070461-4">[</span><span·class="ss">add</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="6340070461-4">]</span><span·class="p"·data-group-id="6340070461-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="3914650506-3">(</span><span·class="p"·data-group-id="3914650506-4">[</span><span·class="ss">add</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="3914650506-4">]</span><span·class="p"·data-group-id="3914650506-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="6340070461-5">(</span><span·class="p"·data-group-id="6340070461-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="634007[·...·truncated·by·diffoscope;·len:·57,·SHA:·71947b48cd270325b8a3df5897562e1d66e646de075d635e65bd906bff34a273·...·]-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="3914650506-5">(</span><span·class="p"·data-group-id="3914650506-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="391465[·...·truncated·by·diffoscope;·len:·57,·SHA:·75d4b8604e5d78ad8f91c98de998bce622a38d87fcce1306cb389ac22a603e5c·...·]-5">)</span><span·class="p">.</span><span·class="w">
157 </span><span·class="nf">add</span><span·class="p"·data-group-id="6340070461-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="6340070461-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="3914650506-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="3914650506-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="6553899804-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:·100f9336e8859c82ae1d832d95b9b049529618e295d4e46e38836db6477d7e00·...·]-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="2845753006-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:·d73f7fbdca85476d64dd43c500a9af33ee64665250ab3a4d4e804b2cda668f85·...·]-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="6553899804-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="6553899804-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="2845753006-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="2845753006-2">}</span><span·class="p">.</span><span·class="w">
163 </span><span·class="nf">add</span><span·class="p"·data-group-id="6553899804-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="6553899804-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="2845753006-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="2845753006-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="5119180816-1">(</span><span·class="p"·data-group-id="5119180816-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="5119180816-2">}</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·cb63fb97b6b08293490a368b24917f77871e77f51e0958a0f209eedf8e868bb3·...·]-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="5722023589-1">(</span><span·class="p"·data-group-id="5722023589-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="5722023589-2">}</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·df299d09d8444457ac3199d3f133cb59bbd02e1e3d4512544d69331c30e4a898·...·]-1">)</span><span·class="p">.</span><span·class="w">
176 </span><span·class="nf">add</span><span·class="p"·data-group-id="5119180816-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="5119180816-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="5722023589-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="5722023589-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="8333964321-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="8333964321-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="6425410944-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="6425410944-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="3612000555-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="3612000555-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="1095164484-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="1095164484-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="3612000555-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:·20a2dae0982998d3609f2a91aee2e7e037982215ad0c997c5c3c83067963bb6b·...·]-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="1095164484-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:·2dbb41930d6801cbeef3b12dcc14a757dc1589a13677616c7f524782a5e94aa3·...·]-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="3612000555-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="3612000555-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="1095164484-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="1095164484-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="6588940682-1">(</span><span·class="p"·data-group-id="6588940682-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="6588940682-2">{</span><span·class="ss">arith</span><spa[·...·truncated·by·diffoscope;·len:·275,·SHA:·20bbbe9dc14bff9782cc8b3902c0c974db98d8c43ad1ab5e8d79293e80e717a2·...·]-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="6411982473-1">(</span><span·class="p"·data-group-id="6411982473-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="6411982473-2">{</span><span·class="ss">arith</span><spa[·...·truncated·by·diffoscope;·len:·275,·SHA:·59222e81771e653de181130404e093ca887ba3270c0fd9afb9ccb0200289dfb6·...·]-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="6588940682-4">(</span><span·class="nf">number</span><span·class="p"·data-group-id="6588940682-5">(</span><span·class="p"·data-group-id="6588940682-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">number</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·338,·SHA:·02fc02b7d1fc8d9fe76bb4c99e84bec732005e692a33a25f41cd3a0c7a34003c·...·]-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="6411982473-4">(</span><span·class="nf">number</span><span·class="p"·data-group-id="6411982473-5">(</span><span·class="p"·data-group-id="6411982473-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">number</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·338,·SHA:·e45caa58c43317dba1038d9bd7b94c66316a0c37941b54f413a1d202184d641b·...·]-7">)</span><span·class="p">.</span><span·class="w">
236 </span><span·class="nf">add</span><span·class="p"·data-group-id="6588940682-8">(</span><span·class="p"·data-group-id="6588940682-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="6588940682-9">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·661,·SHA:·9acfe7f7c1523cb46d51b72fd2960963977914c38db9c334a3c080d1e97db57d·...·]-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="6411982473-8">(</span><span·class="p"·data-group-id="6411982473-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="6411982473-9">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·661,·SHA:·ca6b724de7ae17712f33c4779518cb2266a3f48125b30186cacad42add7e3ed1·...·]-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="8376403013-1">(</span><span·class="n">PORT_NAMES</span><span·class="p"·data-group-id="8376403013-2">(</span><span·class="p"·data-group-id="8376403013-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="9738677350-1">(</span><span·class="n">PORT_NAMES</span><span·class="p"·data-group-id="9738677350-2">(</span><span·class="p"·data-group-id="9738677350-2">)</span><span·class="p">,</span><span·class="w">
130 »       </span><span·class="p"·data-group-id="8376403013-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="9738677350-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="8376403013-3">}</span><span·class="p"·data-group-id="8376403013-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="9738677350-3">}</span><span·class="p"·data-group-id="9738677350-1">)</span><span·class="p">.</span><span·class="w">
  
134 </span><span·class="nf">client_port</span><span·class="p"·data-group-id="8376403013-4">(</span><span·class="p"·data-group-id="8376403013-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="9738677350-4">(</span><span·class="p"·data-group-id="9738677350-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="8376403013-5">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="8376403013-6">(</span><span·class="ss">scheduler_id</span><span·class="p"·data-group-id="8376403013-6">)</span><sp[·...·truncated·by·diffoscope;·len:·363,·SHA:·7db3e87c890a50265c4b396387827e5e5033dee290d6b4c3fff2fd2b76e4d02c·...·]-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">135 ····</span><span·class="nf">element</span><span·class="p"·data-group-id="9738677350-5">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="9738677350-6">(</span><span·class="ss">scheduler_id</span><span·class="p"·data-group-id="9738677350-6">)</span><sp[·...·truncated·by·diffoscope;·len:·363,·SHA:·4806d538e7278db78cd74c0ac2cac0ad30d0fa03529cc0231689e15418f2c0ac·...·]-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="8376403013-9">(</span><span·class="p"·data-group-id="8376403013-9">)</span><span·class="p"·data-group-id="8376403013-5">)</span><span·class="p">.</span></code></pre><p>As·long·as·there·are·no·more·than·16·schedulers,·there·will·never·be·any·lock136 »       ····</span><span·class="o">?</span><span·class="n">PORT_NAMES</span><span·class="p"·data-group-id="9738677350-9">(</span><span·class="p"·data-group-id="9738677350-9">)</span><span·class="p"·data-group-id="9738677350-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>230 <p>Copyright·©·1996-2024·<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="9592564669-1">(</span><span·class="ss">one</span><span·class="p"·data-group-id="9592564669-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="3816395844-1">(</span><span·class="ss">one</span><span·class="p"·data-group-id="3816395844-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="9592564669-2">(</span><span·class="ss">two</span><span·class="p"·data-group-id="9592564669-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="3816395844-2">(</span><span·class="ss">two</span><span·class="p"·data-group-id="3816395844-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="9592564669-3">(</span><span·class="ss">three</span><span·class="p"·data-group-id="9592564669-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="3816395844-3">(</span><span·class="ss">three</span><span·class="p"·data-group-id="3816395844-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="9592564669-4">(</span><span·class="n">Int</span><span·class="p"·data-group-id="9592564669-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="9592564669-5">([·...·truncated·by·diffoscope;·len:·74,·SHA:·5034bbf073592e27284953f09ea1bb8321b43ff184bb1f9db18d52754fa89e86·...·]-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="3816395844-4">(</span><span·class="n">Int</span><span·class="p"·data-group-id="3816395844-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="3816395844-5">([·...·truncated·by·diffoscope;·len:·74,·SHA:·6f945ad0f67c44b24bb7654153aa1e3804a5a3bd4864d752b8e49b5fe153a702·...·]-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="9592564669-6">(</span><span·class="ss">four</span><span·class="p"·data-group-id="9592564669-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="3816395844-6">(</span><span·class="ss">four</span><span·class="p"·data-group-id="3816395844-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="9592564669-7">(</span><span·class="ss">five</span><span·class="p"·data-group-id="9592564669-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="3816395844-7">(</span><span·class="ss">five</span><span·class="p"·data-group-id="3816395844-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="9592564669-8">(</span><span·class="ss">six</span><span·class="p"·data-group-id="9592564669-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="3816395844-8">(</span><span·class="ss">six</span><span·class="p"·data-group-id="3816395844-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="9665912808-1">(</span><span·class="ss">one</span><span·class="p"·data-group-id="9665912808-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="9801108170-1">(</span><span·class="ss">one</span><span·class="p"·data-group-id="9801108170-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="9665912808-2">(</span><span·class="ss">two</span><span·class="p"·data-group-id="9665912808-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="9801108170-2">(</span><span·class="ss">two</span><span·class="p"·data-group-id="9801108170-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="9665912808-3">(</span><span·class="ss">three</span><span·class="p"·data-group-id="9665912808-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="9801108170-3">(</span><span·class="ss">three</span><span·class="p"·data-group-id="9801108170-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="9665912808-4">(</span><span·class="ss">four</span><span·class="p"·data-group-id="9665912808-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="9801108170-4">(</span><span·class="ss">four</span><span·class="p"·data-group-id="9801108170-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="9665912808-5">(</span><span·class="ss">five</span><span·class="p"·data-group-id="9665912808-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="9801108170-5">(</span><span·class="ss">five</span><span·class="p"·data-group-id="9801108170-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="9665912808-6">(</span><span·class="ss">six</span><span·class="p"·data-group-id="9665912808-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="9801108170-6">(</span><span·class="ss">six</span><span·class="p"·data-group-id="9801108170-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="9665912808-7">(</span><span·class="n">Int</span><span·class="p"·data-group-id="9665912808-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="9665912808-8">(<[·...·truncated·by·diffoscope;·len:·702,·SHA:·18222239dff971509403d1946065f67cc8922570951a0d828f1fb3e90dda01ba·...·]-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="9801108170-7">(</span><span·class="n">Int</span><span·class="p"·data-group-id="9801108170-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="9801108170-8">(<[·...·truncated·by·diffoscope;·len:·702,·SHA:·4b1eb0acffa14b27646e84bc32238cd1c82daa0b6cc68e41b608b99bc9075b22·...·]-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="3394303781-3">(</span><span·class="ss">one</span><span·class="p"·data-group-id="3394303781-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="8963979604-3">(</span><span·class="ss">one</span><span·class="p"·data-group-id="8963979604-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="3394303781-4">(</span><span·class="ss">two</span><span·class="p"·data-group-id="3394303781-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="8963979604-4">(</span><span·class="ss">two</span><span·class="p"·data-group-id="8963979604-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="3394303781-5">(</span><span·class="ss">three</span><span·class="p"·data-group-id="3394303781-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="8963979604-5">(</span><span·class="ss">three</span><span·class="p"·data-group-id="8963979604-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="3394303781-6">(</span><span·class="ss">four</span><span·class="p"·data-group-id="3394303781-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="8963979604-6">(</span><span·class="ss">four</span><span·class="p"·data-group-id="8963979604-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="3394303781-7">(</span><span·class="ss">five</span><span·class="p"·data-group-id="3394303781-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="8963979604-7">(</span><span·class="ss">five</span><span·class="p"·data-group-id="8963979604-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="3394303781-8">(</span><span·class="ss">six</span><span·class="p"·data-group-id="3394303781-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:·30ad06295f9c37fcdb42336d9d9275d4d92dd2e887778a83722f794ef4857d3e·...·]-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="8963979604-8">(</span><span·class="ss">six</span><span·class="p"·data-group-id="8963979604-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:·c6fa18097c73cbb9d65478d67bcaafd2e93e3f6e2ffe2a12ce20403c5262bdcf·...·]-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="4224990577-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="4224990577-4">[</span><span·clas[·...·truncated·by·diffoscope;·len:·84,·SHA:·926d5f06417c845347610a59223af4fdbc41d15ef2d9358ea236702f6b38834e·...·]-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="9566646501-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="9566646501-4">[</span><span·clas[·...·truncated·by·diffoscope;·len:·84,·SHA:·a6abb1bfcc8a3c14b619702b4643a525e80c382bc6faf267d89b6e0c406d39e2·...·]-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="4224990577-5">(</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4224990577-6">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="422[·...·truncated·by·diffoscope;·len:·287,·SHA:·1610946521a7adb6408d1321a2fcb96f1ab9046514d1825c908f0dae6ad9baf0·...·]-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="9566646501-5">(</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9566646501-6">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="956[·...·truncated·by·diffoscope;·len:·287,·SHA:·331c8473a004bed2e52190251b2362c4ee5ef0c89a0706d572fdd52bfbee9a97·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
162 ····</span><span·class="p"·data-group-id="4224990577-8">[</span><span·class="n">Map</span><span·class="p"·data-group-id="4224990577-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="4224990577-9">)</span><span·[·...·truncated·by·diffoscope;·len:·373,·SHA:·65b5f2aab1519461583858e76ee0db2217830ab3217d8436058a9fc1651e38fc·...·]-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="9566646501-8">[</span><span·class="n">Map</span><span·class="p"·data-group-id="9566646501-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="9566646501-9">)</span><span·[·...·truncated·by·diffoscope;·len:·373,·SHA:·ccf2c4789df54acd77b62803fa574a6507be21a6a1f7ec77af1b3c98cea27e85·...·]-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="1883705495-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="1883705495-2">[</span><span·class="p"·data-group-id="1883705495-2">]</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·84,·SHA:·4d15f9324260663f137d4c5118a279f8fa9cb024c6a7badee1da0315c124e832·...·]-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="0653290160-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="0653290160-2">[</span><span·class="p"·data-group-id="0653290160-2">]</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·84,·SHA:·b8b744d9c4110179d4b701dadcb586c510bd57dac6f9951c9818d1e60aec3df7·...·]-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="1883705495-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="1883705495-4">[</span><span·class="p">_</span><span·class="p">|</span><span·class="p">_</span><span·class[·...·truncated·by·diffoscope;·len:·310,·SHA:·1a6c0d36da906f68cdcdf3e847fbad0eb32513d4070b4140c04865482cca797a·...·]-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="0653290160-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="0653290160-4">[</span><span·class="p">_</span><span·class="p">|</span><span·class="p">_</span><span·class[·...·truncated·by·diffoscope;·len:·310,·SHA:·c520c72838d9a352bd94a6477ed743416105157c72cd2afa9c87cefb5b84eb18·...·]-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="1883705495-6">(</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1883705495-7">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="188[·...·truncated·by·diffoscope;·len:·287,·SHA:·37bd75167e69d92c9224f12c182a04c40ee0d09494996382e4c3ed701a5197e6·...·]-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="0653290160-6">(</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0653290160-7">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="065[·...·truncated·by·diffoscope;·len:·287,·SHA:·1a090de9ceb73f2490ec9c050e5b36b0e9478aac5e2bbab4bdd7ee343f4c99b5·...·]-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 ····</span><span·class="p"·data-group-id="1883705495-9">[</span><span·class="n">Map</span><span·class="p"·data-group-id="1883705495-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="1883705495-10">)</span><spa[·...·truncated·by·diffoscope;·len:·898,·SHA:·6bc679ceaea7414bba21991fa19c048829b3a1f0c916994ab7f0cbe5fe53d28a·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">172 ····</span><span·class="p"·data-group-id="0653290160-9">[</span><span·class="n">Map</span><span·class="p"·data-group-id="0653290160-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="0653290160-10">)</span><spa[·...·truncated·by·diffoscope;·len:·898,·SHA:·37e6de7ca1a053d9455cb10aae906aa0ce2da38736cb835e3a4aad4a4338c611·...·]-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="7191446151-2">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="7191446151-2">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">174 »       </span><span·class="p"·data-group-id="5550927194-2">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="5550927194-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="7191446151-3">[</span><span·class="n">Y</span><span·class="p">|</span><span·class="n">Ys</span><span·class="p"·data-group-id="7191446151-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 »       »       </span><span·class="p"·data-group-id="5550927194-3">[</span><span·class="n">Y</span><span·class="p">|</span><span·class="n">Ys</span><span·class="p"·data-group-id="5550927194-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 »       »       ····</span><span·class="p"·data-group-id="7191446151-4">[</span><span·class="n">Map</span><span·class="p"·data-group-id="7191446151-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="7191446151-5">)</span><span·[·...·truncated·by·diffoscope;·len:·379,·SHA:·0957cad254aeab18f58bb6fe42eb481540bb970a3081638f7f2a116e5d2ba42f·...·]-4">]</span><span·class="p">;</span><span·class="w">177 »       »       ····</span><span·class="p"·data-group-id="5550927194-4">[</span><span·class="n">Map</span><span·class="p"·data-group-id="5550927194-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="5550927194-5">)</span><span·[·...·truncated·by·diffoscope;·len:·379,·SHA:·b0316b72f8aeec7a89e31d1790e9959a667e036e6b2e3df42c0626b808b80f86·...·]-4">]</span><span·class="p">;</span><span·class="w">
178 »       »       </span><span·class="p"·data-group-id="7191446151-7">[</span><span·class="p"·data-group-id="7191446151-7">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 »       »       </span><span·class="p"·data-group-id="5550927194-7">[</span><span·class="p"·data-group-id="5550927194-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="7191446151-8">[</span><span·class="p"·data-group-id="7191446151-8">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">181 »       </span><span·class="p"·data-group-id="5550927194-8">[</span><span·class="p"·data-group-id="5550927194-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>255 <p>Copyright·©·1996-2024·<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="2792385609-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="2792385609-1">]</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·1122,·SHA:·45cdb1ff491fb0204032297f4b1f2c522d47e5d401cc9eb0a8d0f1d63bfefcc9·...·]-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="4124218461-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="4124218461-1">]</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·1122,·SHA:·c288c5e7ea849b467036edc7658a81089e23bac42218334e79a4dbb5e7ebed24·...·]-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="2792385609-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><sp[·...·truncated·by·diffoscope;·len:·399,·SHA:·271f85046ca802ad94c75d2d996352c4f24cfa83172dec22dc69e92e0344eb49·...·]-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="4124218461-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><sp[·...·truncated·by·diffoscope;·len:·399,·SHA:·93e2af132704003867b2a01643e5a24258a95494a3063a8a8b98e4887920c4c4·...·]-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="2792385609-9">(</span><span·class="p"·data-group-id="2792385609-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="4124218461-9">(</span><span·class="p"·data-group-id="4124218461-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="2792385609-10">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Bytes</span><span·class="p"·data-group-id="2792385609-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">process_info</[·...·truncated·by·diffoscope;·len:·341,·SHA:·95fb88710be2c74e61cdcb5a957a35f047f5daf6b582d43ecf65a0374ec3c6b6·...·]-11">)</span><span·class="p">.</span><span·class="w">130 2&gt;·</span><span·class="p"·data-group-id="4124218461-10">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Bytes</span><span·class="p"·data-group-id="4124218461-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">process_info</[·...·truncated·by·diffoscope;·len:·341,·SHA:·d610dd432b442a8c62e0897b04da8b1d20bb7d51bcc6e294461c86eeb7c2185b·...·]-11">)</span><span·class="p">.</span><span·class="w">
131 </span><span·class="p"·data-group-id="2792385609-13">{</span><span·class="nb">memory</span><span·class="p">,</span><span·class="mi">2616</span><span·class="p"·data-group-id="2792385609-13">}</span><span·class="gp·unselectable">131 </span><span·class="p"·data-group-id="4124218461-13">{</span><span·class="nb">memory</span><span·class="p">,</span><span·class="mi">2616</span><span·class="p"·data-group-id="4124218461-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="2792385609-14">(</span><span·class="ss">wordsize</span><span·class="p"·data-group-id="2792385609-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="4124218461-14">(</span><span·class="ss">wordsize</span><span·class="p"·data-group-id="4124218461-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="8493940792-1">(</span><span·class="p"·data-group-id="8493940792-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="4598248822-1">(</span><span·class="p"·data-group-id="4598248822-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="8493940792-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="8493940792-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">137 ·····</span><span·class="p"·data-group-id="4598248822-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="4598248822-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="8493940792-3">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="8493940792-3">)</span><span·class="p">,</span><span·class="w">138 ·········</span><span·class="nf">handle_sys_msg</span><span·class="p"·data-group-id="4598248822-3">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="4598248822-3">)</span><span·class="p">,</span><span·class="w">
139 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="8493940792-4">(</span><span·class="p"·data-group-id="8493940792-4">)</span><span·class="p">;</span><span·class="w">139 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="4598248822-4">(</span><span·class="p"·data-group-id="4598248822-4">)</span><span·class="p">;</span><span·class="w">
140 ·····</span><span·class="p"·data-group-id="8493940792-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="8493940792-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">140 ·····</span><span·class="p"·data-group-id="4598248822-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="4598248822-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="8493940792-6">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="8493940792-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="4598248822-6">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="4598248822-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="8493940792-7">(</span><span·class="p"·data-group-id="8493940792-7">)</span><span·class="w">143 ··········</span><span·class="nf">loop</span><span·class="p"·data-group-id="4598248822-7">(</span><span·class="p"·data-group-id="4598248822-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="8493940792-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="8493940792-9">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·64,·SHA:·2c33845f085f1229041efdf1c13254e96820f5479df07895b609a17e36179133·...·]2-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="4598248822-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="4598248822-9">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·64,·SHA:·95eea898758bb63df0b50e620e9d27dd98899d3df34bd6f99c917e316a8d1e40·...·]2-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="7250797102-1">(</span><span·class="p"·data-group-id="7250797102-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="3359654145-1">(</span><span·class="p"·data-group-id="3359654145-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="7250797102-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="7250797102-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">149 ······</span><span·class="p"·data-group-id="3359654145-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="3359654145-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="7250797102-3">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="7250797102-3">)</span><span·class="p">,</span><span·class="w">150 ·········</span><span·class="nf">handle_sys_msg</span><span·class="p"·data-group-id="3359654145-3">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="3359654145-3">)</span><span·class="p">,</span><span·class="w">
151 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="7250797102-4">(</span><span·class="p"·data-group-id="7250797102-4">)</span><span·class="p">;</span><span·class="w">151 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="3359654145-4">(</span><span·class="p"·data-group-id="3359654145-4">)</span><span·class="p">;</span><span·class="w">
152 ······</span><span·class="p"·data-group-id="7250797102-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="7250797102-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">152 ······</span><span·class="p"·data-group-id="3359654145-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="3359654145-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="7250797102-6">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="7250797102-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="3359654145-6">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="3359654145-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="7250797102-7">(</span><span·class="p"·data-group-id="7250797102-7">)</span><span·class="w">155 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="3359654145-7">(</span><span·class="p"·data-group-id="3359654145-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="7122997632-1">(</span><span·class="n">Message</span><span·class="p"·data-group-id="7122997632-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="3791711599-1">(</span><span·class="n">Message</span><span·class="p"·data-group-id="3791711599-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="9994590782-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="9994590782-1">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·157,·SHA:·bfc0013326d13733983af6884b3bdf93b0cb2f9a8b72c60cc8d714c387cb8ba1·...·]-2">)</span><span·class="w">200 ····</span><span·class="p"·data-group-id="0535691488-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="0535691488-1">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·157,·SHA:·36857354970dcb9346c75e26898d87a8b57f4ec719a9605a8f395e02d5cade2a·...·]-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="0320452728-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="0320452728-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="6153818304-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="6153818304-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="0320452728-2">{</span><span·class="nf">self</span><span·class="p"·data-group-id="0320452728-3">(</span><span·class="p"·data-group-id="0320452728-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:·275bd28c6365da25420a880502feba7d1858caa5399d430b37145bf8a125924b·...·]-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="6153818304-2">{</span><span·class="nf">self</span><span·class="p"·data-group-id="6153818304-3">(</span><span·class="p"·data-group-id="6153818304-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:·1cabd4202b0038f94f40006b999eb122d73d22bdd5b37e7aef5e6d77ffed654e·...·]-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="0320452728-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="0320452728-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">207 ····</span><span·class="p"·data-group-id="6153818304-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="6153818304-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="0320452728-5">(</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0320452728-6">[</span><span·class="ss">flush</span><span·class="p"·data-group-id="0320452728-6">]</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·dc07a2c3915596ca3ff3f2f3abd61e68828b9c4870dde3683c640952574abfcd·...·]-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="6153818304-5">(</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6153818304-6">[</span><span·class="ss">flush</span><span·class="p"·data-group-id="6153818304-6">]</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·39a5d273540a096a4cee9e66afa2da079bf2c421b37a085d9035da05f7a1f902·...·]-5">)</span><span·class="p">,</span><span·class="w">
209 ········</span><span·class="nf">handle_reply</span><span·class="p"·data-group-id="0320452728-7">(</span><span·class="n">Reply</span><span·class="p"·data-group-id="0320452728-7">)</span><span·class="p">;</span><span·class="w">209 ········</span><span·class="nf">handle_reply</span><span·class="p"·data-group-id="6153818304-7">(</span><span·class="n">Reply</span><span·class="p"·data-group-id="6153818304-7">)</span><span·class="p">;</span><span·class="w">
210 ····</span><span·class="p"·data-group-id="0320452728-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:·f909b0e24c43726f279cbd18e8313f6cce9b77bb052d403d73e397c8cc34db72·...·]-8">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">210 ····</span><span·class="p"·data-group-id="6153818304-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:·a36ab7d0b53e5c996d476e6cb45327346e81b448ea4d5b455d2ff0bc17678d40·...·]-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="0320452728-9">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="0320452728-9">)</span><span·class="w">211 ········</span><span·class="nf">handle_error</span><span·class="p"·data-group-id="6153818304-9">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="6153818304-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="3457884250-1">(</span><span·class="p"·data-group-id="3457884250-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="8691420764-1">(</span><span·class="p"·data-group-id="8691420764-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="3457884250-2">(</span><span·class="n">Message</span><span·class="p"·data-group-id="3457884250-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="8691420764-2">(</span><span·class="n">Message</span><span·class="p"·data-group-id="8691420764-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="3457884250-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="3457884250-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="8691420764-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="8691420764-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="3457884250-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="3457884250-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·157,·SHA:·3df2467cc05df2a9b679dcd414e3caa6e8107505ecf4ffcb959ceddb5f6d4503·...·]-5">)</span><span·class="w">245 ····</span><span·class="p"·data-group-id="8691420764-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="8691420764-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·157,·SHA:·b1d093a6a84ab5d952d6b759a16bc8f5b7bd257bc38fea65a97f8dcbf1f52909·...·]-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="3457884250-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="3457884250-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="8691420764-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="8691420764-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="3457884250-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="3457884250-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="8691420764-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="8691420764-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="3457884250-8">{</span><span·class="nf">self</span><span·class="p"·data-group-id="3457884250-9">(</span><span·class="p"·data-group-id="3457884250-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:·050415ad947ce4ddaae62fa45eda51d07e2a0ccce2a0778b1db75468f19c8f3b·...·]-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="8691420764-8">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8691420764-9">(</span><span·class="p"·data-group-id="8691420764-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:·8b1a144a0c6ef49cffae9bc613616f4d6834a43006fc244f3e0c635ac37bc25d·...·]-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="3457884250-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="3457884250-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">254 ········</span><span·class="p"·data-group-id="8691420764-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="8691420764-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="3457884250-11">(</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3457884250-12">[</span><span·class="ss">flush</span><span·class="p"·data-group-id="3457884250-12">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·dbb7a0c5639136c6292291701ad71179615a54c99991bdefac90ed2d9e39f39c·...·]-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="8691420764-11">(</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8691420764-12">[</span><span·class="ss">flush</span><span·class="p"·data-group-id="8691420764-12">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·ad3c17f49d6ae14d6ac50510b700b15606961767c4e37bd29a462c0aa059cc6e·...·]-11">)</span><span·class="p">,</span><span·class="w">
256 ········</span><span·class="nf">handle_reply</span><span·class="p"·data-group-id="3457884250-13">(</span><span·class="n">Reply</span><span·class="p"·data-group-id="3457884250-13">)</span><span·class="p">;</span><span·class="w">256 ········</span><span·class="nf">handle_reply</span><span·class="p"·data-group-id="8691420764-13">(</span><span·class="n">Reply</span><span·class="p"·data-group-id="8691420764-13">)</span><span·class="p">;</span><span·class="w">
257 ····</span><span·class="p"·data-group-id="3457884250-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:·16347370d1ce6ace9aa45a0321ab111ae254239bb47a812fb30a4a962562cdcd·...·]-14">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">257 ····</span><span·class="p"·data-group-id="8691420764-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:·bfeda68482358b0f27711d762109af3ef4c1ad8ed260afa33f092c611b8cb325·...·]-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="3457884250-15">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="3457884250-15">)</span><span·class="w">258 ····</span><span·class="nf">handle_error</span><span·class="p"·data-group-id="8691420764-15">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="8691420764-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="3457884250-16">(</span><span·class="p"·data-group-id="3457884250-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="8691420764-16">(</span><span·class="p"·data-group-id="8691420764-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="3457884250-17">(</span><span·class="p"·data-group-id="3457884250-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="8691420764-17">(</span><span·class="p"·data-group-id="8691420764-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="3457884250-18">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="3457884250-18">)</span><span·class="p">.</span><span·class="w">265 ····</span><span·class="nf">cross_function_receive</span><span·class="p"·data-group-id="8691420764-18">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="8691420764-18">)</span><span·class="p">.</span><span·class="w">
  
266 </span><span·class="nf">cross_function_receive</span><span·class="p"·data-group-id="3457884250-19">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="3457884250-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="8691420764-19">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="8691420764-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="3457884250-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="3457884250-20">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·160,·SHA:·b68f3edfca8195aa4f7f1e0abed39518d842b953ac844e67b853c764a45aeab5·...·]-21">)</span><span·class="w">269 ········</span><span·class="p"·data-group-id="8691420764-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="8691420764-20">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·160,·SHA:·8d95f273ffee4bd67909065d27ad91d3e377ad431c8cdaa9f463d69e97870bb8·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>403 <p>Copyright·©·1996-2024·<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="3609142308-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="3609142308-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="2076867820-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="2076867820-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="3609142308-2">(</span><span·class="p"·data-group-id="3609142308-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:·efcd45cd15b36e26b86c4d18b2fa70f6a163b36c02fc593f7e0be58a00fb29b2·...·]-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="2076867820-2">(</span><span·class="p"·data-group-id="2076867820-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:·561738db543a1bd47a5a3052ebd89f011369ab20beaccda70b2e6b4720bbf325·...·]-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="3609142308-4">(</span><span·class="p"·data-group-id="3609142308-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:·25c90fa9a9157f3e3066dff0add294ca73424e156f79b7e20a9372ff0ee836fb·...·]-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="2076867820-4">(</span><span·class="p"·data-group-id="2076867820-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:·b3d1ebae3755091bb6b4fb8768d5b9a6ad808ff8e32625079a136a655e496ce9·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
130 </span><span·class="nf">start</span><span·class="p"·data-group-id="3609142308-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="3609142308-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="2076867820-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="2076867820-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="3609142308-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="3609142308-8">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·515349c61c35bd3435c4e9fee737f164a94134e2b1993222e1c38d4e26c108fe·...·]-7">)</span><span·class="p">.</span><span·class="w">131 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="2076867820-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="2076867820-8">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·3929a5ad12466c92f37065238cb85c15491630c90c3b0068477e0f87c7cc6bed·...·]-7">)</span><span·class="p">.</span><span·class="w">
132 </span><span·class="nf">stop</span><span·class="p"·data-group-id="3609142308-9">(</span><span·class="p"·data-group-id="3609142308-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="2076867820-9">(</span><span·class="p"·data-group-id="2076867820-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="3609142308-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="3609142308-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="2076867820-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="2076867820-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="3609142308-11">(</span><span·class="p"·data-group-id="3609142308-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="3609142308-12">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·3e5f527e10d7ecf63a842b528871eab97ad1c5481c9afbfff8867ea5aacc9275·...·]-11">)</span><span·class="p">.</span><span·class="w">135 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="2076867820-11">(</span><span·class="p"·data-group-id="2076867820-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="2076867820-12">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·c11bf701c9464637060687708b89dc7140c398922b858636fd24cc1df3d453fc·...·]-11">)</span><span·class="p">.</span><span·class="w">
136 </span><span·class="nf">bar</span><span·class="p"·data-group-id="3609142308-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="3609142308-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="2076867820-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="2076867820-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="3609142308-14">(</span><span·class="p"·data-group-id="3609142308-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="3609142308-15">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·3e5f527e10d7ecf63a842b528871eab97ad1c5481c9afbfff8867ea5aacc9275·...·]-14">)</span><span·class="p">.</span><span·class="w">137 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="2076867820-14">(</span><span·class="p"·data-group-id="2076867820-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="2076867820-15">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·c11bf701c9464637060687708b89dc7140c398922b858636fd24cc1df3d453fc·...·]-14">)</span><span·class="p">.</span><span·class="w">
  
138 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="3609142308-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="3609142308-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="2076867820-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="2076867820-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="3609142308-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="3609142308-18">(</span><span·class="p"·data-group-id="3609142308-18">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·540e31309df6a7ea8e20b52e64b649ba94c843aae30203f166b73c953bc7b71d·...·]-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="2076867820-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="2076867820-18">(</span><span·class="p"·data-group-id="2076867820-18">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·c70c01122e61177854fcc62feee5b63cc772bbafe55025816fbe9ed77285dffb·...·]-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="3609142308-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="3609142308-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">141 »       </span><span·class="p"·data-group-id="2076867820-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="2076867820-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="3609142308-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="3609142308-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="2076867820-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="2076867820-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="3609142308-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="3609142308-22">(</span><span·class="p"·data-group-id="3609142308-22">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·3d4520ca4709fe9b85a83b96d8bf232e8a31ecf103bfcc07b8075b84535db5d2·...·]-21">)</span><span·class="p">,</span><span·class="w">145 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="2076867820-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="2076867820-22">(</span><span·class="p"·data-group-id="2076867820-22">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·6dd17414b7a999c533235a2f417ac0d5ee9e40cd60cacdb1b2076dec1c670a33·...·]-21">)</span><span·class="p">,</span><span·class="w">
146 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="3609142308-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="3609142308-23">)</span><span·class="p">,</span><span·class="w">146 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="2076867820-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="2076867820-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="3609142308-24">(</span><span·class="p"·data-group-id="3609142308-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="3609142308-25">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·389,·SHA:·648177a39765431e40563f6bf425f808bd9f69d86f742b1025fba2a84a6440b6·...·]-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="2076867820-24">(</span><span·class="p"·data-group-id="2076867820-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="2076867820-25">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·389,·SHA:·b24136648d16f1e6efcd08fc85b0aa0a3877158b1229962e9d48853555b4e27d·...·]-24">)</span><span·class="p">,</span><span·class="w">
148 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="3609142308-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="3609142308-28">)</span><span·class="p">.</span><span·class="w">148 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="2076867820-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="2076867820-28">)</span><span·class="p">.</span><span·class="w">
  
149 </span><span·class="nf">loop</span><span·class="p"·data-group-id="3609142308-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="3609142308-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="2076867820-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="2076867820-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="3609142308-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="3609142308-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">151 »       </span><span·class="p"·data-group-id="2076867820-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="2076867820-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="3609142308-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="3609142308-32">(</span><span·class="p"·data-group-id="3609142308-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3609142308-33">{</[·...·truncated·by·diffoscope;·len:·343,·SHA:·89b351ff1086c089e8379bb66af96ff65d9bc4c894be30242342f104af1f4bbf·...·]-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="2076867820-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="2076867820-32">(</span><span·class="p"·data-group-id="2076867820-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2076867820-33">{</[·...·truncated·by·diffoscope;·len:·343,·SHA:·6ba2517c85dbf4bd2edee61034a5be1b2a1bcaf9cfff9cfceca97f64016620a6·...·]-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="3609142308-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3609142308-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:·50f99e6bfdc5fe71f01ebe3c418334c53cc5379e39f9b6b289bcc2585af5d146·...·]-35">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">154 »       »       </span><span·class="p"·data-group-id="2076867820-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2076867820-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:·31388010fdce15756710b015a94106c9cf467ef9b4ff8077d84553ccd73ee261·...·]-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="3609142308-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="3609142308-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="3609142308-3[·...·truncated·by·diffoscope;·len:·52,·SHA:·88383d0bc8330bcb0c0d88a44c39e124e134977d9265f2b27d6e8f310ed4b4f6·...·]-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="2076867820-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="2076867820-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="2076867820-3[·...·truncated·by·diffoscope;·len:·52,·SHA:·73655b61461f50fbd13ae42a89978d6b0e6b01985e8d461e92dacc48004fd1a4·...·]-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="3609142308-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="3609142308-39">)</span><span·class="p">;</span><span·class="w">157 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="2076867820-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="2076867820-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="3609142308-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="3609142308-41">(</span><span·class="p"·data-group-id="3609142308-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:·d413bb8a23e5c4a9aeb95d82d64b3ca04227efc55f61572493e5970a18d7fd42·...·]-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="2076867820-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="2076867820-41">(</span><span·class="p"·data-group-id="2076867820-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:·7339ea75df4668f4fddafc36f0863514ba95261e5090e0a85be1f8ec2727ed96·...·]-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="3609142308-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="3609142308-42">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">161 »       »       </span><span·class="p"·data-group-id="2076867820-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="2076867820-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="3609142308-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="3609142308-43">)</span><span·class="w">162 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="2076867820-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="2076867820-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="3609142308-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="3609142308-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">164 »       </span><span·class="p"·data-group-id="2076867820-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="2076867820-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="3609142308-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="3609142308-45">)</span><span·class="w">165 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="2076867820-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="2076867820-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="3609142308-46">(</span><span·class="p"·data-group-id="3609142308-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="3609142308-47">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·90e428cd161837675c6ce144759cef9e18d2cb6d791c6709f82c275fc2d0a2a9·...·]-48">]</span><span·class="p">;</span><span·class="w">167 </span><span·class="nf">encode</span><span·class="p"·data-group-id="2076867820-46">(</span><span·class="p"·data-group-id="2076867820-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="2076867820-47">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·924dd326427aadd936f316f3d96509f3640da4bda92beabd589a98bf66b74535·...·]-48">]</span><span·class="p">;</span><span·class="w">
168 </span><span·class="nf">encode</span><span·class="p"·data-group-id="3609142308-49">(</span><span·class="p"·data-group-id="3609142308-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="3609142308-50">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·f657764b3a8e3d77714f5e1ee881964b27725a023119de7c21d07bb8f89ffea3·...·]-51">]</span><span·class="p">.</span><span·class="w">168 </span><span·class="nf">encode</span><span·class="p"·data-group-id="2076867820-49">(</span><span·class="p"·data-group-id="2076867820-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="2076867820-50">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·fe5eadd3a76928e0349fc6309fb02aaf9a2114d3acb5f6a4cf24549e3016bc9f·...·]-51">]</span><span·class="p">.</span><span·class="w">
  
169 </span><span·class="nf">decode</span><span·class="p"·data-group-id="3609142308-52">(</span><span·class="p"·data-group-id="3609142308-53">[</span><span·class="n">Int</span><span·class="p"·data-group-id="3609142308-53">]</span><span·class="p"·data-group-id="3609142308-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="2076867820-52">(</span><span·class="p"·data-group-id="2076867820-53">[</span><span·class="n">Int</span><span·class="p"·data-group-id="2076867820-53">]</span><span·class="p"·data-group-id="2076867820-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="0755559364-1">(</span><span·class="p"·data-group-id="0755559364-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="0755559364-2">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·2063,·SHA:·1adc0d7ad1c8512ccb8cf9fe4e89e02cfda39ffb92f9524eade9c010b108adfa·...·]17-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="5712119949-1">(</span><span·class="p"·data-group-id="5712119949-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="5712119949-2">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·2063,·SHA:·0ec69b24467d9575e30893d62870a8c002667d1f7a07575bab3c972487fd5cb9·...·]17-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="4525399517-5">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4525399517-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:·89,·SHA:·aaa7a3e405f0b1f0a4d966b94d9ea53162c524613b65b08756c41869d11042cc·...·]17-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 ··</span><span·class="p"·data-group-id="5052748917-5">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5052748917-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:·89,·SHA:·ac975b48f52e6e12586ea4307e8ed6eacf53480d3082d7f87e7ce3d731929404·...·]17-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="4525399517-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="4525399517-8">(</span><span·class="n">Data</span><span·class="p"·data-group-id="4525399517-8">[·...·truncated·by·diffoscope;·len:·47,·SHA:·2abe990bc47209944b3f55085efdbb0b3648dc32c59378df318edb9027356a58·...·]17-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="5052748917-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="5052748917-8">(</span><span·class="n">Data</span><span·class="p"·data-group-id="5052748917-8">[·...·truncated·by·diffoscope;·len:·47,·SHA:·d1d6886fd9b44208b6670848cf5dfed21d8706a216a99883505bf75c62546b1c·...·]17-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="4568524151-1">{</span><span·class="nf">self</span><span·class="p"·data-group-id="4568524151-2">(</span><span·class="p"·data-group-id="4568524151-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4568524151-3">{</span[·...·truncated·by·diffoscope;·len:·344,·SHA:·fe5741cdf873e1723b5cc09e21c2a1c1f599d0e48405ee4308a8bcfca3c2cc8b·...·]-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="0441057102-1">{</span><span·class="nf">self</span><span·class="p"·data-group-id="0441057102-2">(</span><span·class="p"·data-group-id="0441057102-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0441057102-3">{</span[·...·truncated·by·diffoscope;·len:·344,·SHA:·0346fdeb48c166662a3960e201e4e7036139c9063002907e112846b9faa467fe·...·]-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="4568524151-5">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4568524151-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:·4ac4e20fe933f837a4cdb925c3390c2f5118c0c98e4a85d5acef9440f5300261·...·]-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">179 ··</span><span·class="p"·data-group-id="0441057102-5">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0441057102-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:·09a77b9f141478365ba77bcacaac9f5eafd3ef8e476e1631583715f7cd3c53c5·...·]-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="4568524151-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="4568524151-8">(</span><span·class="n">Data</span><span·class="p"·data-group-id="456852[·...·truncated·by·diffoscope;·len:·57,·SHA:·67975dcd9e5a936ad74d36002a857063372d974b7f5e1a3c67034dc5b93fe2da·...·]-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="0441057102-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="0441057102-8">(</span><span·class="n">Data</span><span·class="p"·data-group-id="044105[·...·truncated·by·diffoscope;·len:·57,·SHA:·edc0cae7b7b57bb541f19ff9708a9c66db37a6c8fe807f20ae82cc7ff4d7965f·...·]-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="1386187858-1">(</span><span·class="ss">complex2</span><span·class="p"·data-group-id="1386187858-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="4709561226-1">(</span><span·class="ss">complex2</span><span·class="p"·data-group-id="4709561226-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="1386187858-2">(</span><span·class="p"·data-group-id="1386187858-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:·ea499c02850b59b53071693722df455eadc930a3d4254b9b13854b552b937807·...·]-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="4709561226-2">(</span><span·class="p"·data-group-id="4709561226-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:·7a14118d394c0b39f8721cd7bbf0033239d9e4ae8bc2a443245795d18cb6a3cb·...·]-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="1386187858-4">(</span><span·class="p"·data-group-id="1386187858-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:·11a5938aa6f29866a46ff9df53161ddc8799c811abb8f886ac3b43109c91d752·...·]-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="4709561226-4">(</span><span·class="p"·data-group-id="4709561226-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:·32230b03ee8b9c9f510ed6936e80634074e3e92c43f5cc98185dc656ce44d84d·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
184 </span><span·class="nf">start</span><span·class="p"·data-group-id="1386187858-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="1386187858-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="4709561226-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="4709561226-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="1386187858-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="1386187858-8">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·c6e7b159ecb053798c2ed8868c645515f3a7c05b4996f311c7e99d3fd872c3c5·...·]-7">)</span><span·class="p">.</span><span·class="w">185 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="4709561226-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="4709561226-8">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·20aca40e7cd0359d2571b622dd92ef338eedfaf25d74261c1a79518b085eab5f·...·]-7">)</span><span·class="p">.</span><span·class="w">
186 </span><span·class="nf">stop</span><span·class="p"·data-group-id="1386187858-9">(</span><span·class="p"·data-group-id="1386187858-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="4709561226-9">(</span><span·class="p"·data-group-id="4709561226-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="1386187858-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="1386187858-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="4709561226-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="4709561226-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="1386187858-11">(</span><span·class="p"·data-group-id="1386187858-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="1386187858-12">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·60cf7db1c7d4db765ec66a4e00486225cef8d633614929ef819312bb9e2665de·...·]-11">)</span><span·class="p">.</span><span·class="w">189 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="4709561226-11">(</span><span·class="p"·data-group-id="4709561226-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="4709561226-12">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·0874ce03d9517a90ba983f0d24615a47cb66ddfd37c3e8797fad3c6031707e24·...·]-11">)</span><span·class="p">.</span><span·class="w">
190 </span><span·class="nf">bar</span><span·class="p"·data-group-id="1386187858-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="1386187858-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="4709561226-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="4709561226-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="1386187858-14">(</span><span·class="p"·data-group-id="1386187858-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="1386187858-15">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·60cf7db1c7d4db765ec66a4e00486225cef8d633614929ef819312bb9e2665de·...·]-14">)</span><span·class="p">.</span><span·class="w">191 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="4709561226-14">(</span><span·class="p"·data-group-id="4709561226-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="4709561226-15">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·0874ce03d9517a90ba983f0d24615a47cb66ddfd37c3e8797fad3c6031707e24·...·]-14">)</span><span·class="p">.</span><span·class="w">
  
192 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="1386187858-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="1386187858-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="4709561226-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="4709561226-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="1386187858-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="1386187858-18">(</span><span·class="p"·data-group-id="1386187858-18">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·496a38decbbb00741b9b305888de1ae091399addcde5ba34dc4c3f963861d008·...·]-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="4709561226-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="4709561226-18">(</span><span·class="p"·data-group-id="4709561226-18">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·2cc9f4339aafeb64171c318c6837300b43f548fe10e54e918b78b48338e64884·...·]-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="1386187858-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="1386187858-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">195 »       </span><span·class="p"·data-group-id="4709561226-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="4709561226-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="1386187858-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="1386187858-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="4709561226-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="4709561226-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="1386187858-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="1386187858-22">(</span><span·class="p"·data-group-id="1386187858-22">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·d4d2ef0273dc5516b5b802d0e96601a701c139e11d7e05a5ce6db8886b15d36d·...·]-21">)</span><span·class="p">,</span><span·class="w">199 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="4709561226-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="4709561226-22">(</span><span·class="p"·data-group-id="4709561226-22">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·a3028da59294dfa0258845491b3e0b98676ddaa7e5aea245de5e4c48bd0738a6·...·]-21">)</span><span·class="p">,</span><span·class="w">
200 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="1386187858-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="1386187858-23">)</span><span·class="p">,</span><span·class="w">200 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="4709561226-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="4709561226-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="1386187858-24">(</span><span·class="p"·data-group-id="1386187858-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="1386187858-25">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·467,·SHA:·c81f0136862d5f21e75a62c0d0ce90eff4312921f89b6b267d4163bebf563589·...·]-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="4709561226-24">(</span><span·class="p"·data-group-id="4709561226-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="4709561226-25">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·467,·SHA:·229de801d2500b1df5df9ab5bbae4bbfa9c3c3f7c30d8a7dfe9611b11962c492·...·]-24">)</span><span·class="p">,</span><span·class="w">
202 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="1386187858-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1386187858-28">)</span><span·class="p">.</span><span·class="w">202 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="4709561226-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4709561226-28">)</span><span·class="p">.</span><span·class="w">
  
203 </span><span·class="nf">loop</span><span·class="p"·data-group-id="1386187858-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1386187858-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="4709561226-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4709561226-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="1386187858-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="1386187858-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">205 »       </span><span·class="p"·data-group-id="4709561226-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="4709561226-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="1386187858-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1386187858-32">(</span><span·class="p"·data-group-id="1386187858-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1386187858-33">{</[·...·truncated·by·diffoscope;·len:·351,·SHA:·98d871f5b359d52d2d253a9dbb3f1f279f8b15abb03d8c1aa29f07e2ca4686dc·...·]-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="4709561226-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="4709561226-32">(</span><span·class="p"·data-group-id="4709561226-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4709561226-33">{</[·...·truncated·by·diffoscope;·len:·351,·SHA:·6e1fb6432dac6311a8d5e7b7b429e318ea585598c4fea69cbb2b86e52d28c347·...·]-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="1386187858-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1386187858-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:·5ae7d2a2e8f1d65fd2de9d553a061f07d7d94e46b1b9c5b5a216ddd5174689c5·...·]-35">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 »       »       </span><span·class="p"·data-group-id="4709561226-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4709561226-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:·1a936b6269764f1a32bc3d7b4ec893c8864630d4890e48dea722975e7b1c7d4a·...·]-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="1386187858-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="1386187858-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="1386[·...·truncated·by·diffoscope;·len:·60,·SHA:·60a4e833a26ed642d15a27b22f29f83cac57c8409bbff957cfe788fc1cd7916c·...·]-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="4709561226-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="4709561226-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="4709[·...·truncated·by·diffoscope;·len:·60,·SHA:·f8be543e27d7e6c5334cff0156fceb6311571d75412dc6b7bce21197a4d71ddb·...·]-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="1386187858-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1386187858-39">)</span><span·class="p">;</span><span·class="w">211 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="4709561226-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4709561226-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="1386187858-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1386187858-41">(</span><span·class="p"·data-group-id="1386187858-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:·42c0f5afb5dd3977a4c1aff54d2c12638d4a643784c07509618c5b9490616e13·...·]-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="4709561226-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="4709561226-41">(</span><span·class="p"·data-group-id="4709561226-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:·ebcb3deaf678cf6eb100a8af8e9098b0ca29b82e83217dbecdbaed7cbc0e63be·...·]-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="1386187858-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="1386187858-42">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">215 »       »       </span><span·class="p"·data-group-id="4709561226-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="4709561226-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="1386187858-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="1386187858-43">)</span><span·class="w">216 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="4709561226-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="4709561226-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="1386187858-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="1386187858-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">218 »       </span><span·class="p"·data-group-id="4709561226-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="4709561226-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="1386187858-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="1386187858-45">)</span><span·class="w">219 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="4709561226-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="4709561226-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="3566895357-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">10.0</span><span·class="p"·data-group-id="3566895357-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="3566895357-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1313,·SHA:·dc8c41ac83465009302a4f7b13b2c24dfe812696a3eec0cc19edee9fcba9a080·...·]-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="2638850382-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">10.0</span><span·class="p"·data-group-id="2638850382-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="2638850382-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1313,·SHA:·a558278b6144d7dde626b5c2219712c52b71c2b17e39ae98b6da9d8d15c36e2b·...·]-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="3566895357-8">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">kernel_safe_sup</span><span·class="p"·data-group-id="3566895357-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="2638850382-8">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">kernel_safe_sup</span><span·class="p"·data-group-id="2638850382-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="3566895357-9">[</span><span·class="p"·data-group-id="3566895357-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:·9f5d3106b7d2f1128a4b59903b66ff62a84e920381dc90386fc9234914aaf29f·...·]-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="2638850382-9">[</span><span·class="p"·data-group-id="2638850382-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:·c54cd8287e73b41cf5d36b500866355d0890d09f4b391d3918ff09f260399dd0·...·]-10">}</span><span·class="p">,</span><span·class="w">
160 ··············</span><span·class="p"·data-group-id="3566895357-11">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="ss">disk_log_sup</span><span·class="p"·data-group-id="3566895357-11">}</span><span·class="p">,</span><span·class="w">160 ··············</span><span·class="p"·data-group-id="2638850382-11">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="ss">disk_log_sup</span><span·class="p"·data-group-id="2638850382-11">}</span><span·class="p">,</span><span·class="w">
161 ··············</span><span·class="p"·data-group-id="3566895357-12">{</span><span·class="ss">mfargs</span><span·class="p">,</span><span·class="p"·data-group-id="3566895357-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:·a593369e36b6cddf559fa2738687168407cc9a80b82bacbf141f867ec41753b3·...·]-12">}</span><span·class="p">,</span><span·class="w">161 ··············</span><span·class="p"·data-group-id="2638850382-12">{</span><span·class="ss">mfargs</span><span·class="p">,</span><span·class="p"·data-group-id="2638850382-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:·d53e456052597f74dce3b965d22ed48565629770b73d6cd2e7425794c7281946·...·]-12">}</span><span·class="p">,</span><span·class="w">
162 ··············</span><span·class="p"·data-group-id="3566895357-15">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="3566895357-15">}</span><span·class="p">,</span><span·class="w">162 ··············</span><span·class="p"·data-group-id="2638850382-15">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="2638850382-15">}</span><span·class="p">,</span><span·class="w">
163 ··············</span><span·class="p"·data-group-id="3566895357-16">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">1000</span><span·class="p"·data-group-id="3566895357-16">}</span><span·class="p">,</span><span·class="w">163 ··············</span><span·class="p"·data-group-id="2638850382-16">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">1000</span><span·class="p"·data-group-id="2638850382-16">}</span><span·class="p">,</span><span·class="w">
164 ··············</span><span·class="p"·data-group-id="3566895357-17">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="3566895357-17">}</span><span·class="p"·data-group-id="3566895357-9">]</span><span·class="w">164 ··············</span><span·class="p"·data-group-id="2638850382-17">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="2638850382-17">}</span><span·class="p"·data-group-id="2638850382-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="3566895357-18">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">kernel_safe_sup</span><span·class="p"·data-group-id="3566895357-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="2638850382-18">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">kernel_safe_sup</span><span·class="p"·data-group-id="2638850382-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="3566895357-19">[</span><span·class="p"·data-group-id="3566895357-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:·fec551fe0635ca1f8a0c40a7bbc7a737318a75bd900c47cf1429e281a8b22762·...·]-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="2638850382-19">[</span><span·class="p"·data-group-id="2638850382-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:·352f266bbfc5c39a3c707f9b679509a9290c05f9a2c8605a264e8f1291392317·...·]-20">}</span><span·class="p">,</span><span·class="w">
168 ··············</span><span·class="p"·data-group-id="3566895357-21">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="ss">disk_log_server</span><span·class="p"·data-group-id="3566895357-21">}</span><span·class="p">,</span><span·class="w">168 ··············</span><span·class="p"·data-group-id="2638850382-21">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="ss">disk_log_server</span><span·class="p"·data-group-id="2638850382-21">}</span><span·class="p">,</span><span·class="w">
169 ··············</span><span·class="p"·data-group-id="3566895357-22">{</span><span·class="ss">mfargs</span><span·class="p">,</span><span·class="p"·data-group-id="3566895357-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:·d2229932f8468203a6958fdbb4ade0ae33a393d4697645ad6ff85f4eb7fb2236·...·]-22">}</span><span·class="p">,</span><span·class="w">169 ··············</span><span·class="p"·data-group-id="2638850382-22">{</span><span·class="ss">mfargs</span><span·class="p">,</span><span·class="p"·data-group-id="2638850382-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:·bc0b590d1960532f9f4272b6b039f54e98cd57e782e9ffe290d2aeeee472a2de·...·]-22">}</span><span·class="p">,</span><span·class="w">
170 ··············</span><span·class="p"·data-group-id="3566895357-25">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="3566895357-25">}</span><span·class="p">,</span><span·class="w">170 ··············</span><span·class="p"·data-group-id="2638850382-25">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="2638850382-25">}</span><span·class="p">,</span><span·class="w">
171 ··············</span><span·class="p"·data-group-id="3566895357-26">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">2000</span><span·class="p"·data-group-id="3566895357-26">}</span><span·class="p">,</span><span·class="w">171 ··············</span><span·class="p"·data-group-id="2638850382-26">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">2000</span><span·class="p"·data-group-id="2638850382-26">}</span><span·class="p">,</span><span·class="w">
172 ··············</span><span·class="p"·data-group-id="3566895357-27">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">worker</span><span·class="p"·data-group-id="3566895357-27">}</span><span·class="p"·data-group-id="3566895357-19">]</span><span·class="w">172 ··············</span><span·class="p"·data-group-id="2638850382-27">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">worker</span><span·class="p"·data-group-id="2638850382-27">}</span><span·class="p"·data-group-id="2638850382-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="3566895357-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="3566895357-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="2638850382-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="2638850382-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>224 <p>Copyright·©·1996-2024·<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="1407176612-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1407176612-2">{</span><span·class="ss">test</span><span·class="p">,</span><span·class="n">Stacktrace</span><span·class="p"·data-group-id="1407[·...·truncated·by·diffoscope;·len:·452,·SHA:·d05d01b486716ac206fa0adb47f48ddde9a31c460640361451776e3502feaa6f·...·]-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="1106686270-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1106686270-2">{</span><span·class="ss">test</span><span·class="p">,</span><span·class="n">Stacktrace</span><span·class="p"·data-group-id="1106[·...·truncated·by·diffoscope;·len:·452,·SHA:·de6631e2b086a374f31f10b28dcef6ed14bd916480229404fa11ab235fea26ff·...·]-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="1407176612-5">[</span><span·class="p"·data-group-id="1407176612-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-gr[·...·truncated·by·diffoscope;·len:·124,·SHA:·f70cc742c7ad6162787a3026af439b269ef16f1ceb7130b5e6df254d2402e0c5·...·]-6">}</span><span·class="p">,</span><span·class="w">159 </span><span·class="p"·data-group-id="1106686270-5">[</span><span·class="p"·data-group-id="1106686270-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-gr[·...·truncated·by·diffoscope;·len:·124,·SHA:·b0a3cb8eded4ed95bc6e05d0350ccf0f4cedb57842d5719c1b33d3681eda7b91·...·]-6">}</span><span·class="p">,</span><span·class="w">
160 ·</span><span·class="p"·data-group-id="1407176612-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="1407176612-9">[</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·73,·SHA:·1b235ed9706b899ecd963faa21335ffa38ebf14c650b214a972b76d4c9effd82·...·]-8">}</span><span·class="p">,</span><span·class="w">160 ·</span><span·class="p"·data-group-id="1106686270-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="1106686270-9">[</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·73,·SHA:·a29921e3a83a8fa2980387ffba770fcb1343352d9469af417ea2b53b8721253a·...·]-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="1407176612-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="1106686270-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="1407176612-10">(</span><span·class="ss">test</span><span·class="p"·data-group-id="1407176612-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="1106686270-10">(</span><span·class="ss">test</span><span·class="p"·data-group-id="1106686270-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="1407176612-11">[</span><span·class="p"·data-group-id="1407176612-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:·128,·SHA:·de6dc234af85394862f7d682f0cc6b4c6eed9ce9975d4ca721eb263c133f23cb·...·]-12">}</span><span·class="p">,</span><span·class="w">163 </span><span·class="p"·data-group-id="1106686270-11">[</span><span·class="p"·data-group-id="1106686270-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:·128,·SHA:·852d2bb5154ecdc43d2a594d45a6f358f2c3c4b14871f7139d60bebd554778df·...·]-12">}</span><span·class="p">,</span><span·class="w">
164 ·</span><span·class="p"·data-group-id="1407176612-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="1407176612-15">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·76,·SHA:·00d741b8f7229492b60ac12742f3e21ac9eab9cbf82768980727b9310359a2e2·...·]-14">}</span><span·class="p">,</span><span·class="w">164 ·</span><span·class="p"·data-group-id="1106686270-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="1106686270-15">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·76,·SHA:·3ad5ec960f5a4b4afb8e128aef9a14f4377f8428a5b67837dd351e5848c2c917·...·]-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="1407176612-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="1106686270-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>288 <p>Copyright·©·1996-2024·<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="1405754428-1">(</span><span·class="ss">terminal_logger</span><span·class="p"·data-group-id="1405754428-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="6783292960-1">(</span><span·class="ss">terminal_logger</span><span·class="p"·data-group-id="6783292960-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="1405754428-2">(</span><span·class="ss">gen_event</span><span·class="p"·data-group-id="1405754428-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="6783292960-2">(</span><span·class="ss">gen_event</span><span·class="p"·data-group-id="6783292960-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="1405754428-3">(</span><span·class="p"·data-group-id="1405754428-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:·16a654e4848e16bacf4984ae53ae8dcaaa98d22d097e4f725aff7e901afca903·...·]-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="6783292960-3">(</span><span·class="p"·data-group-id="6783292960-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:·d0eeffaa23d4cddec57eb5afeb24a3dc16e6e7bd265fe924d42f48ca5b58c041·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
146 </span><span·class="nf">init</span><span·class="p"·data-group-id="1405754428-5">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="1405754428-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="6783292960-5">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="6783292960-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
147 ····</span><span·class="p"·data-group-id="1405754428-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1405754428-7">[</span><span·class="p"·data-group-id="1405754428-7">]</span><span·class="p"·data-group-id="1405754428-6">}</span><span·class="p">.</span><span·class="w">147 ····</span><span·class="p"·data-group-id="6783292960-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6783292960-7">[</span><span·class="p"·data-group-id="6783292960-7">]</span><span·class="p"·data-group-id="6783292960-6">}</span><span·class="p">.</span><span·class="w">
  
148 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="1405754428-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="1405754428-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="6783292960-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="6783292960-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="1405754428-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="1405754428-10">[</span><span·clas[·...·truncated·by·diffoscope;·len:·116,·SHA:·52f3b1b6f758ec507af1255d2652d036845cbd0937747f0187c5232d06a7228a·...·]-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="6783292960-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="6783292960-10">[</span><span·clas[·...·truncated·by·diffoscope;·len:·116,·SHA:·502debbb09efeb226e4148b04b7bb62c676720a6c15d46594e91216a1f6eb02c·...·]-9">)</span><span·class="p">,</span><span·class="w">
150 ····</span><span·class="p"·data-group-id="1405754428-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="1405754428-11">}</span><span·class="p">.</span><span·class="w">150 ····</span><span·class="p"·data-group-id="6783292960-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="6783292960-11">}</span><span·class="p">.</span><span·class="w">
  
151 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="1405754428-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="1405754428-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="6783292960-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="6783292960-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="6387392947-1">(</span><span·class="ss">file_logger</span><span·class="p"·data-group-id="6387392947-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="3747684253-1">(</span><span·class="ss">file_logger</span><span·class="p"·data-group-id="3747684253-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="6387392947-2">(</span><span·class="ss">gen_event</span><span·class="p"·data-group-id="6387392947-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="3747684253-2">(</span><span·class="ss">gen_event</span><span·class="p"·data-group-id="3747684253-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="6387392947-3">(</span><span·class="p"·data-group-id="6387392947-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:·7ec224689e23d6b287aac4d76275c81a92191d0e6a8137ac5767a2b130b9f1fc·...·]-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="3747684253-3">(</span><span·class="p"·data-group-id="3747684253-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:·8d3f43912082ef8ea2f9f99b1f6844fb35ffcd3ed0ee60f69774590da5cbe1dd·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
157 </span><span·class="nf">init</span><span·class="p"·data-group-id="6387392947-5">(</span><span·class="n">File</span><span·class="p"·data-group-id="6387392947-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="3747684253-5">(</span><span·class="n">File</span><span·class="p"·data-group-id="3747684253-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 ····</span><span·class="p"·data-group-id="6387392947-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="6387392947-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·267,·SHA:·501c609ebd5465c20eb2853a90d5f26e0ff8e0be20dbf7e83745d0d4998ba909·...·]-7">)</span><span·class="p">,</span><span·class="w">158 ····</span><span·class="p"·data-group-id="3747684253-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="3747684253-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·267,·SHA:·67110d87de6981960343a3f750fe368d0853794ae995ea225e7093964302ad98·...·]-7">)</span><span·class="p">,</span><span·class="w">
159 ····</span><span·class="p"·data-group-id="6387392947-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="6387392947-8">}</span><span·class="p">.</span><span·class="w">159 ····</span><span·class="p"·data-group-id="3747684253-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="3747684253-8">}</span><span·class="p">.</span><span·class="w">
  
160 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="6387392947-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="6387392947-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="3747684253-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="3747684253-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="6387392947-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:·009b6d895b428e38e7cbf0ebbfbe34697443d2c78db3012f8dba400a036aaea5·...·]-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="3747684253-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:·757cfb8b58dfa9b3354022e7e6d0ea3554fffb312f35f87912f422180e35e738·...·]-10">)</span><span·class="p">,</span><span·class="w">
162 ····</span><span·class="p"·data-group-id="6387392947-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="6387392947-12">}</span><span·class="p">.</span><span·class="w">162 ····</span><span·class="p"·data-group-id="3747684253-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="3747684253-12">}</span><span·class="p">.</span><span·class="w">
  
163 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="6387392947-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="6387392947-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="3747684253-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="3747684253-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="6387392947-14">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="6387392947-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="3747684253-14">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="3747684253-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="3463305547-1">(</span><span·class="p"·data-group-id="3463305547-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="3463305547-2">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·36810c1ee24bfa98d3cd199131b54247d51f5e3a2db7e251a5abd0e64a36d2cf·...·]-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="7725695590-1">(</span><span·class="p"·data-group-id="7725695590-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="7725695590-2">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·653aad3833ab043b4667dcced719b5c3d96c5dc60a3f8d622a30d275db4ccf82·...·]-1">)</span><span·class="p">.</span><span·class="w">
192 </span><span·class="p"·data-group-id="3463305547-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="3463305547-3">}</span><span·class="gp·unselectable">192 </span><span·class="p"·data-group-id="7725695590-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="7725695590-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="3463305547-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="3463305547-5">[</span><span·class="[·...·truncated·by·diffoscope;·len:·81,·SHA:·b2d64dd808881359e162124e59b461473cf769d5b4436c715d3dceaec6fae4b9·...·]-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="7725695590-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="7725695590-5">[</span><span·class="[·...·truncated·by·diffoscope;·len:·81,·SHA:·0f6f58546c79213848aea4d5585b38ee3f70db30bd4a0ff3d6f41024ab8c9205·...·]-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="6005269417-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="6005269417-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
199 ····</span><span·class="p"·data-group-id="6005269417-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6005269417-3">[</span><span·class="p"·data-group-id="6005269417-3">]</span><span·class=[·...·truncated·by·diffoscope;·len:·180,·SHA:·f2291aec6d5e8f9991b00a5747f87973ee0fbaed6d9bbc358d8fa6b544b37f9d·...·]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="7787930018-1">(</span><span·class="p">_</span><span·class="n">[·...·truncated·by·diffoscope;·len:·132,·SHA:·32916ea26f70f76dfc485cdd514ca6f22ba3cbd84b2c8848048c4d6d91c0bb2c·...·]
 199 ····</span><span·class="p"·data-group-id="7787930018-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7787930018-3">[</span><span·class="p"·data-group-id="7787930018-3">]</span><span·class="p"·data-group-id="7787930018-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="7745929602-1">(</span><span·class="n">File</span><span·class="p"·data-group-id="7745929602-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="8671552720-1">(</span><span·class="n">File</span><span·class="p"·data-group-id="8671552720-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
202 ····</span><span·class="p"·data-group-id="7745929602-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="7745929602-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·267,·SHA:·f5d49e5f07b65c0bb50ee39a9427465d3ae7f3ab5ef770f6fcb8367834396ef4·...·]-3">)</span><span·class="p">,</span><span·class="w">202 ····</span><span·class="p"·data-group-id="8671552720-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="8671552720-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·267,·SHA:·6e35912b44f09fd52e0583af46c396941370c2c6867dfa7b99d716b1097dfefe·...·]-3">)</span><span·class="p">,</span><span·class="w">
203 ····</span><span·class="p"·data-group-id="7745929602-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="7745929602-4">}</span><span·class="p">.</span></code></pre><h2·id="notifying-about-events"·class="section-heading">203 ····</span><span·class="p"·data-group-id="8671552720-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="8671552720-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="5788679267-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="5788679267-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="5788679267-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="5788679267-3">[</span><span·class="n">ErrorMsg</span><span·class="p"·data-group-id="5788679267-3">]</span><span·class="p"·data-group-id="5788679267-2">)</span><span·class="p">,</span><span·class="w"> 
217 ····</span><span·class="p"·data-group-id="5788679267-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="5788679267-4">}</span><span·class="p">.</span></code></pre><p>In·<code·class="inline">file_logger</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_event</span><span·class="p"·data-group-id="2594487856-1">(</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="2594487856-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="2594487856-2">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;***Error***·</spa[·...·truncated·by·diffoscope;·len:·338,·SHA:·9fdd8d25ea5b7819ee9a3daf3d7d2e0a8d873c69f1611c011610d61b0c6aa21e·...·]</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="6032878573-1">(</span><span·class="n">ErrorMsg</span><sp[·...·truncated·by·diffoscope;·len:·171,·SHA:·453c347f64fbee847ea607f9afbc5d6073edbb50a57c4d849d163889a36fa853·...·]</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="6032878573-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="6032878573-3">[</span><span·class="n">ErrorMsg</span><span·class="p"·data-group-id="6032878573-3">]</span><span·class="p"·data-group-id="6032878573-2">)</span><span·class="p">,</span><span·class="w">
 217 ····</span><span·class="p"·data-group-id="6032878573-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="6032878573-4">}</span><span·class="p">.</span></code></pre><p>In·<code·class="inline">file_logger</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_event</span><span·class="p"·data-group-id="7795784307-1">(</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="7795784307-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="7795784307-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">·</span><span·class="p"·data-group-id="7795784307-3">[</span><span·class="n">ErrorMsg</span><span·class="p"·data-group-id="7795784307-3">]</span><span·class="p"·data-group-id="7795784307-2">)</span><span·class="p">,</span><span·class="w">
219 ····</span><span·class="p"·data-group-id="2594487856-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="2594487856-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="7795784307-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="7795784307-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="3938202914-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="3938202914-2">[</span><span·class="[·...·truncated·by·diffoscope;·len:·81,·SHA:·0744041e055d2978e8c4b0b6085966c85354bc863404a2cd1ef88544e6d7f8a2·...·]-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="9474103056-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="9474103056-2">[</span><span·class="[·...·truncated·by·diffoscope;·len:·81,·SHA:·90a21357f9f023c5df82d8e810d8425abcf534a252fecbf3a43f9262bd1258a0·...·]-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="7816259113-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="7816259113-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="3750648275-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="3750648275-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="4132462905-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="4132462905-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="5056792717-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="5056792717-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="4132462905-2">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="4132462905-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="5056792717-2">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="5056792717-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="6256419596-1">(</span><span·class="ss">error_man</span><span·class="p"·data-group-id="6256419596-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="6050610301-1">(</span><span·class="ss">error_man</span><span·class="p"·data-group-id="6050610301-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="9331568382-1">(</span><span·class="p"·data-group-id="9331568382-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:·84b70d7e8d90c0250caa1a3840f08a47728c551e32e257567915b1baef2aeaf1·...·]-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="4059927540-1">(</span><span·class="p"·data-group-id="4059927540-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:·d5549c2e510fa046dfcf272b14557790993bdf8fe7abf5befc01b93eace387c1·...·]-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">
Max diff block lines reached; 3209/42342 bytes (7.58%) 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="2303729266-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="2303729266-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="7118856440-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="7118856440-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>240 <p>Copyright·©·1996-2024·<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="7265490293-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="7265490293-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="8241525582-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="8241525582-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="7265490293-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="7265490293-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="8241525582-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="8241525582-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="7265490293-3">(</span><span·class="p"·data-group-id="7265490293-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7265490293-4">]</span><span·class="p"·data-group-id="7265490293-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="8241525582-3">(</span><span·class="p"·data-group-id="8241525582-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8241525582-4">]</span><span·class="p"·data-group-id="8241525582-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="7265490293-5">(</span><span·class="p"·data-group-id="7265490293-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:·99bd597d5af8513442b2efb084ac8dee774e131042d58b3e7e0fffb7c38274aa·...·]-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="8241525582-5">(</span><span·class="p"·data-group-id="8241525582-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:·615934f624a5fcf1d642ac6a10ef72473b7fa7bca4257d5583e8b15b6342db63·...·]-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="7265490293-7">(</span><span·class="p"·data-group-id="7265490293-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:·beae9fa60a0f7cd2498d0cdb8cdc48de6246e59fe131ebc2b25783fb383cc5b8·...·]-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="8241525582-7">(</span><span·class="p"·data-group-id="8241525582-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:·a7e8d71ddafd364a8b10029d4dc45d412d571ea8e9034106725c1f318bd6460f·...·]-7">)</span><span·class="p">.</span><span·class="w">
  
170 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="7265490293-9">(</span><span·class="p"·data-group-id="7265490293-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="8241525582-9">(</span><span·class="p"·data-group-id="8241525582-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="7265490293-10">(</span><span·class="p"·data-group-id="7265490293-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="7265490293-11">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·407,·SHA:·d754af70a5ad6996b44371f8399139cd167bcb901e1ec2a2fd320dff6195668a·...·]-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="8241525582-10">(</span><span·class="p"·data-group-id="8241525582-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="8241525582-11">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·407,·SHA:·11b8725c36cb5f948237bc69762dbed034d82ed99f92ee8918d91e9f650a030d·...·]-10">)</span><span·class="p">.</span><span·class="w">
  
172 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="7265490293-14">(</span><span·class="p"·data-group-id="7265490293-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="8241525582-14">(</span><span·class="p"·data-group-id="8241525582-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="7265490293-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="7265490293-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="8241525582-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="8241525582-15">)</span><span·class="p">.</span><span·class="w">
  
174 </span><span·class="nf">free</span><span·class="p"·data-group-id="7265490293-16">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="7265490293-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="8241525582-16">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="8241525582-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="7265490293-17">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7265490293-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:·37f285159adc9975194699b526fe1c6fdcbf936951aacf9ace9bc9b90726836d·...·]-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="8241525582-17">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8241525582-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:·d29c264dca6c2f6b5a49753e99fcab947b80f85a7ccee49b6f2a2ae6d572a50d·...·]-17">)</span><span·class="p">.</span><span·class="w">
  
176 </span><span·class="nf">init</span><span·class="p"·data-group-id="7265490293-19">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="7265490293-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="8241525582-19">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="8241525582-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ····</span><span·class="p"·data-group-id="7265490293-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="7265490293-21">(</span><span·class="p"·data-group-id="7265490293-21">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·39b02a0d087da2d1b9f6d66e57f81024bcf785495ce0558e8828b7437edc2d18·...·]-20">}</span><span·class="p">.</span><span·class="w">177 ····</span><span·class="p"·data-group-id="8241525582-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="8241525582-21">(</span><span·class="p"·data-group-id="8241525582-21">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·e18b5f86367ac889e6637107f91450195bfbf5b151fc53800a8a1442f3d1f844·...·]-20">}</span><span·class="p">.</span><span·class="w">
  
178 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="7265490293-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:·9cbb9b2e487d88aa5731da4f1f63d5f6ba823d4dcc2d4fb6db7322b30f9666a1·...·]-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="8241525582-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:·4d82957f99c15682bc4ea1bd998767ca681e7caaa3c5789fded5fc141b182e55·...·]-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 ····</span><span·class="p"·data-group-id="7265490293-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="7265490293-23">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·143,·SHA:·de0524b3065942b88ebd7d4eda7f82d6c63ebcbf4e0e25e81d97093748b8a915·...·]-24">)</span><span·class="p">,</span><span·class="w">179 ····</span><span·class="p"·data-group-id="8241525582-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="8241525582-23">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·143,·SHA:·932db7694300b952fa56cf9a318c52aa8972561f091e631e3b0d984e60501ee1·...·]-24">)</span><span·class="p">,</span><span·class="w">
180 ····</span><span·class="p"·data-group-id="7265490293-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="7265490293-25">}</span><span·class="p">.</span><span·class="w">180 ····</span><span·class="p"·data-group-id="8241525582-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="8241525582-25">}</span><span·class="p">.</span><span·class="w">
  
181 </span><span·class="nf">handle_cast</span><span·class="p"·data-group-id="7265490293-26">(</span><span·class="p"·data-group-id="7265490293-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="7265490293-27">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·81bdd78388ab5faaf0a1a23fc3c5779a7ef24028a65ca00b6a80ac9091820fbb·...·]-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="8241525582-26">(</span><span·class="p"·data-group-id="8241525582-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="8241525582-27">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·e6529dfcaa61c2d927f5d2f182d1e64db54809dbcea16bdadec3a318c6d42062·...·]-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="7265490293-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="7265490293-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="8241525582-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="8241525582-28">)</span><span·class="p">,</span><span·class="w">
183 ····</span><span·class="p"·data-group-id="7265490293-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="7265490293-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="8241525582-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="8241525582-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="1236787162-1">(</span><span·class="p"·data-group-id="1236787162-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="0513845282-1">(</span><span·class="p"·data-group-id="0513845282-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="1236787162-2">(</span><span·class="p"·data-group-id="1236787162-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="1236787162-3">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·681,·SHA:·f5ac8ea126a1ecb96282588dde93f021bf51c0a45981c1830a9f78abf2d51afc·...·]2-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="0513845282-2">(</span><span·class="p"·data-group-id="0513845282-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="0513845282-3">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·681,·SHA:·661d7819b30225acd6d1dad0e2df043365d843a64fd151e6c51b4072d2a20b31·...·]2-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="3219560779-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="3219560779-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="7393786794-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="7393786794-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
206 ····</span><span·class="p"·data-group-id="3219560779-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="3219560779-3">(</span><span·class="p"·data-group-id="3219560779-3">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·25f3c6f5ee1359b3fb89a54dd0aa76eb11ce1cb7def1e366f9beff4573e118b5·...·]-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="7393786794-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="7393786794-3">(</span><span·class="p"·data-group-id="7393786794-3">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·4f673e8836fb4538c1a845beaa954aca1e323b7511554624c5bdf2c6ff4dabef·...·]-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="2863981411-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="2[·...·truncated·by·diffoscope;·len:·9,·SHA:·672b85fa15f4122fa0749f001d1f86f4bae4403f943676bc1e4822431cf6481c·...·]-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="6294563257-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="6[·...·truncated·by·diffoscope;·len:·9,·SHA:·33746f699b8d193a71bd872be716c2e3b2b937d5fa54ae2d2122524a9defe688·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
229 ····</span><span·class="p"·data-group-id="2863981411-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="2863981411-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·140,·SHA:·7f3a4ddf4ac251e222b96edb4dd74fd132d9c6dcfcfb2670c63edfbb000dca7f·...·]-3">)</span><span·class="p">,</span><span·class="w">229 ····</span><span·class="p"·data-group-id="6294563257-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="6294563257-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·140,·SHA:·ec9d25f1640fd0a69aea333f7c8356374ec8be505edc31688ec3fb5b7f00d107·...·]-3">)</span><span·class="p">,</span><span·class="w">
230 ····</span><span·class="p"·data-group-id="2863981411-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="2863981411-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="6294563257-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="6294563257-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="9676649881-1">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="9676649881-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="4908039341-1">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="4908039341-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="9676649881-2">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9676649881-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:·63214776cc9c69dbd5246374779bd99789986c08d8891ece7c176c29598d8c68·...·]1-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="4908039341-2">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4908039341-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:·2b61b922b96fd23781652ee5b870bcecbe68a0088fab5b5ff48b4b33b91dac56·...·]1-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="2237281892-1">(</span><span·class="p"·data-group-id="2237281892-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="2237281892-2">}</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·88,·SHA:·613a259803c391dfecc022b3fca98d6d0070abf20dbdc800a571bd8a43d9a527·...·]-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="1472216495-1">(</span><span·class="p"·data-group-id="1472216495-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="1472216495-2">}</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·88,·SHA:·f6961e56b79683470acd3d5b46d132e59964a04edae077db77456e10a26bd561·...·]-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="2237281892-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="2237281892-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="1472216495-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="1472216495-3">)</span><span·class="p">,</span><span·class="w">
245 ····</span><span·class="p"·data-group-id="2237281892-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="2237281892-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="1472216495-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="1472216495-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="6048063347-1">(</span><span·class="n">Args</span><span·class="p"·data-group-id="6048063347-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="3942702158-1">(</span><span·class="n">Args</span><span·class="p"·data-group-id="3942702158-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="6048063347-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="6048063347-2">)</span><span·class="p">,</span><span·class="w">266 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="3942702158-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="3942702158-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="6048063347-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="6048063347-3">}</span><span·class="p">.</span><span·class="w">268 ····</span><span·class="p"·data-group-id="3942702158-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="3942702158-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="6048063347-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="6048063347-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="3942702158-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="3942702158-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="3706040698-1">(</span><span·class="p"·data-group-id="3706040698-2">[</span><span·class="ss">stop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="3706040698-2">]</span><span·class="p"·data-group-id="3706040698-1">)</span><span·class="p">.</span><span·class="w">281 </span><span·class="nf">export</span><span·class="p"·data-group-id="9590699649-1">(</span><span·class="p"·data-group-id="9590699649-2">[</span><span·class="ss">stop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="9590699649-2">]</span><span·class="p"·data-group-id="9590699649-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="3706040698-3">(</span><span·class="p"·data-group-id="3706040698-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="9590699649-3">(</span><span·class="p"·data-group-id="9590699649-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2024·<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="8179713050-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="6817846868-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="8179713050-2">[</span><span·class="p"·data-group-id="8179713050-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="8179713050-3">}</span><span·class="p">,</span><span·class="w">169 ·</span><span·class="p"·data-group-id="6817846868-2">[</span><span·class="p"·data-group-id="6817846868-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="6817846868-3">}</span><span·class="p">,</span><span·class="w">
170 ··</span><span·class="p"·data-group-id="8179713050-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="8179713050-4">}</span><span·class="p">,</span><span·class="w">170 ··</span><span·class="p"·data-group-id="6817846868-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="6817846868-4">}</span><span·class="p">,</span><span·class="w">
171 ··</span><span·class="p"·data-group-id="8179713050-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8179713050-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:·2987bf61c0ea045cba6fd27d04748b1c46a3746ce09de96ccbd4143f2d5396f3·...·]-5">}</span><span·class="p">,</span><span·class="w">171 ··</span><span·class="p"·data-group-id="6817846868-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6817846868-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:·aece94e834fd10c960888144fd42730cef17045c7b03b0366b7c44a1eafe3b5d·...·]-5">}</span><span·class="p">,</span><span·class="w">
172 ··</span><span·class="p"·data-group-id="8179713050-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8179713050-8">[</span><span·class="ss">prim_app_server</span><span·class="p"·data-group-id="8179713050-8">]</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·215ca0281f0ed8e56300c5b1408c6187a7d97f29a2b98dcf452a73a9a4daf21b·...·]-7">}</span><span·class="p">,</span><span·class="w">172 ··</span><span·class="p"·data-group-id="6817846868-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6817846868-8">[</span><span·class="ss">prim_app_server</span><span·class="p"·data-group-id="6817846868-8">]</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·4535cdb4e068404a72ba8a2def397b214558a77a7e64888015bb047705c1e47b·...·]-7">}</span><span·class="p">,</span><span·class="w">
173 ··</span><span·class="p"·data-group-id="8179713050-9">{</span><span·class="ss">included_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8179713050-10">[</span><span·class="ss">incl_app</span><span·class="p"·data-group-id="8179713050-10">]</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·189367b2758568527b31bd4d2528762e450ce2d6ab7e760b264493c7e95dcb2e·...·]-9">}</span><span·class="p">,</span><span·class="w">173 ··</span><span·class="p"·data-group-id="6817846868-9">{</span><span·class="ss">included_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6817846868-10">[</span><span·class="ss">incl_app</span><span·class="p"·data-group-id="6817846868-10">]</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·2aeda4422f86fd24a63bd8e5842af098d57494acb4dfed4f30031f9da01b225e·...·]-9">}</span><span·class="p">,</span><span·class="w">
174 ··</span><span·class="p"·data-group-id="8179713050-11">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8179713050-12">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·184,·SHA:·de004e15aa4f0955713d5e83a09439d7deab62eceb49a5ebf21bfc9fbbc31e37·...·]-11">}</span><span·class="p">,</span><span·class="w">174 ··</span><span·class="p"·data-group-id="6817846868-11">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6817846868-12">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·184,·SHA:·6e1cceb8d43b95a07ec5364c3abace33af4e3959b8001f29415c0c7ab8fdf394·...·]-11">}</span><span·class="p">,</span><span·class="w">
175 ··</span><span·class="p"·data-group-id="8179713050-13">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8179713050-14">{</span><span·class="ss">prim_app_cb</span><span·class="p">,</span><span·class="p"·data-group-id="8179713050-15"[·...·truncated·by·diffoscope;·len:·158,·SHA:·f3562f7c746dd8b5e41e680a8ffbdc80b8514c2ba9dbccd2b772492dc9fa3417·...·]-13">}</span><span·class="p">,</span><span·class="w">175 ··</span><span·class="p"·data-group-id="6817846868-13">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6817846868-14">{</span><span·class="ss">prim_app_cb</span><span·class="p">,</span><span·class="p"·data-group-id="6817846868-15"[·...·truncated·by·diffoscope;·len:·158,·SHA:·88aeac6cb27afeae55b3b98914bed424e3824b6160abe9a7f889e87c33cfdfaf·...·]-13">}</span><span·class="p">,</span><span·class="w">
176 ··</span><span·class="p"·data-group-id="8179713050-16">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8179713050-17">[</span><span·class="p"·data-group-id="8179713050-18">{</span><span·class="ss">file</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·224,·SHA:·d1ff0307cf52b7400f85c6ddf11dd6aafc6a90982f88abbecaf3092e7bebcaf0·...·]-16">}</span><span·class="w">176 ··</span><span·class="p"·data-group-id="6817846868-16">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6817846868-17">[</span><span·class="p"·data-group-id="6817846868-18">{</span><span·class="ss">file</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·224,·SHA:·8053507431ba1bd3443677fe49309703cda75c32fac2b148316dcb6d9e4888f0·...·]-16">}</span><span·class="w">
177 ·</span><span·class="p"·data-group-id="8179713050-2">]</span><span·class="p"·data-group-id="8179713050-1">}</span><span·class="p">.</span></code></pre><h2·id="synchronizing-processes-during-startup"·class="section-heading">177 ·</span><span·class="p"·data-group-id="6817846868-2">]</span><span·class="p"·data-group-id="6817846868-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="3853925570-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="3978058084-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="3853925570-2">[</span><span·class="p"·data-group-id="3853925570-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="3853925570-3">}</span><span·class="p">,</span><span·class="w">192 ·</span><span·class="p"·data-group-id="3978058084-2">[</span><span·class="p"·data-group-id="3978058084-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="3978058084-3">}</span><span·class="p">,</span><span·class="w">
193 ··</span><span·class="p"·data-group-id="3853925570-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="3853925570-4">}</span><span·class="p">,</span><span·class="w">193 ··</span><span·class="p"·data-group-id="3978058084-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="3978058084-4">}</span><span·class="p">,</span><span·class="w">
194 ··</span><span·class="p"·data-group-id="3853925570-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-6">[</span><span·class="ss">prim_app_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">prim_app_sup</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">prim_app_server</span><span·class="p"·data-group-id="3853925570-6">]</span><span·class="p"·data-group-id="3853925570-5">}</span><span·class="p">,</span><span·class="w"> 
195 ··</span><span·class="p"·data-group-id="3853925570-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-8">[</span><span·class="ss">prim_app_server</span><span·class="p"·data-group-id="3853925570-8">]</span><span·cl[·...·truncated·by·diffoscope;·len:·35,·SHA:·e585858d1d5a71a535422b5f1c00690e7b1e4c46699a47192dab9842564fd2cb·...·]">}</span><span·class="p">,</span><span·class="w">194 ··</span><span·class="p"·data-group-id="3978058084-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-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:·199,·SHA:·d850b39bdd8ee270624ac45c64d192eb888f2d117b92c4bf8d9c2f88d957c510·...·]">}</span><span·class="p">,</span><span·class="w">
 195 ··</span><span·class="p"·data-group-id="3978058084-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-8">[</span><span·class="ss">prim_app_server</span><span·class="p"·data-group-id="3978058084-8">]</span><span·class="p"·data-group-id="3978058084-7">}</span><span·class="p">,</span><span·class="w">
196 ··</span><span·class="p"·data-group-id="3853925570-9">{</span><span·class="ss">included_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-10">[</span><span·class="ss">incl_app</span><span·class="p"·data-group-id="3853925570-10">]</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·5ba59bf694019aac3e47f16f577c9b2a62d03c885e6c1eed323d5390fcb49cdc·...·]-9">}</span><span·class="p">,</span><span·class="w">196 ··</span><span·class="p"·data-group-id="3978058084-9">{</span><span·class="ss">included_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-10">[</span><span·class="ss">incl_app</span><span·class="p"·data-group-id="3978058084-10">]</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·18a1298e01f9120177e2a3fde519bf9490696ff2113fc1a33c441a9a8299b6e6·...·]-9">}</span><span·class="p">,</span><span·class="w">
197 ··</span><span·class="p"·data-group-id="3853925570-11">{</span><span·class="ss">start_phases</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-12">[</span><span·class="p"·data-group-id="3853925570-13">{</span><span·class="ss">init</span><span·class="p[·...·truncated·by·diffoscope;·len:·581,·SHA:·25a2680fca53f1e790505d86af7c1a4b27f23227b9284ba3f8f1af9f92d4d0da·...·]-11">}</span><span·class="p">,</span><span·class="w">197 ··</span><span·class="p"·data-group-id="3978058084-11">{</span><span·class="ss">start_phases</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-12">[</span><span·class="p"·data-group-id="3978058084-13">{</span><span·class="ss">init</span><span·class="p[·...·truncated·by·diffoscope;·len:·581,·SHA:·de6fa4367404e72db5cf72a5ac6411cd0fc883bde7c9d38b26c472986460733b·...·]-11">}</span><span·class="p">,</span><span·class="w">
198 ··</span><span·class="p"·data-group-id="3853925570-17">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-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:·46ed06b853644d0429b416a4cec991941203d94dd1e3c6c8cef4eff8d863076a·...·]-17">}</span><span·class="p">,</span><span·class="w">198 ··</span><span·class="p"·data-group-id="3978058084-17">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-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:·b184812874e925cc166e2be710de775e6b8141d8adc5e98a56ca7a0d14a62fc2·...·]-17">}</span><span·class="p">,</span><span·class="w">
199 ··</span><span·class="p"·data-group-id="3853925570-19">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-20">{</span><span·class="ss">application_starter</span><span·class="p">,</span><span·class="p"·data-group-id="3853925[·...·truncated·by·diffoscope;·len:·332,·SHA:·2f744988d5f04cb55b8228635db98b3510ba0a1ac0fcbe7a86cbe5d8980ea329·...·]-19">}</span><span·class="p">,</span><span·class="w">199 ··</span><span·class="p"·data-group-id="3978058084-19">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-20">{</span><span·class="ss">application_starter</span><span·class="p">,</span><span·class="p"·data-group-id="3978058[·...·truncated·by·diffoscope;·len:·332,·SHA:·f1f23a3ff8446050f477828e8057d43c301686348fd951eb4b4e124cb4b8f163·...·]-19">}</span><span·class="p">,</span><span·class="w">
200 ··</span><span·class="p"·data-group-id="3853925570-23">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-24">[</span><span·class="p"·data-group-id="3853925570-25">{</span><span·class="ss">file</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·223,·SHA:·7eb51224c674ca63cabc3256754b365d512136b00a4db36c16a2a4abfbc896ec·...·]-23">}</span><span·class="w">200 ··</span><span·class="p"·data-group-id="3978058084-23">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-24">[</span><span·class="p"·data-group-id="3978058084-25">{</span><span·class="ss">file</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·223,·SHA:·fc5f071c28476f7c33ea715987177a0eac344cfec049e2b3c832257fdad95ff0·...·]-23">}</span><span·class="w">
201 ·</span><span·class="p"·data-group-id="3853925570-2">]</span><span·class="p"·data-group-id="3853925570-1">}</span><span·class="p">.</span><span·class="w">201 ·</span><span·class="p"·data-group-id="3978058084-2">]</span><span·class="p"·data-group-id="3978058084-1">}</span><span·class="p">.</span><span·class="w">
  
202 </span><span·class="p"·data-group-id="3853925570-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="3978058084-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="3853925570-27">[</span><span·class="p"·data-group-id="3853925570-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="3853925570-28">}</span><span·class="p">,</span><span·class="w">203 ·</span><span·class="p"·data-group-id="3978058084-27">[</span><span·class="p"·data-group-id="3978058084-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="3978058084-28">}</span><span·class="p">,</span><span·class="w">
204 ··</span><span·class="p"·data-group-id="3853925570-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="3853925570-29">}</span><span·class="p">,</span><span·class="w">204 ··</span><span·class="p"·data-group-id="3978058084-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="3978058084-29">}</span><span·class="p">,</span><span·class="w">
205 ··</span><span·class="p"·data-group-id="3853925570-30">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-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:·2c848584cc3dbd0f435e7ca812f7989b0a6a09a5c8550c8bd2234bd1d1f1de6a·...·]-30">}</span><span·class="p">,</span><span·class="w">205 ··</span><span·class="p"·data-group-id="3978058084-30">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-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:·601df70e63d6f091870d70469e05125fdd4a94c54e34726dbb0467bc8e136ad4·...·]-30">}</span><span·class="p">,</span><span·class="w">
206 ··</span><span·class="p"·data-group-id="3853925570-32">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-33">[</span><span·class="p"·data-group-id="3853925570-33">]</span><span·class="p"·data-group-id="3853925570-32">}</span><span·class="p">,</span><span·class="w">206 ··</span><span·class="p"·data-group-id="3978058084-32">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-33">[</span><span·class="p"·data-group-id="3978058084-33">]</span><span·class="p"·data-group-id="3978058084-32">}</span><span·class="p">,</span><span·class="w">
207 ··</span><span·class="p"·data-group-id="3853925570-34">{</span><span·class="ss">start_phases</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-35">[</span><span·class="p"·data-group-id="3853925570-36">{</span><span·class="ss">go</span><span·class="p">[·...·truncated·by·diffoscope;·len:·265,·SHA:·3d860d7595174fc1cdb8e4a429f4f2d32ce71417163bea5cf2720bfb6f2cb1f7·...·]-34">}</span><span·class="p">,</span><span·class="w">207 ··</span><span·class="p"·data-group-id="3978058084-34">{</span><span·class="ss">start_phases</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-35">[</span><span·class="p"·data-group-id="3978058084-36">{</span><span·class="ss">go</span><span·class="p">[·...·truncated·by·diffoscope;·len:·265,·SHA:·d9093302c22ac561af8a0f55374e84d76f939629aaaba0fcc16a92fe79b02b8f·...·]-34">}</span><span·class="p">,</span><span·class="w">
208 ··</span><span·class="p"·data-group-id="3853925570-38">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-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:·9a3d499e0768b70c77c91bddcfd31c8e3e6f9092b528237bbbe73b1f98193036·...·]-38">}</span><span·class="p">,</span><span·class="w">208 ··</span><span·class="p"·data-group-id="3978058084-38">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-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:·10dceff7a23604b6e751358613287ade812b7fecb880f91f0a811e24ecbe9912·...·]-38">}</span><span·class="p">,</span><span·class="w">
209 ··</span><span·class="p"·data-group-id="3853925570-40">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3853925570-41">{</span><span·class="ss">incl_app_cb</span><span·class="p">,</span><span·class="p"·data-group-id="3853925570-42">[·...·truncated·by·diffoscope;·len:·157,·SHA:·63d7c706ae7639757bd7a7c88de36d448232a95c65853e1e91326a1cc6eab7f0·...·]-40">}</span><span·class="w">209 ··</span><span·class="p"·data-group-id="3978058084-40">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3978058084-41">{</span><span·class="ss">incl_app_cb</span><span·class="p">,</span><span·class="p"·data-group-id="3978058084-42">[·...·truncated·by·diffoscope;·len:·157,·SHA:·9e58fbef6d6ed0530a70ef8e3dcfb27cd20df7f73dca87cd2d86ce7aad332dd3·...·]-40">}</span><span·class="w">
210 ·</span><span·class="p"·data-group-id="3853925570-27">]</span><span·class="p"·data-group-id="3853925570-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="3978058084-27">]</span><span·class="p"·data-group-id="3978058084-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="9043230423-1">(</span><span·class="ss">prim_app</span><span·class="p"·data-group-id="9043230423-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="6963126565-1">(</span><span·class="ss">prim_app</span><span·class="p"·data-group-id="6963126565-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="9043230423-2">(</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9043230423-3">[</span><span·class="p"·data-group-id="9043230423-3">]</span><span·class="p"·data-group-id="9043230423-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="6963126565-2">(</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6963126565-3">[</span><span·class="p"·data-group-id="6963126565-3">]</span><span·class="p"·data-group-id="6963126565-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="9043230423-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="9043230423-5">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·67,·SHA:·14093a5bfb1cd8b757ce84a592ad1f9fafaba2af4aef49e8d837f690f4f7607d·...·]-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="6963126565-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="6963126565-5">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·67,·SHA:·459ce9e34e2a1d1ad842813d07a481dad794bb8fd31b2cbbe88dacfc85980af6·...·]-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="9043230423-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="9043230423-7">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·8dd2a3ba5ed6201e82c9e6f3869d2be59d67186d0590a95939347e616dcdbb06·...·]-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="6963126565-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="6963126565-7">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·11df795a3014cd5f85e1d808b624c488adb978ece6ba360a659c16a26dadbb38·...·]-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="9043230423-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="9043230423-9">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·d4259317610f98c83895905e4e1049538c911300048761b71a1dd27c2b9ac39a·...·]-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="6963126565-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="6963126565-9">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·7c0189eaf211a6b41140aa290fc8a000f389d25ef48e85237487f14b3285fcde·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>278 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>489 <p>Copyright·©·1996-2024·<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="4659749961-1">(</span><span·class="ss">system_version</span><span·class="p"·data-group-id="4659749961-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="5092080761-1">(</span><span·class="ss">system_version</span><span·class="p"·data-group-id="5092080761-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="3944137210-1">(</span><span·class="p"·data-group-id="3944137210-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="1495600623-1">(</span><span·class="p"·data-group-id="1495600623-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
326 ····</span><span·class="p"·data-group-id="3944137210-2">{</span><span·class="ss">win32</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="3944137210-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">326 ····</span><span·class="p"·data-group-id="1495600623-2">{</span><span·class="ss">win32</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="1495600623-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="3944137210-3">(</span><span·class="p"·data-group-id="3944137210-3">)</span><span·class="p">;</span><span·class="w">327 ········</span><span·class="nf">do_windows_specific</span><span·class="p"·data-group-id="1495600623-3">(</span><span·class="p"·data-group-id="1495600623-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="3944137210-4">(</span><span·class="p"·data-group-id="3944137210-4">)</span><span·class="w">329 ········</span><span·class="nf">do_fallback_or_exit</span><span·class="p"·data-group-id="1495600623-4">(</span><span·class="p"·data-group-id="1495600623-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>436 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>663 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>176 <p>Copyright·©·1996-2024·<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="2737058440-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="273705[·...·truncated·by·diffoscope;·len:·650,·SHA:·17e8e36ecb1960803b771504f008f7af57e679891c3fc387e83b85df1f599869·...·]-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="7196591675-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="719659[·...·truncated·by·diffoscope;·len:·650,·SHA:·7725c844e87f43c0e7927eed13fc83994442da274de22fe835b271288bbaccc6·...·]-1">]</span><span·class="p">.</span><span·class="w">
124 </span><span·class="p"·data-group-id="2737058440-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:·35f261f7175da33ff8c85da4567e40057a83026b93959ed19a4ecde255134013·...·]-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="7196591675-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:·61ea7cda8780603cff342910b7ac3a453b4bc27b2572800ab32dfb39dbfde7db·...·]-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="9823477632-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="982347[·...·truncated·by·diffoscope;·len:·862,·SHA:·a3e4f99b65682ef1bd65403f3b2add0ca874f5e1b0527c85f7176008c1bdbcb7·...·]-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="0925852115-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="092585[·...·truncated·by·diffoscope;·len:·862,·SHA:·efc59a5270224751253319df90dedf585d66fae7a17bdd5ec1ea4a4f5064176c·...·]-1">]</span><span·class="p">.</span><span·class="w">
128 </span><span·class="p"·data-group-id="9823477632-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="9823477632-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="0925852115-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="0925852115-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="9240478154-1">[</span><span·class="p"·data-group-id="9240478154-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="9240478154-2">}</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·739,·SHA:·69cca9e9d0fd1759caac016dbab7dba83d248c2a026618d614cf762c380c5feb·...·]-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="3526608688-1">[</span><span·class="p"·data-group-id="3526608688-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="3526608688-2">}</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·739,·SHA:·abdd47d69429256a2e609c246185bd5547fe06eae05a95176a5fb29c998e676c·...·]-1">]</span><span·class="p">.</span><span·class="w">
130 </span><span·class="p"·data-group-id="9240478154-5">[</span><span·class="p"·data-group-id="9240478154-6">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="9240478154-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·1011,·SHA:·5e5835706c1a970e17b371cd0174de292a22dafec087619f758204df8c142c1b·...·]-5">]</span></code></pre><h2·id="quick-sort"·class="section-heading">130 </span><span·class="p"·data-group-id="3526608688-5">[</span><span·class="p"·data-group-id="3526608688-6">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="3526608688-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·1011,·SHA:·363327f88d4972d5e2f977e34dbc9ca66b94582ddd5e5004644eefb2d36b6208·...·]-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="9896327880-1">(</span><span·class="p"·data-group-id="9896327880-2">[</span><span·class="p"·data-group-id="9896327880-2">]</span><span·class="p"·data-group-id="9896327880-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·5f5f3509d6dc9fddaf12f4b432a7f590718bd35a6a53169ce55726e29aa05909·...·]-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="2940532803-1">(</span><span·class="p"·data-group-id="2940532803-2">[</span><span·class="p"·data-group-id="2940532803-2">]</span><span·class="p"·data-group-id="2940532803-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·e51921dc2ed51b0d5ba4879b707e7244c89100dc2d30be7c28f4d06e5bd9ccc6·...·]-3">]</span><span·class="p">;</span><span·class="w">
137 </span><span·class="nf">sort</span><span·class="p"·data-group-id="9896327880-4">(</span><span·class="p"·data-group-id="9896327880-5">[</span><span·class="p">_</span><span·class="p"·data-group-id="9896327880-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:·97de0b7dd1be0100df185c2dd488a3af66fb58fa991e064f1b8531a97d0c7568·...·]-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="2940532803-4">(</span><span·class="p"·data-group-id="2940532803-5">[</span><span·class="p">_</span><span·class="p"·data-group-id="2940532803-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:·e3b8823f55ed12bf06fc02b294c8510be4b2cde743dec9547a327bc7702a1d3f·...·]-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="9896327880-6">(</span><span·class="p"·data-group-id="9896327880-7">[</span><span·class="n">Pivot</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="9896327880-7">]</span><span·class="p"·data-group-id="9896327880-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="2940532803-6">(</span><span·class="p"·data-group-id="2940532803-7">[</span><span·class="n">Pivot</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="2940532803-7">]</span><span·class="p"·data-group-id="2940532803-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="9896327880-8">(</span><span·class="p"·data-group-id="9896327880-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:·1d1bb2fc361749ab465b11ace36e9ca1b32f7b219ce2b395cb96783453dd7814·...·]-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="2940532803-8">(</span><span·class="p"·data-group-id="2940532803-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:·1b7908ccb14f85463a92f8067b51ad722f6fab39c183b90687f30959f0a33395·...·]-8">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">
140 ····</span><span·class="p"·data-group-id="9896327880-10">[</span><span·class="n">Pivot</span><span·class="p"·data-group-id="9896327880-10">]</span><span·class="w">·</span><span·class="o">++</span><span·class="w">140 ····</span><span·class="p"·data-group-id="2940532803-10">[</span><span·class="n">Pivot</span><span·class="p"·data-group-id="2940532803-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="9896327880-11">(</span><span·class="p"·data-group-id="9896327880-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:·f3f9d5b625371e4458e31a4d34885fede2e77504c00dbb72a4a207c647967640·...·]-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="2940532803-11">(</span><span·class="p"·data-group-id="2940532803-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:·fd02c5650c28863936d400c36b46fcda4af7f1d880ac5e22aff50e33863e6ba2·...·]-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="5486463650-1">(</span><span·class="p"·data-group-id="5486463650-2">[</span><span·class="p"·data-group-id="5486463650-2">]</span><span·class="p"·data-group-id="5486463650-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·201,·SHA:·b1823ad07169e9d08b82c1224a870b9bd884b333feccda86eac11cb06c259ace·...·]-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="4126831781-1">(</span><span·class="p"·data-group-id="4126831781-2">[</span><span·class="p"·data-group-id="4126831781-2">]</span><span·class="p"·data-group-id="4126831781-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·201,·SHA:·d1e210e8ab11d0dbc36cfe217d2c037f8c9bd933daafa567b9641d490d7614f3·...·]-3">]</span><span·class="p">;</span><span·class="w">
159 </span><span·class="nf">perms</span><span·class="p"·data-group-id="5486463650-5">(</span><span·class="n">L</span><span·class="p"·data-group-id="5486463650-5">)</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5486463650-6">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·851,·SHA:·b6dd01011ac201514b2c4ea4d8c9744e6f89c26788c5f6350e2e909c9586d052·...·]-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="4126831781-5">(</span><span·class="n">L</span><span·class="p"·data-group-id="4126831781-5">)</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4126831781-6">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·851,·SHA:·420ade6fa4607cc9169d118fa8b9e6a2278347114057adc4147070e846d8d2c8·...·]-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="3839863547-1">(</span><span·class="p"·data-group-id="3839863547-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="3839863547-2">]</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·5955a4471c952e020c66863300695ef079e1a92cde8bc7ee184a38be73668933·...·]-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="8066719070-1">(</span><span·class="p"·data-group-id="8066719070-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="8066719070-2">]</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·7dbfdc88301f78b5de95c0c371cc20a00b090466cb3d541ec592f3f0855f9e17·...·]-1">)</span><span·class="p">.</span><span·class="w">
162 </span><span·class="p"·data-group-id="3839863547-3">[</span><span·class="p"·data-group-id="3839863547-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="3839863547-4">]</span><span[·...·truncated·by·diffoscope;·len:·1301,·SHA:·f4bb67404ad939842c243c8726fe75933847a4553c527086912ac82513c82b73·...·]-3">]</span></code></pre><h2·id="pythagorean-triplets"·class="section-heading">162 </span><span·class="p"·data-group-id="8066719070-3">[</span><span·class="p"·data-group-id="8066719070-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="8066719070-4">]</span><span[·...·truncated·by·diffoscope;·len:·1301,·SHA:·2a4ff8c9063ac2b62c8d8d5769264ff21fb73dd7f8130be3e6438dae8443efdf·...·]-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="6771655026-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="6771655026-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="3235808508-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="3235808508-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 ····</span><span·class="p"·data-group-id="6771655026-2">[</span><span·class="w">·</span><span·class="p"·data-group-id="6771655026-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="677165[·...·truncated·by·diffoscope;·len:·4,·SHA:·fd69b53f644e0e39b94d3e536daab93467b82d061cc31ca29755bf83f21cc98b·...·]-3">}</span><span·class="w">·</span><span·class="p">||</span><span·class="w">172 ····</span><span·class="p"·data-group-id="3235808508-2">[</span><span·class="w">·</span><span·class="p"·data-group-id="3235808508-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="323580[·...·truncated·by·diffoscope;·len:·4,·SHA:·cf80f57c9594bad01e3802a54cf4ea15ff89ce503c2af57564bb24efb9d20c51·...·]-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="6771655026-4">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="6771655026-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="3235808508-4">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="3235808508-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="6771655026-5">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="6771655026-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="3235808508-5">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="3235808508-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="6771655026-6">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="6771655026-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="3235808508-6">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="3235808508-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="6771655026-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="6293741556-1">(</span><span·class="mi">3</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·24fa8825667071fb76097b400f288df764e5bfcf44a1ad047d8741cbc07fcaf8·...·]-1">)</span><span·class="p">.</span><span·class="w">178 ····</span><span·class="p"·data-group-id="3235808508-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="4382271653-1">(</span><span·class="mi">3</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·4536b5c390d7a27ce30bdf824bda7adcb66977e80846b5435ffe033039e67de5·...·]-1">)</span><span·class="p">.</span><span·class="w">
179 </span><span·class="p"·data-group-id="6293741556-2">[</span><span·class="p"·data-group-id="6293741556-2">]</span><span·class="p">.</span><span·class="gp·unselectable">179 </span><span·class="p"·data-group-id="4382271653-2">[</span><span·class="p"·data-group-id="4382271653-2">]</span><span·class="p">.</span><span·class="gp·unselectable">
180 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="6293741556-3">(</span><span·class="mi">11</span><span·class="p"·data-group-id="6293741556-3">)</span><span·class="p">.</span><span·class="w">180 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="4382271653-3">(</span><span·class="mi">11</span><span·class="p"·data-group-id="4382271653-3">)</span><span·class="p">.</span><span·class="w">
181 </span><span·class="p"·data-group-id="6293741556-4">[</span><span·class="p"·data-group-id="6293741556-4">]</span><span·class="p">.</span><span·class="gp·unselectable">181 </span><span·class="p"·data-group-id="4382271653-4">[</span><span·class="p"·data-group-id="4382271653-4">]</span><span·class="p">.</span><span·class="gp·unselectable">
182 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="6293741556-5">(</span><span·class="mi">12</span><span·class="p"·data-group-id="6293741556-5">)</span><span·class="p">.</span><span·class="w">182 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="4382271653-5">(</span><span·class="mi">12</span><span·class="p"·data-group-id="4382271653-5">)</span><span·class="p">.</span><span·class="w">
183 </span><span·class="p"·data-group-id="6293741556-6">[</span><span·class="p"·data-group-id="6293741556-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="6293741556-7">}</span><span[·...·truncated·by·diffoscope;·len:·289,·SHA:·f8b9297c2e567cf1dc18c51df4565b0e17887aa152eca6e970995626cff871ff·...·]-6">]</span><span·class="gp·unselectable">183 </span><span·class="p"·data-group-id="4382271653-6">[</span><span·class="p"·data-group-id="4382271653-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="4382271653-7">}</span><span[·...·truncated·by·diffoscope;·len:·289,·SHA:·3afe6b5a6bb2a5dabec16a3ded16c0173fe3ea78f8db777a0bb6d5b57d7a5a97·...·]-6">]</span><span·class="gp·unselectable">
184 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="6293741556-9">(</span><span·class="mi">50</span><span·class="p"·data-group-id="6293741556-9">)</span><span·class="p">.</span><span·class="w">184 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="4382271653-9">(</span><span·class="mi">50</span><span·class="p"·data-group-id="4382271653-9">)</span><span·class="p">.</span><span·class="w">
185 </span><span·class="p"·data-group-id="6293741556-10">[</span><span·class="p"·data-group-id="6293741556-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="6293741556-11">}</span><span·class="p">,</span><span·class="w">185 </span><span·class="p"·data-group-id="4382271653-10">[</span><span·class="p"·data-group-id="4382271653-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="4382271653-11">}</span><span·class="p">,</span><span·class="w">
186 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-12">}</span><span·class="p">,</span><span·class="w">186 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-12">}</span><span·class="p">,</span><span·class="w">
187 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-13">}</span><span·class="p">,</span><span·class="w">187 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-13">}</span><span·class="p">,</span><span·class="w">
188 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-14">}</span><span·class="p">,</span><span·class="w">188 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-14">}</span><span·class="p">,</span><span·class="w">
189 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-15">}</span><span·class="p">,</span><span·class="w">189 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-15">}</span><span·class="p">,</span><span·class="w">
190 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-16">}</span><span·class="p">,</span><span·class="w">190 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-16">}</span><span·class="p">,</span><span·class="w">
191 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-17">}</span><span·class="p">,</span><span·class="w">191 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-17">}</span><span·class="p">,</span><span·class="w">
192 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-18">}</span><span·class="p">,</span><span·class="w">192 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-18">}</span><span·class="p">,</span><span·class="w">
193 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-19">}</span><span·class="p">,</span><span·class="w">193 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-19">}</span><span·class="p">,</span><span·class="w">
194 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-20">}</span><span·class="p">,</span><span·class="w">194 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-20">}</span><span·class="p">,</span><span·class="w">
195 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-21">}</span><span·class="p">,</span><span·class="w">195 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-21">}</span><span·class="p">,</span><span·class="w">
196 ·</span><span·class="p"·data-group-id="6293741556-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="6293741556-22">}</span><span·class="p"·data-group-id="6293741556-10">]</span[·...·truncated·by·diffoscope;·len:·282,·SHA:·4f7b65da4b25d80b85d8988412afb06cc0268de2b3c613ea7924ba9549c1cabe·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">196 ·</span><span·class="p"·data-group-id="4382271653-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="4382271653-22">}</span><span·class="p"·data-group-id="4382271653-10">]</span[·...·truncated·by·diffoscope;·len:·282,·SHA:·7fe8755166cf964c9774b8a0e0e5482d4167ef78b7b77fdd5f66749ccd67076e·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
197 ···</span><span·class="p"·data-group-id="9219099568-2">[</span><span·class="p"·data-group-id="9219099568-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="9219099568-3">}</span><span·class="w">·</span><span·class="p">||</span><span·class="w">197 ···</span><span·class="p"·data-group-id="2222836306-2">[</span><span·class="p"·data-group-id="2222836306-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="2222836306-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="9219099568-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="9219099568-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="2222836306-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="2222836306-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="9219099568-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="9219099568-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="2222836306-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="2222836306-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="9219099568-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="9219099568-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="2222836306-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="2222836306-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="9219099568-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="2222836306-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="3199816689-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="3199816689-1">)</span><span·class="w">···</span><span·class="p">-&gt;</span><span·class="w">··</span><span·class="p"·data-group-id="3199816689-2">[</span><span·class="n">X</span><s[·...·truncated·by·diffoscope;·len:·410,·SHA:·3f503b6ca5976c8b0abc9ec8b44ff3173fa0ca892e7b75bb657ff4696a149d6d·...·]-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="3251722227-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="3251722227-1">)</span><span·class="w">···</span><span·class="p">-&gt;</span><span·class="w">··</span><span·class="p"·data-group-id="3251722227-2">[</span><span·class="n">X</span><s[·...·truncated·by·diffoscope;·len:·410,·SHA:·5a63d39158eb1e33120980fb4d0e6591d42ac57987a51ca47ef3b824dafc5658·...·]-2">]</span><span·class="p">.</span><span·class="w">
210 </span><span·class="nf">map</span><span·class="p"·data-group-id="3199816689-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="3199816689-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·439,·SHA:·56b473dcb623e1a95475eb481680bcb8cab2ba2e6507c37555b865ef2948ff9a·...·]-4">]</span><span·class="p">.</span><span·class="w">210 </span><span·class="nf">map</span><span·class="p"·data-group-id="3251722227-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="3251722227-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·439,·SHA:·e46a386ea794fcd50922797f621cd11ed119d10388e72981de4c1ad51593c824·...·]-4">]</span><span·class="p">.</span><span·class="w">
211 </span><span·class="nf">filter</span><span·class="p"·data-group-id="3199816689-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="3199816689-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·513,·SHA:·2e9d379aeb783134cdf3f88b468a26d7703f561a4ab2f554837ee20f0c5c5e59·...·]-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="3251722227-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="3251722227-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·513,·SHA:·fe63d3d3b71b8677929ea8ba40a752d44c5111e22c96fb6301bdb872a78ee7a3·...·]-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="6668456854-1">(</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="6668456854-2">[</span><span·class="p"·data-group-id="6668456854-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·754,·SHA:·50c37ff3f980884f46da0e3d44a46405e6398fbea82f69632c2bad0f83c07e8e·...·]-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="8479719245-1">(</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="8479719245-2">[</span><span·class="p"·data-group-id="8479719245-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·754,·SHA:·7c8ba343093f40136bfbfba0d710c591e559d7932f8ff6aeb5957276566433af·...·]-1">)</span><span·class="p">.</span><span·class="w">
224 </span><span·class="p"·data-group-id="6668456854-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="6668456854-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="8479719245-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="8479719245-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="4592790973-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="4592790973-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">··</span><span·cl[·...·truncated·by·diffoscope;·len:·656,·SHA:·b288b50c570c540c634893a69aae816bcd35f7dd77f89588ceed3a3ee061b248·...·]-2">]</span><span·class="p">.</span></code></pre><p>The·generator·now·contains·unbound·variables·and·the·test·has·been·moved·into225 written·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">select</span><span·class="p"·data-group-id="8395103727-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="8395103727-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">··</span><span·cl[·...·truncated·by·diffoscope;·len:·656,·SHA:·dead17c4c787dfcb04ffb1f9d5b0bc064debc080b2c191ffae32af3784981fb4·...·]-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="1866718124-1">(</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="1866718124-2">[</span><span·class="p"·data-group-id="1866718124-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="1866718124-3">}</span><span·class="p">,</span><span·class="p"·data-group-id="1866718124-4">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="1866718124-4">}</span><span·class="p">,</span><span·class="p"·data-group-id="1866718124-5">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="1866718124-5">}</span><span·class="p">,</span><span·class="p"·data-group-id="1866718124-6">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="1866718124-6">}</span><span·class="p"·data-group-id="1866718124-2">]</span><span·class="p"·data-group-id="1866718124-1">)</span><span·class="p">.</span><span·class="w"> 
227 </span><span·class="p"·data-group-id="1866718124-7">[</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="1866718124-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="3674210649-1">[</span><span·class="p"·data-group-id="3674210649-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">Y</span><span·class="p"·data-group-id="3674210649-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="3674210649-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="3674210649-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="3674210649-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="3674210649-4">]</span><span·class="p"·data-group-id="3674210649-1">]</span><span·class="p">.</span><span·class="w"> 
229 </span><span·class="p"·data-group-id="3674210649-5">[</span><span·class="p"·data-group-id="3674210649-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="3674210649-6">}</span><span·class="p">[·...·truncated·by·diffoscope;·len:·1775,·SHA:·d281f46fe2b59a48b6e133c36caa6a1519dab7729cc1c1e84de250fbd09525d2·...·]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="1991977758-1">(</span><span·class="ss">b</span><span·cla[·...·truncated·by·diffoscope;·len:·1006,·SHA:·b611214811c149c5d2f8e774d7a1c7c544dd4d57baa6c9db89f224199b0e822d·...·]
 227 </span><span·class="p"·data-group-id="1991977758-7">[</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="1991977758-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="6813311831-1">[</span><span·class="p"·data-group-id="6813311831-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">Y</span><span·class="p"·data-group-id="6813311831-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="6813311831-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="6813311831-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="6813311831-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="6813311831-4">]</span><span·class="p"·data-group-id="6813311831-1">]</span><span·class="p">.</span><span·class="w">
 229 </span><span·class="p"·data-group-id="6813311831-5">[</span><span·class="p"·data-group-id="6813311831-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="6813311831-6">}</span><span·class="p">,</span><span·class="p"·data-group-id="6813311831-7">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="6813311831-7">}</span><span·class="p">,</span><span·class="p"·data-group-id="6813311831-8">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="6813311831-8">}</span><span·class="p">,</span><span·class="p"·data-group-id="6813311831-9">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="6813311831-9">}</span><span·class="p">,</span><span·class="p"·data-group-id="6813311831-10">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="6813311831-10">}</span><span·class="p">,</span><span·class="p"·data-group-id="6813311831-11">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="6813311831-11">}</span><span·class="p">,</span><span·class="p"·data-group-id="6813311831-12">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="6813311831-12">}</span><span·class="p">,</span><span·class="p"·data-group-id="6813311831-13">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="6813311831-13">}</span><span·class="p">,</span><span·class="p"·data-group-id="6813311831-14">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="6813311831-14">}</span><span·class="p"·data-group-id="6813311831-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="1627475422-1">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="1627475422-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="2823864390-1">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="2823864390-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="1627475422-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:·b349063a2232555f53ce74ecf5c92fdf98b3b50fb3f7794ed72ac7d8c6c10fb6·...·]-2">]</span><span·class="w">233 ····</span><span·class="p"·data-group-id="2823864390-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:·372f292eb8f144a99a19b5213dc205fd052da1ece3121ac9e5be3f79efe2d319·...·]-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="5743093667-1">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="5743093667-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="8738358873-1">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="8738358873-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="5743093667-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:·066f37c1addf220f0046eb7d608acae2020799e44eb60c1804a07c003dc39582·...·]-2">]</span><span·class="w">236 ····</span><span·class="p"·data-group-id="8738358873-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:·1ab3bb177795d63bc9ddbbcf4257bae20b8c332118e719a2e98fff1588dd556a·...·]-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>
  
239 <div·class="bottom-actions"·id="bottom-actions">239 <div·class="bottom-actions"·id="bottom-actions">
Max diff block lines reached; 773/79388 bytes (0.97%) 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="9412262991-1">(</span><span·class="p"·data-group-id="9412262991-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="9412262991-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·60,·SHA:·be540bf0088d1858c9b88b731f2f3e9659f939a59b5e513450fdef6c276ce715·...·]-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="4214088712-1">(</span><span·class="p"·data-group-id="4214088712-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="4214088712-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·60,·SHA:·1f7a7460fe8b2a63693d3802db68138b0576c3bd14a91a7d1afb624ab6f60f70·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
128 ····</span><span·class="p"·data-group-id="9412262991-3">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">append</span><span·class="p"·data-group-id="9412262991-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:·e9bd94b5939981ffa8d7bb0ae334225594fcff77c33b7a53cb8639b88b167323·...·]-3">]</span><span·class="p">;</span><span·class="w">128 ····</span><span·class="p"·data-group-id="4214088712-3">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">append</span><span·class="p"·data-group-id="4214088712-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:·4dade6525d0279f95a10891bd3aceb94a02c154d24155dbc49ce5052a872183a·...·]-3">]</span><span·class="p">;</span><span·class="w">
129 </span><span·class="nf">append</span><span·class="p"·data-group-id="9412262991-5">(</span><span·class="p"·data-group-id="9412262991-6">[</span><span·class="p"·data-group-id="9412262991-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</span><span·class="p"·data-group-id="9412262991-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="4214088712-5">(</span><span·class="p"·data-group-id="4214088712-6">[</span><span·class="p"·data-group-id="4214088712-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</span><span·class="p"·data-group-id="4214088712-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="7607498193-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="7607498193-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="5196259340-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="5196259340-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="7607498193-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:·6bfade9d6674c7a49d6f9306630e0e504b035c68157ce58cbdf486a34e343251·...·]-2">)</span><span·class="p">.</span><span·class="w">133 ····</span><span·class="nf">bad_fib</span><span·class="p"·data-group-id="5196259340-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:·6824547654761b8cdcc59d2a550db7fae05a188eb43360d98df86590a86fdc52·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
134 </span><span·class="nf">bad_fib</span><span·class="p"·data-group-id="7607498193-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:·e728ea8c1f95661d6a1e77000eea6cefb63854fdd7d3a57f5bf89cdb0259956c·...·]-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="5196259340-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:·24d4a22e534a409992362c2aadbf8652bb0ab9b469ce914acb208031881d0ec9·...·]-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="7607498193-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:·8251b46570f15824260d8fb882b4944b1d4225cc353a217f862ee3ba3dbd4b14·...·]-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="5196259340-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:·9290fbebe797d3468b29953e9174a0e4e1ae188dd695f83f8127258fe12e2166·...·]-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="7607498193-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:·9c924b553294edd00ebd6aabb8970c39947b0c63fdb1a85d00178235bbdac28b·...·]-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="5196259340-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:·578fbeab13bac0018cd94338f5d57f5b38cdb16e6634fe91cd315d2b895fd547·...·]-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="2781384233-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="2781384233-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="4910966261-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="4910966261-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="2781384233-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:·68754ceae71f61d827b44776ce21bc1135a6fa96c9b6f8fa6b7d3ad45cf8e196·...·]-2">)</span><span·class="p">.</span><span·class="w">140 ····</span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="4910966261-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:·4c578eedb42338dd21aa8706e49cf06582f0a713494288470b08ca77d03db887·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
141 </span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="2781384233-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:·1423217a9e835435bf2a0e7b0aa84f83c4260ea9f1520388c2e2c0b0e17a3fec·...·]-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="4910966261-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:·66e4572f4d5ecb629661f00eadf2b0e183b5e15f372a7df684fc6df60459ca4c·...·]-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="2781384233-5">(</span><span·class="n">Fibs</span><span·class="p"·data-group-id="2781384233-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="4910966261-5">(</span><span·class="n">Fibs</span><span·class="p"·data-group-id="4910966261-5">)</span><span·class="p">;</span><span·class="w">
143 </span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="2781384233-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:·6cd9926865d915fec0b9bd78f28d54bcc377765e7c6ee8dbdb2745c8532dbbb2·...·]-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="4910966261-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:·897ca59a1d9ef96a6bbaf9ffdbbc69f4cbdc00cdb8fdd10ed9af0c2d759681b7·...·]-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="2781384233-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:·569edaba5e2c64c721ab47ceff6f939c502b7297f238f6cab0c44f2a7debf42d·...·]-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="4910966261-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:·433945c659689674d3352665f2b1ba46e2ad950aabbdf7208825d03b9d55df43·...·]-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="1365723730-1">[</span><span·class="n">Expr</span><span·class="p"·data-group-id="1365723730-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="1365723730-2">)</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·676,·SHA:·edd1447eea5f38f55e21860c2ce66930298f05654b6c50ebbb75ac654bc34777·...·]-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="4855623819-1">[</span><span·class="n">Expr</span><span·class="p"·data-group-id="4855623819-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="4855623819-2">)</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·676,·SHA:·8f8b340cd7e10f3255f09b7584aae02f392f94effdf9038100fbda33e6af10ac·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
151 ····</span><span·class="p"·data-group-id="4838116361-3">[</span><span·class="n">Expr</span><span·class="p"·data-group-id="4838116361-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="4838116361-4">)</span><span·class="p">|</span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"[·...·truncated·by·diffoscope;·len:·234,·SHA:·9ec5d73406c7fb44372360766f559963131afc1fe9ea724904fca0dcde4a9251·...·]-3">]</span><span·class="p">;</span><span·class="w">151 ····</span><span·class="p"·data-group-id="6760190452-3">[</span><span·class="n">Expr</span><span·class="p"·data-group-id="6760190452-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="6760190452-4">)</span><span·class="p">|</span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"[·...·truncated·by·diffoscope;·len:·234,·SHA:·236928c4c38aa4647ea6a7bbb2aaf67b266148ce033c34f76528c026422b0706·...·]-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="4838116361-6">(</span><span·class="p"·data-group-id="4838116361-7">[</span><span·class="p"·data-group-id="4838116361-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="4838116361-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4838116361-8">[</span><span·class="p"·data-group-id="4838116361-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="6204411528-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:·fd848dff95d7a52c196dcc94ef0d89e8ceb060ea874e72e3eba0ded441832490·...·]152 </span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"·data-group-id="6760190452-6">(</span><span·class="p"·data-group-id="6760190452-7">[</span><span·class="p"·data-group-id="6760190452-7">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·405,·SHA:·f37e4d7014d80c796062354e9dd2e6f8ba454cb743c538a10420739736264d2c·...·]
 153 will·not·be·constructed.·For·example,·in·this·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1415236261-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·data-group-id="1415236261-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="1415236261-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="1415236261-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="5188776449-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·data-group-id="5188776449-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="5188776449-2">)</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·220,·SHA:·f6e2b34e95e17984a572cd0d6217ec2362f6465485c34e36b866573f6115f697·...·]-1">]</span><span·class="p">;</span><span·class="w">156 ········</span><span·class="p"·data-group-id="6127214595-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·data-group-id="6127214595-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="6127214595-2">)</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·220,·SHA:·0d91d896badc6d8feb10d5df83aa09ba4a5c782daf7b110240fff7ad69488ee9·...·]-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="5188776449-3">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="5188776449-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="6127214595-3">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="6127214595-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="4479643204-1">(</span><span·class="p"·data-group-id="4479643204-2">[</span><span·class="n">E</span><span·class="p">|</span><span·class="n">Tail</span><span·class="p"·data-group-id="4479643204-2">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·63,·SHA:·107d2d293d931ae4844aebc0270fe2b71bce69de87658ea319eca3c124d44a8e·...·]-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="9317972336-1">(</span><span·class="p"·data-group-id="9317972336-2">[</span><span·class="n">E</span><span·class="p">|</span><span·class="n">Tail</span><span·class="p"·data-group-id="9317972336-2">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·63,·SHA:·86bda04ba5c3a853783abf13258307b914ad950347367e62c665db42268f6cf0·...·]-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="4479643204-3">(</span><span·class="n">E</span><span·class="p"·data-group-id="4479643204-3">)</span><span·class="p">,</span><span·class="w">162 ····</span><span·class="n">Expr</span><span·class="p"·data-group-id="9317972336-3">(</span><span·class="n">E</span><span·class="p"·data-group-id="9317972336-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="4479643204-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="4479643204-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="9317972336-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="9317972336-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="4479643204-5">(</span><span·class="p"·data-group-id="4479643204-6">[</span><span·class="p"·data-group-id="4479643204-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:·dc2a1da9cf9e03231fe3ac1c0dbd0d94c6be12a90de64b8d7cf2d11374d697d9·...·]-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="9317972336-5">(</span><span·class="p"·data-group-id="9317972336-6">[</span><span·class="p"·data-group-id="9317972336-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:·ae9079122c9a9c068b3a55a476219c5d3cd6cd15efa64b531db210372dc409ea·...·]-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="7716474236-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·data-group-id="7716474236-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="7716474236-2">)</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·219,·SHA:·1ee0cdb4426a811d8b2b52ef6dc6f25323476cc89164f52b62116ad60763bf9b·...·]-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="7199405841-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·data-group-id="7199405841-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="7199405841-2">)</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·219,·SHA:·630bea1588d017b8ee3407c0b00d13ea09c222caee8ca1dfcfd73dc26021c518·...·]-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="6850590984-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="6850590984-1">)</span></code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"[·...·truncated·by·diffoscope;·len:·954,·SHA:·a1b2ffacd797dbc9b0cf94e7e7e077302ca22518ab8030b506cf0b63a03d0a63·...·]-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="3451451948-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="3451451948-1">)</span></code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"[·...·truncated·by·diffoscope;·len:·954,·SHA:·cc4cf9b65ee01bd877d45add198edab104b978da1ce57b925db02f90e5341e7a·...·]-1">]</span><span·class="p">,</span><span·class="w">
179 </span><span·class="nf">port_command</span><span·class="p"·data-group-id="4326520317-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="4326520317-2">)</span></code></pre><p>Instead:</p><p><strong>DO</strong></p><pre><code·class[·...·truncated·by·diffoscope;·len:·336,·SHA:·29e93fe5b395b4933fb507dd0898b885d8014e4add4d78d524d41acef69c7f22·...·]-1">]</span><span·class="p">,</span><span·class="w">179 </span><span·class="nf">port_command</span><span·class="p"·data-group-id="7809720529-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="7809720529-2">)</span></code></pre><p>Instead:</p><p><strong>DO</strong></p><pre><code·class[·...·truncated·by·diffoscope;·len:·336,·SHA:·70d4a68b2d3e0dbc913ce35fac127f6ecc4426c0bdd8bb025c42216ce53f8fa6·...·]-1">]</span><span·class="p">,</span><span·class="w">
180 </span><span·class="nf">port_command</span><span·class="p"·data-group-id="0453074276-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="0453074276-2">)</span></code></pre><p><strong>DO</strong></p><pre><code·class="makeup·erlang[·...·truncated·by·diffoscope;·len:·832,·SHA:·f709ffcff0a822482a28ab2eb1fe7c3e0c74cddd78e3a3ff6f51750ea7030edc·...·]-1">)</span><span·class="p">.</span><span·class="w">180 </span><span·class="nf">port_command</span><span·class="p"·data-group-id="4416847449-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="4416847449-2">)</span></code></pre><p><strong>DO</strong></p><pre><code·class="makeup·erlang[·...·truncated·by·diffoscope;·len:·832,·SHA:·5c603b5ec2b9244053e631879ff66ba8f5234f99cb9f01e62f6ef6ccc6de4ed3·...·]-1">)</span><span·class="p">.</span><span·class="w">
181 </span><span·class="p"·data-group-id="1294964257-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="1294964257-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="4419903786-1">(</span><span·class="p"·data-group-id="4419903786-2">[</span><span·class="p"·data-group-id="4419903786-3">[</span><span·class="mi">1</span><span·class="p"·data-group-id="4419903786-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4419903786-4">[</span><span·class="mi">2</span><span·class="p"·data-group-id="4419903786-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4419903786-5">[</span><span·class="mi">3</span><span·class="p"·data-group-id="4419903786-5">]</span><span·class="p"·data-group-id="4419903786-2">]</span><span·class="p"·data-group-id="4419903786-1">)</span><span·class="p">.</span><span·class="w"> 
182 </span><span·class="p"·data-group-id="4419903786-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="4419903786-6">]</span></code></pre><h2·id="recursive-list-functions"·class="sect[·...·truncated·by·diffoscope;·len:·11,·SHA:·d76238685d6674391409a28a2625ed495ed5f23cca412f6778572495a29239df·...·]">181 </span><span·class="p"·data-group-id="0457841036-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="0457841036-6">]</span></code></pre><p><strong>DO·NOT</strong></p><pre><code·clas[·...·truncated·by·diffoscope;·len:·899,·SHA:·e7ec17f4422d23ca9b1d1c65360f40bb8938e9b4f998ffe5f80478949403fc8e·...·]">
 182 </span><span·class="p"·data-group-id="8040893386-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="8040893386-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="4419840228-1">(</span><span·class="p"·data-group-id="4419840228-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="4419840228-2">]</span><span·class="p"·data-group-id="4419840228-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="3652614512-1">(</span><span·class="p"·data-group-id="3652614512-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3652614512-2">]</span><span·class="p"·data-group-id="3652614512-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
191 ····</span><span·class="p"·data-group-id="4419840228-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:·7f59d41bf67146d9d7bca530ae80b9a32fb51fa95e231e26653cc887df11c611·...·]-3">]</span><span·class="p">;</span><span·class="w">191 ····</span><span·class="p"·data-group-id="3652614512-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:·9f26652a4158541ca0066f7d8c9c21340be41648bb81d5482c41717fefaa4c68·...·]-3">]</span><span·class="p">;</span><span·class="w">
192 </span><span·class="nf">add_42_body</span><span·class="p"·data-group-id="4419840228-5">(</span><span·class="p"·data-group-id="4419840228-6">[</span><span·class="p"·data-group-id="4419840228-6">]</span><span·class="p"·data-group-id="4419840228-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="3652614512-5">(</span><span·class="p"·data-group-id="3652614512-6">[</span><span·class="p"·data-group-id="3652614512-6">]</span><span·class="p"·data-group-id="3652614512-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
193 ····</span><span·class="p"·data-group-id="4419840228-7">[</span><span·class="p"·data-group-id="4419840228-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="3652614512-7">[</span><span·class="p"·data-group-id="3652614512-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="7152410254-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="7152410254-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="0279637000-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="0279637000-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="7152410254-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7152410254-3">[</span><span·class="p"·data-group-id="7152410254-3">]</span><span·class="p"·data-group-id="7152410254-2">)</span><span·class="p">.</span><span·class="w">195 ····</span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="0279637000-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0279637000-3">[</span><span·class="p"·data-group-id="0279637000-3">]</span><span·class="p"·data-group-id="0279637000-2">)</span><span·class="p">.</span><span·class="w">
  
196 </span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="7152410254-4">(</span><span·class="p"·data-group-id="7152410254-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="7152410254-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·11526597e1c56bdd64f03e8427a7ca8706cb15b0e50bf6ff8f7f4e7d7df8dcff·...·]-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="0279637000-4">(</span><span·class="p"·data-group-id="0279637000-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="0279637000-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·3a0b5ddb608234ef3c164ec7d77b2bb447a560649751faa22eea63b7f9056d5f·...·]-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="7152410254-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7152410254-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:·95b97b9a85b5b9312af7f8ad7ec75d819f8d55021fc0f355f8c03af9d323bc45·...·]-6">)</span><span·class="p">;</span><span·class="w">197 ····</span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="0279637000-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0279637000-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:·586ea9d61dda9ba5c5e87eb3464064dbf525763b0d6b276755b1291813c25798·...·]-6">)</span><span·class="p">;</span><span·class="w">
198 </span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="7152410254-8">(</span><span·class="p"·data-group-id="7152410254-9">[</span><span·class="p"·data-group-id="7152410254-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="7152410254-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="0279637000-8">(</span><span·class="p"·data-group-id="0279637000-9">[</span><span·class="p"·data-group-id="0279637000-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="0279637000-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="7152410254-10">(</span><span·class="n">Acc</span><span·class="p"·data-group-id="7152410254-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="0279637000-10">(</span><span·class="n">Acc</span><span·class="p"·data-group-id="0279637000-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="8269279229-1">(</span><span·class="p"·data-group-id="8269279229-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="8269279229-2">]</span><span·class="p"·data-group-id="8269279229-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">H</span><span·class="o">+</span><span·class="nf">recursive_sum</span><span·class="p"·data-group-id="8269279229-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="8269279229-3">)</span><span·class="p">;</span><span·class="w"> 
211 </span><span·class="nf">recursive_sum</span><span·class="p"·data-group-id="8269279229-4">(</span><span·class="p"·data-group-id="8269279229-5">[</span><span·class="p"·data-group-id="8269279229-5">]</span><span·class="p"·data-group-id="8269279229-4">)</span>[·...·truncated·by·diffoscope;·len:·710,·SHA:·a7e52e25ae10d1f929ea0aa146e71a7cffb1be4fc5bd3259621a83877f6f8f57·...·]</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="1592989057-1">(</span><span·class="p"·data-group-id="1592989057-2">[</span><span·class="n">H</span[·...·truncated·by·diffoscope;·len:·463,·SHA:·2d38b571b88c96c008555ce80347cbe7d7edaa12b5fa9fb1d2b49f1a9b649ce8·...·]</span><span·class="w">
 211 </span><span·class="nf">recursive_sum</span><span·class="p"·data-group-id="1592989057-4">(</span><span·class="p"·data-group-id="1592989057-5">[</span><span·class="p"·data-group-id="1592989057-5">]</span><span·class="p"·data-group-id="1592989057-4">)</span><span·class="w">····</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span></code></pre><p>Instead:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">sum</span><span·class="p"·data-group-id="2870297725-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="2870297725-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="2870297725-2">(</span><span·class="n">L</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="2870297725-2">)</span><span·class="p">.</span><span·class="w">
  
212 </span><span·class="nf">sum</span><span·class="p"·data-group-id="9776045486-3">(</span><span·class="p"·data-group-id="9776045486-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="9776045486-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·462,·SHA:·0af9ecbc2247a2704f0b00209d058d81931ebe5adecbc939c05d34bf6869bdc6·...·]-5">)</span><span·class="p">;</span><span·class="w">212 </span><span·class="nf">sum</span><span·class="p"·data-group-id="2870297725-3">(</span><span·class="p"·data-group-id="2870297725-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="2870297725-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·462,·SHA:·49d9f4f84559a28c7cfac8802c14da01213373ac8bad5cbf40b312ad8cbd08f6·...·]-5">)</span><span·class="p">;</span><span·class="w">
213 </span><span·class="nf">sum</span><span·class="p"·data-group-id="9776045486-6">(</span><span·class="p"·data-group-id="9776045486-7">[</span><span·class="p"·data-group-id="9776045486-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="9776045486-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="2870297725-6">(</span><span·class="p"·data-group-id="2870297725-7">[</span><span·class="p"·data-group-id="2870297725-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="2870297725-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>266 <p>Copyright·©·1996-2024·<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="8721043654-1">(</span><span·class="n">File</span><span·class="p"·data-group-id="8721043654-1">)</span><span·class="p">.</span><span·class="w">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="9435666924-1">(</span><span·class="n">File</span><span·class="p"·data-group-id="9435666924-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="8721043654-2">(</span><span·class="n">File</span><span·class="p"·data-group-id="8721043654-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·included124 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="9435666924-2">(</span><span·class="n">File</span><span·class="p"·data-group-id="9435666924-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="2696829668-1">(</span><span·class="s">&quot;my_records.hrl&quot;</span><span·class="p"·data-group-id="2696829668-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="5198648665-1">(</span><span·class="s">&quot;my_records.hrl&quot;</span><span·class="p"·data-group-id="5198648665-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="2696829668-2">(</span><span·class="s">&quot;incdir/my_records.hrl&quot;</span><span·class="p"·data-group-id="2696829668-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="5198648665-2">(</span><span·class="s">&quot;incdir/my_records.hrl&quot;</span><span·class="p"·data-group-id="5198648665-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="2696829668-3">(</span><span·class="s">&quot;/home/user/proj/my_records.hrl&quot;</span><span·class="p"·data-group-id="2696829668-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="5198648665-3">(</span><span·class="s">&quot;/home/user/proj/my_records.hrl&quot;</span><span·class="p"·data-group-id="5198648665-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="2696829668-4">(</span><span·class="s">&quot;$PROJ_ROOT/my_records.hrl&quot;</span><span·class="p"·data-group-id="2696829668-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="5198648665-4">(</span><span·class="s">&quot;$PROJ_ROOT/my_records.hrl&quot;</span><span·class="p"·data-group-id="5198648665-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="0535871665-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="0535871665-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="8523067385-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="8523067385-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="7957488945-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="7957488945-1">)</span><span·class="p">.</span><span·class="w">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="2390893350-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="2390893350-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="7957488945-2">(</span><span·class="n">Func</span><span·class="p"·data-group-id="7957488945-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·c[·...·truncated·by·diffoscope;·len:·196,·SHA:·51da4e5703070e878a26d392b5b5ff507d7e2177b0228f58fa91412c421cc59f·...·]-2">)</span><span·class="p">.</span></code></pre><p>A·macro·definition·can·be·placed·anywhere·among·the·attributes·and·function147 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="2390893350-2">(</span><span·class="n">Func</span><span·class="p"·data-group-id="2390893350-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·c[·...·truncated·by·diffoscope;·len:·196,·SHA:·5557ff742b144a8c66107774ac0a48f61e1030cc73ca591ae9cca0551dbe5493·...·]-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="0511721246-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="0511721246-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="5475355066-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="5475355066-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="0511721246-2">(</span><span·class="n">Request</span><span·class="p"·data-group-id="0511721246-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="5475355066-2">(</span><span·class="n">Request</span><span·class="p"·data-group-id="5475355066-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="0511721246-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:·88061259db67295bf0e30a55a15c032f357611d97e59c6c77b43a110ab68d9a0·...·]4-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="5475355066-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:·cbbf64818ed48f9e816c0596c97a6a074ff609552d2a3f4d7ec1eb660c1069ee·...·]4-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="1961885544-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="1961885544-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="4776194184-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="4776194184-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="2246861323-1">(</span><span·class="n">MACRO1</span><span·class="p"·data-group-id="2246861323-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="2246861323-2">)</span><sp[·...·truncated·by·diffoscope;·len:·434,·SHA:·60cac32663bb64cbb18307bc6bba9b85176d921b05770743b2dad3f9de363dee·...·]-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="9379985145-1">(</span><span·class="n">MACRO1</span><span·class="p"·data-group-id="9379985145-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="9379985145-2">)</span><sp[·...·truncated·by·diffoscope;·len:·434,·SHA:·a8b8d02e4b7c518a7d6616299879c1892d2e97d1dfcdeff32b9cae2d72ff2c4e·...·]-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="2246861323-4">(</span><span·class="n">X</span><span·class="p"·data-group-id="2246861323-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="9379985145-4">(</span><span·class="n">X</span><span·class="p"·data-group-id="9379985145-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="2246861323-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="2246861323-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="9379985145-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="9379985145-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="2246861323-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="2246861323-6">)</span></code></pre><p>This·is·expanded·to:</p><pre><code·class="makeup·erlang"·translate[·...·truncated·by·diffoscope;·len:·151,·SHA:·ce5d2050f2ad9ca95c0970d2aa86571b81cfbedcd8666aa52c58661882ce6a49·...·]-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="9379985145-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="9379985145-6">)</span></code></pre><p>This·is·expanded·to:</p><pre><code·class="makeup·erlang"·translate[·...·truncated·by·diffoscope;·len:·151,·SHA:·ce231c1e70b95281867dea5a49481047c0aa8b1226a462526de81caf361fe45c·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
163 ····</span><span·class="p"·data-group-id="8917670211-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="8917670211-2">}</span><span·class="p">,</span><span·class="w">163 ····</span><span·class="p"·data-group-id="9639478200-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="9639478200-2">}</span><span·class="p">,</span><span·class="w">
164 ····</span><span·class="p"·data-group-id="8917670211-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="8917670211-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="9639478200-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="9639478200-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="6822675232-1">(</span><span·class="n">F0</span><span·class="p"·data-group-id="6822675232-2">(</span><span·class="p"·data-group-id="6822675232-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:·45e5a75746512ea422cdb20be0aee1ff5987685f27e007c10af28f03a670e5c7·...·]-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="2519974090-1">(</span><span·class="n">F0</span><span·class="p"·data-group-id="2519974090-2">(</span><span·class="p"·data-group-id="2519974090-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:·6a42a8ac625082329278df5aa9bb50690d6556317c79a5432b5dc87bc0e90db6·...·]-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="6822675232-3">(</span><span·class="n">F1</span><span·class="p"·data-group-id="6822675232-4">(</span><span·class="n">A</span><span·class="p"·data-group-id="6822675232-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·2bbdce8a94c060e823b27a78cba1bb20c1a57753848ad28e430fe024a26b2931·...·]-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="2519974090-3">(</span><span·class="n">F1</span><span·class="p"·data-group-id="2519974090-4">(</span><span·class="n">A</span><span·class="p"·data-group-id="2519974090-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·000f02738129a7b4fafb2675760f60f97c7f592c161fab0f82c64c44e1183a48·...·]-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="6822675232-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="6822675232-5">)</span><span·class="p">.</span></code></pr[·...·truncated·by·diffoscope;·len:·204,·SHA:·acdc32123bf4f9aebb77863543265511a647f4ff7cc02e0ddfb7e38355e372b3·...·]6-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="2519974090-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="2519974090-5">)</span><span·class="p">.</span></code></pr[·...·truncated·by·diffoscope;·len:·204,·SHA:·b0f5a94bd3d662a7dccb65c9d6c110d7f707315a0aa9099f6e1eea066d68ef6a·...·]6-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="5716334586-2">(</span><span·class="n">A</span><span·class="p"·data-group-id="5716334586-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="1999100826-2">(</span><span·class="n">A</span><span·class="p"·data-group-id="1999100826-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="5716334586-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="5716334586-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="1999100826-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="1999100826-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="7947274271-1">(</span><span·class="p"·data-group-id="7947274271-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="0167939695-1">(</span><span·class="p"·data-group-id="0167939695-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="7947274271-2">(</span><span·class="p"·data-group-id="7947274271-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="0167939695-2">(</span><span·class="p"·data-group-id="0167939695-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="2054258047-1">(</span><span·class="n">Macro</span><span·class="p"·data-group-id="2054258047-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="1995168228-1">(</span><span·class="n">Macro</span><span·class="p"·data-group-id="1995168228-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="7532915269-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="7532915269-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="7865556318-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="7865556318-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="7532915269-2">(</span><span·class="ss">debug</span><span·class="p"·data-group-id="7532915269-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="7865556318-2">(</span><span·class="ss">debug</span><span·class="p"·data-group-id="7865556318-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="7532915269-3">(</span><span·class="n">LOG</span><span·class="p"·data-group-id="7532915269-4">(</span><span·class="n">X</span><span·class="p"·data-group-id="7532915269-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">io</span><span[·...·truncated·by·diffoscope;·len:·739,·SHA:·6fd66839e0ab3d0e67fde6d857788315078df50d6bd8880edfc99209dcc4848b·...·]-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="7865556318-3">(</span><span·class="n">LOG</span><span·class="p"·data-group-id="7865556318-4">(</span><span·class="n">X</span><span·class="p"·data-group-id="7865556318-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">io</span><span[·...·truncated·by·diffoscope;·len:·739,·SHA:·17479b5742b4e82d7a77945c5dd6b4647b3a8c7329028545523dd170fd8d1c48·...·]-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="7532915269-7">(</span><span·class="n">LOG</span><span·class="p"·data-group-id="7532915269-8">(</span><span·class="n">X</span><span·class="p"·data-group-id="7532915269-8">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·9750199fa4fd51a7bde6101af6ef16743d9f20efbb2466b284ef8d0251619d78·...·]-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="7865556318-7">(</span><span·class="n">LOG</span><span·class="p"·data-group-id="7865556318-8">(</span><span·class="n">X</span><span·class="p"·data-group-id="7865556318-8">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·bec17f9d22947ccd003d3871ef79559c2ba642f92547b5f9ae57708bba5dc53f·...·]-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="0643218636-1">(</span><span·class="ss">m</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0643218636-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:·6c224bc3cf6c2cb0bdeef4a44625e27e1fd1e49d24e8cfe26724b779cf947b20·...·]-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="8884394433-1">(</span><span·class="ss">m</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8884394433-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:·89a2cf68d1996397666d47c77980831e110137a06ea1730c8fdfa1c77c021da4·...·]-1">)</span><span·class="p">.</span><span·class="w">
235 </span><span·class="p"·data-group-id="0643218636-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">m</span><span·class="p"·data-group-id="0643218636-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="8884394433-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">m</span><span·class="p"·data-group-id="8884394433-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="5865751326-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="5865751326-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="3149099678-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="3149099678-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="5865751326-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="5865751326-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="3149099678-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="3149099678-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="5865751326-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="5865751326-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="3149099678-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="3149099678-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="6824921904-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="6824921904-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="9121751906-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="9121751906-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="6824921904-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:·e6025f82f9ab20678c11787ae9d94adc2a6dcadfa63bfa195f947471062e418d·...·]-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="9121751906-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:·c268e26416591a5205be9900636c19712f09d9748abd6b30538684cc104dfe51·...·]-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">
251 </span><span·class="c1">%%·Non-debug·code·that·works·in·any·release.</span><span·class="w">251 </span><span·class="c1">%%·Non-debug·code·that·works·in·any·release.</span><span·class="w">
252 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">252 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
Max diff block lines reached; 18532/60268 bytes (30.75%) 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="5791441086-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:·35adb08adbd07872f688fb557959ca8f6fab9f83dab045ac04745d088ee570c9·...·]-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="8250565983-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:·1507441a2344d975383b698f406bf21f5480b600cd1d4b641471a0eb51292fb1·...·]-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="5791441086-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="5791441086-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="8250565983-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="8250565983-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="0402280268-1">(</span><span·class="p"·data-group-id="0402280268-2">[</span><span·class="p"·data-group-id="0402280268-3">{</span><span·class="ss">version</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="0402280268-3">}</[·...·truncated·by·diffoscope;·len:·98,·SHA:·bd552d95605b747befa3f130f28929ca6a2dc8fe4933a0053c246fc2423daa84·...·]8-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="3176610118-1">(</span><span·class="p"·data-group-id="3176610118-2">[</span><span·class="p"·data-group-id="3176610118-3">{</span><span·class="ss">version</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3176610118-3">}</[·...·truncated·by·diffoscope;·len:·98,·SHA:·82c8689e6eb18bdbe526da6d0fadda4e74665197c29c81482ee86ae601d6e0ac·...·]8-1">)</span><span·class="p">.</span><span·class="w">
175 </span><span·class="p"·data-group-id="0402280268-4">#{</span><span·class="p"·data-group-id="0402280268-4">}</span><span·class="gp·unselectable">175 </span><span·class="p"·data-group-id="3176610118-4">#{</span><span·class="p"·data-group-id="3176610118-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="0402280268-5">(</span><span·class="p"·data-group-id="0402280268-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="0402280268-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0402280268-7">[</span><span·class="p"·data-group-id="0402280268-8">{</span><span·class="ss">version</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="0402280268-8">}</span><span·class="p"·data-group-id="0402280268-7">]</span><span·class="p"·data-group-id="0402280268-5">)</span><span·class="p">.</span><span·class="w"> 
177 </span><span·class="p"·data-group-id="0402280268-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="0402280268-10">[</span><span·class="p"·data-group-id="040228026[·...·truncated·by·diffoscope;·len:·655,·SHA:·c3c87e642be8ce6cbc886fbb0eaf47a2e45fa94063fd185b45798fce803ba3ef·...·]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="3176610118-5">(</span><span·class="p"·data-group-id="3176610118-6">[</span><span·class="ss">x</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·557,·SHA:·4369253492fd722754b27e5c6378bce7ac79e82ea71933d5700f2aca453d6a3f·...·]
 177 </span><span·class="p"·data-group-id="3176610118-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="3176610118-10">[</span><span·class="p"·data-group-id="3176610118-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="3176610118-11">[</span><span·class="p"·data-group-id="3176610118-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="3176610118-12">[</span><span·class="p"·data-group-id="3176610118-12">]</span><span·class="p"·data-group-id="3176610118-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="4751356082-1">(</span><span·class="p"·data-group-id="4751356082-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="3784031037-1">(</span><span·class="p"·data-group-id="3784031037-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
211 ····</span><span·class="p"·data-group-id="4751356082-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:·7ad9d5ddf6d255ddfddba8147d41b88416fdf57b68b507ed7333baeda5e9a30f·...·]-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="3784031037-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:·fde26ab81b1a1b808086b191e7586831195c1b3e871cc29afced6c2f91107471·...·]-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="6966372353-1">(</span><span·class="n">SOME_MODULE</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="6966372353-2">(</span><span·class="p"·data-group-id="6966372353-2">)</span><span·class="p"·data-group-id="6966372353-1[·...·truncated·by·diffoscope;·len:·229,·SHA:·76ae1e0d3e5c32d9f9cd1f2288d9649b4d4705c3d90dc62874b1783355746710·...·]-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="5822744654-1">(</span><span·class="n">SOME_MODULE</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="5822744654-2">(</span><span·class="p"·data-group-id="5822744654-2">)</span><span·class="p"·data-group-id="5822744654-1[·...·truncated·by·diffoscope;·len:·229,·SHA:·73158f23c299b6ab6991db4667320350ca9545efe933f209be4e293ecb247690·...·]-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="6769819351-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:·f8873d157f69d7f71b8c51eba66744b137580d98238f154692827daaa99bf704·...·]-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="8375104240-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:·5645a6e81c6474960af7020cdc33bc491db614cd56342eeee5227c0e5b323351·...·]-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="0459939597-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="0459939597-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="1223116582-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="1223116582-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="0459939597-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="0459939597-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="1223116582-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="1223116582-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="5019195707-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:·d895c216a9f36d47dc08148b2a42f9c102a8100afdcb4fbd046e215a9d68cadd·...·]-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="9135763472-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:·ad172d966028edcb65b2cd4d0827b3fe63fd1abd7a9182a2dc71d5896c526fc1·...·]-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="3853798611-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="3853798611-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="1175625383-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="1175625383-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="3853798611-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="3853798611-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="1175625383-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="1175625383-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="3853798611-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="3853798611-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="1175625383-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="1175625383-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="3688999321-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="3688999321-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="0774080508-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="0774080508-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="3688999321-2">#{</span><span·class="p"·data-group-id="3688999321-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="0774080508-2">#{</span><span·class="p"·data-group-id="0774080508-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="9520874566-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:·420,·SHA:·d8f9fb9d2df21bcee269f35afa39ed6dcc3c502db4e704cbc5b6672d827e906e·...·]-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="1466730747-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:·420,·SHA:·24d7c4c5853d2eeb102a44ca8b1203153f80c99a932795c32aaf127710f0c9da·...·]-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="9520874566-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="9520874566-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="1466730747-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="1466730747-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>524 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>223 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>242 <p>Copyright·©·1996-2024·<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="3235264780-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="3235264780-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="1926759612-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="1926759612-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="3235264780-2">(</span><span·class="p"·data-group-id="3235264780-3">[</span><span·class="ss">fact</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="3235264780-3">]</span><span·class="p"·data-group-id="3235264780-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="1926759612-2">(</span><span·class="p"·data-group-id="1926759612-3">[</span><span·class="ss">fact</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="1926759612-3">]</span><span·class="p"·data-group-id="1926759612-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="3235264780-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="3235264780-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="1926759612-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="1926759612-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="3235264780-5">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="3235264780-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="1926759612-5">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="1926759612-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="3235264780-6">(</span><span·class="mi">0</span><span·class="p"·data-group-id="3235264780-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="1926759612-6">(</span><span·class="mi">0</span><span·class="p"·data-group-id="1926759612-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="9112732388-1">(</span><span·class="n">Behaviour</span><span·class="p"·data-group-id="9112732388-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="2878916351-1">(</span><span·class="n">Behaviour</span><span·class="p"·data-group-id="2878916351-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="8759994106-1">(</span><span·class="ss">callbacks</span><span·class="p"·data-group-id="8759994106-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:·429d6da2bf9dd1785c12030c974fdca409943611b30cf2fe1a9a796de14d6284·...·]-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="5738209759-1">(</span><span·class="ss">callbacks</span><span·class="p"·data-group-id="5738209759-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:·11a4e52dcbbc02f43c858ade750a6b7a01eebe7978f5a67c9511de5d2e8cac33·...·]-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="8161507750-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="8161507750-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="1473997994-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="1473997994-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="9771560344-1">(</span><span·class="s">&quot;SomeFile.hrl&quot;</span><span·class="p"·data-group-id="9771560344-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="0980784412-1">(</span><span·class="s">&quot;SomeFile.hrl&quot;</span><span·class="p"·data-group-id="0980784412-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="9771560344-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="9771560344-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="0980784412-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="0980784412-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="5684178694-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="5684178694-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="5816614733-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="5816614733-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="6951026374-1">(</span><span·class="p"·data-group-id="6951026374-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="6951026374-2">(</span><span·class="p"·data-group-id="6951026374-2">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="6951026374-3">(</span><span·class="p"·data-group-id="6951026374-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="6951026374-4">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="6951026374-5">(</span><[·...·truncated·by·diffoscope;·len:·467,·SHA:·04f9581ba39b0119b78b3d41883131ac694e09df1425d08bf055d64ce4099378·...·]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="2090219405-1">(</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·512,·SHA:·81066578e5fc1f935c5c97ff6824f5fe5b42827979a39dbea2ae767116c97e68·...·]
 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="2090219405-4">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="2090219405-5">(</span><span·class="p"·data-group-id="2090219405-5">)</span><span·class="p"·data-group-id="2090219405-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="2090219405-6">(</span><span·class="p"·data-group-id="2090219405-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="3821012435-1">(</span><span·class="s">&quot;Example·documentation&quot;</span><span·class="p"·data-group-id="3821012435-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="5084159912-1">(</span><span·class="s">&quot;Example·documentation&quot;</span><span·class="p"·data-group-id="5084159912-1">)</span><span·class="p">.</span><span·class="w">
231 </span><span·class="nf">example</span><span·class="p"·data-group-id="3821012435-2">(</span><span·class="p"·data-group-id="3821012435-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="5084159912-2">(</span><span·class="p"·data-group-id="5084159912-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="6162750346-1">(</span><span·class="s">&quot;Example·\&quot;docs\&quot;&quot;</span><span·class="p"·data-group-id="6162750346-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="0662755380-1">(</span><span·class="s">&quot;Example·\&quot;docs\&quot;&quot;</span><span·class="p"·data-group-id="0662755380-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="6162750346-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="6162750346-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="0662755380-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="0662755380-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="3827590867-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:·e40832041a1fb65e82b55d80809caaa578f2e32a3397611aebf4d5c7e5ad8ede·...·]-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="8246283390-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:·d21af978acc4865cc6d9adc4ae041d168590ed273f93a094047dffcbf128f418·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>352 <p>Copyright·©·1996-2024·<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="7639857468-1">(</span><span·class="ss">complex6</span><span·class="p"·data-group-id="7639857468-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="8425398527-1">(</span><span·class="ss">complex6</span><span·class="p"·data-group-id="8425398527-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="7639857468-2">(</span><span·class="p"·data-group-id="7639857468-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:·d6c1aeb7d5b5b6fec3c379d6ec814bf6d62068e50f49660dfb2398834f40a539·...·]-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="8425398527-2">(</span><span·class="p"·data-group-id="8425398527-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:·11d4f1cee965ec170eeec56bf69130a1a6e9bbe62e2e5379bac7b6a628848540·...·]-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="7639857468-4">(</span><span·class="p"·data-group-id="7639857468-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:·e6387d7bf40e1ad1cdede7e439471ed69f46c1158fae7b1a6c22b6bc660b21ab·...·]-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="8425398527-4">(</span><span·class="p"·data-group-id="8425398527-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:·7e23dde8c66128ababb1895047489157ddc46c0e0a7ce4a990117f546c634d28·...·]-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="7639857468-6">(</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7639857468-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="8425398527-6">(</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8425398527-6">)</span><span·class="p">.</span><span·class="w">
  
144 </span><span·class="nf">init</span><span·class="p"·data-group-id="7639857468-7">(</span><span·class="p"·data-group-id="7639857468-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="8425398527-7">(</span><span·class="p"·data-group-id="8425398527-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="7639857468-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="7639857468-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="8425398527-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="8425398527-8">)</span><span·class="p">.</span><span·class="w">
  
146 </span><span·class="nf">foo</span><span·class="p"·data-group-id="7639857468-9">(</span><span·class="p">_</span><span·class="n">X</span><span·class="p"·data-group-id="7639857468-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="8425398527-9">(</span><span·class="p">_</span><span·class="n">X</span><span·class="p"·data-group-id="8425398527-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="7639857468-10">(</span><span·class="ss">nif_library_not_loaded</span><span·class="p"·data-group-id="7639857468-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="8425398527-10">(</span><span·class="ss">nif_library_not_loaded</span><span·class="p"·data-group-id="8425398527-10">)</span><span·class="p">.</span><span·class="w">
148 </span><span·class="nf">bar</span><span·class="p"·data-group-id="7639857468-11">(</span><span·class="p">_</span><span·class="n">Y</span><span·class="p"·data-group-id="7639857468-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="8425398527-11">(</span><span·class="p">_</span><span·class="n">Y</span><span·class="p"·data-group-id="8425398527-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="7639857468-12">(</span><span·class="ss">nif_library_not_loaded</span><span·class="p"·data-group-id="7639857468-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="8425398527-12">(</span><span·class="ss">nif_library_not_loaded</span><span·class="p"·data-group-id="8425398527-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="2705673905-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="2705673905-1">)</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1129,·SHA:·954d159df95cfcfea3c7f32144eaae6b60a22fd2c04355ee84ed88125b9a0af5·...·]5-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="8754882755-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="8754882755-1">)</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1129,·SHA:·65e7f1d70e4e784d9dedb04346ae90453375057790cbe32f18e5ad2ffd5fbdd1·...·]5-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="2705673905-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="2705673905-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="8754882755-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="8754882755-7">)</span><span·class="gp·unselectable">
218 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="2705673905-8">(</span><span·class="ss">complex6</span><span·class="p"·data-group-id="2705673905-8">)</span><span·class="p">.</span><span·class="w">218 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="8754882755-8">(</span><span·class="ss">complex6</span><span·class="p"·data-group-id="8754882755-8">)</span><span·class="p">.</span><span·class="w">
219 </span><span·class="p"·data-group-id="2705673905-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex6</span><span·class="p"·data-group-id="2705673905-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:·9e41552f534c0784964f621d7c02335c223f53db942d2a42e78b80b14025968d·...·]-1">)</span><span·class="p">.</span><span·class="w">219 </span><span·class="p"·data-group-id="8754882755-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex6</span><span·class="p"·data-group-id="8754882755-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:·b174ae5d4f379763d14d73b1ba3b1847d7d2f9ce7acf3195a59698fe9950d33f·...·]-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="3759638659-2">(</span><span·class="mi">5</span><span·class="p"·data-group-id="3759638659-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="6125162961-2">(</span><span·class="mi">5</span><span·class="p"·data-group-id="6125162961-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="3759638659-3">(</span><span·class="s">&quot;not·an·integer&quot;</span><span·class="p"·data-group-id="3759638659-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="6125162961-3">(</span><span·class="s">&quot;not·an·integer&quot;</span><span·class="p"·data-group-id="6125162961-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>276 <p>Copyright·©·1996-2024·<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="6383193312-1">(</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6383193312-2">[</span><span·class="p"·data-group-id="6383193312-3">{</span><span·class="ss">il</span><span·class="[·...·truncated·by·diffoscope;·len:·337,·SHA:·5ed25cc7b7e602658dbf8846c81e6b7c07e42d991c6ec104ed658f5ffa52b04b·...·]-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="9200045515-1">(</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9200045515-2">[</span><span·class="p"·data-group-id="9200045515-3">{</span><span·class="ss">il</span><span·class="[·...·truncated·by·diffoscope;·len:·337,·SHA:·0171c743142c3ebba6cfdedebd0c713ef5c3ce5b6411206311bc8d3ca523d06d·...·]-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="2254190276-1">(</span><span·class="ss">my_mib</span><span·class="p"·data-group-id="2254190276-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="2110246658-1">(</span><span·class="ss">my_mib</span><span·class="p"·data-group-id="2110246658-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="2254190276-2">(</span><span·class="s">&quot;snmp/include/OTP-REG.hrl&quot;</span><span·class="p"·data-group-id="2254190276-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="2110246658-2">(</span><span·class="s">&quot;snmp/include/OTP-REG.hrl&quot;</span><span·class="p"·data-group-id="2110246658-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>270 <p>Copyright·©·1996-2024·<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="6507943293-1">(</span><span·class="n">Element</span><span·class="p"·data-group-id="6507943293-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><spa[·...·truncated·by·diffoscope;·len:·378,·SHA:·c651cf3ce7dfe599fe29d159ebb7d8d34757326d471f6d3e412889c859e98bb1·...·]-2">}</span><span·class="p">.</span></code></pre><p>OTP·24·changed·the·definition·to·the·following·in129 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="4791326418-1">(</span><span·class="n">Element</span><span·class="p"·data-group-id="4791326418-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><spa[·...·truncated·by·diffoscope;·len:·378,·SHA:·fe75de48aef250feb54a6929ed0af1abab91bea1e7997aab1a4fdb6b0ac3a83d·...·]-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</span><span·class="p"·data-group-id="4507334329-1">(</span><span·class="n">Element</span><span·class="p"·data-group-id="4507334329-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><spa[·...·truncated·by·diffoscope;·len:·715,·SHA:·56981da5fc275b2337c2adb28a0f49d66886d29fcca9a25de4064e3602f7ec8f·...·]-4">}</span><span·class="p">.</span></code></pre><p>And·this·change·was·safer·and·more·backwards-compatible·than·if·the·type·had130 <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="6617113415-1">(</span><span·class="n">Element</span><span·class="p"·data-group-id="6617113415-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><spa[·...·truncated·by·diffoscope;·len:·715,·SHA:·5898ef4b0f1e15f6bf4aec07647be8c868ebe42c114094850001a881730b69cf·...·]-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="0230789663-1">(</span><span·class="p"·data-group-id="0230789663-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="7144406566-1">(</span><span·class="p"·data-group-id="7144406566-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="0230789663-2">(</span><span·class="n">Set</span><span·class="p"·data-group-id="0230789663-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="7144406566-2">(</span><span·class="n">Set</span><span·class="p"·data-group-id="7144406566-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="0230789663-3">(</span><span·class="s">&quot;ok&quot;</span><span·class="p"·data-group-id="0230789663-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="7144406566-3">(</span><span·class="s">&quot;ok&quot;</span><span·class="p"·data-group-id="7144406566-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>210 <p>Copyright·©·1996-2024·<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="9529849906-1">(</span><span·class="p"·data-group-id="9529849906-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="2055849502-1">(</span><span·class="p"·data-group-id="2055849502-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>259 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>312 <p>Copyright·©·1996-2024·<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="6236593363-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="6236593363-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p[·...·truncated·by·diffoscope;·len:·178,·SHA:·eae3237b89ba68584389a2cd9944ec2da5504be6b96a75c1651223ae7e69e960·...·]-2">}</span><span·class="p">.</span><span·class="w">135 4&gt;·</span><span·class="p"·data-group-id="6784173169-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="6784173169-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p[·...·truncated·by·diffoscope;·len:·178,·SHA:·63fc38faad823d13a7fa719b5c4587bc60540b6359b3e89e54ac4a2d04eb289d·...·]-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="6236593363-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="6236593363-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p[·...·truncated·by·diffoscope;·len:·178,·SHA:·a5ab587abaf20e329719f090031b3dad89fe6a93d799cba24bd0f3d9a49c5414·...·]-4">}</span><span·class="p">.</span><span·class="w">137 5&gt;·</span><span·class="p"·data-group-id="6784173169-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="6784173169-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p[·...·truncated·by·diffoscope;·len:·178,·SHA:·e42ab938e5c7bb54ea31f42119675cb0db6b43fa5bcf96d378f099c7af2e31f5·...·]-4">}</span><span·class="p">.</span><span·class="w">
138 </span><span·class="p"·data-group-id="6236593363-5">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="6236593363-5">}</span><span·class="gp·unselectable">138 </span><span·class="p"·data-group-id="6784173169-5">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="6784173169-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>189 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>230 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>316 <p>Copyright·©·1996-2024·<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="0637910060-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="0637910060-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="7638613452-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="7638613452-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="0637910060-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="0637910060-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="7638613452-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="7638613452-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="3128040005-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3128040005-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:·220705796392e81d859f20bbf846e975a569fe8acf97ae08ff5145c524ebb155·...·]5-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="0800213495-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0800213495-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:·8ed398add04c25be8d1640e299a67fe0db6a6fd950d978b77cf0386dbe2e0290·...·]5-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="3832634259-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:·cbab496b7c8fdb83a13a4a05440f36d766c07f779612964ea27b92650dc1c190·...·]-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="9217302144-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:·699938fb241e97decd77788b4158be419084418d33aa0933e982d6397a5d7f8f·...·]-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="6351259502-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6351259502-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="6351259502-3">[</span><span·class="p"·data-group-id="6351259502-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">address</span><span·class="p"·data-group-id="6351259502-2">}</span><span·class="p"·data-group-id="6351259502-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="6516045895-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">[·...·truncated·by·diffoscope;·len:·676,·SHA:·2fd38dfe1b532f68fc8bffdb2c5916ff97704098dc5fcb5dbf4326565d7c347e·...·]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="3449816204-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·732,·SHA:·ee8cb9952b4745f33f636831023a08890336b4ba4117ea00677d62327363a635·...·]
 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="4863645020-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4863645020-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="4863645020-3">[</span><span·class="p"·data-group-id="4863645020-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">address</span><span·class="p"·data-group-id="4863645020-2">}</span><span·class="p"·data-group-id="4863645020-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="3627271999-1">{</span><span·class="ss">phone</span><span·class="o">=</span><span·class="p"·data-group-id="3627271999-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:·475,·SHA:·54854079eca8ac1dae6131fdc0c0cf5ce13b52a1dc96751484f9bb96aa55e655·...·]-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="4946291696-1">{</span><span·class="ss">phone</span><span·class="o">=</span><span·class="p"·data-group-id="4946291696-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:·475,·SHA:·54f451b5e4f3d316ddfa99bd51e703ca49b273d6ade19d4707d818ed2b33b6b9·...·]-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="3627271999-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:·707,·SHA:·6eaaf9bef29ad80d45bf8ea2b47921733da377613da486b9ae8862262c0cb316·...·]-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="4946291696-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:·707,·SHA:·cc0f2ec559adf87e180983c2d9933e045c6132722e4f60e2063f16b38c26ff29·...·]-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="3422877900-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:·046efbf37c8a153a41d7057ab5b32ae35b867c8e8c58a3346600ccd518194f78·...·]-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="6384916592-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:·7b3bf2cd372886d2c7b8dd1da8445ca564d670dc1239dc23b93febf967fcc05d·...·]-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="3422877900-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:·24125eb8463de1886907b2e6742596d4054ccacb4c20412102c64fdf73292364·...·]-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="6384916592-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:·3d8e2f49d27ea71ac8ee790268e158793239d50197ab3fe01a42adf29bfbd6c4·...·]-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="8420753908-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">·</s[·...·truncated·by·diffoscope;·len:·567,·SHA:·aca249d77cb94d289a929c92fb0b556c60e4c3273ea319f98cfdbf3088477855·...·]-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="8116528619-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">·</s[·...·truncated·by·diffoscope;·len:·567,·SHA:·49c2fcd991608d8e7ec0b02ce121f31046bf93c3fedc109b5da20e3e8dd40a28·...·]-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="8420753908-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">=</s[·...·truncated·by·diffoscope;·len:·703,·SHA:·a0cd508511dd22f10c2fe60a1ce054a163666005badbfcf1ea789cb5e5d24c29·...·]-3">}</span><span·class="gp·unselectable">171 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8116528619-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">=</s[·...·truncated·by·diffoscope;·len:·703,·SHA:·c6cf85900816a74afab954fb04ce31aa0ffb89fd61b0a57368186efd4d3fcce9·...·]-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="0372013010-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="0372013010-2[·...·truncated·by·diffoscope;·len:·373,·SHA:·e5633ca84f3da81ddfb6aa0663a86aad2e64f007f4a0e237c09ebd944c19e86e·...·]-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="9931282012-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="9931282012-2[·...·truncated·by·diffoscope;·len:·373,·SHA:·af0778648e2bea4dcfa19f33eacdb1ba8cba4042fee80353efa904ab955c5d7b·...·]-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="0372013010-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:·48ebc309d728a38a51466fb3fe785e080150a4d40c41242dc088165e0a4243db·...·]-3">}</span><span·class="gp·unselectable">180 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9931282012-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:·3b4410faee302c57098adc44994b6a6cd01dca13294b9491f0251d0bc73a6d87·...·]-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="0372013010-5">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Robert&quot;</span><span·class="p"·data-group-id="0372013010-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="9931282012-5">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Robert&quot;</span><span·class="p"·data-group-id="9931282012-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="0372013010-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:·d40f66932cdb791dbbedce47d2781c3c4b1d53a3a17dc770f231c16684c0fb07·...·]-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="9931282012-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:·410afc576950322e3950327e68125a7d32a1191bbcd43c3b9a4b36faf4485d21·...·]-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="7647924579-1">(</span><span·class="n">P</span><span·class="p"·data-group-id="7647924579-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="7647924579-2">(</spa[·...·truncated·by·diffoscope;·len:·145,·SHA:·2af9c3e4c5a1de3c246d59023e866d4a08010feb19a7eafc00dab3c0c63d0d01·...·]-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="7624842603-1">(</span><span·class="n">P</span><span·class="p"·data-group-id="7624842603-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="7624842603-2">(</spa[·...·truncated·by·diffoscope;·len:·145,·SHA:·c886195c8bda18dfc6ed597ba3588621ae75f83080371bc90e79901a384cb460·...·]-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="7647924579-3">(</span><span·class="p">_</span><span·class="p"·data-group-id="7647924579-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="7624842603-3">(</span><span·class="p">_</span><span·class="p"·data-group-id="7624842603-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="9938742976-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="9938742976-2[·...·truncated·by·diffoscope;·len:·373,·SHA:·eff52b8c4f6c34c7faaded0c86681f7182e014c7978ec41fb40c0120db1f8658·...·]-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="3873374542-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="3873374542-2[·...·truncated·by·diffoscope;·len:·373,·SHA:·4d014be5ad9f8fd9367b0fe12e598ecd7c906692b8d289ffaf7e9a46595a3bc1·...·]-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="9938742976-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:·013417b2749f03f72653928c2f056535fb9669490336935ed0fc3fae0ea6174d·...·]-3">}</span><span·class="gp·unselectable">198 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="3873374542-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:·5d9081455c390359e5d8880e711ce6e03dfb7471336cf0092eba87e2b3a0c049·...·]-3">}</span><span·class="gp·unselectable">
199 &gt;·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9938742976-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="9938742976-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="3873374542-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="3873374542-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="4270049318-1">(</span><span·class="p"·data-group-id="4270049318-2">[</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="4270049318-3">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="n">Name</[·...·truncated·by·diffoscope;·len:·452,·SHA:·d6195c61bafe0f56bd1a1fb0beca751ad1bed6b812a9a3a427b125f527d3050b·...·]-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="1536811201-1">(</span><span·class="p"·data-group-id="1536811201-2">[</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="1536811201-3">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="n">Name</[·...·truncated·by·diffoscope;·len:·452,·SHA:·941d4b90648e202ee6f16f09812b86387a62b9758065978ab224e49342db06e4·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
202 ····</span><span·class="p"·data-group-id="4270049318-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="4270049318-4">}</span><span·class="p">;</span><span·class="w">202 ····</span><span·class="p"·data-group-id="1536811201-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="1536811201-4">}</span><span·class="p">;</span><span·class="w">
203 </span><span·class="nf">find_phone</span><span·class="p"·data-group-id="4270049318-5">(</span><span·class="p"·data-group-id="4270049318-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="4270049318-6">]</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·84,·SHA:·645b4fe1be8d1cff844320a1f687db2cd54e8637146a2589c344ea51ca13d7ed·...·]-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="1536811201-5">(</span><span·class="p"·data-group-id="1536811201-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="1536811201-6">]</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·84,·SHA:·1863347677e8c7657976342ccb2e77652e458bd18568f211df6b402df5b14290·...·]-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="4270049318-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="4270049318-7">)</span><span·class="p">;</span><span·class="w">204 ····</span><span·class="nf">find_phone</span><span·class="p"·data-group-id="1536811201-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="1536811201-7">)</span><span·class="p">;</span><span·class="w">
205 </span><span·class="nf">find_phone</span><span·class="p"·data-group-id="4270049318-8">(</span><span·class="p"·data-group-id="4270049318-9">[</span><span·class="p"·data-group-id="4270049318-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p"·data-group-id="4270049318-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="1536811201-8">(</span><span·class="p"·data-group-id="1536811201-9">[</span><span·class="p"·data-group-id="1536811201-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p"·data-group-id="1536811201-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="8538707499-1">(</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8538707499-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:·fbf87cf9435f16308e96526a80d4b0ff4832b36c6019b76cc57d00214f47f057·...·]-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="2019852567-1">(</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2019852567-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:·eebeaf91c63b5dd754a0bff6ec12cad23026b9146398c1890b9c9e138c524931·...·]-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="8538707499-3">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8538707499-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:·6690501b3de819a17b55000d454ae7962f3044db6977def393ef9082508a757a·...·]-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="2019852567-3">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2019852567-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:·c65cc775144608fc87ea94cc3fd02364b4798e39c0d39a5e5d55711c471cee49·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
216 </span><span·class="nf">demo</span><span·class="p"·data-group-id="8538707499-6">(</span><span·class="p"·data-group-id="8538707499-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="2019852567-6">(</span><span·class="p"·data-group-id="2019852567-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="8538707499-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="8538707499-8">{</span><span·class="ss">first</span><span·class="o">=</span>[·...·truncated·by·diffoscope;·len:·381,·SHA:·73fab9e50e228b58a2293aa99dc706725010a4a5df811c01aefb7b3adbba038c·...·]-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="2019852567-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="2019852567-8">{</span><span·class="ss">first</span><span·class="o">=</span>[·...·truncated·by·diffoscope;·len:·381,·SHA:·e1eccd1321dc9e185de91a287bc26b8951784cdaa2af3d7103dded52e83e91a5·...·]-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="8538707499-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="8538707499-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="2019852567-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="2019852567-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="5181771714-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5181771714-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:·22483594d05fd611f49d718499e40c75e4e9aa5096f30a13f83b779a10e9dcae·...·]-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="9225650090-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9225650090-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:·6f484744abc14730fd016fb88eeaae64dc70dbb26ccb9d846243cb0f93784d62·...·]-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="2146796667-2">(</span><span·class="s">&quot;person.hrl&quot;</span><span·class="p"·data-group-id="2146796667-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="5079515163-2">(</span><span·class="s">&quot;person.hrl&quot;</span><span·class="p"·data-group-id="5079515163-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="2146796667-3">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="2146796667-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="5079515163-3">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="5079515163-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="2146796667-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="2146796667-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="5079515163-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="5079515163-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="2146796667-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="5079515163-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="2146796667-6">[</span><span·class="p"·data-group-id="2146796667-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="2146796667-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="5079515163-6">[</span><span·class="p"·data-group-id="5079515163-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="5079515163-7">}</span><span·class="p">,</span><span·class="w">
246 ···················</span><span·class="p"·data-group-id="2146796667-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="2146796667-8">}</span><span·class="p"·data-group-id="2146796667-6">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·1be30a296bf4ba32aea8a86f9ef6c877ce1d07b4b0b23346cd1eb0b0957fe33f·...·]-5">}</span><span·class="p">.</span><span·class="w">246 ···················</span><span·class="p"·data-group-id="5079515163-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="5079515163-8">}</span><span·class="p"·data-group-id="5079515163-6">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·bf588f0160df4053cc1441ec00cf262d1fe819c3957245b54e2095cf637e0f8d·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>168 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>171 <p>Copyright·©·1996-2024·<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="9084081107-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="9084081107-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="6300329846-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="6300329846-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="8008626681-1">(</span><span·class="ss">logon</span><span·class="p">,</span><span·class="p"·data-group-id="8008626681-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:·80,·SHA:·01088e117a0f63c7a2499239989c36b96cf13c7b36102723b1deb3e0e3c46364·...·]-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="4143130186-1">(</span><span·class="ss">logon</span><span·class="p">,</span><span·class="p"·data-group-id="4143130186-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:·80,·SHA:·caf0b16ec0a8f7d5285209a902a5d3078048b52d6e8de3c518491a20971c6d5f·...·]-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="8008626681-3">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="8008626681-4">{</span><span·class="ss">client_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">to_name</span><span·class="[·...·truncated·by·diffoscope;·len:·160,·SHA:·b7bfb47da8b320609b29b4580b352cab1fa4fae3e26b4affc88a48926743c660·...·]-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="4143130186-3">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="4143130186-4">{</span><span·class="ss">client_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">to_name</span><span·class="[·...·truncated·by·diffoscope;·len:·160,·SHA:·adbd90c56831473864fb360eee035a26f9fefc4700a3d8e4cfc58e8164c6cad5·...·]-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="8008626681-5">(</span><span·class="ss">abort_client</span><span·class="p">,</span><span·class="p"·data-group-id="8008626681-6">{</span><span·class="ss">message</span><span·class="p"·data-group-id="8008626681-6">}</span><span·class="p"·data-group-id="800862[·...·truncated·by·diffoscope;·len:·4,·SHA:·76a30972876b875cfb7ed632713da1ca9bbf1451ebca2c1b3081c148cd9609af·...·]-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="4143130186-5">(</span><span·class="ss">abort_client</span><span·class="p">,</span><span·class="p"·data-group-id="4143130186-6">{</span><span·class="ss">message</span><span·class="p"·data-group-id="4143130186-6">}</span><span·class="p"·data-group-id="414313[·...·truncated·by·diffoscope;·len:·4,·SHA:·6b0e19e2927744cdcfebb2218edef3a82b698e366a056e6f9f0163da44343b10·...·]-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="8008626681-7">(</span><span·class="ss">server_reply</span><span·class="p">,</span><span·class="p"·data-group-id="8008626681-8">{</span><span·class="ss">message</span><span·class="p"·data-group-id="8008626681-8">}</span><span·class="p"·data-group-id="800862[·...·truncated·by·diffoscope;·len:·4,·SHA:·76a30972876b875cfb7ed632713da1ca9bbf1451ebca2c1b3081c148cd9609af·...·]-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="4143130186-7">(</span><span·class="ss">server_reply</span><span·class="p">,</span><span·class="p"·data-group-id="4143130186-8">{</span><span·class="ss">message</span><span·class="p"·data-group-id="4143130186-8">}</span><span·class="p"·data-group-id="414313[·...·truncated·by·diffoscope;·len:·4,·SHA:·6b0e19e2927744cdcfebb2218edef3a82b698e366a056e6f9f0163da44343b10·...·]-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="8008626681-9">(</span><span·class="ss">message_from</span><span·class="p">,</span><span·class="p"·data-group-id="8008626681-10">{</span><span·class="ss">from_name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">message</span><span·cl[·...·truncated·by·diffoscope;·len:·87,·SHA:·f987118a9e5b577220f32b5af3b8b8326fc4cb54a073303fea14d01d7da9824c·...·]-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="4143130186-9">(</span><span·class="ss">message_from</span><span·class="p">,</span><span·class="p"·data-group-id="4143130186-10">{</span><span·class="ss">from_name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">message</span><span·cl[·...·truncated·by·diffoscope;·len:·87,·SHA:·2a7a33a33671bc63010eff066c01543f72b1178cc9d09d0470e81a20137885e5·...·]-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="8008626681-11">(</span><span·class="ss">message_to</span><span·class="p">,</span><span·class="p"·data-group-id="8008626681-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:·84,·SHA:·e446240c3f8b731afbc0ed05adccee6bad9d93951c09500c38dc9623f1eec327·...·]-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="4143130186-11">(</span><span·class="ss">message_to</span><span·class="p">,</span><span·class="p"·data-group-id="4143130186-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:·84,·SHA:·f413cb59b4b5669e723fb06928ef288c2d998b038198dcd3e6e929582555bc80·...·]-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="9293473334-1">(</span><span·class="ss">user_interface</span><span·class="p"·data-group-id="9293473334-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="1585372428-1">(</span><span·class="ss">user_interface</span><span·class="p"·data-group-id="1585372428-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="9293473334-2">(</span><span·class="p"·data-group-id="9293473334-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:·d055a076833cded18126f7486a8ad704c8d7b9b261fa7323b8ca3b4b14fdbd28·...·]-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="1585372428-2">(</span><span·class="p"·data-group-id="1585372428-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:·40e7c4b09e43c330188b46fac5e7afb834be2d376564ca5ac878d9f80ddbb7d2·...·]-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="9293473334-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="9293473334-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="1585372428-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="1585372428-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="9293473334-5">(</span><span·class="s">&quot;mess_config.hrl&quot;</span><span·class="p"·data-group-id="9293473334-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="1585372428-5">(</span><span·class="s">&quot;mess_config.hrl&quot;</span><span·class="p"·data-group-id="1585372428-5">)</span><span·class="p">.</span><span·class="w">
  
180 </span><span·class="nf">logon</span><span·class="p"·data-group-id="9293473334-6">(</span><span·class="n">Name</span><span·class="p"·data-group-id="9293473334-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="1585372428-6">(</span><span·class="n">Name</span><span·class="p"·data-group-id="1585372428-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="9293473334-7">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="9293473334-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="1585372428-7">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="1585372428-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="9293473334-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="1585372428-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="9293473334-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="9293473334-10">[</span><span·class="o">?</[·...·truncated·by·diffoscope;·len:·263,·SHA:·76eda43b46cc7ea67d726bea28d59ab457eff256a0ff44d36b259ab6ec6aa4da·...·]-8">)</span><span·class="p">;</span><span·class="w">184 ·····················</span><span·class="nf">spawn</span><span·class="p"·data-group-id="1585372428-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="1585372428-10">[</span><span·class="o">?</[·...·truncated·by·diffoscope;·len:·263,·SHA:·344a710def0b2ea6b00aa2a23236ec495e346b7b4fe55c343d99e357a84dbca0·...·]-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="9293473334-11">(</span><span·class="p"·data-group-id="9293473334-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="1585372428-11">(</span><span·class="p"·data-group-id="1585372428-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="9293473334-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="9293473334-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="1585372428-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="1585372428-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="9293473334-13">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="9293473334-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="1585372428-13">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="1585372428-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="9293473334-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:·4ba39fa88cd5d112fd581ac80e6c441635a1767f6b602b8c89d69293899f8048·...·]-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="1585372428-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:·bbf7dda1638c73e72db66cc74f64f82bb018a65936520356ad99245d0153bb1f·...·]-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="6275341555-1">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="6275341555-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="4404172909-1">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="4404172909-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="6275341555-2">(</span><span·class="p"·data-group-id="6275341555-3">[</span><span·class="ss">client</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="6275341555-3">]</span><span·class="p"·data-group-id="6275341555-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="4404172909-2">(</span><span·class="p"·data-group-id="4404172909-3">[</span><span·class="ss">client</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="4404172909-3">]</span><span·class="p"·data-group-id="4404172909-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="6275341555-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="6275341555-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="4404172909-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="4404172909-4">)</span><span·class="p">.</span><span·class="w">
  
202 </span><span·class="nf">client</span><span·class="p"·data-group-id="6275341555-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="6275341555-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="4404172909-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="4404172909-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
203 ····</span><span·class="p"·data-group-id="6275341555-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="6275341555-6">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·476,·SHA:·1b5a469a8e085b1dc022daf465041111de38d50d435eab49c821fb7870a495bd·...·]-7">}</span><span·class="p">,</span><span·class="w">203 ····</span><span·class="p"·data-group-id="4404172909-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="4404172909-6">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·476,·SHA:·88d9a84e5c1a790dd63f98157c9ef7b3d0ec96e9a21cef0f7a267e2a5b6a650a·...·]-7">}</span><span·class="p">,</span><span·class="w">
204 ····</span><span·class="nf">await_result</span><span·class="p"·data-group-id="6275341555-9">(</span><span·class="p"·data-group-id="6275341555-9">)</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="nf">await_result</span><span·class="p"·data-group-id="4404172909-9">(</span><span·class="p"·data-group-id="4404172909-9">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="6275341555-10">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="6275341555-10">)</span><span·class="p">.</span><span·class="w">205 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="4404172909-10">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="4404172909-10">)</span><span·class="p">.</span><span·class="w">
  
206 </span><span·class="nf">client</span><span·class="p"·data-group-id="6275341555-11">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="6275341555-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="4404172909-11">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="4404172909-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="6275341555-12">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="6275341555-12">)</span><span·class="p">;</span><span·class="w">209 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="4404172909-12">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="4404172909-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="6275341555-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:·78a61fee31b14250b26b180832a416a6214c3ab44b99a26e33f1e19cfcab5249·...·]-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="4404172909-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:·cee152dc6158db31f43e60306f3fbc8bc2f292f02ad780e146d6675cfa40fe79·...·]-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
211 ············</span><span·class="p"·data-group-id="6275341555-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="6275341555-14">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">211 ············</span><span·class="p"·data-group-id="4404172909-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="4404172909-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="6275341555-15">{</span><span·class="ss">client_pid</span><span·class="o">=</span><span·class="nf">self</span><span·class="p"·data-group-id="6275341555-16">(</span><span·class="p"·data-group-id="6275341555-16">)</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·267,·SHA:·96b0e00282a1e43993f6932c357b0429fed7999e5eb012566cfc34f5cc9400ee·...·]-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="4404172909-15">{</span><span·class="ss">client_pid</span><span·class="o">=</span><span·class="nf">self</span><span·class="p"·data-group-id="4404172909-16">(</span><span·class="p"·data-group-id="4404172909-16">)</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·267,·SHA:·d9abf046d1d7d44b4a81a6af46e0ee2c5f44cc2fbdf5f616807dc4daf359647e·...·]-15">}</span><span·class="p">,</span><span·class="w">
213 ············</span><span·class="nf">await_result</span><span·class="p"·data-group-id="6275341555-17">(</span><span·class="p"·data-group-id="6275341555-17">)</span><span·class="p">;</span><span·class="w">213 ············</span><span·class="nf">await_result</span><span·class="p"·data-group-id="4404172909-17">(</span><span·class="p"·data-group-id="4404172909-17">)</span><span·class="p">;</span><span·class="w">
214 ········</span><span·class="p"·data-group-id="6275341555-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="627534155[·...·truncated·by·diffoscope;·len:·1,·SHA:·ef2d127de37b942baad06145e54b0c619a1f22327b2ebbcfbec78f5564afe39d·...·]-18">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 ········</span><span·class="p"·data-group-id="4404172909-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="440417290[·...·truncated·by·diffoscope;·len:·1,·SHA:·19581e27de7ced00ff1ce50b2047e7a567c76b1cbaebabe5ef03f7c3017bb5b7·...·]-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="6275341555-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:·3f55e5a5b7034e31ba6a24e04227952d7545104ebcf32ddcde6732b193c178be·...·]-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="4404172909-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:·3d8d3aa9a599e8aa376c7be2d8c9d9a235ea56082f30e90bd6f7b3564d7cde83·...·]-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="6275341555-21">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="6275341555-21">)</span><span·class="p">.</span><span·class="w">217 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="4404172909-21">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="4404172909-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="6275341555-22">(</span><span·class="p"·data-group-id="6275341555-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="4404172909-22">(</span><span·class="p"·data-group-id="4404172909-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="6275341555-23">{</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">Why</span><span·class="p"·data-group-id="6275341555-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="4404172909-23">{</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">Why</span><span·class="p"·data-group-id="4404172909-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="6275341555-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="6275341555-25">[</span><span·class="n">Why</[·...·truncated·by·diffoscope;·len:·100,·SHA:·d7bf5b4df8bfb2a11b0ced5c452ff1700301086f7cbdc829cfc596d672d9e491·...·]-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="4404172909-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="4404172909-25">[</span><span·class="n">Why</[·...·truncated·by·diffoscope;·len:·100,·SHA:·575bd4831a34c223b79af6028a87ad009ca5e87251b3e07284e26b6cdc646727·...·]-24">)</span><span·class="p">,</span><span·class="w">
223 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="6275341555-26">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="6275341555-26">)</span><span·class="p">;</span><span·class="w">223 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="4404172909-26">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="4404172909-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="6275341555-27">{</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">What</span><span·class="p"·data-group-id="6275341555-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="4404172909-27">{</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">What</span><span·class="p"·data-group-id="4404172909-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="6275341555-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="6275341555-29">[</span><span·class="n">What<[·...·truncated·by·diffoscope;·len:·101,·SHA:·b8d44b3d2e83fcc26458dc9dfcfe8d766e5428406fe2533554faa38cf88ee425·...·]-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="4404172909-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="4404172909-29">[</span><span·class="n">What<[·...·truncated·by·diffoscope;·len:·101,·SHA:·c90831ce77c2f311ddbc4ef979f5914fe5af84714bd061f289c8333723433da4·...·]-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="6275341555-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="6275341555-31">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·71,·SHA:·bfe88c65fe59df5073f80a32d45bac7a4013cc3630b9ca691f437d59cf192e2f·...·]-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="4404172909-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="4404172909-31">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·71,·SHA:·3a8d7982b2ed4869cef4a5ab18c0091d335280ae78d188f6287302e6c80cb2a5·...·]-30">)</span><span·class="p">,</span><span·class="w">
228 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="6275341555-32">(</span><span·class="ss">timeout</span><span·class="p"·data-group-id="6275341555-32">)</span><span·class="w">228 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="4404172909-32">(</span><span·class="ss">timeout</span><span·class="p"·data-group-id="4404172909-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="6775848280-1">(</span><span·class="ss">mess_server</span><span·class="p"·data-group-id="6775848280-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="9992421734-1">(</span><span·class="ss">mess_server</span><span·class="p"·data-group-id="9992421734-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="6775848280-2">(</span><span·class="p"·data-group-id="6775848280-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:·bd3579030084d42a5026be326eed73a59e701e25afcf2d4bb8d83dcd62073686·...·]-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="9992421734-2">(</span><span·class="p"·data-group-id="9992421734-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:·2159b31e33d8b46c1ef6da080ebdb09f8042eafab30d77691a7c28eb310315d9·...·]-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="6775848280-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="6775848280-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="9992421734-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="9992421734-4">)</span><span·class="p">.</span><span·class="w">
  
236 </span><span·class="nf">server</span><span·class="p"·data-group-id="6775848280-5">(</span><span·class="p"·data-group-id="6775848280-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="9992421734-5">(</span><span·class="p"·data-group-id="9992421734-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="6775848280-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="6775848280-6">)</span><span·class="p">,</span><span·class="w">237 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="9992421734-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="9992421734-6">)</span><span·class="p">,</span><span·class="w">
238 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="6775848280-7">(</span><span·class="p"·data-group-id="6775848280-8">[</span><span·class="p"·data-group-id="6775848280-8">]</span><span·class="p"·data-group-id="6775848280-7">)</span><span·class="p">.</span><span·class="w">238 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="9992421734-7">(</span><span·class="p"·data-group-id="9992421734-8">[</span><span·class="p"·data-group-id="9992421734-8">]</span><span·class="p"·data-group-id="9992421734-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="6775848280-9">(</span><span·class="n">User_List</span><span·class="p"·data-group-id="6775848280-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="9992421734-9">(</span><span·class="n">User_List</span><span·class="p"·data-group-id="9992421734-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="6775848280-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="6775848280-11">[</span><span·cla[·...·truncated·by·diffoscope;·len:·118,·SHA:·d854822a9e3653b960d969428a872376bbb41cca8b3bc77411b40693d81fb4e1·...·]-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="9992421734-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="9992421734-11">[</span><span·cla[·...·truncated·by·diffoscope;·len:·118,·SHA:·aa3efd20d530337b39570a1b9252f6bd0dd6b2c0ba9cdf9c8dde9f5b54c34c25·...·]-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="6465401918-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="6465401918-1">)</sp[·...·truncated·by·diffoscope;·len:·204,·SHA:·865f0bbaed31e85e120c525271e0fd18cdc09c0b54ce41dea7cada3c561d2e8e·...·]-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="4365844092-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="4365844092-1">)</sp[·...·truncated·by·diffoscope;·len:·204,·SHA:·0012e6209683ae37742e82dbb0a322012399b447594ea9c3a13af78930bd5e61·...·]-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="6465401918-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="6465401918-3">)</sp[·...·truncated·by·diffoscope;·len:·204,·SHA:·753106963930ba9f901100f78bc1109dcced7c1f86c3bc6efe60867233a4e97c·...·]-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="4365844092-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="4365844092-3">)</sp[·...·truncated·by·diffoscope;·len:·204,·SHA:·f486c7a4e4de196c54d2f3021513ea6eb8c750bb34f2a6fd7c8d617309566e0b·...·]-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="9263615954-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="9263615954-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="7201382081-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="7201382081-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="9263615954-2">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="9263615954-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="7201382081-2">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="7201382081-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="9263615954-3">(</span><span·class="mi">0</span><span·class="p"·data-group-id="9263615954-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="7201382081-3">(</span><span·class="mi">0</span><span·class="p"·data-group-id="7201382081-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="4724950416-1">(</span><span·class="ss">mod</span><span·class="p"·data-group-id="4724950416-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="4130931109-1">(</span><span·class="ss">mod</span><span·class="p"·data-group-id="4130931109-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="4724950416-2">(</span><span·class="p"·data-group-id="4724950416-3">[</span><span·class="ss">fact</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="4724950416-3">]</span><span·class="p"·data-group-id="4724950416-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="4130931109-2">(</span><span·class="p"·data-group-id="4130931109-3">[</span><span·class="ss">fact</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="4130931109-3">]</span><span·class="p"·data-group-id="4130931109-2">)</span><span·class="p">.</span><span·class="w">
  
155 </span><span·class="nf">fact</span><span·class="p"·data-group-id="4724950416-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="4724950416-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="4130931109-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="4130931109-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="4724950416-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="4724950416-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="4130931109-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="4130931109-5">)</span><span·class="p">;</span><span·class="w">
157 </span><span·class="nf">fact</span><span·class="p"·data-group-id="4724950416-6">(</span><span·class="mi">0</span><span·class="p"·data-group-id="4724950416-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="4130931109-6">(</span><span·class="mi">0</span><span·class="p"·data-group-id="4130931109-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="3289754254-1">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="3289754254-1">)</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3[·...·truncated·by·diffoscope;·len:·288,·SHA:·fec725812d134d9c9d8d2f7e61ceb613afc6b712d59f82b32e4b4f5d66a38042·...·]-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="0020940910-1">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="0020940910-1">)</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0[·...·truncated·by·diffoscope;·len:·288,·SHA:·1e8f2d8e0b59c6fef992b1c593462339165441334200291e62acfdfa863fab68·...·]-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="3289754254-3">(</span><span·class="mi">0</span><span·class="p"·data-group-id="3289754254-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="0020940910-3">(</span><span·class="mi">0</span><span·class="p"·data-group-id="0020940910-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="2027726684-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="2027726684-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="6712162314-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="6712162314-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="2027726684-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="2027726684-3">[</span><span·class="n">N</span[·...·truncated·by·diffoscope;·len:·94,·SHA:·e25e9d2b93cf7b37ea0ed99712a8e62530a089a7730cc14dbecb090eadfaa237·...·]4-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="6712162314-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="6712162314-3">[</span><span·class="n">N</span[·...·truncated·by·diffoscope;·len:·94,·SHA:·aad47602bd800f85f02c1a5c43e0378da97af5e755f1d5299a493787143080cf·...·]4-2">)</span><span·class="p">,</span><span·class="w">
182 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="2027726684-4">(</span><span·class="n">N</span><span·class="o">+</span><span·class="mi">1</span><span·class="p"·data-group-id="2027726684-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="6712162314-4">(</span><span·class="n">N</span><span·class="o">+</span><span·class="mi">1</span><span·class="p"·data-group-id="6712162314-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="8825076057-1">(</span><span·class="p"·data-group-id="8825076057-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="8825076057-2">}</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·059509b1309fd34ad19c6a5b3aa5b9e265808a61f3caa7c8e2e2fb9a5d0056a4·...·]-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="1527502371-1">(</span><span·class="p"·data-group-id="1527502371-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="1527502371-2">}</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·852ecba95228274dfdb3990cf114a6945ec388c4836f920448c5626e00556343·...·]-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="8825076057-3">(</span><span·class="ss">&#39;Erlang&#39;</span><span·class="p"·data-group-id="8825076057-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="1527502371-3">(</span><span·class="ss">&#39;Erlang&#39;</span><span·class="p"·data-group-id="1527502371-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>250 <p>Copyright·©·1996-2024·<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="2471822258-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="2471822258-1">)</span><s[·...·truncated·by·diffoscope;·len:·195,·SHA:·dc2edd00ee835b9481d50875e445feffa714f9f7cb1022f3c2dd63240cb38137·...·]-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="9083355756-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="9083355756-1">)</span><s[·...·truncated·by·diffoscope;·len:·195,·SHA:·cd5b187f831306b3dd6da85c0a0de5f1f886cd7d79bbb8f59c0ea3db9b2b434b·...·]-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="2471822258-3">(</span><span·class="p"·data-group-id="2471822258-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="9083355756-3">(</span><span·class="p"·data-group-id="9083355756-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="2471822258-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="2471822258-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="9083355756-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="9083355756-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="2471822258-5">(</span><span·class="p"·data-group-id="2471822258-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="9083355756-5">(</span><span·class="p"·data-group-id="9083355756-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>588 <p>Copyright·©·1996-2024·<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="3326385850-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3326385850-2">{</span><span·class="n">Field1</span><span·class="w">·</span><span·class="p"·data-group-id="3326385850-3">[</span>[·...·truncated·by·diffoscope;·len:·115,·SHA:·13f4076594fa4c0767994e4bb2c3c65caabe50ca3182334bb288296c3ed585cf·...·]50-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="4449959150-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4449959150-2">{</span><span·class="n">Field1</span><span·class="w">·</span><span·class="p"·data-group-id="4449959150-3">[</span>[·...·truncated·by·diffoscope;·len:·115,·SHA:·7804f34693c84a6e6fc4323f8e1f7b5adedaba570696f78b3f5bc3033a023e79·...·]50-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="3326385850-4">[</span><span·class="o">=</span><span·class="w">·</span><span·class="n">ExprN</span><span·class="p"·data-group-id="3326385850-4">]</span><span·class="p"·data-group-id="3326385850-2">}</span><span·class="p"·data-group-id="3326385850-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="4449959150-4">[</span><span·class="o">=</span><span·class="w">·</span><span·class="n">ExprN</span><span·class="p"·data-group-id="4449959150-4">]</span><span·class="p"·data-group-id="4449959150-2">}</span><span·class="p"·data-group-id="4449959150-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="2491430279-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2491430279-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:·c50bc7a10e7e99c74c8f81556dc04e142fed827e4d568ac4104b2de9f786d18d·...·]-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="3969179096-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3969179096-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:·6d0053b7a6651fcd3602e4440729b6c112e271e4a4b76a9411b11df5f6acfdea·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
151 </span><span·class="nf">lookup</span><span·class="p"·data-group-id="2491430279-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="2491430279-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="3969179096-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="3969179096-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="2491430279-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="2491430279-5">{</span><span·class="ss">name</span><span·class="o">=</span><[·...·truncated·by·diffoscope;·len:·251,·SHA:·5c120d3df22e9de79c9b6f1d29783bd22ec9f1c698f94a85944e6c39fdaf294f·...·]-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="3969179096-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="3969179096-5">{</span><span·class="ss">name</span><span·class="o">=</span><[·...·truncated·by·diffoscope;·len:·251,·SHA:·32ea26e1c24c463855d48a6b6e406959e017468e7ca2011990c156524f91faf4·...·]-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="1910868353-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1910868353-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:·fea4cf1965941feb88783d05c1861a9cfb0f4b28980c86258768b37d0334300e·...·]-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="4785749916-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4785749916-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:·a27f38624aad6ff24a023534e93425e2f0b06868bd3b2d4131c9258d039041af·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
160 </span><span·class="nf">get_person_name</span><span·class="p"·data-group-id="1910868353-3">(</span><span·class="n">Person</span><span·class="p"·data-group-id="1910868353-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="4785749916-3">(</span><span·class="n">Person</span><span·class="p"·data-group-id="4785749916-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="4248065778-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4248065778-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:·7517e7916052d7c748299d1046a35f8d8ee3c47885b692c81af857d06a2c0489·...·]-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="1902284502-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1902284502-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:·69cd1acab280a31eeb4c651fe0cfc365de4504c0eb6f80da731ff9d13680970c·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
163 </span><span·class="nf">lookup</span><span·class="p"·data-group-id="4248065778-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="4248065778-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="1902284502-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="1902284502-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="4248065778-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:·b89657eba1eed357fbc2c61cb747ca8efd9001cfbb264693193f8b169055af3a·...·]-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="1902284502-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:·f8051ef7a85a5ac8aff693df701d35357c6889d4a415ecf79721fbdab429bc30·...·]-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="6930692170-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="6930692170-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·442,·SHA:·407f068b15a92eccaecb7e2c74949704f98e88d31b3813cd671b77ac79ab1e08·...·]-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="9845998503-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="9845998503-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·442,·SHA:·fc8e23541a7a674bb6bb7b435aa8c49d968fddca74ab400ade812705a9271906·...·]-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="6930692170-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="6930692170-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="9845998503-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="9845998503-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="9987643718-1">(</span><span·class="n">P</span><span·class="p"·data-group-id="9987643718-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="9987643718-2">(</s[·...·truncated·by·diffoscope;·len:·147,·SHA:·1868c549a2058847a892dad573a1ad2ba407888dbb9ba1d27da9349769430526·...·]-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="1155601197-1">(</span><span·class="n">P</span><span·class="p"·data-group-id="1155601197-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="1155601197-2">(</s[·...·truncated·by·diffoscope;·len:·147,·SHA:·76e72ad7101b542712b4e6c00a32d2999600ca40d611031374fe34363d1d6969·...·]-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="9987643718-3">(</span><span·class="p">_</span><span·class="n">P</span><span·class="p"·data-group-id="9987643718-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="1155601197-3">(</span><span·class="p">_</span><span·class="n">P</span><span·class="p"·data-group-id="1155601197-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="2431449844-1">(</span><span·class="ss">nrec0</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2431449844-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="2431449844-2">}</span><span·class="p"·data-group-id="2431449844-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="2431449844-3">(</span><span·class="ss">nrec1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2431449844-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="2431449844-5">{</span><span·class="p"·data-group-id="2431449844-5">}</span><span·class="p"·data-group-id="2431449844-4">}</span><span·class="p"·data-group-id="2431449844-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="2431449844-6">(</span><span·class="ss">nrec2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2431449844-7">{</span><span·class="[·...·truncated·by·diffoscope;·len:·485,·SHA:·42b82329af6f7f4afacba0ef15256f78376356f34e55f299e1c70f989610d247·...·]">)</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="1980372477-1">(</span><span·class="ss">nrec0</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·313,·SHA:·4eadaedde22afd9f1a46426a7866522fb9b7ce69fdd4128ac8bf009f873a402e·...·]">)</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="1980372477-3">(</span><span·class="ss">nrec1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1980372477-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="1980372477-5">{</span><span·class="p"·data-group-id="1980372477-5">}</span><span·class="p"·data-group-id="1980372477-4">}</span><span·class="p"·data-group-id="1980372477-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="1980372477-6">(</span><span·class="ss">nrec2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1980372477-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="1980372477-8">{</span><span·class="p"·data-group-id="1980372477-8">}</span><span·class="p"·data-group-id="1980372477-7">}</span><span·class="p"·data-group-id="1980372477-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="2431449844-9">{</span><span·class="p"·data-group-id="2431449844-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="1980372477-9">{</span><span·class="p"·data-group-id="1980372477-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="0699536119-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0699536119-2">{</span><span·class="n">Field1</span><span·class="p">,</span><span·class="w">·</span><span·class="p">.</span><span[·...·truncated·by·diffoscope;·len:·214,·SHA:·4ef882703311b1b4075475bf05e0d18c5a33798f044f3e4ab8beb996d7b37caf·...·]-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·to217 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="2856131666-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2856131666-2">{</span><span·class="n">Field1</span><span·class="p">,</span><span·class="w">·</span><span·class="p">.</span><span[·...·truncated·by·diffoscope;·len:·214,·SHA:·9ff03c89296edea006d8fe2c477c23a6649f538b32eccc57af8c37abb530b184·...·]-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="0835866693-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="0835866693-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0835866693-2">[</span><span·class="n">Field</span><span·class="p"·data-group-id="0835866693-2">]</span><span·class="w"> 
219 </span><span·class="nf">record_info</span><span·class="p"·data-group-id="0835866693-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="0835866693-3">)</span><sp[·...·truncated·by·diffoscope;·len:·216,·SHA:·dbe5cd2b032485dac7384e2d3ff22e1357da302e3c3e9f59d7f5b684c3d56890·...·]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="2965733525-1">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·303,·SHA:·5f69e0ac95d161e7fe3baeec17b1e35fd2331528f23c398c27f336cea46d09e5·...·]
 219 </span><span·class="nf">record_info</span><span·class="p"·data-group-id="2965733525-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="2965733525-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>271 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2024·<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="7457701464-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="7457701464-2">{</span><span·class="ss">advanced</s[·...·truncated·by·diffoscope;·len:·174,·SHA:·e87a2253623f3fe0753faa8f5c907ecd79d8ca67a75a248683e1c6340ca08525·...·]-1">}</span><span·class="w">230 instructions·are·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7445968212-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="7445968212-2">{</span><span·class="ss">advanced</s[·...·truncated·by·diffoscope;·len:·174,·SHA:·dc50498bfbe47ba2948e0434cb3490005bde6f5962abae830cad46fe4a02fc6a·...·]-1">}</span><span·class="w">
231 </span><span·class="p"·data-group-id="7457701464-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="7457701464-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="7445968212-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="7445968212-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="0252507458-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:·b6f8ebdd28ccb33302084fce7857919c8abdacf0d9f84f4b9857b1fb3528b9f0·...·]-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="5850857931-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:·5089e613e393e45fcf8d1f2c441cce42b06b35fd22618265688858b0e863f266·...·]-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="3687703022-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="3687703022-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="5209525254-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="5209525254-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="3414848531-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="3414848531-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="0091820129-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="0091820129-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="0101982992-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="0101982992-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="6396615332-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="6396615332-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="0101982992-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="0101982992-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="6396615332-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="6396615332-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="0101982992-3">(</span><span·class="p"·data-group-id="0101982992-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0101982992-4">]</span><span·class="p"·data-group-id="0101982992-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="6396615332-3">(</span><span·class="p"·data-group-id="6396615332-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="6396615332-4">]</span><span·class="p"·data-group-id="6396615332-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="0101982992-5">(</span><span·class="p"·data-group-id="0101982992-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:·115,·SHA:·c03a54a396e1ae6c1071d77fd58219ea62ebd2967ce7a0e4cfc1d562fc26a876·...·]2-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="6396615332-5">(</span><span·class="p"·data-group-id="6396615332-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:·115,·SHA:·e540cd7806f5b881af5a26716e263bd2cdd7b14692f98e0511ecdd030f49df74·...·]2-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="0101982992-7">(</span><span·class="p"·data-group-id="0101982992-8">[</span><span·class="ss">available</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0101982992-8">]</span><span·class="p"·data-group-id="0101982992-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="6396615332-7">(</span><span·class="p"·data-group-id="6396615332-8">[</span><span·class="ss">available</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="6396615332-8">]</span><span·class="p"·data-group-id="6396615332-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="0101982992-9">(</span><span·class="p"·data-group-id="0101982992-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">/</s[·...·truncated·by·diffoscope;·len:·255,·SHA:·03c14e55c0d388b5351e97c165ac703b9c8c434b824d921306347f5c72c86aac·...·]2-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="6396615332-9">(</span><span·class="p"·data-group-id="6396615332-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">/</s[·...·truncated·by·diffoscope;·len:·255,·SHA:·14257283b1fc5bf56968a71f2c1fef3c740b2ab1de55c02609e0f1b18f405fc8·...·]2-9">)</span><span·class="p">.</span><span·class="w">
  
355 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="0101982992-11">(</span><span·class="p"·data-group-id="0101982992-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="6396615332-11">(</span><span·class="p"·data-group-id="6396615332-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="0101982992-12">(</span><span·class="p"·data-group-id="0101982992-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="0101982992-13">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·406,·SHA:·becd2b4e28336ff86222d1d28eea47f77300622ceefecb9d24596beb9dc9fec8·...·]2-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="6396615332-12">(</span><span·class="p"·data-group-id="6396615332-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="6396615332-13">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·406,·SHA:·e70db30f3852db68cea6eb125a392dea76d990350c53a456d13b55f9252d5bab·...·]2-12">)</span><span·class="p">.</span><span·class="w">
  
357 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="0101982992-16">(</span><span·class="p"·data-group-id="0101982992-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="6396615332-16">(</span><span·class="p"·data-group-id="6396615332-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="0101982992-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="0101982992-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="6396615332-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="6396615332-17">)</span><span·class="p">.</span><span·class="w">
  
359 </span><span·class="nf">free</span><span·class="p"·data-group-id="0101982992-18">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="0101982992-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="6396615332-18">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="6396615332-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="0101982992-19">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0101982992-20">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·7614575c2f668fb41b8817041eb2b07294858ce347f56060dc2045bfeb114cbd·...·]2-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="6396615332-19">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6396615332-20">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·a1cca50de8642c0544efa1851e53d0246f4c26f104eea8bb62e5453e70ee0221·...·]2-19">)</span><span·class="p">.</span><span·class="w">
  
361 </span><span·class="nf">available</span><span·class="p"·data-group-id="0101982992-21">(</span><span·class="p"·data-group-id="0101982992-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="6396615332-21">(</span><span·class="p"·data-group-id="6396615332-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="0101982992-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="0101982992-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="6396615332-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="6396615332-22">)</span><span·class="p">.</span><span·class="w">
  
363 </span><span·class="nf">init</span><span·class="p"·data-group-id="0101982992-23">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="0101982992-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="6396615332-23">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="6396615332-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
364 ····</span><span·class="p"·data-group-id="0101982992-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="0101982992-25">(</span><span·class="p"·data-group-id="0101982992-25">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·21,·SHA:·3f139577e46bc8b632044f6bbd1d40c3fb3a73afe7d50b02da419fd88bf4900a·...·]2-24">}</span><span·class="p">.</span><span·class="w">364 ····</span><span·class="p"·data-group-id="6396615332-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="6396615332-25">(</span><span·class="p"·data-group-id="6396615332-25">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·21,·SHA:·172ac222e9bee9585012899663866719bfddf895662ee153d62a38cd1b810901·...·]2-24">}</span><span·class="p">.</span><span·class="w">
  
365 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="0101982992-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="[·...·truncated·by·diffoscope;·len:·9,·SHA:·3fa53ce09d6efeb14bcdb3726fd29d30301d1fdb8ed7290e17e420aef7a5e73c·...·]2-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="6396615332-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="[·...·truncated·by·diffoscope;·len:·9,·SHA:·06783f1950462a73338012dfbb45a9b7e9e2721c84f76da1893b6f90aac260de·...·]2-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
366 ····</span><span·class="p"·data-group-id="0101982992-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="0101982992-27">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·142,·SHA:·e3ee28dcc9bbe549855c9c31e02bb1eaaeedb44d03ae3f7afcfe684efe2f8310·...·]2-28">)</span><span·class="p">,</span><span·class="w">366 ····</span><span·class="p"·data-group-id="6396615332-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="6396615332-27">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·142,·SHA:·67458feeb99cc3504b2f05bcf06cf373df58ebe31dfd39d172caa8b48f5919c1·...·]2-28">)</span><span·class="p">,</span><span·class="w">
367 ····</span><span·class="p"·data-group-id="0101982992-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="0101982992-29">}</span><span·class="p">;</span><span·class="w">367 ····</span><span·class="p"·data-group-id="6396615332-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="6396615332-29">}</span><span·class="p">;</span><span·class="w">
368 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="0101982992-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-[·...·truncated·by·diffoscope;·len:·13,·SHA:·350618cb50b5e7054f199ba2be10ccaa9e8882b6e1fe8c878f76117cdfa49437·...·]2-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="6396615332-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-[·...·truncated·by·diffoscope;·len:·13,·SHA:·d50281960e8035a5a0e61c753768401015a1fbb16b676b3ef53c46b5f49c8b38·...·]2-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="0101982992-31">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="0101982992-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="6396615332-31">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="6396615332-31">)</span><span·class="p">,</span><span·class="w">
370 ····</span><span·class="p"·data-group-id="0101982992-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="0101982992-32">}</span><span·class="p">.</span><span·class="w">370 ····</span><span·class="p"·data-group-id="6396615332-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="6396615332-32">}</span><span·class="p">.</span><span·class="w">
  
371 </span><span·class="nf">handle_cast</span><span·class="p"·data-group-id="0101982992-33">(</span><span·class="p"·data-group-id="0101982992-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="0101982992-34">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·90,·SHA:·a5e126367bd1725e90ec5286b1e6d74bf7304c31b5f45a20d3c7e236ef520f03·...·]2-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="6396615332-33">(</span><span·class="p"·data-group-id="6396615332-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="6396615332-34">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·90,·SHA:·cff07733e540eeda56154eed318008ef2d28b733bf55ef70e3ccab66070f524d·...·]2-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="0101982992-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="0101982992-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="6396615332-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="6396615332-35">)</span><span·class="p">,</span><span·class="w">
373 ····</span><span·class="p"·data-group-id="0101982992-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="0101982992-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="6396615332-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="6396615332-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="6239381146-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="9984567556-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="6239381146-2">[</span><span·class="p"·data-group-id="6239381146-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="6239381146-3">}</span><span·class="p">,</span><span·class="w">375 ·</span><span·class="p"·data-group-id="9984567556-2">[</span><span·class="p"·data-group-id="9984567556-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="9984567556-3">}</span><span·class="p">,</span><span·class="w">
376 ··</span><span·class="p"·data-group-id="6239381146-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="6239381146-4">}</span><span·class="p">,</span><span·class="w">376 ··</span><span·class="p"·data-group-id="9984567556-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="9984567556-4">}</span><span·class="p">,</span><span·class="w">
377 ··</span><span·class="p"·data-group-id="6239381146-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6239381146-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:·7734bde4be0e924f94797bc8885b5ccd110282283858f45d15a3455e2e679ffb·...·]6-5">}</span><span·class="p">,</span><span·class="w">377 ··</span><span·class="p"·data-group-id="9984567556-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9984567556-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:·be49f8f8ead1d840a5845ffc7bb6d43f75247c0cc976ef1f3965955c0c14d2a2·...·]6-5">}</span><span·class="p">,</span><span·class="w">
378 ··</span><span·class="p"·data-group-id="6239381146-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6239381146-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="6239381146-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·21,·SHA:·92225497228d6612458e62d9e2c7d3da88e64cb6552c702dedc353ed5a1badff·...·]6-7">}</span><span·class="p">,</span><span·class="w">378 ··</span><span·class="p"·data-group-id="9984567556-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9984567556-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="9984567556-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·21,·SHA:·477ee7f6b4a4c1a005299fe512e5562fb7c606bd1a2e8f5a240d027066146eb9·...·]6-7">}</span><span·class="p">,</span><span·class="w">
379 ··</span><span·class="p"·data-group-id="6239381146-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6239381146-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:·2b4b078116953a71ea94749ec858331c174c93e2bd1d2f5d3f1a97589b19e75c·...·]6-9">}</span><span·class="p">,</span><span·class="w">379 ··</span><span·class="p"·data-group-id="9984567556-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9984567556-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:·0486126c0b010a0cd02923bf696f48716387c47e63da7498f06de70a2e54aaed·...·]6-9">}</span><span·class="p">,</span><span·class="w">
380 ··</span><span·class="p"·data-group-id="6239381146-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6239381146-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="6239381146-13">[</s[·...·truncated·by·diffoscope;·len:·152,·SHA:·a158330b248bf8a5b141d3c77db7d99113de9f747f03be233221a8b3cfc40358·...·]6-11">}</span><span·class="w">380 ··</span><span·class="p"·data-group-id="9984567556-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9984567556-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="9984567556-13">[</s[·...·truncated·by·diffoscope;·len:·152,·SHA:·6bdf01ac80499be4030ce835b2ada82a2df27acb77ca34fbfe94cec4cec26ec4·...·]6-11">}</span><span·class="w">
381 ·</span><span·class="p"·data-group-id="6239381146-2">]</span><span·class="p"·data-group-id="6239381146-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="9984567556-2">]</span><span·class="p"·data-group-id="9984567556-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="9270829423-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="3485883142-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
384 ·</span><span·class="p"·data-group-id="9270829423-2">[</span><span·class="p"·data-group-id="9270829423-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9270829423-4">[</span><span·class="p"·data-group-id="9270829423-5"[·...·truncated·by·diffoscope;·len:·319,·SHA:·84056c83f44c040870baeef287025338bfe8fdba51c35bba05e8a2cb0a2bdaac·...·]-2">]</span><span·class="p">,</span><span·class="w">384 ·</span><span·class="p"·data-group-id="3485883142-2">[</span><span·class="p"·data-group-id="3485883142-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3485883142-4">[</span><span·class="p"·data-group-id="3485883142-5"[·...·truncated·by·diffoscope;·len:·319,·SHA:·61fd4563b2e125a532bd989b2e866dacb10b238cd97949607616c9f35878560c·...·]-2">]</span><span·class="p">,</span><span·class="w">
385 ·</span><span·class="p"·data-group-id="9270829423-6">[</span><span·class="p"·data-group-id="9270829423-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9270829423-8">[</span><span·class="p"·data-group-id="9270829423-9"[·...·truncated·by·diffoscope;·len:·319,·SHA:·e912edf13a9dedf67fc4d99d5e43c5176c9ec977b5e4f82a3fd589894cc0d780·...·]-6">]</span><span·class="w">385 ·</span><span·class="p"·data-group-id="3485883142-6">[</span><span·class="p"·data-group-id="3485883142-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3485883142-8">[</span><span·class="p"·data-group-id="3485883142-9"[·...·truncated·by·diffoscope;·len:·319,·SHA:·a5f8c7bbfad2727c044f484c82c6d91850bdec56f0a413b44b916ac1082503bf·...·]-6">]</span><span·class="w">
386 </span><span·class="p"·data-group-id="9270829423-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="3485883142-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="4481642938-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="6368213700-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">
413 ·</span><span·class="p"·data-group-id="4481642938-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="4481642938-2">}</span><span·class="p">,</span><span·class="w">413 ·</span><span·class="p"·data-group-id="6368213700-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="6368213700-2">}</span><span·class="p">,</span><span·class="w">
414 ·</span><span·class="p"·data-group-id="4481642938-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="4481642938-3">}</span><span·class="p">,</span><span·class="w">414 ·</span><span·class="p"·data-group-id="6368213700-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="6368213700-3">}</span><span·class="p">,</span><span·class="w">
415 ·</span><span·class="p"·data-group-id="4481642938-4">[</span><span·class="p"·data-group-id="4481642938-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="4481642938-5">}</span><span·class="p">,</span><span·class="w">415 ·</span><span·class="p"·data-group-id="6368213700-4">[</span><span·class="p"·data-group-id="6368213700-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="6368213700-5">}</span><span·class="p">,</span><span·class="w">
416 ··</span><span·class="p"·data-group-id="4481642938-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="4481642938-6">}</span><span·class="p">,</span><span·class="w">416 ··</span><span·class="p"·data-group-id="6368213700-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="6368213700-6">}</span><span·class="p">,</span><span·class="w">
417 ··</span><span·class="p"·data-group-id="4481642938-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="4481642938-7">}</span><span·class="p">,</span><span·class="w">417 ··</span><span·class="p"·data-group-id="6368213700-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="6368213700-7">}</span><span·class="p">,</span><span·class="w">
418 ··</span><span·class="p"·data-group-id="4481642938-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="4481642938-8">}</span><span·class="p"·data-group-id="4481642938-4">]</span><span·class="w">418 ··</span><span·class="p"·data-group-id="6368213700-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="6368213700-8">}</span><span·class="p"·data-group-id="6368213700-4">]</span><span·class="w">
419 </span><span·class="p"·data-group-id="4481642938-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="6368213700-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="7443802583-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7443802583-2">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">Vsn</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·271,·SHA:·b52ae408d99dbc1850fc7735fd171e28db6da072a6e0231782f9834a750ce669·...·]3-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="7984584353-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7984584353-2">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">Vsn</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·271,·SHA:·0d487a01b4b4886024721bf3b0cbea44d2f7f42035c8692fdcd9b2dfa96aecec·...·]3-3">}</span><span·class="p">,</span><span·class="w">
144 ·</span><span·class="p"·data-group-id="7443802583-4">[</span><span·class="p"·data-group-id="7443802583-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="7443802583-5">}</span><span·class="p">,</span><span·class="w">144 ·</span><span·class="p"·data-group-id="7984584353-4">[</span><span·class="p"·data-group-id="7984584353-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="7984584353-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="7443802583-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="7443802583-6">}</span><span·class="p"·data-group-id="7443802583-4">]</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·24,·SHA:·d2fcc013a14b4c37a7e5134a88f01cd2a8559673329304b61d561b646d86e674·...·]3-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="7984584353-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="7984584353-6">}</span><span·class="p"·data-group-id="7984584353-4">]</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·24,·SHA:·23fbeae444e976cc628e948ad96dc1c0e72c4340d38511bda40c5256ebcd4cec·...·]3-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="2900224823-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="0525978350-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="2900224823-2">[</span><span·class="p"·data-group-id="2900224823-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="2900224823-3">}</span><span·class="p">,</span><span·class="w">151 ·</span><span·class="p"·data-group-id="0525978350-2">[</span><span·class="p"·data-group-id="0525978350-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="0525978350-3">}</span><span·class="p">,</span><span·class="w">
152 ··</span><span·class="p"·data-group-id="2900224823-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="2900224823-4">}</span><span·class="p">,</span><span·class="w">152 ··</span><span·class="p"·data-group-id="0525978350-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="0525978350-4">}</span><span·class="p">,</span><span·class="w">
153 ··</span><span·class="p"·data-group-id="2900224823-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2900224823-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:·3991d4df2e0c057c72c5d681b5243a6dd78cf2149f112e7d820c4bbac9aed775·...·]-5">}</span><span·class="p">,</span><span·class="w">153 ··</span><span·class="p"·data-group-id="0525978350-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0525978350-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:·1233485a7d0bc9e7c5d2a2056ffff262861c44a8ae4a6acd436b8dd671a44fc1·...·]-5">}</span><span·class="p">,</span><span·class="w">
154 ··</span><span·class="p"·data-group-id="2900224823-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2900224823-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="2900224823-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·e1bf6e35c7a25b91fbcb5820b8efa962805fc655474e44ec7b192a58d109108f·...·]-7">}</span><span·class="p">,</span><span·class="w">154 ··</span><span·class="p"·data-group-id="0525978350-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0525978350-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="0525978350-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·93c1186c0bd51e30bcba75993eecf8e1189ffde625e4b95403e41e058819819e·...·]-7">}</span><span·class="p">,</span><span·class="w">
155 ··</span><span·class="p"·data-group-id="2900224823-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2900224823-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:·dd3953c018c559faa6ba571d4cbd50697325538a094e1b5b9207220cb6e039d8·...·]-9">}</span><span·class="p">,</span><span·class="w">155 ··</span><span·class="p"·data-group-id="0525978350-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0525978350-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:·ead4d22be44195c77b6a2db51ce2df0e77c1cfe4ef7b2eff23add1f5cc4d0d8a·...·]-9">}</span><span·class="p">,</span><span·class="w">
156 ··</span><span·class="p"·data-group-id="2900224823-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2900224823-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="2900224823-13">[</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·bfde7d80e83eded6a81da58d3caffb762ef6922a19fabeb7ef54b74fdcbe84aa·...·]-11">}</span><span·class="w">156 ··</span><span·class="p"·data-group-id="0525978350-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0525978350-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="0525978350-13">[</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·82a83aa3fd0c1fdf938cfe272b9c3acce0945e3378f95b3f812b3ef46cd8b838·...·]-11">}</span><span·class="w">
157 ·</span><span·class="p"·data-group-id="2900224823-2">]</span><span·class="p"·data-group-id="2900224823-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="0525978350-2">]</span><span·class="p"·data-group-id="0525978350-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="0702431030-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="9001712358-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">
159 ·</span><span·class="p"·data-group-id="0702431030-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="0702431030-2">}</span><span·class="p">,</span><span·class="w">159 ·</span><span·class="p"·data-group-id="9001712358-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="9001712358-2">}</span><span·class="p">,</span><span·class="w">
160 ·</span><span·class="p"·data-group-id="0702431030-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="0702431030-3">}</span><span·class="p">,</span><span·class="w">160 ·</span><span·class="p"·data-group-id="9001712358-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="9001712358-3">}</span><span·class="p">,</span><span·class="w">
161 ·</span><span·class="p"·data-group-id="0702431030-4">[</span><span·class="p"·data-group-id="0702431030-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="0702431030-5">}</span><span·class="p">,</span><span·class="w">161 ·</span><span·class="p"·data-group-id="9001712358-4">[</span><span·class="p"·data-group-id="9001712358-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="9001712358-5">}</span><span·class="p">,</span><span·class="w">
162 ··</span><span·class="p"·data-group-id="0702431030-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="0702431030-6">}</span><span·class="p">,</span><span·class="w">162 ··</span><span·class="p"·data-group-id="9001712358-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="9001712358-6">}</span><span·class="p">,</span><span·class="w">
163 ··</span><span·class="p"·data-group-id="0702431030-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="0702431030-7">}</span><span·class="p">,</span><span·class="w">163 ··</span><span·class="p"·data-group-id="9001712358-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="9001712358-7">}</span><span·class="p">,</span><span·class="w">
164 ··</span><span·class="p"·data-group-id="0702431030-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="0702431030-8">}</span><span·class="p"·data-group-id="0702431030-4">]</span><span·class="w">164 ··</span><span·class="p"·data-group-id="9001712358-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="9001712358-8">}</span><span·class="p"·data-group-id="9001712358-4">]</span><span·class="w">
165 </span><span·class="p"·data-group-id="0702431030-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="9001712358-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="0948313438-1">(</span><span·class="s">&quot;ch_rel-1&quot;</span><span·class="p"·data-group-id="0948313438-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="7540873406-1">(</span><span·class="s">&quot;ch_rel-1&quot;</span><span·class="p"·data-group-id="7540873406-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="0948313438-2">(</span><span·class="s">&quot;ch_rel-1&quot;</span><span·class="p"·data-group-id="0948313438-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="7540873406-2">(</span><span·class="s">&quot;ch_rel-1&quot;</span><span·class="p"·data-group-id="7540873406-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>356 <p>Copyright·©·1996-2024·<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="6898871671-1">(</span><span·class="ss">tut19</span><span·class="p"·data-group-id="6898871671-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="5684749333-1">(</span><span·class="ss">tut19</span><span·class="p"·data-group-id="5684749333-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="6898871671-2">(</span><span·class="p"·data-group-id="6898871671-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:·d45e659683186d530683f128ffc62501b2cfa93c8d1903181713af01189e4481·...·]-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="5684749333-2">(</span><span·class="p"·data-group-id="5684749333-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:·0f69f8a8918cf8ac0224ee48a29bea48e0503d8e3a3ca27f9db04af84970850d·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
138 </span><span·class="nf">ping</span><span·class="p"·data-group-id="6898871671-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="6898871671-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="5684749333-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="5684749333-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="6898871671-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="6898871671-6">[</span><span·class="p"·data-group-id="68988[·...·truncated·by·diffoscope;·len:·58,·SHA:·f429769fb2364005556caf8e7d5714aee953e647304136a5cd983431638f47bd·...·]-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="5684749333-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="5684749333-6">[</span><span·class="p"·data-group-id="56847[·...·truncated·by·diffoscope;·len:·58,·SHA:·cf9c791b0c4ee89ff3467a356464e16c94228ac6503b90d31c07285a58889630·...·]-5">)</span><span·class="p">;</span><span·class="w">
  
140 </span><span·class="nf">ping</span><span·class="p"·data-group-id="6898871671-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="6898871671-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="5684749333-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="5684749333-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
141 ····</span><span·class="p"·data-group-id="6898871671-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="6898871671-8">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·305,·SHA:·b8ffb59a7906e217d6d516f5442ec364e9c873b1383a8bd8ff29cd7ebb76fbb5·...·]-9">}</span><span·class="p">,</span><span·class="w">141 ····</span><span·class="p"·data-group-id="5684749333-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="5684749333-8">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·305,·SHA:·8c0bd309035d2c3e173176dde374ab07a104b998877a5a002dd3fcaf05f0f259·...·]-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="6898871671-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="6898871671-12">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·80872ca401b37b88817cf9d58a71531cd5158492cb91991fee092b04271c99a9·...·]-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="5684749333-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="5684749333-12">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·3b23f8e37352c15fbc8b48e7b9ad69b683f6cc5abc7925730dec74f45fa345b5·...·]-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="6898871671-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="6[·...·truncated·by·diffoscope;·len:·9,·SHA:·3b97780a356b6e3e6f2e92bef9baee01267544223af6fa8bd5c53aa979869101·...·]-13">)</span><span·class="p">.</span><span·class="w">146 ····</span><span·class="nf">ping</span><span·class="p"·data-group-id="5684749333-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="5[·...·truncated·by·diffoscope;·len:·9,·SHA:·7348b77dbfa5f0d39d74cb5e2540edba0b31921f18d68d0884ac0113da47ba06·...·]-13">)</span><span·class="p">.</span><span·class="w">
  
147 </span><span·class="nf">pong</span><span·class="p"·data-group-id="6898871671-14">(</span><span·class="p"·data-group-id="6898871671-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="5684749333-14">(</span><span·class="p"·data-group-id="5684749333-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="6898871671-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="6898871671-15">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">149 ········</span><span·class="p"·data-group-id="5684749333-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="5684749333-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="6898871671-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="6898871671-17">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·7ebac1b755023a8468541219dae30ae4a1c06dbd4c036aac91affcaa72fca6b0·...·]-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="5684749333-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="5684749333-17">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·41e14593bbf8df1c35400d01efa3f124a7c37501ec6c460828a826772b3c6ec5·...·]-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="6898871671-18">(</span><span·class="p"·data-group-id="6898871671-18">)</span><span·class="w">152 ············</span><span·class="nf">pong</span><span·class="p"·data-group-id="5684749333-18">(</span><span·class="p"·data-group-id="5684749333-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="6898871671-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="6898871671-20">[</span><span·class="p"·data-group-id="68[·...·truncated·by·diffoscope;·len:·62,·SHA:·f733aa32b804bfb1895ca24a2f28f315e5500e10ed3f98ba4d4ea1232f682348·...·]-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="5684749333-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="5684749333-20">[</span><span·class="p"·data-group-id="56[·...·truncated·by·diffoscope;·len:·62,·SHA:·4abaed8cb324eb6b4bcab5ef1f233f8950fbc73871ddcb2425ddc93094535cde·...·]-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="6898871671-21">(</span><span·class="p"·data-group-id="6898871671-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="5684749333-21">(</span><span·class="p"·data-group-id="5684749333-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="6898871671-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="6898871671-23">(</span><span·class="ss">tut19</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·282,·SHA:·1ea1067f0cd6fde6c7cbbd58e2045991d21c08c296a664e9f419a442369e8f2b·...·]-22">)</span><span·class="p">.</span><span·class="w">157 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="5684749333-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="5684749333-23">(</span><span·class="ss">tut19</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·282,·SHA:·a0b8cd105b92934189105cf6d114e244d0aebe54bfff97ee358cadc28f1f8d16·...·]-22">)</span><span·class="p">.</span><span·class="w">
  
158 </span><span·class="nf">start_ping</span><span·class="p"·data-group-id="6898871671-25">(</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="6898871671-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="5684749333-25">(</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="5684749333-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="6898871671-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="6898871671-27">[</span><span·class="mi">3</span><[·...·truncated·by·diffoscope;·len:·174,·SHA:·d8f8f809ad97dfe1d72d479b8e2b6e8042d6943c33b19de94307611a0948a656·...·]-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="5684749333-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="5684749333-27">[</span><span·class="mi">3</span><[·...·truncated·by·diffoscope;·len:·174,·SHA:·f6dd27359236fef61596e2c81521371ffecec418b703a8262ff649d73e2c993a·...·]-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="7568841977-1">(</span><span·class="p"·data-group-id="7568841977-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="4643110499-1">(</span><span·class="p"·data-group-id="4643110499-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="7568841977-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="7568841977-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">172 ········</span><span·class="p"·data-group-id="4643110499-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="4643110499-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="7568841977-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="7568841977-4">[</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·63,·SHA:·da5b05c4925be6e4bf1ae27c45d998e0a2cb33a3dd99b97c765e394a41d2bb31·...·]-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="4643110499-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="4643110499-4">[</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·63,·SHA:·8f01dd488241186270d0d6cd0b5c6f43560253baf76ee22b61551cef08b74cb3·...·]-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="7568841977-5">(</span><span·class="p"·data-group-id="7568841977-5">)</span><span·class="w">175 ············</span><span·class="nf">pong</span><span·class="p"·data-group-id="4643110499-5">(</span><span·class="p"·data-group-id="4643110499-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="7568841977-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="7568841977-7">[</span><span·class="p"·data-group-id="7568[·...·truncated·by·diffoscope;·len:·59,·SHA:·a5c7f968f70960964445ee639d8ada8e3e326dc06b40835712dd942c2a62e361·...·]-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="4643110499-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="4643110499-7">[</span><span·class="p"·data-group-id="4643[·...·truncated·by·diffoscope;·len:·59,·SHA:·ab496a5ae9d20f1c6eeeb6fa248af90b4685360a9ad8e9572b50d199a8cba290·...·]-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="4440010436-1">(</span><span·class="p"·data-group-id="4440010436-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="3368766424-1">(</span><span·class="p"·data-group-id="3368766424-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="5071026954-1">(</span><span·class="ss">tut20</span><span·class="p"·data-group-id="5071026954-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="6766164191-1">(</span><span·class="ss">tut20</span><span·class="p"·data-group-id="6766164191-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="5071026954-2">(</span><span·class="p"·data-group-id="5071026954-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:·91c4b82d6fa4fc4b40491912f0ae5cd3190b1d409d19f740abc7517cf7094355·...·]-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="6766164191-2">(</span><span·class="p"·data-group-id="6766164191-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:·1356cbf0e147236edc092f8dec3b638949907495b40143436c49c9f76b6617cb·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
219 </span><span·class="nf">ping</span><span·class="p"·data-group-id="5071026954-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="5071026954-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="6766164191-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="6766164191-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="5071026954-5">(</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="5071026954-5">)</span><span·class="p">,</span><span·class="w">220 ····</span><span·class="nf">link</span><span·class="p"·data-group-id="6766164191-5">(</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="6766164191-5">)</span><span·class="p">,</span><span·class="w">
221 ····</span><span·class="nf">ping1</span><span·class="p"·data-group-id="5071026954-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="5071026954-6">)</span><span·class="p">.</span><span·class="w">221 ····</span><span·class="nf">ping1</span><span·class="p"·data-group-id="6766164191-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="6766164191-6">)</span><span·class="p">.</span><span·class="w">
  
222 </span><span·class="nf">ping1</span><span·class="p"·data-group-id="5071026954-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="5071026954-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="6766164191-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="6766164191-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="5071026954-8">(</span><span·class="ss">ping</span><span·class="p"·data-group-id="5071026954-8">)</span><span·class="p">;</span><span·class="w">223 ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="6766164191-8">(</span><span·class="ss">ping</span><span·class="p"·data-group-id="6766164191-8">)</span><span·class="p">;</span><span·class="w">
  
224 </span><span·class="nf">ping1</span><span·class="p"·data-group-id="5071026954-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="5071026954-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="6766164191-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="6766164191-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="5071026954-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="5071026954-11">(</span><span·class="p"·data-group-id="5071026954-11">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·9bc8b400a84a0758f89c3c8ab4349edd6d97fd20c515f41ebd7eaf63fec1cac8·...·]-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="6766164191-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="6766164191-11">(</span><span·class="p"·data-group-id="6766164191-11">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·cd36fcf5749c0cf6311778217c7f8cba22529f2e08ea96eb195489a4fc946926·...·]-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="5071026954-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="5071026954-13">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·81181a81a110dbc4b942633ed833d529f7cc3b5b37a9d66c1b75c8b36681839b·...·]-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="6766164191-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="6766164191-13">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·991aa34fca4f4244faf6e866e42c8c9194c3511e1461ef192ea30db4e27e42b8·...·]-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="5071026954-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="50[·...·truncated·by·diffoscope;·len:·8,·SHA:·4820094d9fab82e61b5b0ebdecc85ad14d594b23ba9ae068ff72d8893b3dbaaf·...·]-14">)</span><span·class="p">.</span><span·class="w">230 ····</span><span·class="nf">ping1</span><span·class="p"·data-group-id="6766164191-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="67[·...·truncated·by·diffoscope;·len:·8,·SHA:·5616b1f8c8f32625b510d48e9659635dd04ef975ecc5766a30a3659a4025351f·...·]-14">)</span><span·class="p">.</span><span·class="w">
  
231 </span><span·class="nf">pong</span><span·class="p"·data-group-id="5071026954-15">(</span><span·class="p"·data-group-id="5071026954-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="6766164191-15">(</span><span·class="p"·data-group-id="6766164191-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="5071026954-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="5071026954-16">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">233 ········</span><span·class="p"·data-group-id="6766164191-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="6766164191-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="5071026954-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="5071026954-18">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·d2aaf2b86c0a9e13813d68138e479d8e2913d8edf75b69371268be563690048d·...·]-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="6766164191-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="6766164191-18">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·13f0e8ba61d4e0eade30b54dfb66002938d9220f9b78628f619787260afc5d69·...·]-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="5071026954-19">(</span><span·class="p"·data-group-id="5071026954-19">)</span><span·class="w">236 ············</span><span·class="nf">pong</span><span·class="p"·data-group-id="6766164191-19">(</span><span·class="p"·data-group-id="6766164191-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="5071026954-20">(</span><span·class="n">Ping_Node</span><span·class="p"·data-group-id="5071026954-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="6766164191-20">(</span><span·class="n">Ping_Node</span><span·class="p"·data-group-id="6766164191-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="5071026954-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="5071026954-22">[</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·69,·SHA:·f7c7f7160378447f1f29bad143159484cb30e527bcb6a5d657c88cf0f5f2dee9·...·]-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="6766164191-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="6766164191-22">[</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·69,·SHA:·ea37f40da588645f56ffdc2b00dc56956650181ba4bde03ad0018f95810e8bb5·...·]-21">)</span><span·class="p">,</span><span·class="w">
240 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="5071026954-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:·6cf49d0afb03291eea5c66f634c4ff1b60fd0f387e1f8d4d1622519f357f3b1b·...·]-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="6766164191-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:·00d79889ded53802380362369420b276d2d97c12971fa3d6508a663a3a7268d1·...·]-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="3252050520-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="3252050520-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="4424744651-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="4424744651-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="9857685778-1">(</span><span·class="ss">tut21</span><span·class="p"·data-group-id="9857685778-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="6170475179-1">(</span><span·class="ss">tut21</span><span·class="p"·data-group-id="6170475179-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="9857685778-2">(</span><span·class="p"·data-group-id="9857685778-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:·489df44fd48872638e7747b15b4f4d4074f77b4ec08cc8d1e9e5be37993f49d2·...·]-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="6170475179-2">(</span><span·class="p"·data-group-id="6170475179-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:·f6ecbe5ee37d746f6d1b4f7b6c6212f1c8aaff628be72910f43bd2a94463b50b·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
260 </span><span·class="nf">ping</span><span·class="p"·data-group-id="9857685778-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="9857685778-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="6170475179-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="6170475179-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.33 KB
./usr/share/doc/erlang-doc/html/doc/system/search.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>136 <p>Copyright·©·1996-2024·<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="3962483682-1">(</span><span·class="ss">ch_sup</span><span·class="p"·data-group-id="3962483682-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="7250003283-1">(</span><span·class="ss">ch_sup</span><span·class="p"·data-group-id="7250003283-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="3962483682-2">(</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="3962483682-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="7250003283-2">(</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="7250003283-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="3962483682-3">(</span><span·class="p"·data-group-id="3962483682-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="3962483682-4">]</span><span·class="p"·data-group-id="3962483682-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="3962483682-5">(</span><span·class="p"·data-group-id="3962483682-6">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="3962483682-6">]</span><span·class="p"·data-group-id="3962483682-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="7250003283-3">(</span><span·class="p"·data-group-id="7250003283-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7250003283-4">]</span><span·class="p"·data-group-id="7250003283-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="7250003283-5">(</span><span·class="p"·data-group-id="7250003283-6">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="7250003283-6">]</span><span·class="p"·data-group-id="7250003283-5">)</span><span·class="p">.</span><span·class="w">
  
140 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="3962483682-7">(</span><span·class="p"·data-group-id="3962483682-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="7250003283-7">(</span><span·class="p"·data-group-id="7250003283-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="3962483682-8">(</span><span·class="ss">ch_sup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3962483682-9">[</span><span·class="p"·data-group-id="3962483682-9">]</span><span·class="p"·data-group-id="3962483682-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="7250003283-8">(</span><span·class="ss">ch_sup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7250003283-9">[</span><span·class="p"·data-group-id="7250003283-9">]</span><span·class="p"·data-group-id="7250003283-8">)</span><span·class="p">.</span><span·class="w">
  
142 </span><span·class="nf">init</span><span·class="p"·data-group-id="3962483682-10">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="3962483682-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="7250003283-10">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="7250003283-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="3962483682-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:·3932ad426961afde1d4ffe9cd85705a230714968cd0066163d4dfd7d2b3f1257·...·]-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="7250003283-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:·81f4568d383923aef0b9056ce332c713d7b9e20077e0ff563cd983d7c2c74224·...·]-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="3962483682-12">[</span><span·class="p"·data-group-id="3962483682-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="7250003283-12">[</span><span·class="p"·data-group-id="7250003283-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="3962483682-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="3962483682-15">[</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·73,·SHA:·e0a2276d17a2c65bce54eacac67bf71d24a2dace83054e7ffd99b3fae3005a52·...·]-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="7250003283-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="7250003283-15">[</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·73,·SHA:·79555e587b14bb2b23da5859b7fdcd775ace9eace0d76c32045e515d3365443f·...·]-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="3962483682-16">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="3962483682-16">]</span><span·class="p"·data-group-id="3962483682-13">}</span><span·class="p"·data-group-id="3962483682-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="7250003283-16">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="7250003283-16">]</span><span·class="p"·data-group-id="7250003283-13">}</span><span·class="p"·data-group-id="7250003283-12">]</span><span·class="p">,</span><span·class="w">
150 ····</span><span·class="p"·data-group-id="3962483682-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3962483682-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:·ab1f47aed1dbd946cf200bb3c957ee3625880b379ab2a0f259b3ca8ce3f2e6a4·...·]-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="7250003283-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7250003283-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:·48b900ee26d596fecc5abc9da1190dbe9ba4b97562fa838ebfb5017f599b2c90·...·]-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="2657196598-1">(</span><span·class="p"·data-group-id="2657196598-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2657196598-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="2657196598-3">(</span><span·class="p"·data-group-id="2657196598-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="2657196598-4">(</span><span·class="p"·data-group-id="2657196598-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="2657196598-5">(</span><span·class="p"·data-group-id="26571965[·...·truncated·by·diffoscope;·len:·54,·SHA:·371d851b0159387d3ffa5ad144410a146027e0f184af4484033905c926c18888·...·]··········</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="0685562787-1">(</span><span·class="p"·data-group-id="0685562787-1">)</span><span·cla[·...·truncated·by·diffoscope;·len:·404,·SHA:·afc4780d0ea9ec02bc3aa8fb5bc12b9b50eb62df53eb5cf10359c58e06b4ed2f·...·]··········</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="0685562787-4">(</span><span·class="p"·data-group-id="0685562787-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="0685562787-5">(</span><span·class="p"·data-group-id="0685562787-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="2657196598-6">(</span><span·class="p"·data-group-id="2657196598-6">)</span><span·class="p"·data-group-id="2657196598-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="0685562787-6">(</span><span·class="p"·data-group-id="0685562787-6">)</span><span·class="p"·data-group-id="0685562787-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="2657196598-7">(</span><span·class="p"·data-group-id="2657196598-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="0685562787-7">(</span><span·class="p"·data-group-id="0685562787-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="2657196598-8">(</span><span·class="p"·data-group-id="2657196598-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="0685562787-8">(</span><span·class="p"·data-group-id="0685562787-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="9288747207-1">(</span><span·class="p"·data-group-id="9288747207-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9288747207-2">#{</span><span·class="ss">id</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·173,·SHA:·de6cc98738d2984e8fe1915099b0dfb4368939afa7fd4a59bb1243b486a7c0bf·...·]-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="5575475528-1">(</span><span·class="p"·data-group-id="5575475528-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5575475528-2">#{</span><span·class="ss">id</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·173,·SHA:·3ff7ad4e23f3b28c17848ce5ba463e960e19ac7311205b944063d83cc6e33b95·...·]-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="9288747207-4">(</span><span·class="p"·data-group-id="9288747207-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="5575475528-4">(</span><span·class="p"·data-group-id="5575475528-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="9288747207-5">(</span><span·class="p"·data-group-id="9288747207-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="5575475528-5">(</span><span·class="p"·data-group-id="5575475528-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="9288747207-6">(</span><span·class="p"·data-group-id="9288747207-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="5575475528-6">(</span><span·class="p"·data-group-id="5575475528-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="9288747207-7">(</span><span·class="p"·data-group-id="9288747207-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="5575475528-7">(</span><span·class="p"·data-group-id="5575475528-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="9288747207-8">(</span><span·class="p"·data-group-id="9288747207-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="5575475528-8">(</span><span·class="p"·data-group-id="5575475528-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="9288747207-9">(</span><span·class="p"·data-group-id="9288747207-9">)</span><span·class="p"·data-group-id="9288747207-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="5575475528-9">(</span><span·class="p"·data-group-id="5575475528-9">)</span><span·class="p"·data-group-id="5575475528-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="9288747207-10">(</span><span·class="p"·data-group-id="9288747207-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="9288747207-11">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·317ca2abe14ae2c35c678897a5223d9fc041fb20a09482f4e743ecd452402333·...·]-11">)</span><span·class="w">422 ····</span><span·class="nf">child_id</span><span·class="p"·data-group-id="5575475528-10">(</span><span·class="p"·data-group-id="5575475528-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="5575475528-11">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·80daa526c424b46809206e1ead05f49f0498251637e9ce2448212aeaed458b6b·...·]-11">)</span><span·class="w">
423 ····</span><span·class="nf">mfargs</span><span·class="p"·data-group-id="9288747207-12">(</span><span·class="p"·data-group-id="9288747207-12">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9288747207-13">{</span><span·class="n">M</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·962,·SHA:·1b3c53c38901f0c00e982b69965fd4bb65610ddc878de1eedeb1e2a9cab8a20f·...·]-13">}</span><span·class="w">423 ····</span><span·class="nf">mfargs</span><span·class="p"·data-group-id="5575475528-12">(</span><span·class="p"·data-group-id="5575475528-12">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5575475528-13">{</span><span·class="n">M</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·962,·SHA:·ce01664080dc2bc72857609ddf272b6dd51dc665898d9a979302141acf54ef21·...·]-13">}</span><span·class="w">
424 ····</span><span·class="nf">modules</span><span·class="p"·data-group-id="9288747207-18">(</span><span·class="p"·data-group-id="9288747207-18">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9288747207-19">[</span><span·class="nf">module</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·126,·SHA:·ada074007b7e0725265ea0f1b0f3e69321e4a072fdf55645dced9939d5aed748·...·]-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="5575475528-18">(</span><span·class="p"·data-group-id="5575475528-18">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5575475528-19">[</span><span·class="nf">module</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·126,·SHA:·db8a1046a5d7a6ada97404bfdf3b2b575c5e4429aeb41f03929080e030c04def·...·]-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="9288747207-21">(</span><span·class="p"·data-group-id="9288747207-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="5575475528-21">(</span><span·class="p"·data-group-id="5575475528-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="9288747207-22">(</span><span·class="p"·data-group-id="9288747207-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="9288747207-23">(</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·b15b2b0d4d18fee6b524eaf2a1ef5287084ab33c91d4474f391b09df7f059b07·...·]-23">)</span><span·class="w">426 ····</span><span·class="nf">significant</span><span·class="p"·data-group-id="5575475528-22">(</span><span·class="p"·data-group-id="5575475528-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="5575475528-23">(</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·3819c6d33bca239c206d59736e81dd767b46be82de336ef6065d7bd4cde2357b·...·]-23">)</span><span·class="w">
427 ····</span><span·class="nf">shutdown</span><span·class="p"·data-group-id="9288747207-24">(</span><span·class="p"·data-group-id="9288747207-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:·90917bf783542ad5c58acbe862c50f65648f605102d4618e20835a74200fdbe3·...·]-25">)</span><span·class="w">427 ····</span><span·class="nf">shutdown</span><span·class="p"·data-group-id="5575475528-24">(</span><span·class="p"·data-group-id="5575475528-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:·b4b3cd2eeb086853c7e2c301d3cfcb6bb6f81e8ec398dd4e88ff201c106f26ed·...·]-25">)</span><span·class="w">
428 ····</span><span·class="nf">worker</span><span·class="p"·data-group-id="9288747207-26">(</span><span·class="p"·data-group-id="9288747207-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="5575475528-26">(</span><span·class="p"·data-group-id="5575475528-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="2515950361-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="7623148446-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="2515950361-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="2515950361-3">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·443fbdddd9ccf9bfbe907a5b8016a93e044bf3ca6573d29231a99cc06af7731c·...·]-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="7623148446-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="7623148446-3">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·75f3626008b8401c51ec7ec9d6561bc475869dd78eab09180a43c9cacac1038c·...·]-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="2515950361-4">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="2515950361-4">]</span><span·class="p"·data-group-id="2515950361-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="7623148446-4">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="7623148446-4">]</span><span·class="p"·data-group-id="7623148446-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="1320425362-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="4250936528-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="1320425362-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="1320425362-3">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·292,·SHA:·11b84b38b3c93d061a3f612815f3c9fe2c2cf944724711fffe663100aba6823e·...·]-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="4250936528-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="4250936528-3">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·292,·SHA:·d58d6c3cd97af5422db7a3489d1f60d83a84530e6119cc7dcca83b4dc4e11663·...·]-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="1320425362-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="4250936528-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="1573855406-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="2967813834-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="1573855406-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="1573855406-3">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·adaba6d70144bf48af3b7d9971c230ddd000584ba5b212f78763b346ac1cf559·...·]-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="2967813834-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="2967813834-3">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·cccd3cd85cd0b196f19a5edb8d227a7d8d6e8c6f271219aad3ff7c13a49c2f6c·...·]-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="1573855406-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="2967813834-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="6828477510-1">(</span><span·class="p"·data-group-id="6828477510-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="5285826537-1">(</span><span·class="p"·data-group-id="5285826537-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="6828477510-2">(</span><span·class="ss">ch_sup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6828477510-3">[</span><span·class="p"·data-group-id="6828477510-3">]</span><span·class="p"·data-group-id="6828477510-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="5285826537-2">(</span><span·class="ss">ch_sup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5285826537-3">[</span><span·class="p"·data-group-id="5285826537-3">]</span><span·class="p"·data-group-id="5285826537-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="3291269282-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="3291269282-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="4509774989-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="4509774989-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="3291269282-2">#{</span><span·class="p"·data-group-id="3291269282-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="4509774989-2">#{</span><span·class="p"·data-group-id="4509774989-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="3291269282-3">[</span><span·class="p"·data-group-id="3291269282-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="4509774989-3">[</span><span·class="p"·data-group-id="4509774989-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="3291269282-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="3291269282-6">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·9cf923e4d0fca2632a64b3d93cf34562dc2f89836614694f00d63ce3c49f4386·...·]-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="4509774989-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="4509774989-6">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·98510ad8d363dff6da40259435ff8d30378b7c3bdbdf57c7ff5b2c3a3970cf66·...·]-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="3291269282-4">}</span><span·class="p"·data-group-id="3291269282-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="4509774989-4">}</span><span·class="p"·data-group-id="4509774989-3">]</span><span·class="p">,</span><span·class="w">
502 ····</span><span·class="p"·data-group-id="3291269282-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3291269282-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:·eaec6978a6e4bb229a761c74778f21b745d79d0fe3bad7e3eeef164fa3f2a082·...·]-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="4509774989-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4509774989-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:·e6fe0a2de7ba14325665ae3f1c014de4a447926ae7fbcf380b571f3a92f167ad·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>218 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>271 <p>Copyright·©·1996-2024·<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="3877252695-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="3877252695-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="7907141313-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="7907141313-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
154 ····</span><span·class="p"·data-group-id="3877252695-2">[</span><span·class="p"·data-group-id="3877252695-2">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">154 ····</span><span·class="p"·data-group-id="7907141313-2">[</span><span·class="p"·data-group-id="7907141313-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="3877252695-3">[</span><span·class="p">_</span><span·class="p">|</span><span·class="p">_</span><span·class="p"·data-group-id="3877252695-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">156 ····</span><span·class="p"·data-group-id="7907141313-3">[</span><span·class="p">_</span><span·class="p">|</span><span·class="p">_</span><span·class="p"·data-group-id="7907141313-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="3877252695-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="3877252695-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="7907141313-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="7907141313-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="9099858116-1">(</span><span·class="n">PersonId</span><span·class="p"·data-group-id="9099858116-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="9929219402-1">(</span><span·class="n">PersonId</span><span·class="p"·data-group-id="9929219402-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="9099858116-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="9099858116-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="9929219402-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="9929219402-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
172 ········</span><span·class="p"·data-group-id="9099858116-3">[</span><span·class="n">Person</span><span·class="p"·data-group-id="9099858116-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">172 ········</span><span·class="p"·data-group-id="9929219402-3">[</span><span·class="n">Person</span><span·class="p"·data-group-id="9929219402-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="9099858116-4">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9099858116-4">)</span><span·class="p">,</span><span·class="w">173 ············</span><span·class="nf">print_name</span><span·class="p"·data-group-id="9929219402-4">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9929219402-4">)</span><span·class="p">,</span><span·class="w">
174 ············</span><span·class="nf">print_age</span><span·class="p"·data-group-id="9099858116-5">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9099858116-5">)</span><span·class="p">,</span><span·class="w">174 ············</span><span·class="nf">print_age</span><span·class="p"·data-group-id="9929219402-5">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9929219402-5">)</span><span·class="p">,</span><span·class="w">
175 ············</span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="9099858116-6">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9099858116-6">)</span><span·class="p">;</span><span·class="w">175 ············</span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="9929219402-6">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9929219402-6">)</span><span·class="p">;</span><span·class="w">
176 ········</span><span·class="p"·data-group-id="9099858116-7">[</span><span·class="p"·data-group-id="9099858116-7">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 ········</span><span·class="p"·data-group-id="9929219402-7">[</span><span·class="p"·data-group-id="9929219402-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="9099858116-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="9099858116-9">[</span><spa[·...·truncated·by·diffoscope;·len:·121,·SHA:·2ba8bfde2ab7478b299d4a576c71f48a81f6ae48988c6a960eb92b2c5b5fae01·...·]-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="9929219402-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="9929219402-9">[</span><spa[·...·truncated·by·diffoscope;·len:·121,·SHA:·91937ae9bfe691bef4efd201c0120a7b03d95b9f43457f7d6cddcc88e1cebe7e·...·]-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="9099858116-10">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9099858116-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="9929219402-10">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9929219402-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="9099858116-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="9099858116-12">[</span><span·class=[·...·truncated·by·diffoscope;·len:·218,·SHA:·64e85fe98e3cd5c81f5d34d3663f2529a7588f722a223788558a1fca5a2513b8·...·]-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="9929219402-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="9929219402-12">[</span><span·class=[·...·truncated·by·diffoscope;·len:·218,·SHA:·5362c46d91e2a36e6d4bda85922610b80cddaeb0c3bbbdd2a2b302cf9d6c3e56·...·]-11">)</span><span·class="p">.</span><span·class="w">
  
182 </span><span·class="nf">print_age</span><span·class="p"·data-group-id="9099858116-13">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9099858116-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="9929219402-13">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9929219402-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="9099858116-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="9099858116-15">[</span><span·class=[·...·truncated·by·diffoscope;·len:·217,·SHA:·eef071218b50249eacf15b05a8b745fca859ce8c45955c0f07d6cccdcc7dfece·...·]-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="9929219402-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="9929219402-15">[</span><span·class=[·...·truncated·by·diffoscope;·len:·217,·SHA:·4abf08268aac831076896d5cc860420ac4b4aa8cee194fb3772d6cf571210ff7·...·]-14">)</span><span·class="p">.</span><span·class="w">
  
184 </span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="9099858116-16">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9099858116-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="9929219402-16">(</span><span·class="n">Person</span><span·class="p"·data-group-id="9929219402-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="9099858116-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="9099858116-18">[</span><span·class=[·...·truncated·by·diffoscope;·len:·224,·SHA:·3339a0ed10dcf353d489cee48a9f3de051553fcdd2a124c4802fe4ed446ff4cb·...·]-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="9929219402-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="9929219402-18">[</span><span·class=[·...·truncated·by·diffoscope;·len:·224,·SHA:·cc8c135b7acbb85c000f2a6e9d935569bc695987b637fd4a193325b837ffee6a·...·]-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="5948402876-1">(</span><span·class="n">PersonId</span><span·class="p"·data-group-id="5948402876-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="9156645237-1">(</span><span·class="n">PersonId</span><span·class="p"·data-group-id="9156645237-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="5948402876-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="5948402876-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="9156645237-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="9156645237-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
189 ········</span><span·class="p"·data-group-id="5948402876-3">[</span><span·class="n">Person</span><span·class="p"·data-group-id="5948402876-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">189 ········</span><span·class="p"·data-group-id="9156645237-3">[</span><span·class="n">Person</span><span·class="p"·data-group-id="9156645237-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="5948402876-4">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="5948402876-4">)</span><span·class="p">,</span><span·class="w">190 ············</span><span·class="nf">print_name</span><span·class="p"·data-group-id="9156645237-4">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="9156645237-4">)</span><span·class="p">,</span><span·class="w">
191 ············</span><span·class="nf">print_age</span><span·class="p"·data-group-id="5948402876-5">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="5948402876-5">)</span><span·class="p">,</span><span·class="w">191 ············</span><span·class="nf">print_age</span><span·class="p"·data-group-id="9156645237-5">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="9156645237-5">)</span><span·class="p">,</span><span·class="w">
192 ············</span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="5948402876-6">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="5948402876-6">)</span><span·class="p">;</span><span·class="w">192 ············</span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="9156645237-6">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="9156645237-6">)</span><span·class="p">;</span><span·class="w">
193 ········</span><span·class="p"·data-group-id="5948402876-7">[</span><span·class="p"·data-group-id="5948402876-7">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 ········</span><span·class="p"·data-group-id="9156645237-7">[</span><span·class="p"·data-group-id="9156645237-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="5948402876-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="5948402876-9">[</span><sp[·...·truncated·by·diffoscope;·len:·122,·SHA:·481449a070cb5a36aeb3f60b7a0d4cf5e75fd1418d65301d90d69f2cbfb2ac30·...·]-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="9156645237-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="9156645237-9">[</span><sp[·...·truncated·by·diffoscope;·len:·122,·SHA:·96827fbf6f94416d79f5a56eb7d8a98336e70cf25213520f7447d064d57850a8·...·]-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="5948402876-10">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="5948402876-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="9156645237-10">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="9156645237-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
198 ····</span><span·class="p"·data-group-id="5948402876-11">[</span><span·class="n">Person</span><span·class="p"·data-group-id="5948402876-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:·b16f1dabd15e92ec71f298064440412b99a1431dcaa6ac4edd7fb20dcf1cf85d·...·]-12">)</span><span·class="p">,</span><span·class="w">198 ····</span><span·class="p"·data-group-id="9156645237-11">[</span><span·class="n">Person</span><span·class="p"·data-group-id="9156645237-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:·06f1ebf037a99fd3eb2cf6d6310407ea767b325250d728f4807b1b5975090725·...·]-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="5948402876-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="5948402876-14">[</span><span·class[·...·truncated·by·diffoscope;·len:·219,·SHA:·fea72aa47639ba1a9d87df6ca1baac02dfe3cd519154ef542041c64a24b13eb2·...·]-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="9156645237-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="9156645237-14">[</span><span·class[·...·truncated·by·diffoscope;·len:·219,·SHA:·8a2a874da9f3b85f50f027101df4433aea06dcf4de40536c047d8814bcbc8e50·...·]-13">)</span><span·class="p">.</span><span·class="w">
  
200 </span><span·class="nf">print_age</span><span·class="p"·data-group-id="5948402876-15">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="5948402876-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="9156645237-15">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="9156645237-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
201 ····</span><span·class="p"·data-group-id="5948402876-16">[</span><span·class="n">Person</span><span·class="p"·data-group-id="5948402876-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:·9ce2079df0ddfa0e854120fa67acd710c5ee6e7554bd8fd802ae0ac7c273f41f·...·]-17">)</span><span·class="p">,</span><span·class="w">201 ····</span><span·class="p"·data-group-id="9156645237-16">[</span><span·class="n">Person</span><span·class="p"·data-group-id="9156645237-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:·3f6825bd7d1ba816af93f13207655630137191c886f5b61e87784b08a1a88d37·...·]-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="5948402876-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="5948402876-19">[</span><span·class[·...·truncated·by·diffoscope;·len:·218,·SHA:·3dfe79e34fd49fbddf35e2b09d3fd989d024ff87aa4fc8f55f2592672e53e0c4·...·]-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="9156645237-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="9156645237-19">[</span><span·class[·...·truncated·by·diffoscope;·len:·218,·SHA:·c24222dc1f589e0bebb1656f23cf02707da691c11e31e78c2c9aa7909c44b7e2·...·]-18">)</span><span·class="p">.</span><span·class="w">
  
203 </span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="5948402876-20">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="5948402876-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="9156645237-20">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="9156645237-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
204 ····</span><span·class="p"·data-group-id="5948402876-21">[</span><span·class="n">Person</span><span·class="p"·data-group-id="5948402876-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:·98fce47b518e2f5b295dc10798042ab7fa9003deb11816719505a65d89495e0a·...·]-22">)</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="p"·data-group-id="9156645237-21">[</span><span·class="n">Person</span><span·class="p"·data-group-id="9156645237-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:·a56f7f20bf93e8243dc8673b5bc22c3da37f9c8e4315d4958d72b57e6b630007·...·]-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="5948402876-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="5948402876-24">[</span><span·class[·...·truncated·by·diffoscope;·len:·225,·SHA:·8df3aa294d954225f67e6ee605402dc4a1d132157daefe769d3bec1f3a9a910e·...·]-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="9156645237-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="9156645237-24">[</span><span·class[·...·truncated·by·diffoscope;·len:·225,·SHA:·55fae1cf0c78096fe886b3e5d463cf345c693801bcbef7ee2be9b5d58a036c8a·...·]-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="1377584579-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1377584579-2">[</span><span·class="p"·data-group-id="1377584579-3">{</span><span·class="o">#</span><span·class="ss">person</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·282782858741331289960486cf1ff4cbb277e51317179d97dc1f905e730db576·...·]-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="5393761416-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5393761416-2">[</span><span·class="p"·data-group-id="5393761416-3">{</span><span·class="o">#</span><span·class="ss">person</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·80d5b2cb1ecff6308a412cf61dc205c7de6c6066327670f0c963bcc2e1d9d1c3·...·]-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="1377584579-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="5393761416-4">}</span><span·class="p">,</span><span·class="w">
237 ················</span><span·class="p"·data-group-id="1377584579-5">[</span><span·class="p"·data-group-id="1377584579-5">]</span><span·class="p">,</span><span·class="w">237 ················</span><span·class="p"·data-group-id="5393761416-5">[</span><span·class="p"·data-group-id="5393761416-5">]</span><span·class="p">,</span><span·class="w">
238 ················</span><span·class="p"·data-group-id="1377584579-6">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="1377584579-6">]</span><span·class="p"·data-group-id="1377584579-3">}</span><span·class="p"·data-group-id="1377584579-2">]</span><span·class="p"·data-group-id="1377584579-1">)</span><span·class="p">,</span></code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">TabList</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">tab2list</span><span·class="p"·data-group-id="0880475455-1">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="0880475455-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="0880475455-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0880475455-3">(</span><span·class="n">X</span><span·class=[·...·truncated·by·diffoscope;·len:·1129,·SHA:·f34d50da23c461b7f41ce3e94415400ee40e371a447b2afec8ca3304c082120d·...·]</span><span·class="p">,</span><span·class="w">238 ················</span><span·class="p"·data-group-id="5393761416-6">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="5393761416-6">]</span><span·class="p"·data-group-id="5393761416-3">}</span><span·class="p"·data-group-id="5393761[·...·truncated·by·diffoscope;·len:·493,·SHA:·00328b50fca5200709df80d604ac4587a342bdf6f6ceb01a248a0d36d0616808·...·]</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="2721480779-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2721480779-3">(</span><span·class="n">X</span><span·class="p"·data-group-id="2721480779-3">)</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="ss">person</span><span·class="p">.</span><span·class="ss">age</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabList</span><span·class="p"·data-group-id="2721480779-2">)</span><span·class="p">,</span></code></pre><p>If·you·are·only·interested·in·the·age·of·all·persons·named·&quot;Bryan&quot;,·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="7538599202-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7538599202-2">[</span><span·class="p"·data-group-id="7538599202-3">{</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="7538599202-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="0035211081-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="7538599202-4">}</span><span·class="p">,</span><span·class="w">
243 ················</span><span·class="p"·data-group-id="0035211081-5">[</span><span·class="p"·data-group-id="0035211081-5">]</span><span·class="p">,</span><span·class="w">243 ················</span><span·class="p"·data-group-id="7538599202-5">[</span><span·class="p"·data-group-id="7538599202-5">]</span><span·class="p">,</span><span·class="w">
244 ················</span><span·class="p"·data-group-id="0035211081-6">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0035211081-6">]</span><span·class="p"·data-group-id="0035211081-3">}</span><span·class="p"·data-group-id="0035211081-2">]</span><span·class="p"·data-group-id="00352110[·...·truncated·by·diffoscope;·len:·410,·SHA:·e60af24397e13b0a7b8756716d6f3731cc3d753959180c2a92d07d0559a1af13·...·]-1">)</span><span·class="p">,</span><span·class="w">244 ················</span><span·class="p"·data-group-id="7538599202-6">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="7538599202-6">]</span><span·class="p"·data-group-id="7538599202-3">}</span><span·class="p"·data-group-id="7538599202-2">]</span><span·class="p"·data-group-id="75385992[·...·truncated·by·diffoscope;·len:·410,·SHA:·5433670c3b6d72e888db13f2d4c73af503c3f6062ae76fd7aa410daeb8552fad·...·]-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="4948666804-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4948666804-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="4948666804-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="2874162521-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2874162521-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="2874162521-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="4948666804-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="4948666804-4">]</span><span·class="p">;</span><span·class="w">247 ····································</span><span·class="p"·data-group-id="2874162521-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="2874162521-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="4948666804-5">[</span><span·class="p"·data-group-id="4948666804-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabList</span><span·class="p"·data-group-id="4948666804-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="2874162521-5">[</span><span·class="p"·data-group-id="2874162521-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabList</span><span·class="p"·data-group-id="2874162521-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="5147577876-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5147577876-2">[</span><span·class="p"·data-group-id="5147577876-3">{</span><span·class="o">#</span><span·class="ss">person</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·f4998c54023ca4fb12abc21aedc4f751c3f6e09a222a0ebdeac71f95bb8d33da·...·]-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="6915546769-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6915546769-2">[</span><span·class="p"·data-group-id="6915546769-3">{</span><span·class="o">#</span><span·class="ss">person</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·14ea4428727f739167d5ec0fdba6638f9163f7383f899d345c9fb7f2ce596581·...·]-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="5147577876-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5147577876-5">[</span><span·class="p"·data-group-id="5147577876-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5[·...·truncated·by·diffoscope;·len:·689,·SHA:·d3b25ebfc52664d3abb0631a4c1839bafa25021e80c33535665537d59b5cabd3·...·]-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="6915546769-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6915546769-5">[</span><span·class="p"·data-group-id="6915546769-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6[·...·truncated·by·diffoscope;·len:·689,·SHA:·f1e480887ec67daa9e5975ea1fa12faef60195f44a20da1c119787c9a8ae13b3·...·]-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="1200453651-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1200453651-3">(</span><span·class="n">X</span><span·class="p"·data-group-id="1200453651-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·411,·SHA:·281bffa4ef63af5d47a1e6e1daed07825de63e8b33f516eee2723731759cfff7·...·]-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="9602332343-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="9602332343-3">(</span><span·class="n">X</span><span·class="p"·data-group-id="9602332343-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·411,·SHA:·eee039e527f3f62262cfdee5919bb26267372a3b0db88993d7e6563f9a153ea2·...·]-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="7131120499-1">(</span><span·class="n">IndexTable</span><span·class="p">,</span><span·class="s">&quot;Bryan&quot;</span><span·class="p"·data-group-id="7131120499-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="2318691177-1">(</span><span·class="n">IndexTable</span><span·class="p">,</span><span·class="s">&quot;Bryan&quot;</span><span·class="p"·data-group-id="2318691177-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="7131120499-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="7131120499-3">(</span><span·class="o">#</span><span·class="ss">index_entry</span><span·class="p"·data-group-id="7131120499-4">{</span><span·class="ss">idno</span><span·class="w[·...·truncated·by·diffoscope;·len:·177,·SHA:·e996856849b12b1caf7f957a4e40c5df7994f6745f5e147090af9694a10d53b8·...·]-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="2318691177-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2318691177-3">(</span><span·class="o">#</span><span·class="ss">index_entry</span><span·class="p"·data-group-id="2318691177-4">{</span><span·class="ss">idno</span><span·class="w[·...·truncated·by·diffoscope;·len:·177,·SHA:·f93e0f25b73e2e33ed117b56d47a1a2ce57bb03a7958d769da33d867e40b1513·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
302 ·················</span><span·class="p"·data-group-id="7131120499-5">[</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="7131120499-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:·1e6e7ca14ab0e68b95673e882def4786e4563212b085eaab970d3802f809f011·...·]-7">)</span><span·class="p">,</span><span·class="w">302 ·················</span><span·class="p"·data-group-id="2318691177-5">[</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="2318691177-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:·21490115e571375ecf42abed9b17dcc965ca2adddd199d079bd9c158d17cd3dd·...·]-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="7131120499-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="2318691177-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
Max diff block lines reached; 17069/72330 bytes (23.60%) 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>189 <p>Copyright·©·1996-2024·<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="6345168531-1">(</span><span·class="p"·data-group-id="6345168531-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="63[·...·truncated·by·diffoscope;·len:·375,·SHA:·cde0d6c88bee193b1b9cf070d2bce5187932aa084f37181590c6aff86b9cad34·...·]-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="9482090424-1">(</span><span·class="p"·data-group-id="9482090424-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="94[·...·truncated·by·diffoscope;·len:·375,·SHA:·b65944413a12e742900c808d03c5228d22f2f59f8e0fe3a4712a644efd05285f·...·]-2">)</span><span·class="w">
245 </span><span·class="nf">nonempty_improper_list</span><span·class="p"·data-group-id="6345168531-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="6345168531-5">)</span><span·class="w">245 </span><span·class="nf">nonempty_improper_list</span><span·class="p"·data-group-id="9482090424-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="9482090424-5">)</span><span·class="w">
246 </span><span·class="nf">nonempty_maybe_improper_list</span><span·class="p"·data-group-id="6345168531-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="6345168531-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="9482090424-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="9482090424-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="9471056279-1">{</span><span·class="p"·data-group-id="9471056279-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="9464071884-1">{</span><span·class="p"·data-group-id="9464071884-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="9471056279-2">{</span><span·class="n">Fields</span><span·class="p"·data-group-id="9471056279-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="9464071884-2">{</span><span·class="n">Fields</span><span·class="p"·data-group-id="9464071884-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="5675344595-1">(</span><span·class="p"·data-group-id="5675344595-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="5675344595-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="5675344595-3">(</span><span·class="p"·data-group-id="5675344595-3">)</span><span·class="p"·data-group-id="5675344595-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="6684462478-1">(</span><span·class="p"·data-group-id="66[·...·truncated·by·diffoscope;·len:·335,·SHA:·a2b984ec8f46b8b2cbad5884a18ef1cf2fd9ac78d2a68300463ed5344a310f68·...·]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="3855379409-1[·...·truncated·by·diffoscope;·len:·638,·SHA:·9a7e07118ba1504f328027395c828c8c1eb8483f01f00c70e68344bb949adcf2·...·]
 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="1504148156-1">(</span><span·class="p"·data-group-id="1504148156-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1504148156-2">#{</span><span·class="p"·data-group-id="1504148156-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="0791095259-1">(</span><span·class="p"·data-group-id="0791095259-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="8186338212-1">(</span><span·class="p"·data-group-id="8186338212-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="0791095259-2">(</span><span·class="p"·data-group-id="0791095259-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="8186338212-2">(</span><span·class="p"·data-group-id="8186338212-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="4286071455-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="4286071455-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·cla[·...·truncated·by·diffoscope;·len:·314,·SHA:·df013873045cd9ad5a5bcacbf5be4f11d8d1f7305377f84e5de074d552f0c231·...·]5-2">]</span><span·class="p">.</span></code></pre><p>A·module·can·export·some·types·to·declare·that·other·modules·are·allowed·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="2695026765-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="2695026765-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·cla[·...·truncated·by·diffoscope;·len:·314,·SHA:·6e87645c5c96602d4efb8652934109b2e18794d86298192aa181a03525be053f·...·]5-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="0715372173-1">(</span><span·class="p"·data-group-id="0715372173-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[·...·truncated·by·diffoscope;·len:·965,·SHA:·9fba020256aee6055d04d09586bb1d9f9cbb3ebd7a3ccfa482fa6708f40bdd50·...·]-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·to281 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="9893022627-1">(</span><span·class="p"·data-group-id="9893022627-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[·...·truncated·by·diffoscope;·len:·965,·SHA:·80eb1527332f658a2e7d56dd4948112ce0711bfc7672975577268ee569c83cfb·...·]-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="1213011424-1">(</span><span·class="p"·data-group-id="1213011424-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="8500740376-1">(</span><span·class="p"·data-group-id="8500740376-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="1213011424-2">(</span><span·class="nf">atom</span><span·class="p"·data-group-id="1213011424-3">(</span><span·class="p"·data-group-id="1213011424-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:·c71869af3e2bf7d203fe6e7f6934f1fc8b029bdcd0130554b845a214e8b0ee02·...·]-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="8500740376-2">(</span><span·class="nf">atom</span><span·class="p"·data-group-id="8500740376-3">(</span><span·class="p"·data-group-id="8500740376-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:·fec4a98850d5acea8f2089c008eab8aef9ec1cbae8b531e94379a5d9cffac21a·...·]-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="6780756537-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6780756537-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:·665902ef9e78f9020a86f28f170c4415987cdc9e85062ee224e83b674f05990f·...·]-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="4054071509-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4054071509-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:·e51b11e9c38d51d054dc5ca3e65a20823d8d9bc024e1116b6ea16373f9e2af08·...·]-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="4397886585-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4397886585-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:·ef50d1f161be54aeab26b11bcd9957e910a43c8565d9670add85b79d12fbefe4·...·]-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="6903635702-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6903635702-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:·3662a30511aec27943c428c47173f27e884c379c1ee54d8d8c30ee2e1e7746d7·...·]-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="1378595502-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1378595502-2">{</span><span·class="ss">field1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·698,·SHA:·c71919faa3fd594676c80c67f2a44820ea3b9dd115c6ba94de0fe83bbaa3596e·...·]-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="2487559418-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2487559418-2">{</span><span·class="ss">field1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·698,·SHA:·093109402f5afe4f9cb3e40f4de8b964418928ecceec9de245b57f1bbc249b53·...·]-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="9404248910-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9404248910-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:·a7f2550b39f87191e74af4f3a8b1bcb533463cb80cec1e48584a9297afb9daa1·...·]-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="3777351442-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3777351442-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:·06182ad0afeb0070277e7827236b9e6388308fb9ff811b3e8452872097cf9b4d·...·]-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="9404248910-4">(</span><span·class="p"·data-group-id="9404248910-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="3777351442-4">(</span><span·class="p"·data-group-id="3777351442-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="9404248910-2">}</span><span·class="p"·data-group-id="9404248910-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="3777351442-2">}</span><span·class="p"·data-group-id="3777351442-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="9404248910-5">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9404248910-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:·66e0aba579ddad413ef88049a6ca92d9c6592dbff53473e046ed6c045059538b·...·]-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="3777351442-5">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3777351442-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:·57c52440eab518e32d7a6c4f36429908e9094ee67b2c4bf27036efdc574d712c·...·]-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="9404248910-8">(</span><span·class="p"·data-group-id="9404248910-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="3777351442-8">(</span><span·class="p"·data-group-id="3777351442-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="9404248910-6">}</span><span·class="p"·data-group-id="9404248910-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="3777351442-6">}</span><span·class="p"·data-group-id="3777351442-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="9086613660-1">(</span><span·class="p"·data-group-id="9086613660-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="9086613660-2">(</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·2b71f702fff472ffb986b20fe4bfdc091516ee83661459e06ea9dc0558705986·...·]-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="7359509176-1">(</span><span·class="p"·data-group-id="7359509176-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="7359509176-2">(</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·eb0dc1832aa9d270e0140b557a0964a14c451c732bf0e420657c7413063db94b·...·]-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="9086613660-3">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9086613660-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:·6e6ce9221406ea479196a178a2f3175e05cbeab6b42c60a643c1154441f17c21·...·]-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="7359509176-3">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7359509176-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:·9b3178e3d0ed494c1737ed28b2c5ae9ed4d83b2160c22eee20926d3967eae0ba·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
313 </span><span·class="nf">lookup</span><span·class="p"·data-group-id="9086613660-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="9086613660-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="7359509176-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="7359509176-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="9086613660-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="9086613660-9">{</span><span·class="ss">name</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·347,·SHA:·733b57f6760ff9fa3ed6cc7fd6571360761b3cb9955cf200c93c1978e9d43d8e·...·]-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="7359509176-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="7359509176-9">{</span><span·class="ss">name</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·347,·SHA:·d1382d3d016358bb5a1ddb47b31da2baa201398ebf0e78a5ecb128150ce78168·...·]-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="3621982626-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3621982626-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:·f40e9324c415412659d32bc881f26cb3b824e76886e24c6810c37ff7ee11e471·...·]-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="2970840505-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2970840505-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:·55812f460a554ae050b74deb2fa378cc775ad4327c3ae4be08a918888438a83c·...·]-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="3621982626-5">(</span><span·class="p"·data-group-id="3621982626-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:·f07110d37b8d59dcbc533e184054e8367c57b300b18cd8df666490960625e2ca·...·]-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="2970840505-5">(</span><span·class="p"·data-group-id="2970840505-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:·cf91d10aa4b613c468ee40323fb6f2f1d0cf0d9430eb1cfd99569e3cfa9c0b12·...·]-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="0812528835-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="0812528835-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="8719518919-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="8719518919-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="0812528835-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="0812528835-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="8719518919-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="8719518919-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="1832545331-1">(</span><span·class="nf">pos_integer</span><span·class="p"·data-group-id="1832545331-2">(</span><span·class="p"·data-group-id="1832545331-2">)</span><span·class="p"·data-group-id="1832545331-1">)</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="1832545331-3">(</span><span·class="p"·data-group-id="1832545331-3">)</span><span·class="p">;</span><span·class="w"> 
336 ·········</span><span·class="p"·data-group-id="1832545331-4">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="1832545331-5">(</span><span·class="p"·data-group-id="1832545331-5">)</span><span·class="p"·data-group-id="1832545331-4">)</sp[·...·truncated·by·diffoscope;·len:·335,·SHA:·921a96d48b17dcb7231bca52be0822c3df41fb4adaea03b36420649970d5d8d1·...·]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="1205036796-1">(</span><span·class="[·...·truncated·by·diffoscope;·len:·438,·SHA:·d7b24b8e6c9facfd84cbe144f078908d6cc38a27aaa906be3b5c7ceaf62f71a4·...·]
 336 ·········</span><span·class="p"·data-group-id="1205036796-4">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="1205036796-5">(</span><span·class="p"·data-group-id="1205036796-5">)</span><span·class="p"·data-group-id="1205036796-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1205036796-6">(</span><span·class="p"·data-group-id="1205036796-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="2319792865-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="2319792865-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:·261,·SHA:·a25826e361eb14d9a74efd2f850a263a46c6093163a7876815b8e3e780b252df·...·]-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="0804178949-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="0804178949-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:·261,·SHA:·28e96223e67937c6437f31a2997296b2e27bb6c09ef1a4e61e229a4a4888f52e·...·]-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="9284258755-1">(</span><span·class="nf">tuple</span><span·class="p"·data-group-id="9284258755-2">(</span><span·class="p"·data-group-id="9284258755-2">)</span><span·class="p"·data-group-id="9284258755-1">)</span><span·class="w">·</span><span·class="p">-&gt;<[·...·truncated·by·diffoscope;·len:·153,·SHA:·9a454deeaab0814f1211701d602b1a261a8067471ee8b5bbc088d6827b7c74b6·...·]-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="5454494091-1">(</span><span·class="nf">tuple</span><span·class="p"·data-group-id="5454494091-2">(</span><span·class="p"·data-group-id="5454494091-2">)</span><span·class="p"·data-group-id="5454494091-1">)</span><span·class="w">·</span><span·class="p">-&gt;<[·...·truncated·by·diffoscope;·len:·153,·SHA:·2b1793c2a913bef6317f9a49c7849ceb9ca12a208f518fac3929af3409a6887c·...·]-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="4888987234-1">(</span><span·class="p"·data-group-id="4888987234-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="4888987234-3">(</span><span·class="p"·data-group-id="4888987234-3">)</span><span·class="p"·data-group-id="4888987234-2">}</span><span·class="p"·data-group-id="4888987234-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·class="w">·</span><span·class="n">X</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="4888987234-4">(</span><span·class="p"·data-group-id="4888987234-4">)</span><span·class="p">;</span><span·class="w"> 
350 ·········</span><span·class="p"·data-group-id="4888987234-5">(</span><span·class="p"·data-group-id="4888987234-6">[</span><span·class="n">Y</span><span·class="p"·data-group-id="4888987234-6">]</span><span·class="p"·data-group-id="4888987234-5">)</span><spa[·...·truncated·by·diffoscope;·len:·543,·SHA:·1ec93be035f4eaddc5352e47ea3e2d13c735adbeb4c94112d47c0003177089cd·...·]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="9501116884-1">(</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·807,·SHA:·d616c51c880541ea56eebcc64a5caa895393e0ae607dd7f3e874745860e099cf·...·]
 350 ·········</span><span·class="p"·data-group-id="9501116884-5">(</span><span·class="p"·data-group-id="9501116884-6">[</span><span·class="n">Y</span><span·class="p"·data-group-id="9501116884-6">]</span><span·class="p"·data-group-id="9501116884-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Y</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="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">number</span><span·class="p"·data-group-id="9501116884-7">(</span><span·class="p"·data-group-id="9501116884-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="2308448743-1">(</span><span·class="n">Err</span><span·class="p"·data-group-id="2308448743-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="2308448743-2">(</sp[·...·truncated·by·diffoscope;·len:·253,·SHA:·45db285d9e1d214eeb06955a25c74b10b2b7e9370fb8e873c184f7b9f68ad80b·...·]-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="5303667866-1">(</span><span·class="n">Err</span><span·class="p"·data-group-id="5303667866-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="5303667866-2">(</sp[·...·truncated·by·diffoscope;·len:·253,·SHA:·4a455f9c103c2508f303a5d3ad086266b2fe4123471dd7999e1dbe9356c317dd·...·]-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">
  
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>220 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>334 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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="5348972836-1">(</span><span·class="n">Opts</span><span·class="p"·data-group-id="5348972836-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="5348972836-2">(</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·dba5d1b12aeaa8ab62ef42e99a59ac152f49243a7c99d72a7d6bec1225e53321·...·]-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="6414220494-1">(</span><span·class="n">Opts</span><span·class="p"·data-group-id="6414220494-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="6414220494-2">(</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·7619f5e68164f590f68b87cff161a8cd11fb84d38e94a0d3fa8d60712fcba654·...·]-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="5348972836-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="5348972836-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·196,·SHA:·3cfa280c3a2becd821f1ba04c7a44804c4ad1ddac5f16d074da329be360c0777·...·]-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="6414220494-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="6414220494-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·196,·SHA:·716899094a3fba1b4a951ec14e9cc8a97873ad592930f0a90f462ee46996cd55·...·]-4">}</span><span·class="p">.</span><span·class="w">
175 </span><span·class="nf">f</span><span·class="p"·data-group-id="5348972836-5">(</span><span·class="p">_</span><span·class="p"·data-group-id="5348972836-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="6414220494-5">(</span><span·class="p">_</span><span·class="p"·data-group-id="6414220494-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="3280989865-1">(</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">unbound</span><span·class="p"·data-group-id="3280989865-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="2459632068-1">(</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">unbound</span><span·class="p"·data-group-id="2459632068-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="1345991096-1">(</span><span·class="ss">interpret</span><span·class="p"·data-group-id="1345991096-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="7126455862-1">(</span><span·class="ss">interpret</span><span·class="p"·data-group-id="7126455862-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="2804952149-1">(</span><span·class="p"·data-group-id="2804952149-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="9911779407-1">(</span><span·class="p"·data-group-id="9911779407-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="2804952149-2">(</span><span·class="p"·data-group-id="2804952149-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="9911779407-2">(</span><span·class="p"·data-group-id="9911779407-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>363 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2024·<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
633 B
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/.build
    
Offset 42, 15 lines modifiedOffset 42, 15 lines modified
42 dist/lato-latin-300-normal-YUMVEFOL.woff242 dist/lato-latin-300-normal-YUMVEFOL.woff2
43 dist/lato-latin-400-normal-W7754I4D.woff243 dist/lato-latin-400-normal-W7754I4D.woff2
44 dist/lato-latin-700-normal-2XVSBPG4.woff244 dist/lato-latin-700-normal-2XVSBPG4.woff2
45 dist/lato-latin-ext-300-normal-VPGGJKJL.woff245 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
46 dist/lato-latin-ext-400-normal-N27NCBWW.woff246 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
47 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff247 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
48 dist/remixicon-NKANDIL5.woff248 dist/remixicon-NKANDIL5.woff2
49 dist/search_data-D123FCA0.js49 dist/search_data-BB699C42.js
50 dist/sidebar_items-340A298D.js50 dist/sidebar_items-340A298D.js
51 driver.html51 driver.html
52 driver_entry.html52 driver_entry.html
53 epmd_cmd.html53 epmd_cmd.html
54 erl_cmd.html54 erl_cmd.html
55 erl_dist_protocol.html55 erl_dist_protocol.html
56 erl_driver.html56 erl_driver.html
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>144 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>517 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>207 <p>Copyright·©·1996-2024·<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="7684145440-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="7684145440-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="6716510561-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="6716510561-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="7684145440-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7684145440-3">{</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Address</span>[·...·truncated·by·diffoscope;·len:·456,·SHA:·ebd6c0680994df2abc26b0d9db24d33cc171ed471389f87a8c32f27d72349199·...·]-4">}</span><span·class="w">245 </span><span·class="err"> </span><span·class="err"> </span><span·class="p"·data-group-id="6716510561-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6716510561-3">{</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Address</span>[·...·truncated·by·diffoscope;·len:·456,·SHA:·5f3caf065443ce90e820f07a5303526e0e99bb594901384db79a45020bd5aeb9·...·]-4">}</span><span·class="w">
246 </span><span·class="nf">listen</span><span·class="p"·data-group-id="7684145440-5">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">Host</span><span·class="p"·data-group-id="7684145440-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="6716510561-5">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">Host</span><span·class="p"·data-group-id="6716510561-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="7684145440-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7684145440-7">{</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Address</span>[·...·truncated·by·diffoscope;·len:·456,·SHA:·c78043852b140964d02fa15bf2f3a7bdc9f3f6d6dbf04f9f16eebb1d494d7319·...·]-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="6716510561-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6716510561-7">{</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Address</span>[·...·truncated·by·diffoscope;·len:·456,·SHA:·535d90a4539b125a6d6bdef1f30765313e2330256f4301c47b244849c63b9d7a·...·]-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="4733050843-1">(</span><span·class="p"·data-group-id="4733050843-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="1889380446-1">(</span><span·class="p"·data-group-id="1889380446-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="2604016846-1">(</span><span·class="p"·data-group-id="2604016846-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="9092428684-1">(</span><span·class="p"·data-group-id="9092428684-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
261 ····</span><span·class="p"·data-group-id="2604016846-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="2604016846-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·173,·SHA:·badcc50afe63184685c2b862428e08657d4802606d5e30da717d173a7b91e267·...·]-3">)</span><span·class="p">,</span><span·class="w">261 ····</span><span·class="p"·data-group-id="9092428684-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="9092428684-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·173,·SHA:·c88a2042e99c4ca84f4cfcd301607b4f203468fcb1cbea17d1ef7ca1ca20d258·...·]-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="2604016846-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:·f7af760d60e033056e76bbbd76613e297cfca5e76ced51e1bc44e280cb2f4cb3·...·]-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="9092428684-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:·db96523ab2cd8f007e912bb6f0aaddc35a2c0c6540f0fb54912b69e11d180932·...·]-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="0064145299-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="w"[·...·truncated·by·diffoscope;·len:·155,·SHA:·ee697dab47efc08b5286b9314276f314aca971c621a3647e254b27c04d603ddd·...·]-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="0022288277-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="w"[·...·truncated·by·diffoscope;·len:·155,·SHA:·4f112229a0fc2962e503c1c7aa40c5e7466bdf3bbfab0204bf94847ad23dda9a·...·]-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="1620067389-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:·d820eca29e4364b5c45fe004010f58a0792cf388502600859885fafa4c3a2618·...·]-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="2434414708-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:·06971632bfc92bb49af083e9f11bf682d78fb7710248ebf350deea0661d12c83·...·]-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="9646466029-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:·f67ff61f361e2eb7f64e85e716a9bc2eded563466d32eb295786b4bf27e22288·...·]-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="0552412017-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:·8cf67f40db379c6f38c4a6c998ebaefd8d79903e4c694e8bba78daf4b38289a3·...·]-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="5385075807-1">(</span><span·class="n">Listen</span><span·class="p"·data-group-id="5385075807-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="2383640530-1">(</span><span·class="n">Listen</span><span·class="p"·data-group-id="2383640530-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="5385075807-2">(</span><span·class="p"·data-group-id="5385075807-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="2383640530-2">(</span><span·class="p"·data-group-id="2383640530-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="4194200048-1">(</span><span·class="n">NodeName</span><span·class="p"·data-group-id="4194200048-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="3726823742-1">(</span><span·class="n">NodeName</span><span·class="p"·data-group-id="3726823742-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="4194200048-2">(</span><span·class="p"·data-group-id="4194200048-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="3726823742-2">(</span><span·class="p"·data-group-id="3726823742-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="6480859727-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="6480859727-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="3603352636-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="3603352636-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="6480859727-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="6480859727-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="3603352636-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="3603352636-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="1890891557-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="1890891557-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="1890891557-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="1890[·...·truncated·by·diffoscope;·len:·405,·SHA:·2cfcc3132851c87d21470357d36f19d34c1e50426dca80f58e2d3a1ccbb5803f·...·]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="4088078947-1">(</span><span·class="n">Listen</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·164,·SHA:·a4200510106f9f9577c52842c8f4ca95993b1351e1c65ad02f3fda394b4231a8·...·]
 335 </span><span·class="err"> </span><span·class="err"> </span><span·class="p"·data-group-id="4088078947-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="4088078947-2">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="4088078947-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="4088078947-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="0621597094-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="0621597094-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·298,·SHA:·9442d95dcd7ad949582280ecd6e628d4474205010a287ec5c99b6a8dc289a5db·...·]-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller·and·<code·class="inline">Data</code>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="0278245145-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="0278245145-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·298,·SHA:·bca4ae3992d86d9ab483caae33ef4187198955793eb6637aa876021fafa4d5c0·...·]-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"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="9955983927-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="9955983927-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·483,·SHA:·099ebdcaeb51590ec49189c7a4c321d6c37c3f499f80d4a15a4cae5935d418f3·...·]27-3">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller.·If358 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="3962019727-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="3962019727-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·483,·SHA:·d833d33ed67a89d209ce6eb8c84b1f5ceb1948639d35442c34e5d99978c0c697·...·]27-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="0061306800-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="0061306800-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:·9946e638b1c7cbf7fdb12537bbf0d4eb1a8985c003269d44c154ea1c757f6086·...·]-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="3967612623-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="3967612623-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:·392a5e658be8595628d1f8aa12e8540871bac4d385353cae2646192af3511019·...·]-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="9020653244-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="9020653244-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:·261882dbf053287c8877a78caeef89a9335cdd667879f1c55cd67742d3cb4807·...·]-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="0456946461-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="0456946461-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:·0e4f67069a261c6fef26c442ea33daab55443f70acb656c30e86bc59f54a4b1d·...·]-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="5184338026-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="5184338026-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="8736771986-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="8736771986-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="9002144435-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="9002144435-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="9029802137-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="9029802137-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="6114996330-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="6114996330-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="6114996330-2">[·...·truncated·by·diffoscope;·len:·49,·SHA:·8595cf194c26612ebeaac345e6f270a26df1e09c0cdc9bc2d3bcb5acccdd873b·...·]-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="8714887195-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="8714887195-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="8714887195-2">[·...·truncated·by·diffoscope;·len:·49,·SHA:·4e9c4efb761905114c8d3d908770d95bc8d512452697e843afbc2f5505254570·...·]-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="0599337386-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="0599337386-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0599337386-2">{</span><span·class="ss">ok<[·...·truncated·by·diffoscope;·len:·280,·SHA:·43e9fb7dfef0c399bdf0311f960dfbaa5a7fab0a8968c4a40b2c7b510b14e6b2·...·]-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="2187218541-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="2187218541-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2187218541-2">{</span><span·class="ss">ok<[·...·truncated·by·diffoscope;·len:·280,·SHA:·a565cff88e9ab480d7fe57d3007a1f8846663d272c18a36251a6dfd3978843c0·...·]-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="5216943092-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="5216943092-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="5216943092-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="5216943092-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller·and·<code·class="inline">Opts</code> 
384 is·a·list·of·options·to·set·on·the·connection.</p><p>This·function·is·optional.·Used·when·connection·is·up.</p></li><li><p><strong><code·class="inline"·id="hs_data_mf_getopts">mf_getopts</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·c[·...·truncated·by·diffoscope;·len:·863,·SHA:·fd4979e1b4e5ebc4e4d476684f4de7ed0f1b9f09d36d33097168155e6506cac5·...·]">}</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[·...·truncated·by·diffoscope;·len:·670,·SHA:·0e0c22eb2912b03f1fdf1606524ffe358b85d3ab15ba99cc698beb0fb2d50212·...·]">}</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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>246 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>668 <p>Copyright·©·1996-2024·<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="0999596780-1">(</span><span·class="p"·data-group-id="0999596780-1">)</span><span·class="w">·</span><span·class="p"·data-group-id="0999596780-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="4341008092-1">(</span><span·class="p"·data-group-id="4341008092-1">)</span><span·class="w">·</span><span·class="p"·data-group-id="4341008092-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="0999596780-2">}</span><span·class="w">218 </span><span·class="p"·data-group-id="4341008092-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>370 <p>Copyright·©·1996-2024·<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="8083650859-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:·b67e9e7d136925772b7f6f8f71b0552287032ba462de40993623e75831bc1d84·...·]-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="0312083221-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:·5cf3d996a2a44730e1e313cf8de8e20f04ed6cf43cab1b076079dcbd6a42b66d·...·]-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="8083650859-3">(</span><span·class="nf">getArgRef</span><span·class="p"·data-group-id="8083650859-4">(</span><span·class="n">Src</span><span·class="p"·data-group-id="8083650859-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">imm<[·...·truncated·by·diffoscope;·len:·327,·SHA:·27b4aea79a26c6a3be1a41c458126b13b1bcd88481ee9295873b5eae431d7037·...·]-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="0312083221-3">(</span><span·class="nf">getArgRef</span><span·class="p"·data-group-id="0312083221-4">(</span><span·class="n">Src</span><span·class="p"·data-group-id="0312083221-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">imm<[·...·truncated·by·diffoscope;·len:·327,·SHA:·346ed5b70297f97a7bf31168a5d335f6e4e0e8f5fd51551ac10ded91e63863d7·...·]-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="8083650859-6">(</span><span·class="ss">labels</span><span·class="p"·data-group-id="8083650859-7">[</span><span·class="n">Fail</span><span·class="p">.</span><span·class="nf">getLabel</span><span·class="p"·data-group-id="8083650859-8">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·132,·SHA:·36ddd1974511110ad60d7ff451ff87c6ee2da5fcb4256ece0e63a6d7e9286f20·...·]-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="0312083221-6">(</span><span·class="ss">labels</span><span·class="p"·data-group-id="0312083221-7">[</span><span·class="n">Fail</span><span·class="p">.</span><span·class="nf">getLabel</span><span·class="p"·data-group-id="0312083221-8">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·132,·SHA:·2ff598f52ff5361d794a9214e7ed14ddf2b77657e26eebade9b98b20b30a966a·...·]-6">)</span><span·class="p">;</span><span·class="w">
155 </span><span·class="p"·data-group-id="8083650859-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="0312083221-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="0154552200-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:·157,·SHA:·7a658a8d96a9225394408fb8a7a9dea25c868a53343d98f3c47572742d3b07f2·...·]-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="3750502768-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:·157,·SHA:·1b45ae934b5ecd247940003cffaef4c8671607b193fdb8aedd33e7c4e2fec82b·...·]-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="6055665618-1">(</span><span·class="p"·data-group-id="6055665618-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="4013091182-1">(</span><span·class="p"·data-group-id="4013091182-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="6055665618-2">(</span><span·class="n">FCALLS</span><span·class="p"·data-group-id="6055665618-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="4013091182-2">(</span><span·class="n">FCALLS</span><span·class="p"·data-group-id="4013091182-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="6055665618-3">(</span><span·class="nf">resolve_fragment</span><span·class="p"·data-group-id="6055665618-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="6055665618-5"[·...·truncated·by·diffoscope;·len:·156,·SHA:·bca277797464f52b6887fc40e474c81609375b08e2bac335555b61283317def2·...·]-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="4013091182-3">(</span><span·class="nf">resolve_fragment</span><span·class="p"·data-group-id="4013091182-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="4013091182-5"[·...·truncated·by·diffoscope;·len:·156,·SHA:·38d9e2fd59a42d69c4d803853f4aa3a9f17f570f8b133906c22b7870ac9e425d·...·]-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="6055665618-6">(</span><span·class="p"·data-group-id="6055665618-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="4013091182-6">(</span><span·class="p"·data-group-id="4013091182-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="2855549136-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="2855549136-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="4784003882-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="4784003882-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="2855549136-2">(</span><span·class="p"·data-group-id="2855549136-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="4784003882-2">(</span><span·class="p"·data-group-id="4784003882-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="2855549136-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="2855549136-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="4784003882-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="4784003882-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="2855549136-4">(</span><span·class="n">ARG2</span><span·class="p"·data-group-id="2855549136-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="4784003882-4">(</span><span·class="n">ARG2</span><span·class="p"·data-group-id="4784003882-4">)</span><span·class="p">;</span><span·class="w">
252 </span><span·class="nf">make_move_patch</span><span·class="p"·data-group-id="2855549136-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="2855549136-6">[</span><span·class="n">Fun</span><span·class="p">.</span><span·class="nf">getValue[·...·truncated·by·diffoscope;·len:·262,·SHA:·a8c23e2cc2f5f69a0199fa46df94427a5a46fa0797d821148252c3b4357ca2b6·...·]-5">)</span><span·class="p">;</span><span·class="w">252 </span><span·class="nf">make_move_patch</span><span·class="p"·data-group-id="4784003882-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="4784003882-6">[</span><span·class="n">Fun</span><span·class="p">.</span><span·class="nf">getValue[·...·truncated·by·diffoscope;·len:·262,·SHA:·960c2afee7513682cd958a7b9545b53b6147b65de59e2ce3eacee3db108325b3·...·]-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="2855549136-8">(</span><span·class="ss">new_fun</span><span·class="p"·data-group-id="2855549136-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="4784003882-8">(</span><span·class="ss">new_fun</span><span·class="p"·data-group-id="4784003882-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="2855549136-9">(</span><span·class="p"·data-group-id="2855549136-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="4784003882-9">(</span><span·class="p"·data-group-id="4784003882-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="2855549136-10">(</span><span·class="nf">getXRef</span><span·class="p"·data-group-id="2855549136-11">(</span><span·class="mi">0</span><span·class="p"·data-group-id="2855549136-11">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RET</[·...·truncated·by·diffoscope;·len:·46,·SHA:·5a1e9b4ae3d556e3fb2c6f2840e965c3ceebb91a8593f6360be563b36072d730·...·]-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="4784003882-10">(</span><span·class="nf">getXRef</span><span·class="p"·data-group-id="4784003882-11">(</span><span·class="mi">0</span><span·class="p"·data-group-id="4784003882-11">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RET</[·...·truncated·by·diffoscope;·len:·46,·SHA:·2c2d8a57b097e3b83020c26fe126e459ecee24700634e70ceefdf06dbbeca260·...·]-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="5808348625-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="5808348625-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="2101721072-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="2101721072-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="5562817896-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:·5095895ac110f1e96ac6b246f8930002d5e1cfe1bab20f2006c5938b54187f23·...·]-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="4997325965-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:·2e69c707e7878c1f2bcc07f82b1efeabf4e9dc2a5f3e4c18736354bcb8a8bf85·...·]-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="5562817896-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="5562817896-3">)</span><span·class="p">;</span><span·class="w">300 ····</span><span·class="nf">erts_unseal_module</span><span·class="p"·data-group-id="4997325965-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="4997325965-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="5562817896-4">[</span><span·class="ss">i</span><span·class="p"·data-group-id="5562817896-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="4997325965-4">[</span><span·class="ss">i</span><span·class="p"·data-group-id="4997325965-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="5562817896-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="5562817896-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="4997325965-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="4997325965-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="5562817896-6">(</span><span·class="n">ErtsCodeInfo</span><span·class="o">*</span><span·class="p"·data-group-id="5562817896-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="4997325965-6">(</span><span·class="n">ErtsCodeInfo</span><span·class="o">*</span><span·class="p"·data-group-id="4997325965-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="5562817896-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="5562817896-7">)</span><span·class="p">;</span><span·class="w">304 ····</span><span·class="nf">uninstall_breakpoint</span><span·class="p"·data-group-id="4997325965-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="4997325965-7">)</span><span·class="p">;</span><span·class="w">
305 ····</span><span·class="nf">consolidate_bp_data</span><span·class="p"·data-group-id="5562817896-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="5562817896-8">)</span><span·class="p">;</span><span·class="w">305 ····</span><span·class="nf">consolidate_bp_data</span><span·class="p"·data-group-id="4997325965-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="4997325965-8">)</span><span·class="p">;</span><span·class="w">
306 ····</span><span·class="n">ASSERT</span><span·class="p"·data-group-id="5562817896-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="5562817896-9">)</span><span·class="p">;</span><span·class="w">306 ····</span><span·class="n">ASSERT</span><span·class="p"·data-group-id="4997325965-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="4997325965-9">)</span><span·class="p">;</span><span·class="w">
  
307 ····</span><span·class="nf">erts_seal_module</span><span·class="p"·data-group-id="5562817896-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="5562817896-10">)</span><span·class="p">;</span><span·class="w">307 ····</span><span·class="nf">erts_seal_module</span><span·class="p"·data-group-id="4997325965-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="4997325965-10">)</span><span·class="p">;</span><span·class="w">
308 </span><span·class="p"·data-group-id="5562817896-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="4997325965-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>408 <p>Copyright·©·1996-2024·<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="6852614378-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="6852614378-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="6852614378-2">(</span><span·class="p"·data-group-id="6852614378-3">[</span><span·class="n">LoaderState</span><span·class="p"[·...·truncated·by·diffoscope;·len:·199,·SHA:·212051c848ab35e151045f139a33c71c8eea21f8870df2995b6cab40dafd9818·...·]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:·d5ad4ded16e63768747b766189d046964d42c22396f6c8b69a5e63f416075ef2·...·]
 171 ··</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">finish_loading</span><span·class="p"·data-group-id="1893823274-2">(</span><span·class="p"·data-group-id="1893823274-3">[</span><span·class="n">LoaderState</span><span·class="p"·data-group-id="1893823274-3">]</span><span·class="p"·data-group-id="1893823274-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>203 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>514 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>221 <p>Copyright·©·1996-2024·<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="6369918610-1">(</span><span·class="mi">1</span><span·class="p"·data-group-id="6369918610-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:·425,·SHA:·01cae3cf258b9e5bd6d3c9893f27e5084a0e0c1469b8fe641afb6acbe182f48c·...·]0-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="5455252120-1">(</span><span·class="mi">1</span><span·class="p"·data-group-id="5455252120-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:·425,·SHA:·c1c74d7bd3a4de87ba226adb08727f6f8774942a28c21c9a2eff8cfd1cee8aa3·...·]0-2">)</span><span·class="w">
409 </span><span·class="p"·data-group-id="6369918610-3">(</span><span·class="mi">2</span><span·class="p"·data-group-id="6369918610-3">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="6369918610-4">(</span><span·class="mi">0</span><span·class="p"·data-group-id="6369918610-4">)</span><span·class="w">·····</span><span·class="p"·data-group-id="6369918610-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="6369918610-6">(</span><span·class="mi">3</span><span·class="p"·data-group-id="6369918610-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="63[·...·truncated·by·diffoscope;·len:·13,·SHA:·be8698e503515c1f3c1c11220c37f38d98565b48a4b1ec48668e6ac351c70e3d·...·]</span><span·class="w">409 </span><span·class="p"·data-group-id="5455252120-3">(</span><span·class="mi">2</span><span·class="p"·data-group-id="5455252120-3">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="5455252120-4">(</span><span·class="mi">0</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·211,·SHA:·e736a2b8048691867c092d01a8c96aa08cadaad2a9905c91544b405420e3b40b·...·]</span><span·class="w">
 410 </span><span·class="p"·data-group-id="5455252120-6">(</span><span·class="mi">3</span><span·class="p"·data-group-id="5455252120-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="5455252120-5">]</span><span·class="w">
411 </span><span·class="p"·data-group-id="6369918610-7">(</span><span·class="mi">4</span><span·class="p"·data-group-id="6369918610-7">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="6369918610-8">(</span><span·class="mi">1</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·12,·SHA:·ff8f9c424aa3e30c54da494f2ffb5a141db6000f6e60461dbed255dd44205e09·...·]0-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="5455252120-7">(</span><span·class="mi">4</span><span·class="p"·data-group-id="5455252120-7">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="5455252120-8">(</span><span·class="mi">1</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·12,·SHA:·0fc7706a9efcf6033e4c1657e3869356b02442ba057a86c36cb24ec14d425919·...·]0-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="6369918610-9">(</span><span·class="mi">5</span><span·class="p"·data-group-id="6369918610-9">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="6369918610-10">(</span><span·class="mi">2</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·256,·SHA:·4f84131a85f92a0283cf5f1db4ea057073346353c965dd90830723712c8e0213·...·]0-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="5455252120-9">(</span><span·class="mi">5</span><span·class="p"·data-group-id="5455252120-9">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="5455252120-10">(</span><span·class="mi">2</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·256,·SHA:·33f60a533a4795bc0e5e0cf6e3b9f7d4120e2e85babc3526f81df1102675b3e9·...·]0-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="6369918610-13">(</span><span·class="mi">6</span><span·class="p"·data-group-id="6369918610-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:·560,·SHA:·1a58f702e4673e270947694e31bfe8e72ef54b74ce772e9b0ef00376994d3ccc·...·]0-11">}</span><span·class="w">413 </span><span·class="p"·data-group-id="5455252120-13">(</span><span·class="mi">6</span><span·class="p"·data-group-id="5455252120-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:·560,·SHA:·74a8cb3fe67c6e8178ff159df3de29677bd5c13cbb19f41a113ccd82d9c24767·...·]0-11">}</span><span·class="w">
414 </span><span·class="p"·data-group-id="6369918610-14">(</span><span·class="mi">7</span><span·class="p"·data-group-id="6369918610-14">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="6369918610-15">(</span><span·class="mi">3</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·15,·SHA:·bf648f8e0340488c85d359cd86e5f455db51bd58c955940d63f630e8142d9b15·...·]0-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="5455252120-14">(</span><span·class="mi">7</span><span·class="p"·data-group-id="5455252120-14">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="5455252120-15">(</span><span·class="mi">3</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·15,·SHA:·4d78e37ca8b46445a8597e5085eaba5d762037cd0bf0fd1b88dcec68331ca467·...·]0-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>478 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>343 <p>Copyright·©·1996-2024·<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="8021482649-1">(</span><span·class="ss">pg_sync</span><span·class="p"·data-group-id="8021482649-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="5834547082-1">(</span><span·class="ss">pg_sync</span><span·class="p"·data-group-id="5834547082-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="8021482649-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="8021482649-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="5834547082-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="5834547082-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="8021482649-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="8021482649-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="5834547082-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="5834547082-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="8021482649-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="8021482649-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="5834547082-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="5834547082-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="8021482649-5">(</span><span·class="p"·data-group-id="8021482649-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:·c2adba4ac1570c82d109da06156aa8d5f5c73d09ae7d7d5a79030ad70c34d5cb·...·]-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="5834547082-5">(</span><span·class="p"·data-group-id="5834547082-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:·6abce0d9c2b81b13f29d95b2a181bc2649bf3850f5387b1c2c0a16c76f5171bf·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
378 </span><span·class="nf">connect</span><span·class="p"·data-group-id="8021482649-7">(</span><span·class="n">ConnectStr</span><span·class="p"·data-group-id="8021482649-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="5834547082-7">(</span><span·class="n">ConnectStr</span><span·class="p"·data-group-id="5834547082-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="8021482649-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="8021482649-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="5834547082-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="5834547082-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="8021482649-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="8021482649-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="5834547082-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="5834547082-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="8021482649-10">(</span><span·class="p"·data-group-id="8021482649-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="8021482649-11">}</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·23bc16b23a2a21fb58e1950c4f40831fce8bc5f0be62ab4d6515dc4bc4ecf6d9·...·]-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="5834547082-10">(</span><span·class="p"·data-group-id="5834547082-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="5834547082-11">}</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·50135f19699276d674f15d12b35b9b29d3da65204ebea26717dc7b72cdf97481·...·]-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="8021482649-12">(</span><span·class="p"·data-group-id="8021482649-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="8021482649-13">}</[·...·truncated·by·diffoscope;·len:·202,·SHA:·fa369f1bf77826e470f9c801e2123bdd38da28df42d140f1a721ac45382684bd·...·]-12">)</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="5834547082-12">(</span><span·class="p"·data-group-id="5834547082-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="5834547082-13">}</[·...·truncated·by·diffoscope;·len:·202,·SHA:·e5ad9d1506af3b9968c919134d430737027d3ce4828dbf7f59e1c2ee0b49c4e3·...·]-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="8021482649-15">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="8021482649-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·clas[·...·truncated·by·diffoscope;·len:·166,·SHA:·9f9fdcd9ce900ac832f43846ff4fb1eda171787b90d274b49e828d35c729e6f4·...·]-15">)</span><span·class="w">·</span><span·class="k">of</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="5834547082-15">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="5834547082-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·clas[·...·truncated·by·diffoscope;·len:·166,·SHA:·da424c7f6e60e7e1091929e688524893f0823dd3aabf97cf9b4c08a034e663f3·...·]-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="8021482649-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="8021482649-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="5834547082-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="5834547082-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="8021482649-18">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8021482649-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="5834547082-18">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5834547082-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="8021482649-19">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="8021482649-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:·8791db610868acd01794e28183c698ec0e866a10b91add115d542cbb40ef8db5·...·]-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="5834547082-19">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="5834547082-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:·2a8aca16a80629702470a84fc9bb34837d67ce1402e1e19569ffce77ec9ed921·...·]-19">)</span><span·class="p">,</span><span·class="w">
391 ····</span><span·class="nf">port_close</span><span·class="p"·data-group-id="8021482649-21">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8021482649-21">)</span><span·class="p">,</span><span·class="w">391 ····</span><span·class="nf">port_close</span><span·class="p"·data-group-id="5834547082-21">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5834547082-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="8021482649-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="8021482649-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="5834547082-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="5834547082-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="8021482649-23">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="8021482649-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:·a37de60e695ddaf9dac0e6e266a68209e1e18b78f39089e9c921658ee4324162·...·]-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="5834547082-23">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="5834547082-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:·08d2acff6a0d65e430e589665717d562a89ea1c77484d7c915532071fc3fe9bc·...·]-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="1394224639-1">(</span><span·class="ss">pg_async</span><span·class="p"·data-group-id="1394224639-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="7133094439-1">(</span><span·class="ss">pg_async</span><span·class="p"·data-group-id="7133094439-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="1394224639-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="1394224639-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="7133094439-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="7133094439-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="1394224639-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="1394224639-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="7133094439-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="7133094439-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="1394224639-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="1394224639-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="7133094439-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="7133094439-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="1394224639-5">(</span><span·class="p"·data-group-id="1394224639-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:·249,·SHA:·27ec899fe1e0821d363d3b0845f9435335681dfc4896d5d26e4680097fd0bebd·...·]39-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="7133094439-5">(</span><span·class="p"·data-group-id="7133094439-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:·249,·SHA:·72fadb2ec1b75f8070507b89aeb5ec1887c19b056ed923eb29d998d56bdb97c3·...·]39-5">)</span><span·class="p">.</span><span·class="w">
  
550 </span><span·class="nf">connect</span><span·class="p"·data-group-id="1394224639-7">(</span><span·class="n">ConnectStr</span><span·class="p"·data-group-id="1394224639-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="7133094439-7">(</span><span·class="n">ConnectStr</span><span·class="p"·data-group-id="7133094439-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="1394224639-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="1394224639-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="7133094439-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="7133094439-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="1394224639-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="1394224639-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="7133094439-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="7133094439-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="1394224639-10">(</span><span·class="p"·data-group-id="1394224639-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="1394224639-11">}</span><sp[·...·truncated·by·diffoscope;·len:·36,·SHA:·9c6d5bf692d0ee32aa88dac5ddd0626495e54ea47c2979dbb0b8382d58e522b6·...·]39-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="7133094439-10">(</span><span·class="p"·data-group-id="7133094439-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="7133094439-11">}</span><sp[·...·truncated·by·diffoscope;·len:·36,·SHA:·c86c0ca9a179b169b70b2014ffcf1b84c646b7ad41878d156b443f9d74a33dcb·...·]39-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="1394224639-12">(</span><span·class="p"·data-group-id="1394224639-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="1394224639-13">}</[·...·truncated·by·diffoscope;·len:·230,·SHA:·cd2070975e07a8931e16877c2cd62e4638434b4370fb94813567b7a9a074ed74·...·]39-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="7133094439-12">(</span><span·class="p"·data-group-id="7133094439-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="7133094439-13">}</[·...·truncated·by·diffoscope;·len:·230,·SHA:·c23b60b3a6bf12e166323dfed49a394a9dcae312c3e80da8a161e13819bd1384·...·]39-12">)</span><span·class="p">,</span><span·class="w">
557 ····</span><span·class="nf">port_control</span><span·class="p"·data-group-id="1394224639-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"·dat[·...·truncated·by·diffoscope;·len:·20,·SHA:·91041ae7591cfcd3357ddaca2bf9490b82ee1dfbfb1031eb16c65d4b552b453a·...·]39-15">)</span><span·class="p">,</span><span·class="w">557 ····</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7133094439-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"·dat[·...·truncated·by·diffoscope;·len:·20,·SHA:·9d5fd244dc204076274a7f1afd78a5e4e52910fa29bef68a0aae3ccabbfb1cca·...·]39-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="1394224639-16">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1394224639-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="7133094439-16">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7133094439-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="1394224639-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="1394224639-17">}</span><span·class="p">;</span><span·class="w">560 ············</span><span·class="p"·data-group-id="7133094439-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="7133094439-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="1394224639-18">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1394224639-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="7133094439-18">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7133094439-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="1394224639-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:·25,·SHA:·aa7247fccf223b4d4c86e0073073abd80afdeaf71a4adf7f98280bf9c1296499·...·]39-19">)</span><span·class="p">,</span><span·class="w">565 ····</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7133094439-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:·25,·SHA:·ca77cdbe72433240efbebef7a731162c5f55f88a0921d163df550016ed414434·...·]39-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="1394224639-20">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1394224639-20">)</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="7133094439-20">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7133094439-20">)</span><span·class="p">,</span><span·class="w">
567 ····</span><span·class="nf">port_close</span><span·class="p"·data-group-id="1394224639-21">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1394224639-21">)</span><span·class="p">,</span><span·class="w">567 ····</span><span·class="nf">port_close</span><span·class="p"·data-group-id="7133094439-21">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7133094439-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="1394224639-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="1394224639-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="7133094439-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="7133094439-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="1394224639-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-grou[·...·truncated·by·diffoscope;·len:·14,·SHA:·873186a68baf67caa0153ea00a34ff47cbb0d85ffcf19f743864b911a1cbdde6·...·]39-23">)</span><span·class="p">,</span><span·class="w">570 ····</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7133094439-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-grou[·...·truncated·by·diffoscope;·len:·14,·SHA:·dd469e1abe7f98b003492b8ef3b817466dbc4aab6cdb95f8ba8670c879cbb33d·...·]39-23">)</span><span·class="p">,</span><span·class="w">
571 ····</span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="1394224639-24">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1394224639-24">)</span><span·class="p">.</span><span·class="w">571 ····</span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="7133094439-24">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7133094439-24">)</span><span·class="p">.</span><span·class="w">
  
572 </span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="1394224639-25">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1394224639-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="7133094439-25">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7133094439-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="1394224639-26">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1394224639-27">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><[·...·truncated·by·diffoscope;·len:·92,·SHA:·96b5c7484bf1ca148159893cce25d0383d847ce18ce1f8a31a028d19bd830dcc·...·]39-26">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">574 ········</span><span·class="p"·data-group-id="7133094439-26">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7133094439-27">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><[·...·truncated·by·diffoscope;·len:·92,·SHA:·3112b72f2c9b19be159e3587ae6c3f9df4989936a29a6be043faa5f68cead9e4·...·]39-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="1394224639-28">(</span><span·class="n">Data</span><span·class="p"·data-group-id="1394224639-28">)</span><span·class="w">575 ············</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="7133094439-28">(</span><span·class="n">Data</span><span·class="p"·data-group-id="7133094439-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="0905824052-1">(</span><span·class="ss">next_perm</span><span·class="p"·data-group-id="0905824052-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="0633650749-1">(</span><span·class="ss">next_perm</span><span·class="p"·data-group-id="0633650749-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="0905824052-2">(</span><span·class="p"·data-group-id="0905824052-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:·378,·SHA:·8be1d8bbb76d258519a562fd22c3f19fa20588e2ba0e38826232c7bd51d55c90·...·]-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="0633650749-2">(</span><span·class="p"·data-group-id="0633650749-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:·378,·SHA:·b74aec40a860e2991125fc0cadda224256aa022c08b1386725ba65fbde156e7d·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
687 </span><span·class="nf">load</span><span·class="p"·data-group-id="0905824052-4">(</span><span·class="p"·data-group-id="0905824052-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="0633650749-4">(</span><span·class="p"·data-group-id="0633650749-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="0905824052-5">(</span><span·class="ss">next_perm</span><span·class="p"·data-group-id="0905824052-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="0633650749-5">(</span><span·class="ss">next_perm</span><span·class="p"·data-group-id="0633650749-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="0905824052-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="0905824052-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="0633650749-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="0633650749-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="0905824052-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="0905824052-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="0633650749-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="0633650749-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="0905824052-8">(</span><span·class="n">E</span><span·class="p"·data-group-id="0905824052-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="0633650749-8">(</span><span·class="n">E</span><span·class="p"·data-group-id="0633650749-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="0905824052-9">(</span><span·class="p"·data-group-id="0905824052-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="0905824052-10">}</span><span·[·...·truncated·by·diffoscope;·len:·191,·SHA:·833b21de8fa52c992ecce236214ed2a2dbcc2f20faa88a8e23d9db630498382d·...·]-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="0633650749-9">(</span><span·class="p"·data-group-id="0633650749-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="0633650749-10">}</span><span·[·...·truncated·by·diffoscope;·len:·191,·SHA:·b5da6903046ae8ee9940b3ee6508faa7a5d7447b36bc32840df921348bec718a·...·]-9">)</span><span·class="p">,</span><span·class="w">
696 ············</span><span·class="nf">register</span><span·class="p"·data-group-id="0905824052-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="0905824052-12">)</span><span·class="p">;</span><span·class="w">696 ············</span><span·class="nf">register</span><span·class="p"·data-group-id="0633650749-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="0633650749-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="0905824052-13">(</span><span·class="n">L</span><span·class="p"·data-group-id="0905824052-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="0633650749-13">(</span><span·class="n">L</span><span·class="p"·data-group-id="0633650749-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
701 ····</span><span·class="p"·data-group-id="0905824052-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:·249,·SHA:·80c94f80d63aa123d3c0a5e6381fb5af0101ade697dda6fd410efa68c785d520·...·]-14">]</span><span·class="p">.</span><span·class="w">701 ····</span><span·class="p"·data-group-id="0633650749-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:·249,·SHA:·be84141d5590a6d066a583f25f80767c5d744c79ee086f9553f7b660ce28a273·...·]-14">]</span><span·class="p">.</span><span·class="w">
  
702 </span><span·class="nf">next_perm</span><span·class="p"·data-group-id="0905824052-15">(</span><span·class="n">L</span><span·class="p"·data-group-id="0905824052-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="0633650749-15">(</span><span·class="n">L</span><span·class="p"·data-group-id="0633650749-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="0905824052-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="0905824052-16">)</span><span·class="p">.</span><span·class="w">703 ····</span><span·class="nf">next_perm</span><span·class="p"·data-group-id="0633650749-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="0633650749-16">)</span><span·class="p">.</span><span·class="w">
  
704 </span><span·class="nf">prev_perm</span><span·class="p"·data-group-id="0905824052-17">(</span><span·class="n">L</span><span·class="p"·data-group-id="0905824052-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">704 </span><span·class="nf">prev_perm</span><span·class="p"·data-group-id="0633650749-17">(</span><span·class="n">L</span><span·class="p"·data-group-id="0633650749-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
705 ····</span><span·class="nf">next_perm</span><span·class="p"·data-group-id="0905824052-18">(</span><span·class="n">L</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="0905824052-18">)</span><span·class="p">.</span><span·class="w">705 ····</span><span·class="nf">next_perm</span><span·class="p"·data-group-id="0633650749-18">(</span><span·class="n">L</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="0633650749-18">)</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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>422 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>306 <p>Copyright·©·1996-2024·<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="3196440117-1">(</span><span·class="ss">sname</span><span·class="p"·data-group-id="3196440117-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="0979104439-1">(</span><span·class="ss">sname</span><span·class="p"·data-group-id="0979104439-1">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="p"·data-group-id="3196440117-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3196440117-3">[</span><span·class="p"·data-group-id="3196440117-4">[</span><span·class="s">&quot;arnie&quot;</span><span·class="p"·data-group-id="3196440[·...·truncated·by·diffoscope;·len:·109,·SHA:·a0659722de81b84da297c04523cff781ec682842b0a3bace54b0e74711db55e9·...·]-2">}</span><span·class="gp·unselectable">151 </span><span·class="p"·data-group-id="0979104439-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0979104439-3">[</span><span·class="p"·data-group-id="0979104439-4">[</span><span·class="s">&quot;arnie&quot;</span><span·class="p"·data-group-id="0979104[·...·truncated·by·diffoscope;·len:·109,·SHA:·0a3f3f9ec7966597c30ea58437a4217f133940e30b8248d0477296d9dd11a2d4·...·]-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="3196440117-5">(</span><span·class="p"·data-group-id="3196440117-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="0979104439-5">(</span><span·class="p"·data-group-id="0979104439-5">)</span><span·class="p">.</span><span·class="w">
153 </span><span·class="p"·data-group-id="3196440117-6">[</span><span·class="s">&quot;+bertie&quot;</span><span·class="p"·data-group-id="3196440117-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="0979104439-6">[</span><span·class="s">&quot;+bertie&quot;</span><span·class="p"·data-group-id="0979104439-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="7391952006-1">(</span><span·class="ss">myflag</span><span·class="p"·data-group-id="7391952006-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="8901163978-1">(</span><span·class="ss">myflag</span><span·class="p"·data-group-id="8901163978-1">)</span><span·class="p">.</span><span·class="w">
159 </span><span·class="p"·data-group-id="7391952006-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7391952006-3">[</span><span·class="p"·data-group-id="7391952006-4">[</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="7391952006-[·...·truncated·by·diffoscope;·len:·105,·SHA:·4e4f6eaa14c9076a67d54df1ce1cf56b46aa72edb7660bc144196a743c2e111f·...·]-2">}</span><span·class="gp·unselectable">159 </span><span·class="p"·data-group-id="8901163978-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8901163978-3">[</span><span·class="p"·data-group-id="8901163978-4">[</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="8901163978-[·...·truncated·by·diffoscope;·len:·105,·SHA:·3c6ee0bc1a8e1d00aa11d6a703fa97280629e485f6fd2bef1c1c465ec361d7ad·...·]-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="7391952006-5">(</span><span·class="p"·data-group-id="7391952006-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="8901163978-5">(</span><span·class="p"·data-group-id="8901163978-5">)</span><span·class="p">.</span><span·class="w">
161 </span><span·class="p"·data-group-id="7391952006-6">[</span><span·class="p"·data-group-id="7391952006-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="8901163978-6">[</span><span·class="p"·data-group-id="8901163978-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="1044147172-1">(</span><span·class="ss">cpu_topology</span><span·class="p"·data-group-id="1044147172-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="9378106659-1">(</span><span·class="ss">cpu_topology</span><span·class="p"·data-group-id="9378106659-1">)</span><span·class="p">.</span><span·class="w">
717 </span><span·class="p"·data-group-id="1044147172-2">[</span><span·class="p"·data-group-id="1044147172-3">{</span><span·class="ss">processor</span><span·class="p">,</span><span·class="p"·data-group-id="1044147172-4">[</span><span·class="p"·data-group-id="1044147172-5">{</span><span·class="ss">c[·...·truncated·by·diffoscope;·len:·261,·SHA:·8e4fc0df88653f0120c892eea699b8a898b39b328c686eb2db03084d97395177·...·]-5">}</span><span·class="p">,</span><span·class="w">717 </span><span·class="p"·data-group-id="9378106659-2">[</span><span·class="p"·data-group-id="9378106659-3">{</span><span·class="ss">processor</span><span·class="p">,</span><span·class="p"·data-group-id="9378106659-4">[</span><span·class="p"·data-group-id="9378106659-5">{</span><span·class="ss">c[·...·truncated·by·diffoscope;·len:·261,·SHA:·76cd4cd9da94c5c8b49d991cd739426ba6aba96306fc98e8b93863c79acbd186·...·]-5">}</span><span·class="p">,</span><span·class="w">
718 ·············</span><span·class="p"·data-group-id="1044147172-7">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="1044147172-8">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="1044147172-8">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·b4b7f118e02bd93a2929b42c89d5e6b73e85862ebb2e06f11790b0928d1cc5fd·...·]-7">}</span><span·class="p">,</span><span·class="w">718 ·············</span><span·class="p"·data-group-id="9378106659-7">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="9378106659-8">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9378106659-8">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·317d61058aaec2740cc613743f22734a0697c2bbf8bd2cc2352753324f0c6e0c·...·]-7">}</span><span·class="p">,</span><span·class="w">
719 ·············</span><span·class="p"·data-group-id="1044147172-9">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="1044147172-10">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="1044147172-10">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·20448c9e812e7a3548092115efa7e1f6ba55de63da1ed2e223b5e60a75aab7ad·...·]-9">}</span><span·class="p">,</span><span·class="w">719 ·············</span><span·class="p"·data-group-id="9378106659-9">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="9378106659-10">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="9378106659-10">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·bacc9c8ea2388d68f39bfa2d08ed638981ac6c106136997d22aa91b01bf8ebc1·...·]-9">}</span><span·class="p">,</span><span·class="w">
720 ·············</span><span·class="p"·data-group-id="1044147172-11">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="1044147172-12">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="1044147172-12">}[·...·truncated·by·diffoscope;·len:·208,·SHA:·8d538aa65c1054f11f5446c52960cbc2e18b4d4d3c59bda8d44186a705c2e093·...·]-2">]</span></code></pre><p>A·more·complicated·example·with·two·quad·core·processors,·each·processor·in720 ·············</span><span·class="p"·data-group-id="9378106659-11">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="9378106659-12">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="9378106659-12">}[·...·truncated·by·diffoscope;·len:·208,·SHA:·41c3bff639eb2523ec2be64649a985bc4345327a90698bcbddb1ac54ffdf9c85·...·]-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="2749297169-1">(</span><span·class="ss">cpu_topology</span><span·class="p"·data-group-id="2749297169-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="5257102632-1">(</span><span·class="ss">cpu_topology</span><span·class="p"·data-group-id="5257102632-1">)</span><span·class="p">.</span><span·class="w">
724 </span><span·class="p"·data-group-id="2749297169-2">[</span><span·class="p"·data-group-id="2749297169-3">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="2749297169-4">[</span><span·class="p"·data-group-id="2749297169-5">{</span><span·class="ss">proces[·...·truncated·by·diffoscope;·len:·419,·SHA:·525b03077710a14dcfda9877a0055e043935db07265de1205fc941c4c917310c·...·]-7">}</span><span·class="p">,</span><span·class="w">724 </span><span·class="p"·data-group-id="5257102632-2">[</span><span·class="p"·data-group-id="5257102632-3">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="5257102632-4">[</span><span·class="p"·data-group-id="5257102632-5">{</span><span·class="ss">proces[·...·truncated·by·diffoscope;·len:·419,·SHA:·3c8e71b453635fba7c55f5bfaae6025ee2d494fc695c49ccc6a4b60465023fd8·...·]-7">}</span><span·class="p">,</span><span·class="w">
725 ····················</span><span·class="p"·data-group-id="2749297169-9">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2749297169-10">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2749297169-10">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·4d68346bbb7217ec5f9c8d2e2048a74f8c88059396adab9d62627eaa8d733ac1·...·]-9">}</span><span·class="p">,</span><span·class="w">725 ····················</span><span·class="p"·data-group-id="5257102632-9">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="5257102632-10">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="5257102632-10">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·4e082a63f16aba5992accfb5c3d1d9a0eba445eda024439086c46234c95fd46f·...·]-9">}</span><span·class="p">,</span><span·class="w">
726 ····················</span><span·class="p"·data-group-id="2749297169-11">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2749297169-12">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="2749297169-12">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·1941276107bd31f6069e76dd4db818d5e6860d14ad8fa6504dd31584ab9a69f3·...·]-11">}</span><span·class="p">,</span><span·class="w">726 ····················</span><span·class="p"·data-group-id="5257102632-11">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="5257102632-12">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="5257102632-12">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·240a1114956d99daf014c455276b33b59cf0e2cec9d6f91f59ad358a209617ac·...·]-11">}</span><span·class="p">,</span><span·class="w">
727 ····················</span><span·class="p"·data-group-id="2749297169-13">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2749297169-14">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="2749297169-14">}</span><span·class="p"·data-group-id="2749297169-13">}</span><span·class="p"·data-group-id="2749297169-6">]</span><span·class="p"·data-group-id="2749297169-5">}</span><span·class="p"·data-group-id="2749297169-4">]</span><span·class="p"·data-group-id="2749297169-3">}</span><span·class="p">,</span><span·class="w"> 
728 ·</span><span·class="p"·data-group-id="2749297169-15">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="2749297169-16">[</span><span·class="p"·data-group-id="2749297169-17">{</span><span·class="ss">processor</span><s[·...·truncated·by·diffoscope;·len:·414,·SHA:·76da349bf3a0f814570f59aaf6e17b4b59b4c26ecaa3e36c353b3efffc2bc3d2·...·]">}</span><span·class="p">,</span><span·class="w">727 ····················</span><span·class="p"·data-group-id="5257102632-13">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="5257102632-14">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·320,·SHA:·b8a7530e8270bc3b387f23e1076d75d73d3d857f1ac562514b7336ec0ffe44b8·...·]">}</span><span·class="p">,</span><span·class="w">
 728 ·</span><span·class="p"·data-group-id="5257102632-15">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="5257102632-16">[</span><span·class="p"·data-group-id="5257102632-17">{</span><span·class="ss">processor</span><span·class="p">,</span><span·class="p"·data-group-id="5257102632-18">[</span><span·class="p"·data-group-id="5257102632-19">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="5257102632-20">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="5257102632-20">}</span><span·class="p"·data-group-id="5257102632-19">}</span><span·class="p">,</span><span·class="w">
729 ····················</span><span·class="p"·data-group-id="2749297169-21">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2749297169-22">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="2749297169-22">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·1941276107bd31f6069e76dd4db818d5e6860d14ad8fa6504dd31584ab9a69f3·...·]-21">}</span><span·class="p">,</span><span·class="w">729 ····················</span><span·class="p"·data-group-id="5257102632-21">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="5257102632-22">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="5257102632-22">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·240a1114956d99daf014c455276b33b59cf0e2cec9d6f91f59ad358a209617ac·...·]-21">}</span><span·class="p">,</span><span·class="w">
730 ····················</span><span·class="p"·data-group-id="2749297169-23">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2749297169-24">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="2749297169-24">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·1941276107bd31f6069e76dd4db818d5e6860d14ad8fa6504dd31584ab9a69f3·...·]-23">}</span><span·class="p">,</span><span·class="w">730 ····················</span><span·class="p"·data-group-id="5257102632-23">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="5257102632-24">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5257102632-24">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·240a1114956d99daf014c455276b33b59cf0e2cec9d6f91f59ad358a209617ac·...·]-23">}</span><span·class="p">,</span><span·class="w">
731 ····················</span><span·class="p"·data-group-id="2749297169-25">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2749297169-26">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="2749297169-26">}[·...·truncated·by·diffoscope;·len:·318,·SHA:·4a250c2c8d2b080d9a50e2b1447f26b1a045d9ec99ed73ae6c7b2855f40a5755·...·]-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="5257102632-25">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="5257102632-26">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="5257102632-26">}[·...·truncated·by·diffoscope;·len:·318,·SHA:·b78f26062b3b5973a246a9467278b52dc4ff92bc3c45a26afff7831a58e64228·...·]-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="0033328970-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="0033328970-2">[</span><span·class="p"·data-group-id="0033328970-2">]</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·688fe98b5ab6c343a9d9bb1a6e6bd81a0a932a9a6c2f94fac300de160e42c445·...·]-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="0246633181-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="0246633181-2">[</span><span·class="p"·data-group-id="0246633181-2">]</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·5c996592cadb3a865888c4c6114b7905114c1ab7521e117921b7c2824b626b6e·...·]-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="0033328970-3">(</span><span·class="s">&quot;/home/calvin/test/ebin&quot;</span><span·class="p"·data-group-id="0033328970-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="0246633181-3">(</span><span·class="s">&quot;/home/calvin/test/ebin&quot;</span><span·class="p"·data-group-id="0246633181-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="0033328970-4">(</span><span·class="s">&quot;/home/hobbes/bigappl-1.2/ebin&quot;</span><span·class="p"·data-group-id="0033328970-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="0246633181-4">(</span><span·class="s">&quot;/home/hobbes/bigappl-1.2/ebin&quot;</span><span·class="p"·data-group-id="0246633181-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="0033328970-5">(</span><span·class="s">&quot;.erlang·rc·finished\n&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="0033328970-6">[</span><span·class="p"·data-group-id="0033328970-6">]</span><span·class="p"·data-group-id="0033328970-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="0246633181-5">(</span><span·class="s">&quot;.erlang·rc·finished\n&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="0246633181-6">[</span><span·class="p"·data-group-id="0246633181-6">]</span><span·class="p"·data-group-id="0246633181-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>969 <p>Copyright·©·1996-2024·<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="9834628318-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="9834628318-2">[</span><span·[·...·truncated·by·diffoscope;·len:·194,·SHA:·b961d047e4d5616fb5b1cf4cd5e285febefef5476d7879be27f6c94b23e17735·...·]-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="4598435186-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="4598435186-2">[</span><span·[·...·truncated·by·diffoscope;·len:·194,·SHA:·673fe72cf4399ca29ebee28a006d14be8f6ae20787b05cc2238b56498a52e024·...·]-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="7799750506-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="2098358716-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="7799750506-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="7799750506-2">]</span><s[·...·truncated·by·diffoscope;·len:·266,·SHA:·0a9f822df2b45abbd9faa0c9d79b197c6ac54393a2fdb6ee1474ab90421b8b69·...·]-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">275 ··········</span><span·class="p"·data-group-id="2098358716-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="2098358716-2">]</span><s[·...·truncated·by·diffoscope;·len:·266,·SHA:·a5e9777cd9ce6f43e009239de1a019e4ea94340907c48367b934d2e126810e2a·...·]-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="3453796917-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="3453796917-2">]</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·222bdbbf966845400dcdba7a96576b5dfee1ed007fa7acc091713a18f6a1c785·...·]-1">)</span><span·class="p">.</span></code></pre><h3·id="kill-epmd"·class="section-heading">276 ··········</span><span·class="p"·data-group-id="0129123374-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="0129123374-2">]</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·3c73a59b94eaaca894ef88c14489aecedee15c9389c91b9b6dc720b590f29e5f·...·]-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="6176601634-1">(</span><span·class="ss">initiator</span><span·class="p"·data-group-id="6176601634-1">)</span><span·class="w">······································</span><span·class="n">B</span><span·class="w">·</span><span·class="p"·data-group-id="61766016[·...·truncated·by·diffoscope;·len:·87,·SHA:·84947ed5bb55a191095e166b65ff9aabddf06c154b660778bd60ca4f619772d0·...·]-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="9167097446-1">(</span><span·class="ss">initiator</span><span·class="p"·data-group-id="9167097446-1">)</span><span·class="w">······································</span><span·class="n">B</span><span·class="w">·</span><span·class="p"·data-group-id="91670974[·...·truncated·by·diffoscope;·len:·87,·SHA:·9a70ab0471a814f74fcb87d184c09def6a39fa69848742c0a5bb463d220c52f9·...·]-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="6176601634-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="9167097446-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="6176601634-3">)</span><span·class="w">423 ···················································</span><span·class="ss">recv_status</span><span·class="p"·data-group-id="9167097446-3">)</span><span·class="w">
  
424 ··························</span><span·class="p"·data-group-id="6176601634-4">(</span><span·class="n">ChB</span><span·class="p"·data-group-id="6176601634-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:·97608612b5b78b80190a3c91c72a4a9629fd0e19c3315dfec809227a8580f56e·...·]-5">)</span><span·class="w">424 ··························</span><span·class="p"·data-group-id="9167097446-4">(</span><span·class="n">ChB</span><span·class="p"·data-group-id="9167097446-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:·d7b92a84cfd02d2f763e3fc6f24ee12d1e0733039c5f40c7b5ccfc648dd3d23c·...·]-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="6176601634-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="9167097446-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="6176601634-6">)</span><span·class="w">429 ···················································</span><span·class="ss">recv_complement</span><span·class="p"·data-group-id="9167097446-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="6176601634-7">(</span><span·class="p"·data-group-id="6176601634-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="9167097446-7">(</span><span·class="p"·data-group-id="9167097446-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="6176601634-8">(</span><span·class="n">B</span><span·class="p"·data-group-id="6176601634-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="9167097446-8">(</span><span·class="n">B</span><span·class="p"·data-group-id="9167097446-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="6176601634-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="6176601634-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="9167097446-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="9167097446-9">)</span><span·class="w">
433 ··························</span><span·class="p"·data-group-id="6176601634-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="6176601634-10">)</span><span·class="w">433 ··························</span><span·class="p"·data-group-id="9167097446-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="9167097446-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="6176601634-11">(</span><span·class="n">A</span><span·class="p"·data-group-id="6176601634-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="9167097446-11">(</span><span·class="n">A</span><span·class="p"·data-group-id="9167097446-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="6176601634-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="6176601634-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="9167097446-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="9167097446-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="6176601634-13">(</span><span·class="n">A</span><span·class="p"·data-group-id="6176601634-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="9167097446-13">(</span><span·class="n">A</span><span·class="p"·data-group-id="9167097446-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="6176601634-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="6176601634-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="9167097446-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="9167097446-14">)</span><span·class="w">
442 ··························</span><span·class="p"·data-group-id="6176601634-15">(</span><span·class="n">DiB</span><span·class="p"·data-group-id="6176601634-15">)</span><span·class="w">442 ··························</span><span·class="p"·data-group-id="9167097446-15">(</span><span·class="n">DiB</span><span·class="p"·data-group-id="9167097446-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="6176601634-16">(</span><span·class="n">B</span><span·class="p"·data-group-id="6176601634-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="9167097446-16">(</span><span·class="n">B</span><span·class="p"·data-group-id="9167097446-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="6176601634-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="6176601634-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="9167097446-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="9167097446-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>767 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1778 <p>Copyright·©·1996-2024·<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="4863640177-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:·c1766264d49a52674d9cf90902f6faf70926b5e43b74d35ad0e89358829bb4b8·...·]-1">)</span></code></pre><h2·id="large_big_ext"·class="section-heading">443 </span><span·class="p"·data-group-id="9011771761-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:·373f108d61b3d4fbd98946ecee3faf5166d9aa43014ccc3ccae3b2967c7d36ab·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>626 <p>Copyright·©·1996-2024·<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="1907023656-1">(</span><span·class="ss">niftest</span><span·class="p"·data-group-id="1907023656-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="6928683408-1">(</span><span·class="ss">niftest</span><span·class="p"·data-group-id="6928683408-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="1907023656-2">(</span><span·class="p"·data-group-id="1907023656-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:·ea2548d8cf0946fdfb9b5caac12de734c6083479641fb6489af30dd54f7e5e8d·...·]-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="6928683408-2">(</span><span·class="p"·data-group-id="6928683408-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:·36d77f816e7845d7bdeea3d6dcb6b4b5836be4e547f665673a10d89f1d2d5194·...·]-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="1907023656-4">(</span><span·class="p"·data-group-id="1907023656-5">[</span><span·class="ss">hello</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1907023656-5">]</span><span·class="p"·data-group-id="1907023656-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="6928683408-4">(</span><span·class="p"·data-group-id="6928683408-5">[</span><span·class="ss">hello</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="6928683408-5">]</span><span·class="p"·data-group-id="6928683408-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="1907023656-6">(</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1907023656-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="6928683408-6">(</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="6928683408-6">)</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">init</span><span·class="p"·data-group-id="1907023656-7">(</span><span·class="p"·data-group-id="1907023656-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="6928683408-7">(</span><span·class="p"·data-group-id="6928683408-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="1907023656-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="1907023656-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="6928683408-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="6928683408-8">)</span><span·class="p">.</span><span·class="w">
  
175 </span><span·class="nf">hello</span><span·class="p"·data-group-id="1907023656-9">(</span><span·class="p"·data-group-id="1907023656-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="6928683408-9">(</span><span·class="p"·data-group-id="6928683408-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="1907023656-10">(</span><span·class="s">&quot;NIF·library·not·loaded&quot;</span><span·class="p"·data-group-id="1907023656-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="6928683408-10">(</span><span·class="s">&quot;NIF·library·not·loaded&quot;</span><span·class="p"·data-group-id="6928683408-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2527 <p>Copyright·©·1996-2024·<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="9555457383-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="9555457383-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="9667102050-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="9667102050-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>505 <p>Copyright·©·1996-2024·<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="5535847889-1">[</span><span·class="n">DEVELOPMENT</span><span·class="p"·data-group-id="5535847889-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="5535847889-2">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">8[·...·truncated·by·diffoscope;·len:·1414,·SHA:·9d375d905f5ab090355e271969a135ffd34e7523b7a278a8e4846448e2a8097f·...·]-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="1172403917-1">[</span><span·class="n">DEVELOPMENT</span><span·class="p"·data-group-id="1172403917-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="1172403917-2">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">8[·...·truncated·by·diffoscope;·len:·1414,·SHA:·4e0c116e639578d67bd5a6cf0ed15346c6e1c7efb96da59d4624e3e92883dbd0·...·]-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="5535847889-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="5535847889-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="1172403917-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="1172403917-9">)</span><span·class="gp·unselectable">
154 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="5535847889-10">(</span><span·class="ss">erl_msg_tracer</span><span·class="p"·data-group-id="5535847889-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:·fcd41f1cd1dda4b0c8b8f8678fa76c4293f47ef5dd1e41cdced3672425cd33d6·...·]-11">)</span><span·class="p">.</span><span·class="w">154 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="1172403917-10">(</span><span·class="ss">erl_msg_tracer</span><span·class="p"·data-group-id="1172403917-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:·bfeec84dc510eb7de719fbdf0f5d79325a669ed485ddac1ee3a2792626e33368·...·]-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="5535847889-12">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="5535847889-13">(</span><span·class="p"·data-group-id="5535847889-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span[·...·truncated·by·diffoscope;·len:·954,·SHA:·aedebbad17cc84c1c43dac65ecf0a8c9e0607bfac4c25d466707910884adf2df·...·]-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="1172403917-12">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="1172403917-13">(</span><span·class="p"·data-group-id="1172403917-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span[·...·truncated·by·diffoscope;·len:·954,·SHA:·d4aeb40896330830ebfb31074915d848ce7e4b3e54484f864aa81024b99162c2·...·]-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="5535847889-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="5535847889-18">[</span><span·class="nb">send</span>[·...·truncated·by·diffoscope;·len:·420,·SHA:·5e7eb60d87b403ae4d9bfd70c6f24db634f0890b9bf593d8f3622ac24c9ad21f·...·]-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="1172403917-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="1172403917-18">[</span><span·class="nb">send</span>[·...·truncated·by·diffoscope;·len:·420,·SHA:·e640d4379bb75b47e8ca2ff6562bbc275db8aae6bd2f1ba72275c90bcad82fd1·...·]-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="5535847889-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:·25eb0bcd3ed87503888346efd7dee95f49b789253cf3685286d675988b007595·...·]-20">}</span><span·class="gp·unselectable">160 </span><span·class="p"·data-group-id="1172403917-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:·69c6fa92c7f5ee2c45726bdc247243a106078c35eb5ad9ed4a80294fc096cf5c·...·]-20">}</span><span·class="gp·unselectable">
161 4&gt;·</span><span·class="p"·data-group-id="5535847889-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="5535847889-21">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·375,·SHA:·66f03bf6cf14c2803b784b448ed5c48d2f2aa60c4d8d0344552fbe5ea6378413·...·]-22">)</span><span·class="p">.</span><span·class="w">161 4&gt;·</span><span·class="p"·data-group-id="1172403917-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="1172403917-21">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·375,·SHA:·fde6d8d8ae60b4bd25cc3e615e06032bd1a4a59a592d74bce08fb6310bc70a12·...·]-22">)</span><span·class="p">.</span><span·class="w">
162 </span><span·class="p"·data-group-id="5535847889-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:·82df33fe7a1e02125f63be53c00c58d533f435ab86f007e80da6f635a185547e·...·]-24">}</span><span·class="w">162 </span><span·class="p"·data-group-id="1172403917-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:·6d9e927ed8744b0b3ed9d972a98e04c08d24c89ed2b2d7739650861821d358af·...·]-24">}</span><span·class="w">
163 </span><span·class="p"·data-group-id="5535847889-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:·a31ea0b4046ad021b99d391dbd40dce46c9bd054c8c3b648e5ab4d9c4005671d·...·]-25">}</span><span·class="w">163 </span><span·class="p"·data-group-id="1172403917-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:·d5d52564e65cc238712cc58e338fb88729405fc443351e0f3bcffcf5b5f9ee62·...·]-25">}</span><span·class="w">
164 </span><span·class="p"·data-group-id="5535847889-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:·e23a5ed1f320c23f51c1c133adcbc52f3f5a1679cea09a1316ab7ffb040f6105·...·]-26">}</span><span·class="w">164 </span><span·class="p"·data-group-id="1172403917-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:·c766e69c6fc97ddc9557aaf0dadaa47d68992dad3827d23f964a2f9d8412a4b1·...·]-26">}</span><span·class="w">
165 </span><span·class="p"·data-group-id="5535847889-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:·e23a5ed1f320c23f51c1c133adcbc52f3f5a1679cea09a1316ab7ffb040f6105·...·]-27">}</span><span·class="w">165 </span><span·class="p"·data-group-id="1172403917-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:·c766e69c6fc97ddc9557aaf0dadaa47d68992dad3827d23f964a2f9d8412a4b1·...·]-27">}</span><span·class="w">
166 </span><span·class="p"·data-group-id="5535847889-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:·e23a5ed1f320c23f51c1c133adcbc52f3f5a1679cea09a1316ab7ffb040f6105·...·]-28">}</span><span·class="w">166 </span><span·class="p"·data-group-id="1172403917-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:·c766e69c6fc97ddc9557aaf0dadaa47d68992dad3827d23f964a2f9d8412a4b1·...·]-28">}</span><span·class="w">
167 </span><span·class="p"·data-group-id="5535847889-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:·e23a5ed1f320c23f51c1c133adcbc52f3f5a1679cea09a1316ab7ffb040f6105·...·]-29">}</span><span·class="w">167 </span><span·class="p"·data-group-id="1172403917-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:·c766e69c6fc97ddc9557aaf0dadaa47d68992dad3827d23f964a2f9d8412a4b1·...·]-29">}</span><span·class="w">
168 </span><span·class="p"·data-group-id="5535847889-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="5535847889-30">}</span><span·class="w">168 </span><span·class="p"·data-group-id="1172403917-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="1172403917-30">}</span><span·class="w">
169 </span><span·class="p"·data-group-id="5535847889-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:·25eb0bcd3ed87503888346efd7dee95f49b789253cf3685286d675988b007595·...·]-31">}</span><span·class="w">169 </span><span·class="p"·data-group-id="1172403917-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:·69c6fa92c7f5ee2c45726bdc247243a106078c35eb5ad9ed4a80294fc096cf5c·...·]-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="0256732302-1">(</span><span·class="ss">erl_msg_tracer</span><span·class="p"·data-group-id="0256732302-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="4875600631-1">(</span><span·class="ss">erl_msg_tracer</span><span·class="p"·data-group-id="4875600631-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="0256732302-2">(</span><span·class="p"·data-group-id="0256732302-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:·244,·SHA:·85b7e67451d8b26ca25a6a2eba6902edda20a21ee3dab2a607115522617fa75e·...·]-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="4875600631-2">(</span><span·class="p"·data-group-id="4875600631-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:·244,·SHA:·fc42f48f6242613d42b6811982c6296ec5fe06ff4d1a666afd473f608628ed8f·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">load</span><span·class="p"·data-group-id="0256732302-4">(</span><span·class="p"·data-group-id="0256732302-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="4875600631-4">(</span><span·class="p"·data-group-id="4875600631-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="0256732302-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="0256732302-6">[</span><span·class="p"·data-group-id="0256732302-6">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·5c7fe1b6bc70442a002609a111b495745d71c40b6749a956aa13ffa4d8120a8e·...·]-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="4875600631-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="4875600631-6">[</span><span·class="p"·data-group-id="4875600631-6">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·c057be8e2023b1a6efeaa17a61c2350414f29aacb34087be31aec61bd9d30a53·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
175 </span><span·class="nf">enabled</span><span·class="p"·data-group-id="0256732302-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="0256732302-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="4875600631-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="4875600631-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="0256732302-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:·119,·SHA:·d6ab0d458e0f306e96a22345915c1fd627ad506679f1bbc175b66282430c87c4·...·]-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="4875600631-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:·119,·SHA:·3186a0703377b2afa9168723fa4443a061af8b0d0d97dd09c8d0f47f58919659·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1720 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>300 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>406 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>539 <p>Copyright·©·1996-2024·<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="9575778974-1">(</span><span·class="p"·data-group-id="9575778974-2">[</span><span·class="n">String</span><span·class="p"·data-group-id="9575778974-2">]</span><span·class="p"·data-group-id="9575778974-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="7643983269-1">(</span><span·class="p"·data-group-id="7643983269-2">[</span><span·class="n">String</span><span·class="p"·data-group-id="7643983269-2">]</span><span·class="p"·data-group-id="7643983269-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="9575778974-3">(</span><span·class="n">String</span><span·class="p"·data-group-id="9575778974-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="7643983269-3">(</span><span·class="n">String</span><span·class="p"·data-group-id="7643983269-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="9575778974-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="9575778974-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="7643983269-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="7643983269-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="9575778974-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="9575778[·...·truncated·by·diffoscope;·len:·181,·SHA:·08c06f720ecd33673d45c487ac7d5af92763666649fdea3cd2743f029c8602d9·...·]-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="7643983269-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="7643983[·...·truncated·by·diffoscope;·len:·181,·SHA:·b22861b370e0ccca1c68d0467ebd9f2bb90c9df26d1ca6a869aa9569caa4bd3a·...·]-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="9575778974-7">(</span><span·class="p"·data-group-id="9575778974-7">)</span><span·class="w">140 ············</span><span·class="nf">usage</span><span·class="p"·data-group-id="7643983269-7">(</span><span·class="p"·data-group-id="7643983269-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="9575778974-8">(</span><span·class="p">_</span><span·class="p"·data-group-id="9575778974-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="7643983269-8">(</span><span·class="p">_</span><span·class="p"·data-group-id="7643983269-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="9575778974-9">(</span><span·class="p"·data-group-id="9575778974-9">)</span><span·class="p">.</span><span·class="w">143 ····</span><span·class="nf">usage</span><span·class="p"·data-group-id="7643983269-9">(</span><span·class="p"·data-group-id="7643983269-9">)</span><span·class="p">.</span><span·class="w">
  
144 </span><span·class="nf">usage</span><span·class="p"·data-group-id="9575778974-10">(</span><span·class="p"·data-group-id="9575778974-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="7643983269-10">(</span><span·class="p"·data-group-id="7643983269-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="9575778974-11">(</span><span·class="s">&quot;usage:·factorial·integer\n&quot;</span><span·class="p"·data-group-id="9575778974-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="7643983269-11">(</span><span·class="s">&quot;usage:·factorial·integer\n&quot;</span><span·class="p"·data-group-id="7643983269-11">)</span><span·class="p">,</span><span·class="w">
146 ····</span><span·class="nf">halt</span><span·class="p"·data-group-id="9575778974-12">(</span><span·class="mi">1</span><span·class="p"·data-group-id="9575778974-12">)</span><span·class="p">.</span><span·class="w">146 ····</span><span·class="nf">halt</span><span·class="p"·data-group-id="7643983269-12">(</span><span·class="mi">1</span><span·class="p"·data-group-id="7643983269-12">)</span><span·class="p">.</span><span·class="w">
  
147 </span><span·class="nf">fac</span><span·class="p"·data-group-id="9575778974-13">(</span><span·class="mi">0</span><span·class="p"·data-group-id="9575778974-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="7643983269-13">(</span><span·class="mi">0</span><span·class="p"·data-group-id="7643983269-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="9575778974-14">(</span><span·class="n">N</span><span·class="p"·data-group-id="9575778974-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:·212,·SHA:·c7e92a2fafa49f36dde10b7af0d89e7e53417538f3c6a8199d060f0985929899·...·]-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="7643983269-14">(</span><span·class="n">N</span><span·class="p"·data-group-id="7643983269-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:·212,·SHA:·d95ef3ad4c92dde80a60d0882f03e12ddfd2b83000fb7bcc84cf4820c1d97495·...·]-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="6812881726-1">(</span><span·class="p"·data-group-id="6812881726-2">[</span><span·class="p"·data-group-id="6812881726-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:·129,·SHA:·6fb8c6777d08915d1971644ed8da044f62b1787fba50e00801bd553538248030·...·]-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="7068448997-1">(</span><span·class="p"·data-group-id="7068448997-2">[</span><span·class="p"·data-group-id="7068448997-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:·129,·SHA:·5de9f1dabb1bb82803d99b4457d5be5109a59e2db139c818b8b039ee5bd6782e·...·]-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="1910817571-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="1910817571-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="8524896313-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="8524896313-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="9867990979-1">(</span><span·class="ss">interpret</span><span·class="p"·data-group-id="9867990979-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="5965030753-1">(</span><span·class="ss">interpret</span><span·class="p"·data-group-id="5965030753-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>302 <p>Copyright·©·1996-2024·<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="2216440255-1">(</span><span·class="n">Foo</span><span·class="p"·data-group-id="2216440255-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="2287416620-1">(</span><span·class="n">Foo</span><span·class="p"·data-group-id="2287416620-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="2216440255-2">[</span><span·class="mi">42</span><span·class="p">|</span><span·class="n">Foo</span><span·class="p"·data-group-id="2216440255-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="2287416620-2">[</span><span·class="mi">42</span><span·class="p">|</span><span·class="n">Foo</span><span·class="p"·data-group-id="2287416620-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="2216440255-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="2216440255-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="2287416620-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="2287416620-3">}</span><span·class="p">,</span><span·class="w">
143 ···</span><span·class="p"·data-group-id="2216440255-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="2216440255-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="2287416620-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="2287416620-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="4511407797-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="4511407797-1">}</span><span·class="p">.</span><span·class="w">144 </span><span·class="p"·data-group-id="8013037918-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="8013037918-1">}</span><span·class="p">.</span><span·class="w">
145 </span><span·class="p"·data-group-id="4511407797-2">{</span><span·class="ss">put_list</span><span·class="p">,</span><span·class="p"·data-group-id="4511407797-3">{</span><span·class="ss">integer</span><span·class="p">,</span><span·class="mi">42</span><span·class="p"·data-group-id="4511407797-3"[·...·truncated·by·diffoscope;·len:·458,·SHA:·2cca00c0b999f4a4c6ab2f3854afc89878e2ee7be503b29f960d989fd30036af·...·]-2">}</span><span·class="p">.</span><span·class="w">145 </span><span·class="p"·data-group-id="8013037918-2">{</span><span·class="ss">put_list</span><span·class="p">,</span><span·class="p"·data-group-id="8013037918-3">{</span><span·class="ss">integer</span><span·class="p">,</span><span·class="mi">42</span><span·class="p"·data-group-id="8013037918-3"[·...·truncated·by·diffoscope;·len:·458,·SHA:·3a1bc28da795c2413a29bc14701d28dbe9b89c705cc9c52ca2ee700db395552c·...·]-2">}</span><span·class="p">.</span><span·class="w">
146 </span><span·class="p"·data-group-id="4511407797-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="4511407797-7">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="mi">0</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·990e2fafa5c92c06dafa20369a441431fe7666d13d5a850fb6a4d37e55791d19·...·]-6">}</span><span·class="p">.</span><span·class="w">146 </span><span·class="p"·data-group-id="8013037918-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="8013037918-7">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="mi">0</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·b9b90e3b19fc7f8bc3ab25a52da821d6bce89f8ae8142cd1259f6595bb734ffb·...·]-6">}</span><span·class="p">.</span><span·class="w">
147 </span><span·class="p"·data-group-id="4511407797-8">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="4511407797-9">{</span><span·class="ss">atom</span><span·class="p">,</span><span·class="ss">tag</span><span·class="p"·data-group-id="4511407797-9">}</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·7b5aab13de83701dee95c96852d9d200a316da3a8b217a054889fade856d8f3b·...·]-8">}</span><span·class="p">.</span><span·class="w">147 </span><span·class="p"·data-group-id="8013037918-8">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="8013037918-9">{</span><span·class="ss">atom</span><span·class="p">,</span><span·class="ss">tag</span><span·class="p"·data-group-id="8013037918-9">}</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·afa6546a31dc4b0ef47b17d0e27b4bb011d81d5d3df52ae1f9d7767ae305f143·...·]-8">}</span><span·class="p">.</span><span·class="w">
148 </span><span·class="p"·data-group-id="4511407797-10">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="4511407797-11">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="4511407797-11">}</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·f2461a25b2b36adab2b73c4785bd08584c90ab70a2ecb56cb1273ecc206c02d9·...·]-10">}</span><span·class="p">.</span><span·class="w">148 </span><span·class="p"·data-group-id="8013037918-10">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="8013037918-11">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="8013037918-11">}</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·4ff1f478bfe58e412b330b12230410587d9b7879f4d321318ea71fc3aa0f6546·...·]-10">}</span><span·class="p">.</span><span·class="w">
149 </span><span·class="p"·data-group-id="4511407797-12">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="4511407797-13">{</span><span·class="ss">literal</span><span·class="p">,</span><span·class="p"·data-group-id="4511407797-14">{</span><span·class="ss">te[·...·truncated·by·diffoscope;·len:·229,·SHA:·00af1ac5450d81571e844de80aeae7736ec63f77de35c4dc729537232ce25973·...·]-12">}</span><span·class="p">.</span><span·class="w">149 </span><span·class="p"·data-group-id="8013037918-12">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="8013037918-13">{</span><span·class="ss">literal</span><span·class="p">,</span><span·class="p"·data-group-id="8013037918-14">{</span><span·class="ss">te[·...·truncated·by·diffoscope;·len:·229,·SHA:·4b5a034fe46ed7ca44b3298c4de8bcf3ea131c0f00f04a99bdd43d2106843939·...·]-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="7006662057-1">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="7006662057-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="6320979700-1">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="6320979700-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="7006662057-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="7006662057-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="6320979700-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="6320979700-2">}</span><span·class="p">,</span><span·class="w">
158 ····</span><span·class="p"·data-group-id="7006662057-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:·8abe61570dd82ed8aecac663db64a6fd44e870c4864a477d48b3be672845b036·...·]-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="6320979700-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:·4e29eff6ceafdb3027b0813c2b7e31210629be3413bf7d6256d20fbc14f2d3cb·...·]-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="2128235108-1">(</span><span·class="nf">erts_is_literal</span><span·class="p"·data-group-id="2128235108-2">(</span><span·class="ss">ptr</span><span·class="p"·data-group-id="2128235108-2">)</span><span·class="w">·</span><span·class="p">||</span><span·class="[·...·truncated·by·diffoscope;·len:·568,·SHA:·472284aa8d40489b3b5f8d0a2c0d4acdf881290ae30343568c4037f73cf2633b·...·]-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="0266598389-1">(</span><span·class="nf">erts_is_literal</span><span·class="p"·data-group-id="0266598389-2">(</span><span·class="ss">ptr</span><span·class="p"·data-group-id="0266598389-2">)</span><span·class="w">·</span><span·class="p">||</span><span·class="[·...·truncated·by·diffoscope;·len:·568,·SHA:·9478111221bc0e78c1805deca92f0ec32b08a5f7f3e13e643e48f7fcd879f2aa·...·]-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="2128235108-5">}</span><span·class="w">·</span><span·class="k">else</span><span·class="w">·</span><span·class="p"·data-group-id="2128235108-6">{</span><span·class="w">184 </span><span·class="p"·data-group-id="0266598389-5">}</span><span·class="w">·</span><span·class="k">else</span><span·class="w">·</span><span·class="p"·data-group-id="0266598389-6">{</span><span·class="w">
185 ··</span><span·class="nf">copy</span><span·class="p"·data-group-id="2128235108-7">(</span><span·class="ss">ptr</span><span·class="p"·data-group-id="2128235108-7">)</span><span·class="p">;</span><span·class="w">185 ··</span><span·class="nf">copy</span><span·class="p"·data-group-id="0266598389-7">(</span><span·class="ss">ptr</span><span·class="p"·data-group-id="0266598389-7">)</span><span·class="p">;</span><span·class="w">
186 </span><span·class="p"·data-group-id="2128235108-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="0266598389-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>267 <p>Copyright·©·1996-2024·<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="1573726801-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="1573726801-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="1982491091-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="1982491091-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="1573726801-2">(</span><span·class="p"·data-group-id="1573726801-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="1982491091-2">(</span><span·class="p"·data-group-id="1982491091-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="1573726801-3">(</span><span·class="p"·data-group-id="1573726801-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="1982491091-3">(</span><span·class="p"·data-group-id="1982491091-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="2670051464-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="2670051464-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="7372947734-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="7372947734-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="2670051464-2">(</span><span·class="p"·data-group-id="2670051464-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="7372947734-2">(</span><span·class="p"·data-group-id="7372947734-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="5689197383-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="5689197383-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="4955433480-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="4955433480-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="5689197383-2">(</span><span·class="p"·data-group-id="5689197383-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="4955433480-2">(</span><span·class="p"·data-group-id="4955433480-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="3002325028-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="3002325028-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="5201720715-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="5201720715-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="3002325028-2">(</span><span·class="p"·data-group-id="3002325028-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="5201720715-2">(</span><span·class="p"·data-group-id="5201720715-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="8994587900-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="8994587900-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="2963491328-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="2963491328-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="8994587900-2">(</span><span·class="p"·data-group-id="8994587900-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"[·...·truncated·by·diffoscope;·len:·186,·SHA:·0e96c86ce6f3cedfa0c11ff66e2eb3b37a6390ae62b59a77ddfc10258ff2a603·...·]-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="2963491328-2">(</span><span·class="p"·data-group-id="2963491328-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"[·...·truncated·by·diffoscope;·len:·186,·SHA:·28a81d2c4339d617f8863f687e572665bd4e97fffe55c2b8edfc23d7318d90d0·...·]-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="2578049624-2">(</span><span·class="p"·data-group-id="2578049624-2">)</span></code></pre><p>Set·domain·name.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5284429957-1">{</span><span·class="ss">nameserver</span><[·...·truncated·by·diffoscope;·len:·294,·SHA:·3aa87f1c2057646df72ca3d59682d18fc5db01f57d997d3e78d6653d57e85202·...·]-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="5832580505-2">(</span><span·class="p"·data-group-id="5832580505-2">)</span></code></pre><p>Set·domain·name.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7878044705-1">{</span><span·class="ss">nameserver</span><[·...·truncated·by·diffoscope;·len:·294,·SHA:·ffeda6f9dd4ede804a10231bcdaab40a40920cbee8c8ec2165157de1fb54cb44·...·]-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="7878044705-3">(</span><span·class="p"·data-group-id="7878044705-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="7878044705-4">(</span><span·class="p"·data-group-id="7878044705-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="5455597948-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="5455597948-2">[</span><span·class="p">,</span><span·class="n">Port</span><span·class="p"·data-group-id="5455597948-2">]</span><span·class="p"·data-group-id="5455597948-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="5284429957-3">(</span><span·class="p"·data-group-id="5284429957-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="5455597948-3">(</span><span·class="p"·data-group-id="5455597948-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="5284429957-4">(</span><span·class="p"·data-group-id="5284429957-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="5816646355-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="5816646355-2">[</span><span·class="p">,</span><span·class="n">Port</span><span·class="p"·data-group-id="5816646355-2">]</span><span·class="p"·data-group-id="5816646355-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="5816646355-3">(</span><span·class="p"·data-group-id="5816646355-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="5816646355-4">(</span><span·class="p"·data-group-id="5816646355-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="5455597948-4">(</span><span·class="p"·data-group-id="5455597948-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="3831532514-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="3831532514-1">}</span><span·class="p">.</span><span·class="w">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="7340730907-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="7340730907-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="3831532514-2">[</span><span·class="nf">string</span><span·class="p"·data-group-id="3831532514-3">(</span><span·class="p"·data-group-id="3831532514-3">)</span><span·class="p"·data-group-id="3831532514-2">]</span></code></pre><p>Add·search·domains·for·<a·hre[·...·truncated·by·diffoscope;·len:·358,·SHA:·81a738ad4f3284185d1216ca153b31e69d05353c98d54128e9b4c37c108467fe·...·]-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="7340730907-2">[</span><span·class="nf">string</span><span·class="p"·data-group-id="7340730907-3">(</span><span·class="p"·data-group-id="7340730907-3">)</span><span·class="p"·data-group-id="7340730907-2">]</span></code></pre><p>Add·search·domains·for·<a·hre[·...·truncated·by·diffoscope;·len:·358,·SHA:·62a384a36b527ffa2f2ee1a260ea63404e346f4544b41939101ca2df94e2164b·...·]-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="6203177195-2">[</span><span·class="nf">atom</span><span·class="p"·data-group-id="6203177195-3">(</span><span·class="p"·data-group-id="6203177195-3">)</span><span·class="p"·data-group-id="6203177195-2">]</span></code></pre><p>Specify·lookup·methods·and·in·which·order·to·try·them.·The·valid·methods·are200 ··</span><span·class="n">Methods</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6235029827-2">[</span><span·class="nf">atom</span><span·class="p"·data-group-id="6235029827-3">(</span><span·class="p"·data-group-id="6235029827-3">)</span><span·class="p"·data-group-id="6235029827-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="6344390727-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="6344390727-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="1186731917-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="1186731917-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="6344390727-2">(</span><span·class="p"·data-group-id="6344390727-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="1186731917-2">(</span><span·class="p"·data-group-id="1186731917-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="9568817608-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="9568817608-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="3714589657-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="3714589657-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="9568817608-2">(</span><span·class="p"·data-group-id="9568817608-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="3714589657-2">(</span><span·class="p"·data-group-id="3714589657-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="2062760879-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="2062760879-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="4420953327-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="4420953327-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="2062760879-2">(</span><span·class="p"·data-group-id="2062760879-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="4420953327-2">(</span><span·class="p"·data-group-id="4420953327-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="1009282014-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="1009282014-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="0441111091-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="0441111091-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="1009282014-2">(</span><span·class="p"·data-group-id="1009282014-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="0441111091-2">(</span><span·class="p"·data-group-id="0441111091-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="8049653250-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="8049653250-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="7221346714-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="7221346714-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="8049653250-2">(</span><span·class="p"·data-group-id="8049653250-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="7221346714-2">(</span><span·class="p"·data-group-id="7221346714-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="3840443740-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="3840443740-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="5516421821-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="5516421821-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="4821108453-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="4821108453-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="5301238174-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="5301238174-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="9468025625-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="9468025625-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="5785203929-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="5785203929-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="3874562183-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="3874562183-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="1095648156-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="1095648156-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="3874562183-2">(</span><span·class="p"·data-group-id="3874562183-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="1095648156-2">(</span><span·class="p"·data-group-id="1095648156-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="2165058932-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="2165058932-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="2165058932-2">(</span><span·class="p"·data-group-id="2165058932-2">)</span></code></pre[·...·truncated·by·diffoscope;·len:·353,·SHA:·3d55e22817bdac50b6bd29f146ce4d41e784d344a216521d0bff121406d900a9·...·]-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="8628279346-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:·38769ff744ede6356886fa96666e8e7e5347f7653939917ac6fd80d89874bfac·...·]-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="8628279346-2">(</span><span·class="p"·data-group-id="8628279346-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="1582699316-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="1582699316-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="9118614648-2">(</span><span·class="p"·data-group-id="9118614648-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="1582699316-2">(</span><span·class="p"·data-group-id="1582699316-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="3110365979-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="31103[·...·truncated·by·diffoscope;·len:·5,·SHA:·b61cbceaff74bc9bed67cec3d80767af1d79f7f0238069dc226c87b0d45e3a1d·...·]-1">}</span><span·class="p">.</span><span·class="w">249 </span><span·class="p"·data-group-id="2505389974-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="25053[·...·truncated·by·diffoscope;·len:·5,·SHA:·27ed808f6687af2cbf4cded4c17dc8f3d61ff262f0e41f76b54370dbb87a3f05·...·]-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="3110365979-2">{</span><span·class="ss">host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3110365979-3">{</span><span·class="mi">134</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·363,·SHA:·ad908203b91838f023bd8a2e7ca9906bbdbd88bc85f7453a0eee8d17d193dfcf·...·]-2">}</span><span·class="p">.</span><span·class="w">251 </span><span·class="p"·data-group-id="2505389974-2">{</span><span·class="ss">host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2505389974-3">{</span><span·class="mi">134</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·363,·SHA:·ab823ff7549bc0f0d5607dd4e60d1ffaa848e5e3a2db9e8e4cb96c5df9b1c6f8·...·]-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="3110365979-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="3110365979-5">}</span><span·class="p">.</span><span·class="w">253 </span><span·class="p"·data-group-id="2505389974-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="2505389974-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="3110365979-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="3110365979-6">}</span><span·class="p">.</span><span·class="w">255 </span><span·class="p"·data-group-id="2505389974-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="2505389974-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="3110365979-7">{</span><span·class="ss">edns</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="3110365979-7">}</span><span·class="p">.</span><span·class="w">257 </span><span·class="p"·data-group-id="2505389974-7">{</span><span·class="ss">edns</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="2505389974-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="3110365979-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="3110365979-8">}</span><span·class="p">.</span><span·class="w">259 </span><span·class="p"·data-group-id="2505389974-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="2505389974-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="3110365979-9">{</span><span·class="ss">lookup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3110365979-10">[</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">dns</span[·...·truncated·by·diffoscope;·len:·96,·SHA:·75d47794031eda688c841e46934a545566f7098fb222ebd274882b82692657b5·...·]-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="2505389974-9">{</span><span·class="ss">lookup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2505389974-10">[</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">dns</span[·...·truncated·by·diffoscope;·len:·96,·SHA:·291fa326ed48f54bdfee90bf6388bfb8fc7fe2e3feb810145930ced4535b7f38·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>306 <p>Copyright·©·1996-2024·<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="8262940750-1">(</span><span·class="p"·data-group-id="8262940750-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="7956436583-1">(</span><span·class="p"·data-group-id="7956436583-1">)</span><span·class="p">.</span><span·class="w">
165 </span><span·class="p"·data-group-id="8262940750-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="8262940750-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="7956436583-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="7956436583-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="8820254693-1">(</span><span·class="p"·data-group-id="8820254693-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="2413796995-1">(</span><span·class="p"·data-group-id="2413796995-1">)</span><span·class="p">.</span><span·class="w">
219 </span><span·class="p"·data-group-id="8820254693-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:·39f756a2db6e1f6efcd2702c78888f84296bf0678a4feb5c08795ca338552380·...·]-2">]</span><span·class="gp·unselectable">219 </span><span·class="p"·data-group-id="2413796995-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:·1868b9c66e58ba3ec4aad4e9a68d36c0cceb2fb7e15d917fdd356d05f7ba506e·...·]-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="8820254693-3">(</span><span·class="ss">children</span><span·class="p"·data-group-id="8820254693-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="2413796995-3">(</span><span·class="ss">children</span><span·class="p"·data-group-id="2413796995-3">)</span><span·class="p">.</span><span·class="w">
221 </span><span·class="p"·data-group-id="8820254693-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8820254693-5">[</span><span·class="p"·data-group-id="8820254693-6">[</span><span·class="s">&quot;thomas&quot;</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·175,·SHA:·9bb11cecd8d4d011b4cf28555b8fa810faf36c6dc89e7172c2ee92f221aa157a·...·]-4">}</span><span·class="gp·unselectable">221 </span><span·class="p"·data-group-id="2413796995-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2413796995-5">[</span><span·class="p"·data-group-id="2413796995-6">[</span><span·class="s">&quot;thomas&quot;</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·175,·SHA:·2e9acaeb4102167d4cf204035d3088053f5b723b0812aee0a0ad217cb9ec04ab·...·]-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="8820254693-7">(</span><span·class="ss">ages</span><span·class="p"·data-group-id="8820254693-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="2413796995-7">(</span><span·class="ss">ages</span><span·class="p"·data-group-id="2413796995-7">)</span><span·class="p">.</span><span·class="w">
223 </span><span·class="p"·data-group-id="8820254693-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8820254693-9">[</span><span·class="p"·data-group-id="8820254693-10">[</span><span·class="s">&quot;7&quot;</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·191,·SHA:·9917758c782353ce76e8bfcaaebb58e45000676e253a5352ed2f568629d0192d·...·]-8">}</span><span·class="gp·unselectable">223 </span><span·class="p"·data-group-id="2413796995-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2413796995-9">[</span><span·class="p"·data-group-id="2413796995-10">[</span><span·class="s">&quot;7&quot;</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·191,·SHA:·b92d54707990a39f99e1d93d14cf95ca16306ec91335a4b8c4142d3270c4723d·...·]-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="8820254693-11">(</span><span·class="ss">silly</span><span·class="p"·data-group-id="8820254693-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="2413796995-11">(</span><span·class="ss">silly</span><span·class="p"·data-group-id="2413796995-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="6237363369-1">(</span><span·class="ss">a</span><span·class="p"·data-group-id="6237363369-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="1381120060-1">(</span><span·class="ss">a</span><span·class="p"·data-group-id="1381120060-1">)</span><span·class="p">.</span><span·class="w">
526 </span><span·class="p"·data-group-id="6237363369-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6237363369-3">[</span><span·class="p"·data-group-id="6237363369-4">[</span><span·class="s">&quot;b&quot;</span><span·class="p">,</span><span·class="s">&q[·...·truncated·by·diffoscope;·len:·331,·SHA:·2855df71a576f6f5f44c98b4875b437d1390ed51f2868b5ba201594eeaf58be5·...·]-2">}</span></code></pre><p>The·following·flags·are·defined·automatically·and·can·be·retrieved·using·this526 </span><span·class="p"·data-group-id="1381120060-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="1381120060-3">[</span><span·class="p"·data-group-id="1381120060-4">[</span><span·class="s">&quot;b&quot;</span><span·class="p">,</span><span·class="s">&q[·...·truncated·by·diffoscope;·len:·331,·SHA:·834af235aef98cb4b490987eb25f61d4971aa5e9a7badcd9e8193a0092762290·...·]-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="8928632112-1">(</span><span·class="ss">progname</span><span·class="p"·data-group-id="8928632112-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="1471305087-1">(</span><span·class="ss">progname</span><span·class="p"·data-group-id="1471305087-1">)</span><span·class="p">.</span><span·class="w">
529 </span><span·class="p"·data-group-id="8928632112-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8928632112-3">[</span><span·class="p"·data-group-id="8928632112-4">[</span><span·class="s">&quot;erl&quot;</span><span·class="p"·data-group-id="892863211[·...·truncated·by·diffoscope;·len:·560,·SHA:·6fcaf1e0c9eef86af23fefe5303e1efe860afcd16a0d48e12dde2a0ccbf29dc2·...·]-1">)</span><span·class="p">.</span><span·class="w">529 </span><span·class="p"·data-group-id="1471305087-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="1471305087-3">[</span><span·class="p"·data-group-id="1471305087-4">[</span><span·class="s">&quot;erl&quot;</span><span·class="p"·data-group-id="147130508[·...·truncated·by·diffoscope;·len:·560,·SHA:·bd06a65cf3ad66676dd9ea76f1e4d8c421ac73d0ec3aa34d827286bfa42ab8d4·...·]-1">)</span><span·class="p">.</span><span·class="w">
530 </span><span·class="p"·data-group-id="3768105674-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3768105674-3">[</span><span·class="p"·data-group-id="3768105674-4">[</span><span·class="s">&quot;/home/harry&quot;</span><span·class="p"·data-group-id="3[·...·truncated·by·diffoscope;·len:·115,·SHA:·0403806b143dead48e06093ac8e64e04928ce63d49accfd033d28c0ea00a39cb·...·]-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="5584108931-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5584108931-3">[</span><span·class="p"·data-group-id="5584108931-4">[</span><span·class="s">&quot;/home/harry&quot;</span><span·class="p"·data-group-id="5[·...·truncated·by·diffoscope;·len:·115,·SHA:·2858841fe60a283b0d7a88460284e7e4df6bca7c87b9c6a33c44c19563151291·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>828 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>189 <p>Copyright·©·1996-2024·<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="0290197496-1">[</span><span·class="p"·data-group-id="0290197496-2">{</span><span·class="p"·data-group-id="0290197496-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:·a5b1618eb9bff556a9cc1d8d2519408d58c92ea78bc5dfbafd91e6988c4fc55e·...·]-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="3495993698-1">[</span><span·class="p"·data-group-id="3495993698-2">{</span><span·class="p"·data-group-id="3495993698-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:·4e7df6fd8227c9cf0fc876f384f6b6878b2c7be6dd9fd6c65e576d31c8bbfc51·...·]-3">]</span><span·class="p">,</span><span·class="w">
370 ··</span><span·class="p"·data-group-id="0290197496-4">[</span><span·class="p"·data-group-id="0290197496-4">]</span><span·class="p">,</span><span·class="w">370 ··</span><span·class="p"·data-group-id="3495993698-4">[</span><span·class="p"·data-group-id="3495993698-4">]</span><span·class="p">,</span><span·class="w">
371 ··</span><span·class="p"·data-group-id="0290197496-5">[</span><span·class="p"·data-group-id="0290197496-5">]</span><span·class="p"·data-group-id="0290197496-2">}</span><span·class="p"·data-group-id="0290197496-1">]</span></code></pre><p>Match·an·argument·list·of·three,·where·the·second·argument·[·...·truncated·by·diffoscope;·len:·473,·SHA:·538252f01bb482b3d4c121613d74622e41510ead383605b05bb133292b186058·...·]-3">]</span><span·class="p">,</span><span·class="w">371 ··</span><span·class="p"·data-group-id="3495993698-5">[</span><span·class="p"·data-group-id="3495993698-5">]</span><span·class="p"·data-group-id="3495993698-2">}</span><span·class="p"·data-group-id="3495993698-1">]</span></code></pre><p>Match·an·argument·list·of·three,·where·the·second·argument·[·...·truncated·by·diffoscope;·len:·473,·SHA:·7b1712a489d6d8a80d8cf270089c9478e0d3304f312f1f741a82fb3c618ffa9b·...·]-3">]</span><span·class="p">,</span><span·class="w">
372 ··</span><span·class="p"·data-group-id="8203902194-4">[</span><span·class="p"·data-group-id="8203902194-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:·131,·SHA:·a90c323dea40f4b87b88931ad9fd307ecf975d180024e16f0c68b3136d67d272·...·]-4">]</span><span·class="p">,</span><span·class="w">372 ··</span><span·class="p"·data-group-id="8379102951-4">[</span><span·class="p"·data-group-id="8379102951-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:·131,·SHA:·d5a599fc06ed74c2569e6b6f392668352ae963ededc251f71794c17d78b0df47·...·]-4">]</span><span·class="p">,</span><span·class="w">
373 ··</span><span·class="p"·data-group-id="8203902194-6">[</span><span·class="p"·data-group-id="8203902194-6">]</span><span·class="p"·data-group-id="8203902194-2">}</span><span·class="p"·data-group-id="8203902194-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="8379102951-6">[</span><span·class="p"·data-group-id="8379102951-6">]</span><span·class="p"·data-group-id="8379102951-2">}</span><span·class="p"·data-group-id="8379102951-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="7258069928-1">[</span><span·class="p"·data-group-id="7258069928-2">{</span><span·class="p"·data-group-id="7258069928-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:·4b730417bd9615becc14a5a25885e3a21f554ccb8d2e5b0e5d2c81f56101226b·...·]-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="1363525589-1">[</span><span·class="p"·data-group-id="1363525589-2">{</span><span·class="p"·data-group-id="1363525589-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:·e1e889e3403d24079c4ad589d1ac88333a176a30a649947d660c2605ab88cb95·...·]-3">]</span><span·class="p">,</span><span·class="w">
376 ··</span><span·class="p"·data-group-id="7258069928-4">[</span><span·class="p"·data-group-id="7258069928-5">{</span><span·class="ss">&#39;orelse&#39;</span><span·class="p">,</span><span·class="w">376 ··</span><span·class="p"·data-group-id="1363525589-4">[</span><span·class="p"·data-group-id="1363525589-5">{</span><span·class="ss">&#39;orelse&#39;</span><span·class="p">,</span><span·class="w">
377 ······</span><span·class="p"·data-group-id="7258069928-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="7258069928-7">{</span><span·class=[·...·truncated·by·diffoscope;·len:·284,·SHA:·fd09fbf8d48da38796e261c68ae876b84dffefba064f4bc134c4ddb79d0e7ab0·...·]-6">}</span><span·class="p">,</span><span·class="w">377 ······</span><span·class="p"·data-group-id="1363525589-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="1363525589-7">{</span><span·class=[·...·truncated·by·diffoscope;·len:·284,·SHA:·cc47d36ef47fc542ce48b91b7c153063cada3e27e2f709665919480e841dac75·...·]-6">}</span><span·class="p">,</span><span·class="w">
378 ······</span><span·class="p"·data-group-id="7258069928-9">{</span><span·class="ss">&#39;and&#39;</span><span·class="p">,</span><span·class="w">378 ······</span><span·class="p"·data-group-id="1363525589-9">{</span><span·class="ss">&#39;and&#39;</span><span·class="p">,</span><span·class="w">
379 ········</span><span·class="p"·data-group-id="7258069928-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="7258069928-11">{</span><span·clas[·...·truncated·by·diffoscope;·len:·195,·SHA:·7cea18a36c42c47db6c561c59acc47ac3693c9eae72fbc35a2a9e08b766856b8·...·]-10">}</span><span·class="p">,</span><span·class="w">379 ········</span><span·class="p"·data-group-id="1363525589-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="1363525589-11">{</span><span·clas[·...·truncated·by·diffoscope;·len:·195,·SHA:·5a33ce1c7019f7ec6c924c6da88f103798b3a44dddf89a79f689bc036e4c75eb·...·]-10">}</span><span·class="p">,</span><span·class="w">
380 ········</span><span·class="p"·data-group-id="7258069928-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="7258069928-13">{</span><span·clas[·...·truncated·by·diffoscope;·len:·537,·SHA:·33e1bb8d8a8b4c10e3e88a0cbb40f857f7fb57c2e457441d7c6ddea2e22e65ce·...·]-4">]</span><span·class="p">,</span><span·class="w">380 ········</span><span·class="p"·data-group-id="1363525589-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="1363525589-13">{</span><span·clas[·...·truncated·by·diffoscope;·len:·537,·SHA:·5105636807e1661a46baf5b8fb4ed404382821553bd202c61078f5b9ee9b52e9·...·]-4">]</span><span·class="p">,</span><span·class="w">
381 ··</span><span·class="p"·data-group-id="7258069928-15">[</span><span·class="p"·data-group-id="7258069928-15">]</span><span·class="p"·data-group-id="7258069928-2">}</span><span·class="p"·data-group-id="7258069928-1">]</span></code></pre><p>The·above·problem·can·also·be·solved·as·follows:</p><pre>[·...·truncated·by·diffoscope;·len:·410,·SHA:·ff47496fec29a8ec9e0a0e02ef0533aecea83739e14f155c923b778690dd9a56·...·]1-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="1363525589-15">[</span><span·class="p"·data-group-id="1363525589-15">]</span><span·class="p"·data-group-id="1363525589-2">}</span><span·class="p"·data-group-id="1363525589-1">]</span></code></pre><p>The·above·problem·can·also·be·solved·as·follows:</p><pre>[·...·truncated·by·diffoscope;·len:·410,·SHA:·ae4d9021d6f5aac9de228dade6af87c571070be54c2b4731eedebb8922b031c7·...·]1-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="4071650891-5">[</span><span·class="p"·data-group-id="4071650891-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4071650891-6">[</span><span·class="p"·data-group-id="4071650891-6">]</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·66,·SHA:·bf940fe753ea95650c57f2b2569dde7f26ec2f527a5d222d73479dee1b7ae662·...·]1-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="5387429811-5">[</span><span·class="p"·data-group-id="5387429811-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5387429811-6">[</span><span·class="p"·data-group-id="5387429811-6">]</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·66,·SHA:·8336d40599263a2d2902a44b71510a5b29111e62063f7e9c5d4b366988bf6e2b·...·]1-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="9783029826-1">[</span><span·class="p"·data-group-id="9783029826-2">{</span><span·class="p"·data-group-id="9783029826-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·cla[·...·truncated·by·diffoscope;·len:·1173,·SHA:·8aa037221b5f529bb947a9810bae30a6a46784723f4f4c652231f5ebcee3f2b1·...·]-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="9845541230-1">[</span><span·class="p"·data-group-id="9845541230-2">{</span><span·class="p"·data-group-id="9845541230-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·cla[·...·truncated·by·diffoscope;·len:·1173,·SHA:·efc0d3a6abf97d462e5ca6db08a841685d37bad6f17a62dedaeed8f34f9ef427·...·]-4">]</span><span·class="p">,</span><span·class="w">
385 ··</span><span·class="p"·data-group-id="9783029826-9">[</span><span·class="p"·data-group-id="9783029826-9">]</span><span·class="p"·data-group-id="9783029826-2">}</span><span·class="p"·data-group-id="9783029826-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="9845541230-9">[</span><span·class="p"·data-group-id="9845541230-9">]</span><span·class="p"·data-group-id="9845541230-2">}</span><span·class="p"·data-group-id="9845541230-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="8377686087-1">[</span><span·class="p"·data-group-id="8377686087-2">{</span><span·class="p"·data-group-id="8377686087-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:·116,·SHA:·c5155580d0a250770f404546b8c2388ea2f69140bdc371e6a9cefcc86068d0a8·...·]7-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="5631737927-1">[</span><span·class="p"·data-group-id="5631737927-2">{</span><span·class="p"·data-group-id="5631737927-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:·116,·SHA:·bc7ea5c24c0623d40021e9917cc4afdfb5f78a8b3797b19f8ef903ef91c8289f·...·]7-3">]</span><span·class="p">,</span><span·class="w">
388 ··</span><span·class="p"·data-group-id="8377686087-4">[</span><span·class="p"·data-group-id="8377686087-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="8377686087-5">}</span><span·class="p"·data-group-id="8377686087-4">]</span><span·class="p">,</span><span·class="w"> 
389 ··</span><span·class="p"·data-group-id="8377686087-6">[</span><span·class="p"·data-group-id="8377686087-7">{</span><span·class="ss">message</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8377686087-8">{</span><span·class="ss">process_dump</span><span·class="p"·data-group-id="8377686087-8">}</span><span·class="p"·data-group-id="8377686087-7">}</span><span·class="p"·data-group-id="8377686087-6">]</span><span·class="p"·data-group-id="8377686087-2">}</span><span·class="p">,</span><span·class="w"> 
390 ·</span><span·class="p"·data-group-id="8377686087-9">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8377686087-10">[</span><span·class="p"·data-group-id="8377686087-10">]</span><span[·...·truncated·by·diffoscope;·len:·644,·SHA:·ba6eeaf76bf0f6f6b28373fe9081ec7c5ba326e8b23ac2a0b801be478341d930·...·]388 ··</span><span·class="p"·data-group-id="5631737927-4">[</span><span·class="p"·data-group-id="5631737927-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-grou[·...·truncated·by·diffoscope;·len:·121,·SHA:·3363a497a0b2bba597321fb5515adf330411c4cc62465f7a5a6ba93728f025c8·...·]
 389 ··</span><span·class="p"·data-group-id="5631737927-6">[</span><span·class="p"·data-group-id="5631737927-7">{</span><span·class="ss">message</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5631737927-8">{</span><span·class="ss">process_dump</span><span·class="p"·data-group-id="5631737927-8">}</span><span·class="p"·data-group-id="5631737927-7">}</span><span·class="p"·data-group-id="5631737927-6">]</span><span·class="p"·data-group-id="5631737927-2">}</span><span·class="p">,</span><span·class="w">
 390 ·</span><span·class="p"·data-group-id="5631737927-9">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5631737927-10">[</span><span·class="p"·data-group-id="5631737927-10">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5631737927-11">[</span><span·class="p"·data-group-id="5631737927-12">{</span><span·class="ss">set_seq_token</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">label</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4711</span><span·class="p"·data-group-id="5631737927-12">}</span><span·class="p"·data-group-id="5631737927-11">]</span><span·class="p"·data-group-id="5631737927-9">}</span><span·class="p"·data-group-id="5631737927-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="3587863484-1">[</span><span·class="p"·data-group-id="3587863484-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="5594279163-1">[</span><span·class="p"·data-group-id="5594279163-2">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">
394 ··</span><span·class="p"·data-group-id="3587863484-3">[</span><span·class="p"·data-group-id="3587863484-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="3587863484-5">{</span><span·class="ss">get_tcw</span><span·class="p"·data-group-id="358786[·...·truncated·by·diffoscope;·len:·342,·SHA:·506dc601e3bfcd2ce0fb9a7d5249166273984e8c80c40583d5470807cfa347ee·...·]-3">]</span><span·class="p">,</span><span·class="w">394 ··</span><span·class="p"·data-group-id="5594279163-3">[</span><span·class="p"·data-group-id="5594279163-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="5594279163-5">{</span><span·class="ss">get_tcw</span><span·class="p"·data-group-id="559427[·...·truncated·by·diffoscope;·len:·342,·SHA:·81b18066fd10db9116f3e5c352a61d8a96f6066f9f92b5e9facadb5483ed56f3·...·]-3">]</span><span·class="p">,</span><span·class="w">
395 ··</span><span·class="p"·data-group-id="3587863484-7">[</span><span·class="p"·data-group-id="3587863484-7">]</span><span·class="p"·data-group-id="3587863484-2">}</span><span·class="p"·data-group-id="3587863484-1">]</span></code></pre><p>Generate·a·trace·message·only·if·there·is·a·<code·class="in[·...·truncated·by·diffoscope;·len:·175,·SHA:·9da29da13c5aacb724d560256ce7b74f32fdfa2686edf2e4aa9d51470b66cc92·...·]-2">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">395 ··</span><span·class="p"·data-group-id="5594279163-7">[</span><span·class="p"·data-group-id="5594279163-7">]</span><span·class="p"·data-group-id="5594279163-2">}</span><span·class="p"·data-group-id="5594279163-1">]</span></code></pre><p>Generate·a·trace·message·only·if·there·is·a·<code·class="in[·...·truncated·by·diffoscope;·len:·175,·SHA:·e718f417fab3a12b27ec27a77f9699fa450749646741c7606d53210b40c3f1a9·...·]-2">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">
396 ··</span><span·class="p"·data-group-id="0733445877-3">[</span><span·class="p"·data-group-id="0733445877-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="0733445877-5">{</span><span·class="ss">is_seq_trace</span><span·class="p"·data-group-id="0[·...·truncated·by·diffoscope;·len:·347,·SHA:·1c2027f73c3a12ecab6412dd629789ae329f784b22dcfbfb4347c32eb09d1ed5·...·]-3">]</span><span·class="p">,</span><span·class="w">396 ··</span><span·class="p"·data-group-id="1251974454-3">[</span><span·class="p"·data-group-id="1251974454-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1251974454-5">{</span><span·class="ss">is_seq_trace</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·347,·SHA:·98e0924d496e6febae09d0be6b34484b0f96465f4eaaabc9eed6c9a6a48153e3·...·]-3">]</span><span·class="p">,</span><span·class="w">
397 ··</span><span·class="p"·data-group-id="0733445877-7">[</span><span·class="p"·data-group-id="0733445877-7">]</span><span·class="p"·data-group-id="0733445877-2">}</span><span·class="p"·data-group-id="0733445877-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="1251974454-7">[</span><span·class="p"·data-group-id="1251974454-7">]</span><span·class="p"·data-group-id="1251974454-2">}</span><span·class="p"·data-group-id="1251974454-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="9418188305-1">[</span><span·class="p"·data-group-id="9418188305-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="6402372964-1">[</span><span·class="p"·data-group-id="6402372964-2">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
399 ··</span><span·class="p"·data-group-id="9418188305-3">[</span><span·class="p"·data-group-id="9418188305-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="9418188305-5">{</span><span·class="nb">hd</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·244,·SHA:·e3f360734f638ef07e399269111270d7cd85ba88fabe62b99eeb3ddb0dd9a14e·...·]-3">]</span><span·class="p">,</span><span·class="w">399 ··</span><span·class="p"·data-group-id="6402372964-3">[</span><span·class="p"·data-group-id="6402372964-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6402372964-5">{</span><span·class="nb">hd</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·244,·SHA:·13504127e134718167ae16f946965c6874325363272f0be935aa1da7a9150290·...·]-3">]</span><span·class="p">,</span><span·class="w">
400 ··</span><span·class="p"·data-group-id="9418188305-6">[</span><span·class="p"·data-group-id="9418188305-7">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9418188305-8">[</span><span·class="ss">silent</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·309,·SHA:·b9e2f5905232f75f191489b892a62b724eb56d0488c2a56bc7f306e058998b8b·...·]-2">}</span><span·class="p">,</span><span·class="w">400 ··</span><span·class="p"·data-group-id="6402372964-6">[</span><span·class="p"·data-group-id="6402372964-7">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6402372964-8">[</span><span·class="ss">silent</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·309,·SHA:·86a54e7ce932e0a868c645ecd5ebc5de849ab23663cd2ae4a629236c486bea68·...·]-2">}</span><span·class="p">,</span><span·class="w">
401 ·</span><span·class="p"·data-group-id="9418188305-10">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">401 ·</span><span·class="p"·data-group-id="6402372964-10">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
402 ··</span><span·class="p"·data-group-id="9418188305-11">[</span><span·class="p"·data-group-id="9418188305-12">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="9418188305-13">{</span><span·class="nb">hd</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·248,·SHA:·ed3862ea2baf8ca4180baa6a01e7034bc97b702f66b72d839e9ceb2be57ed1f4·...·]-11">]</span><span·class="p">,</span><span·class="w">402 ··</span><span·class="p"·data-group-id="6402372964-11">[</span><span·class="p"·data-group-id="6402372964-12">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6402372964-13">{</span><span·class="nb">hd</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·248,·SHA:·7f43386e167c09da8ae08a32497ae0b30c4b523ccbe8979559267d38f8538134·...·]-11">]</span><span·class="p">,</span><span·class="w">
403 ··</span><span·class="p"·data-group-id="9418188305-14">[</span><span·class="p"·data-group-id="9418188305-15">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9418188305-16">[</span><span·class="p"·data-group-id="9418188305-16">]<[·...·truncated·by·diffoscope;·len:·630,·SHA:·5899fff8545403021479d39db6aed3b10b590d83b57d659ac000447a165eb01a·...·]-2">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">403 ··</span><span·class="p"·data-group-id="6402372964-14">[</span><span·class="p"·data-group-id="6402372964-15">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6402372964-16">[</span><span·class="p"·data-group-id="6402372964-16">]<[·...·truncated·by·diffoscope;·len:·630,·SHA:·673eafaa12b7fba22d505c73729580932b533d6428e2468f49a434e6e6ac7bec·...·]-2">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
404 ··</span><span·class="p"·data-group-id="6981639490-3">[</span><span·class="p"·data-group-id="6981639490-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6981639490-5">{</span><span·class="nb">length</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·241,·SHA:·104be928f7b005484162f214f65f0c63de9ffbb9dca9851cd455015369254d1d·...·]-3">]</span><span·class="p">,</span><span·class="w">404 ··</span><span·class="p"·data-group-id="6630622792-3">[</span><span·class="p"·data-group-id="6630622792-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6630622792-5">{</span><span·class="nb">length</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·241,·SHA:·74156dc664941385fcd471a389f4b3a57015f31585e6a2db51266f4e1a9910d6·...·]-3">]</span><span·class="p">,</span><span·class="w">
405 ··</span><span·class="p"·data-group-id="6981639490-6">[</span><span·class="p"·data-group-id="6981639490-7">{</span><span·class="ss">return_trace</span><span·class="p"·data-group-id="6981639490-7">}</span><span·class="p"·data-group-id="6981639490-6">]</span><span·class="p"·data-group-id="698163949[·...·truncated·by·diffoscope;·len:·1,·SHA:·5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9·...·]-2">}</span><span·class="p">,</span><span·class="w">405 ··</span><span·class="p"·data-group-id="6630622792-6">[</span><span·class="p"·data-group-id="6630622792-7">{</span><span·class="ss">return_trace</span><span·class="p"·data-group-id="6630622792-7">}</span><span·class="p"·data-group-id="6630622792-6">]</span><span·class="p"·data-group-id="663062279[·...·truncated·by·diffoscope;·len:·1,·SHA:·d4735e3a265e16eee03f59718b9b5d03019c07d8b6c51f90da3a666eec13ab35·...·]-2">}</span><span·class="p">,</span><span·class="w">
406 ·</span><span·class="p"·data-group-id="6981639490-8">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6981639490-9">[</span><span·class="p"·data-group-id="6981639490-9">]</span><span·class="p">,</span><span·class="p"·data-group-id="6981639490-10">[·...·truncated·by·diffoscope;·len:·156,·SHA:·7cb1bb38a301b4c02ebe3ffca89b955594843b5683a2e82d0cc0ef90700d4db1·...·]-1">]</span></code></pre><p>Generate·a·trace·message·only·if·the·function·is·of·arity·3·and·the·first406 ·</span><span·class="p"·data-group-id="6630622792-8">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6630622792-9">[</span><span·class="p"·data-group-id="6630622792-9">]</span><span·class="p">,</span><span·class="p"·data-group-id="6630622792-10">[·...·truncated·by·diffoscope;·len:·156,·SHA:·9637f770ae049b006fca3b23e8ca008dc7a826413120c26eae4a70e58b1c3e5d·...·]-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="1600982834-1">[</span><span·class="p"·data-group-id="1600982834-2">{</span><span·class="p"·data-group-id="1600982834-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:·71,·SHA:·8da51566b1f8127a138baf5b1d6aca9ddf480e39a10c69eec7e39560a32767fb·...·]4-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="6742774154-1">[</span><span·class="p"·data-group-id="6742774154-2">{</span><span·class="p"·data-group-id="6742774154-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:·71,·SHA:·4001be5ba043474154a535a088976ed2b37ef97fb1d84357cb4037313b512fa4·...·]4-3">]</span><span·class="p">,</span><span·class="w">
408 ··</span><span·class="p"·data-group-id="1600982834-4">[</span><span·class="p"·data-group-id="1600982834-4">]</span><span·class="p">,</span><span·class="w">408 ··</span><span·class="p"·data-group-id="6742774154-4">[</span><span·class="p"·data-group-id="6742774154-4">]</span><span·class="p">,</span><span·class="w">
409 ··</span><span·class="p"·data-group-id="1600982834-5">[</span><span·class="p"·data-group-id="1600982834-5">]</span><span·class="p"·data-group-id="1600982834-2">}</span><span·class="p">,</span><span·class="w">409 ··</span><span·class="p"·data-group-id="6742774154-5">[</span><span·class="p"·data-group-id="6742774154-5">]</span><span·class="p"·data-group-id="6742774154-2">}</span><span·class="p">,</span><span·class="w">
410 ·</span><span·class="p"·data-group-id="1600982834-6">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1600982834-7">[</span><span·class="p"·data-group-id="1600982834-7">]</span><span·class="p">,</span><span·class="p"·data-group-id="1600982834-8">[·...·truncated·by·diffoscope;·len:·154,·SHA:·879c1b475fde9fb73b322b109f0d8dac00c647a2985d019660e72643a4c04844·...·]4-1">]</span></code></pre><h2·id="ets-examples"·class="section-heading">410 ·</span><span·class="p"·data-group-id="6742774154-6">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6742774154-7">[</span><span·class="p"·data-group-id="6742774154-7">]</span><span·class="p">,</span><span·class="p"·data-group-id="6742774154-8">[·...·truncated·by·diffoscope;·len:·154,·SHA:·aff1926dde86d34f56dd9436758b0766831b9824e054c69c6de858056810d35d·...·]4-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="0838643303-1">[</span><span·class="p"·data-group-id="0838643303-2">{</span><span·class="p"·data-group-id="0838643303-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:·537afd61f1250f875ed01d782c09cbee05367229b1a9509c8671a51a61b18c5a·...·]-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="8038507861-1">[</span><span·class="p"·data-group-id="8038507861-2">{</span><span·class="p"·data-group-id="8038507861-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:·6a77d65d87b12c229348cf744b86d8bfdab68b32b9e72dad9806ce4938150ae2·...·]-3">}</span><span·class="p">,</span><span·class="w">
418 ··</span><span·class="p"·data-group-id="0838643303-4">[</span><span·class="p"·data-group-id="0838643303-4">]</span><span·class="p">,</span><span·class="w">418 ··</span><span·class="p"·data-group-id="8038507861-4">[</span><span·class="p"·data-group-id="8038507861-4">]</span><span·class="p">,</span><span·class="w">
419 ··</span><span·class="p"·data-group-id="0838643303-5">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="0838643303-5">]</span><span·class="p"·data-group-id="0838643303-2">}</span><span·class="p"·data-group-id="0838643303-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="8038507861-5">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="8038507861-5">]</span><span·class="p"·data-group-id="8038507861-2">}</span><span·class="p"·data-group-id="8038507861-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="0942861936-1">[</span><span·class="p"·data-group-id="0942861936-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="8135045000-1">[</span><span·class="p"·data-group-id="8135045000-2">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
421 ··</span><span·class="p"·data-group-id="0942861936-3">[</span><span·class="p"·data-group-id="0942861936-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:·32da0ba1c8f9c814e1487a56afb83cbc7f21e5d39e82c1bb5805ff117c8ec8ba·...·]-3">]</span><span·class="p">,</span><span·class="w">421 ··</span><span·class="p"·data-group-id="8135045000-3">[</span><span·class="p"·data-group-id="8135045000-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:·ba1bbedc155d8afde55b63cfc0590936ba27c4310ece5c3875091458c5d122e0·...·]-3">]</span><span·class="p">,</span><span·class="w">
422 ··</span><span·class="p"·data-group-id="0942861936-8">[</span><span·class="p"·data-group-id="0942861936-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="0942861936[·...·truncated·by·diffoscope;·len:·159,·SHA:·e7e7244bb49e9e171d6362136e9f58e0cff64d306c66b45a2e9627d9651bfd47·...·]-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="8135045000-8">[</span><span·class="p"·data-group-id="8135045000-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="8135045000[·...·truncated·by·diffoscope;·len:·159,·SHA:·f3158847c5331e5aa01870522cdd784944eb22023f694ed1d643c1496c3106e4·...·]-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="3957896262-1">[</span><span·class="p"·data-group-id="3957896262-2">{</span><span·class="p"·data-group-id="3957896262-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:·60,·SHA:·ea67faf43bb3050a4ec36a9205043ba96f18810339e68fc6452966b14723d799·...·]-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="1134916540-1">[</span><span·class="p"·data-group-id="1134916540-2">{</span><span·class="p"·data-group-id="1134916540-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:·60,·SHA:·4b6f594b82d10abd8a5b3421488dbdcc2e24f29343eee8f2876d902a2cec9aa0·...·]-3">}</span><span·class="p">,</span><span·class="w">
428 ··</span><span·class="p"·data-group-id="3957896262-4">[</span><span·class="p"·data-group-id="3957896262-4">]</span><span·class="p">,</span><span·class="w">428 ··</span><span·class="p"·data-group-id="1134916540-4">[</span><span·class="p"·data-group-id="1134916540-4">]</span><span·class="p">,</span><span·class="w">
429 ··</span><span·class="p"·data-group-id="3957896262-5">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="3957896262-5">]</span><span·class="p"·data-group-id="3957896262-2">}</span><span·class="p">,</span><span·class="w">429 ··</span><span·class="p"·data-group-id="1134916540-5">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="1134916540-5">]</span><span·class="p"·data-group-id="1134916540-2">}</span><span·class="p">,</span><span·class="w">
430 ·</span><span·class="p"·data-group-id="3957896262-6">{</span><span·class="p"·data-group-id="3957896262-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="39[·...·truncated·by·diffoscope;·len:·8,·SHA:·e37936df30fcfb4da4c122e457391921d69fd626bc2734c4bddcafa23d1356fa·...·]-7">}</span><span·class="p">,</span><span·class="w">430 ·</span><span·class="p"·data-group-id="1134916540-6">{</span><span·class="p"·data-group-id="1134916540-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="11[·...·truncated·by·diffoscope;·len:·8,·SHA:·7684e6e779751f2a9a25dbc348ec1d36d4381e2e19351a4455eaac10eda8149b·...·]-7">}</span><span·class="p">,</span><span·class="w">
431 ··</span><span·class="p"·data-group-id="3957896262-8">[</span><span·class="p"·data-group-id="3957896262-8">]</span><span·class="p">,</span><span·class="w">431 ··</span><span·class="p"·data-group-id="1134916540-8">[</span><span·class="p"·data-group-id="1134916540-8">]</span><span·class="p">,</span><span·class="w">
432 ··</span><span·class="p"·data-group-id="3957896262-9">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="3957896262-9">]</span><span·class="p"·data-group-id="3957896262-6">}</span><span·class="p"·data-group-id="3957896262-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="1134916540-9">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="1134916540-9">]</span><span·class="p"·data-group-id="1134916540-6">}</span><span·class="p"·data-group-id="1134916540-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>477 <p>Copyright·©·1996-2024·<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="4782659866-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4782659866-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:·f2c620188efeace0a63405dbd55498a7deec03375858cfa57467d8846c88f6dc·...·]-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="6312637599-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6312637599-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:·4a595f6ad5f55ad7e8c6e6f758f6ab2e906c8d00ef10247998a7ebabb4315217·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
159 </span><span·class="nf">update</span><span·class="p"·data-group-id="4782659866-3">(</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="4782659866-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:·a541dc68d17796598711e4d100dd0d4d0110b8fa947683c471fd0197c2f99487·...·]-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="6312637599-3">(</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="6312637599-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:·a81f06f7ff247dd17d5e39fc1cde463c43a9da03b88dc76c255b62c37d93a9c3·...·]-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="4782659866-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">up_to_date</span><span·class="p"·data-group-id="4782659866-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="6312637599-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">up_to_date</span><span·class="p"·data-group-id="6312637599-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="4782659866-6">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">negative</span><span·class="p"·data-group-id="4782659866-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="6312637599-6">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">negative</span><span·class="p"·data-group-id="6312637599-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="4782659866-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">zero</span><span·class="p"·data-group-id="4782659866-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="6312637599-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">zero</span><span·class="p"·data-group-id="6312637599-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="4782659866-8">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">positive</span><span·class="p"·data-group-id="4782659866-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="6312637599-8">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">positive</span><span·class="p"·data-group-id="6312637599-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="1428465419-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="5178711215-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="1428465419-2">[</span><span·class="p"·data-group-id="1428465419-2">]</span><span·class="p"·data-group-id="1428465419-1">)</span><span·class="p">.</span><span·class="w">2959 ······hi\r\n\r\n&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="5178711215-2">[</span><span·class="p"·data-group-id="5178711215-2">]</span><span·class="p"·data-group-id="5178711215-1">)</span><span·class="p">.</span><span·class="w">
2960 ······</span><span·class="p"·data-group-id="1428465419-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="1428465419-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[·...·truncated·by·diffoscope;·len:·547,·SHA:·89f82222f89ad2cd410869eb7eda71b6f4116f58abb76c7b76c9b18d8bd05f3a·...·]-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·failed2960 ······</span><span·class="p"·data-group-id="5178711215-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5178711215-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[·...·truncated·by·diffoscope;·len:·547,·SHA:·b49f4911cc189f054afb7d863936edb3d27b07f374baefef9c18184962bcbd29·...·]-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="8808761135-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="8808761135-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="0646132580-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="0646132580-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="8808761135-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="8808761135-2">)</span><span·class="p">,</span><span·class="w">10677 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="0646132580-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="0646132580-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="8808761135-3">(</span><span·class="n">Mon</span><span·class="p"·data-group-id="8808761135-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="0646132580-3">(</span><span·class="n">Mon</span><span·class="p"·data-group-id="0646132580-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="8808761135-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:·d69dabdc31278c49b7a4d8dd1812669ce84bb477daf802ce6aef31e5588078bb·...·]-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="0646132580-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:·0101563e7280b5c60d021c180add63a4747fb1692f5b3d488eb64af5702b2f89·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>11232 <p>Copyright·©·1996-2024·<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="1688854142-1">(</span><span·class="ss">scheduler_id</span><span·class="p"·data-group-id="1688854142-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="9166707192-1">(</span><span·class="ss">scheduler_id</span><span·class="p"·data-group-id="9166707192-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="1688854142-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="1688854142-3">(</span><span·class="o">?[·...·truncated·by·diffoscope;·len:·129,·SHA:·8d9512649bfc8d7b00d3e7e41fa172945e7b63c4e1d3f63349d42ff50ab23b09·...·]2-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="9166707192-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="9166707192-3">(</span><span·class="o">?[·...·truncated·by·diffoscope;·len:·129,·SHA:·0da81f2cf500ca57eda0f03415d90f1000d456e104e5060fc14c5ba2f57ad85d·...·]2-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="1688854142-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="1688854142-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="9166707192-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="9166707192-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>614 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>404 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>325 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>461 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>252 <p>Copyright·©·1996-2024·<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.68 KB
./usr/share/doc/erlang-doc/html/erts-15.0.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-D123FCA0.js"></script>124 <script·src="dist/search_data-BB699C42.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>142 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v15.0.13 v15.0.1
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·erts[q···················]6 Search·documentation·of·erts[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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>189 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>235 <p>Copyright·©·1996-2024·<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="0986899378-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="9806931928-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="0986899378-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="9806931928-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>322 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>427 <p>Copyright·©·1996-2024·<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="8801770492-1">(</span><span·class="p"·data-group-id="8801770492-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="9274954353-1">(</span><span·class="p"·data-group-id="9274954353-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="8801770492-2">(</span><span·class="p"·data-group-id="8801770492-3">[</span><span·class="ss">monotonic</span><span·class="p"·data-group-id="8801770492-3">]</span><span·class="p"·data-group-id="8801770492-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="9274954353-2">(</span><span·class="p"·data-group-id="9274954353-3">[</span><span·class="ss">monotonic</span><span·class="p"·data-group-id="9274954353-3">]</span><span·class="p"·data-group-id="9274954353-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="8801770492-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="8801770492-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="9274954353-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="9274954353-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>629 <p>Copyright·©·1996-2024·<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="4544061649-1">(</span><span·class="p"·data-group-id="4544061649-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="8532017896-1">(</span><span·class="p"·data-group-id="8532017896-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="4544061649-2">(</span><span·class="p"·data-group-id="4544061649-2">)</span><span·class="p">,</span><span·class="w">153 ····</span><span·class="nf">lots</span><span·class="p"·data-group-id="8532017896-2">(</span><span·class="p"·data-group-id="8532017896-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="4544061649-3">(</span><span·class="p"·data-group-id="4544061649-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="8532017896-3">(</span><span·class="p"·data-group-id="8532017896-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="4544061649-4">(</span><span·class="p"·data-group-id="4544061649-4">)</span><span·class="p">.</span><span·class="w">156 ····</span><span·class="nf">&#39;of&#39;</span><span·class="p"·data-group-id="8532017896-4">(</span><span·class="p"·data-group-id="8532017896-4">)</span><span·class="p">.</span><span·class="w">
  
157 </span><span·class="nf">&#39;of&#39;</span><span·class="p"·data-group-id="4544061649-5">(</span><span·class="p"·data-group-id="4544061649-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="8532017896-5">(</span><span·class="p"·data-group-id="8532017896-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="4544061649-6">(</span><span·class="p"·data-group-id="4544061649-6">)</span><span·class="p">.</span><span·class="w">158 ····</span><span·class="nf">indirections</span><span·class="p"·data-group-id="8532017896-6">(</span><span·class="p"·data-group-id="8532017896-6">)</span><span·class="p">.</span><span·class="w">
  
159 </span><span·class="nf">indirections</span><span·class="p"·data-group-id="4544061649-7">(</span><span·class="p"·data-group-id="4544061649-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="8532017896-7">(</span><span·class="p"·data-group-id="8532017896-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="4544061649-8">(</span><span·class="mi">10</span><span·class="p"·data-group-id="4544061649-8">)</span><span·class="p">.</span><span·class="w">160 ····</span><span·class="nf">bar</span><span·class="p"·data-group-id="8532017896-8">(</span><span·class="mi">10</span><span·class="p"·data-group-id="8532017896-8">)</span><span·class="p">.</span><span·class="w">
  
161 </span><span·class="nf">bar</span><span·class="p"·data-group-id="4544061649-9">(</span><span·class="mi">0</span><span·class="p"·data-group-id="4544061649-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="8532017896-9">(</span><span·class="mi">0</span><span·class="p"·data-group-id="8532017896-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="4544061649-10">(</span><span·class="n">N</span><span·class="p"·data-group-id="4544061649-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="8532017896-10">(</span><span·class="n">N</span><span·class="p"·data-group-id="8532017896-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="4544061649-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="4544061649-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="8532017896-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="8532017896-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>391 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>196 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>201 <p>Copyright·©·1996-2024·<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="8449253766-1">(</span><span·class="p"·data-group-id="8449253766-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="7898886109-1">(</span><span·class="p"·data-group-id="7898886109-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="8449253766-2">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="ss">default</span><span·class="p"·data-group-id="8449253766-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="7898886109-2">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="ss">default</span><span·class="p"·data-group-id="7898886109-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="8449253766-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="8449253766-3">)</span><span·class="w">·</span><span·class="p">-&gt;</[·...·truncated·by·diffoscope;·len:·123,·SHA:·3fd0318d80bb1988e7a28ac3daba5beb98d77ccf4e6be11c02fbe4cd612adf57·...·]-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="7898886109-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="7898886109-3">)</span><span·class="w">·</span><span·class="p">-&gt;</[·...·truncated·by·diffoscope;·len:·123,·SHA:·7806ece10064c081873a500b7539639912f97510dc3f35fdf0740668dc614263·...·]-4">]</span><span·class="p">;</span><span·class="w">
138 ··············</span><span·class="p"·data-group-id="8449253766-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="8449253766-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">138 ··············</span><span·class="p"·data-group-id="7898886109-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="7898886109-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
139 ·················</span><span·class="p"·data-group-id="8449253766-6">[</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflate</span><span·class="p"·data-group-id="8449253766-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:·27da617f70a478a15ae348740e5e23e9a5da7bbab9f5c4a196d32f224ed9b542·...·]-6">]</span><span·class="w">139 ·················</span><span·class="p"·data-group-id="7898886109-6">[</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflate</span><span·class="p"·data-group-id="7898886109-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:·da3e6a2d12c7859bbfcd34858b37560131661037df4d0c01b8ef3eada153eab2·...·]-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="8449253766-10">(</span><span·class="n">Read</span><span·class="p"·data-group-id="8449253766-11">(</span><span·class="p"·data-group-id="8449253766-11">)</span><span·class="p">,</span><span·class="n">Compress</span><span·class="p"·data-group-id="8449253766-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="7898886109-10">(</span><span·class="n">Read</span><span·class="p"·data-group-id="7898886109-11">(</span><span·class="p"·data-group-id="7898886109-11">)</span><span·class="p">,</span><span·class="n">Compress</span><span·class="p"·data-group-id="7898886109-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="8449253766-12">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8449253766-13">[</span><span·class="p"·data-group-id="8449253766-13">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·66,·SHA:·b890619d276fc55500aca47d61c687962c641861899e30dbe33bd6480387ec8f·...·]-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="7898886109-12">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7898886109-13">[</span><span·class="p"·data-group-id="7898886109-13">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·66,·SHA:·d25650d38a69664a073a13184bd62e2fdbea04e93a9268bc3672ce41698b2e1f·...·]-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="8449253766-14">(</span><span·class="n">Z</span><span·class="p"·data-group-id="8449253766-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="7898886109-14">(</span><span·class="n">Z</span><span·class="p"·data-group-id="7898886109-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="8449253766-15">(</span><span·class="n">Z</span><span·class="p"·data-group-id="8449253766-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="7898886109-15">(</span><span·class="n">Z</span><span·class="p"·data-group-id="7898886109-15">)</span><span·class="p">,</span><span·class="w">
145 </span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="8449253766-16">(</span><span·class="p"·data-group-id="8449253766-17">[</span><span·class="n">Compressed</span><span·class="p">|</span><span·class="n">Last</span><span·class="p"·data-group-id="8449253766-17">]</span><span·class="p"·data-group-id="8449253766-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="7898886109-16">(</span><span·class="p"·data-group-id="7898886109-17">[</span><span·class="n">Compressed</span><span·class="p">|</span><span·class="n">Last</span><span·class="p"·data-group-id="7898886109-17">]</span><span·class="p"·data-group-id="7898886109-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="1836951171-1">(</span><span·class="n">Z</span><span·class="p"·data-group-id="1836951171-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="8569133651-1">(</span><span·class="n">Z</span><span·class="p"·data-group-id="8569133651-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="1836951171-2">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="1836951171-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="8569133651-2">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="8569133651-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="1836951171-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="1836951171-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="8569133651-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="8569133651-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="1836951171-4">(</span><span·class="n">Z</span><span·class="p"·data-group-id="1836951171-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="8569133651-4">(</span><span·class="n">Z</span><span·class="p"·data-group-id="8569133651-4">)</span><span·class="p">,</span><span·class="w">
860 </span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="1836951171-5">(</span><span·class="p"·data-group-id="1836951171-6">[</span><span·class="n">B1</span><span·class="p">,</span><span·class="n">B2</span><span·class="p"·data-group-id="1836951171-6">]</span><span·class="p"·data-group-id="1836951171-5">)</span></code></pre>860 </span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="8569133651-5">(</span><span·class="p"·data-group-id="8569133651-6">[</span><span·class="n">B1</span><span·class="p">,</span><span·class="n">B2</span><span·class="p"·data-group-id="8569133651-6">]</span><span·class="p"·data-group-id="8569133651-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="0255863744-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="0255863744-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="3736832865-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="3736832865-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="0255863744-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="0255863744-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="3736832865-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="3736832865-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
1414 ··········</span><span·class="p"·data-group-id="0255863744-3">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="0255863744-4">{</span><span·class="p"·data-group-id="0255863744-5">{</span><span·class="ss">need_dictionary</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·245,·SHA:·06d7eb048f514e0d2460cf6a54182cf98856727423c447f82a43044c7929b4bb·...·]-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1414 ··········</span><span·class="p"·data-group-id="3736832865-3">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="3736832865-4">{</span><span·class="p"·data-group-id="3736832865-5">{</span><span·class="ss">need_dictionary</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·245,·SHA:·44b2b022ff063091abb1e4a5d22233d062fb787ee3a82c8b1312283ca896d4db·...·]-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="0255863744-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="0255863744-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="3736832865-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="3736832865-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="0255863744-7">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0255863744-8">[</span><span·class="p"·data-group-id="0255863744-8">]</span><span·class="p"·data-group-id="0255863744-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="3736832865-7">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3736832865-8">[</span><span·class="p"·data-group-id="3736832865-8">]</span><span·class="p"·data-group-id="3736832865-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="0255863744-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="0255863744-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="3736832865-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="3736832865-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="0255863744-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="0255863744-11">[</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·300,·SHA:·20950b478ce92f6e8b45bbe4c7f5ed42095cdd3a360a4d2ddaed1a38082d0b3c·...·]-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="3736832865-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="3736832865-11">[</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·300,·SHA:·e96fc8cd10380c11f4f9c7051ec4879d00dcebe033e15c3723fd9b26b43b8759·...·]-10">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
1422 ········</span><span·class="p"·data-group-id="0255863744-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:·4bbdf90445204f2e279d63ecdd2de562b51a1468ce2afac8a564813ad3d7c4ae·...·]-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1422 ········</span><span·class="p"·data-group-id="3736832865-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:·44571b0e0c9a3c394203bb3eb13200405b5d5123e5b3ca60cfd745f53058f807·...·]-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="0255863744-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="0255863744-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="3736832865-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="3736832865-14">)</span><span·class="p">,</span><span·class="w">
1424 ············</span><span·class="p"·data-group-id="0255863744-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="0255863744-16">(</[·...·truncated·by·diffoscope;·len:·280,·SHA:·f63145c58a36357ff3a97b54e005738e6336670e5fc4b0987e722b50330955a8·...·]-15">]</span><span·class="p">;</span><span·class="w">1424 ············</span><span·class="p"·data-group-id="3736832865-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="3736832865-16">(</[·...·truncated·by·diffoscope;·len:·280,·SHA:·961f7fff76518b3b304fd8bc66e25f633253c3791c12622a387515b5ec48162f·...·]-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="0333553098-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="0333553098-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="9612847546-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="9612847546-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="0333553098-2">(</span><span·class="p"·data-group-id="0333553098-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="9612847546-2">(</span><span·class="p"·data-group-id="9612847546-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="0333553098-3">(</span><span·class="n">Z</span><span·class="p"·data-group-id="0333553098-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="9612847546-3">(</span><span·class="n">Z</span><span·class="p"·data-group-id="9612847546-3">)</span><span·class="p">,</span><span·class="w">
1504 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="0333553098-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</sp[·...·truncated·by·diffoscope;·len:·255,·SHA:·7dca68b9632464ecdf13f9817a1b3059fba0446dee74d330ec6be7a1ccceaea7·...·]-4">)</span><span·class="p">,</span><span·class="w">1504 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="9612847546-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</sp[·...·truncated·by·diffoscope;·len:·255,·SHA:·f4103bfa35ed36e4e79b8bda9c8d7ca73850fc48041830355cd5ed6f25670821·...·]-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="0333553098-6">(</span><span·class="n">Z</span><span·class="p"·data-group-id="0333553098-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="9612847546-6">(</span><span·class="n">Z</span><span·class="p"·data-group-id="9612847546-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="0333553098-7">(</span><span·class="n">Z</span><span·class="p"·data-group-id="0333553098-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="9612847546-7">(</span><span·class="n">Z</span><span·class="p"·data-group-id="9612847546-7">)</span><span·class="p">.</span><span·class="w">
  
1507 </span><span·class="nf">loop</span><span·class="p"·data-group-id="0333553098-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="0333553098-9">{</span><span·class="ss">continue</span[·...·truncated·by·diffoscope;·len:·172,·SHA:·bc3f1f97afd28ea074a0a36a4a184d0d1dcf9891ebee581a8480f6a4455902cc·...·]-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="9612847546-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="9612847546-9">{</span><span·class="ss">continue</span[·...·truncated·by·diffoscope;·len:·172,·SHA:·3cf3aee8047abca3d17b8dc6dac0e5da9cb0533f4d0cc17dd041789c9a5c3777·...·]-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="0333553098-10">(</span><span·class="n">Output</span><span·class="p"·data-group-id="0333553098-10">)</span><span·class="p">,</span><span·class="w">1508 ····</span><span·class="n">Handler</span><span·class="p"·data-group-id="9612847546-10">(</span><span·class="n">Output</span><span·class="p"·data-group-id="9612847546-10">)</span><span·class="p">,</span><span·class="w">
1509 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="0333553098-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</s[·...·truncated·by·diffoscope;·len:·333,·SHA:·549de4c3448b01e03bc876a1c7e8f9f8e9b8d7c0715ba24a64e3349cac08bffa·...·]-11">)</span><span·class="p">;</span><span·class="w">1509 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="9612847546-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</s[·...·truncated·by·diffoscope;·len:·333,·SHA:·6b5ee6c478c6651e30349f53650b5f235bd3c1552f047da34db40fcd97593e69·...·]-11">)</span><span·class="p">;</span><span·class="w">
1510 </span><span·class="nf">loop</span><span·class="p"·data-group-id="0333553098-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="0333553098-15">{</span><span·class="ss">finished</sp[·...·truncated·by·diffoscope;·len:·175,·SHA:·5f84f62eca2de57dc8f68d05f2f2934a6a09ab834fc3448317a1c12c2e53696b·...·]-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="9612847546-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="9612847546-15">{</span><span·class="ss">finished</sp[·...·truncated·by·diffoscope;·len:·175,·SHA:·fc8581cf161fd5a227db14ecea02428b7875f24322d4d18c274bd325db188424·...·]-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="0333553098-16">(</span><span·class="n">Output</span><span·class="p"·data-group-id="0333553098-16">)</span><span·class="p">.</span></code></pre>1511 ····</span><span·class="n">Handler</span><span·class="p"·data-group-id="9612847546-16">(</span><span·class="n">Output</span><span·class="p"·data-group-id="9612847546-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1649 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2024·<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
343 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/asn1.epub
3.09 KB
zipinfo {}
Max HTML report size reached
62.0 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
2.36 KB
OEBPS/content.opf
2.32 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>204 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2024·<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="0840060347-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">ExclMessage</span><span·class="p"·data-group-id="0840060347-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;MyMo[·...·truncated·by·diffoscope;·len:·200,·SHA:·4539345b40a960a61ec586ba56ff0cfd8cadf4625662115df54af64efc0f4d0c·...·]-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="0089273738-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">ExclMessage</span><span·class="p"·data-group-id="0089273738-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;MyMo[·...·truncated·by·diffoscope;·len:·200,·SHA:·360b67f246591149b65b576efe985fa8d4c9e0211c4733ced2f648c115fdf06f·...·]-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="9098553070-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">PartMessage</span><span·class="p"·data-group-id="9098553070-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:·56f0f9d1664c98d0342c14fb8fa1a7580df82a38e1ab2edd736a8370b54fa157·...·]-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="7127848987-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">PartMessage</span><span·class="p"·data-group-id="7127848987-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:·da8cc280ed1dea04cef07b7424e2bbd57e395e829a97b6c24009aa65e27fc3eb·...·]-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="3882957504-1">{</span><span·class="ss">exclusive_decode</span><span·class="p">,</span><span·class="p"·data-group-id="3882957504-2">{</span><span·class="n">ModuleName</span><span·class="p">,</span><span·class="n">DecodeInstructions</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·75,·SHA:·e45a77818bc72bc0d0102137da53acdec99d5ecfdffa981de36f2cf393036b33·...·]-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="8994643376-1">{</span><span·class="ss">exclusive_decode</span><span·class="p">,</span><span·class="p"·data-group-id="8994643376-2">{</span><span·class="n">ModuleName</span><span·class="p">,</span><span·class="n">DecodeInstructions</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·75,·SHA:·a0413c7386bc93ba83ac8bfedbb92a77ebcfaabf8f1d33e427e84b8281647b3b·...·]-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="3882957504-3">(</span><span·class="p"·data-group-id="3882957504-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="8994643376-3">(</span><span·class="p"·data-group-id="8994643376-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="3882957504-4">[</span><span·class="n">DecodeInstruction</span><span·class="p"·data-group-id="3882957504-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="8994643376-4">[</span><span·class="n">DecodeInstruction</span><span·class="p"·data-group-id="8994643376-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="3882957504-5">{</span><span·class="n">ExclusiveDecodeFunctionName</span><span·class="p">,</span><span·class="n">TypeList</span><span·class="p"·data-group-id="3882957504-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="8994643376-5">{</span><span·class="n">ExclusiveDecodeFunctionName</span><span·class="p">,</span><span·class="n">TypeList</span><span·class="p"·data-group-id="8994643376-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="3882957504-6">(</span><span·class="p"·data-group-id="3882957504-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="8994643376-6">(</span><span·class="p"·data-group-id="8994643376-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="3882957504-7">[</span><span·class="n">TopType</span><span·class="p">,</span><span·class="n">ElementList</span><span·class="p"·data-group-id="3882957504-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="8994643376-7">[</span><span·class="n">TopType</span><span·class="p">,</span><span·class="n">ElementList</span><span·class="p"·data-group-id="8994643376-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="3882957504-8">[</span><span·class="n">Element</span><span·class="p"·data-group-id="3882957504-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="8994643376-8">[</span><span·class="n">Element</span><span·class="p"·data-group-id="8994643376-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="3882957504-9">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="ss">parts</span><span·class="p"·data-group-id="3882957504-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="8994643376-9">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="ss">parts</span><span·class="p"·data-group-id="8994643376-9">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
186 ··········</span><span·class="p"·data-group-id="3882957504-10">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="ss">undecoded</span><span·class="p"·data-group-id="3882957504-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">186 ··········</span><span·class="p"·data-group-id="8994643376-10">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="ss">undecoded</span><span·class="p"·data-group-id="8994643376-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
187 ··········</span><span·class="p"·data-group-id="3882957504-11">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">ElementList</span><span·class="p"·data-group-id="3882957504-11">}</span><span·class="w">187 ··········</span><span·class="p"·data-group-id="8994643376-11">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">ElementList</span><span·class="p"·data-group-id="8994643376-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="3882957504-12">(</span><span·class="p"·data-group-id="3882957504-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="8994643376-12">(</span><span·class="p"·data-group-id="8994643376-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="3882957504-13">(</span><span·class="p"·data-group-id="3882957504-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="8994643376-13">(</span><span·class="p"·data-group-id="8994643376-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="3485106342-1">(</span><span·class="ss">&#39;GUI&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3485106342-2">[</span><span·class="ss">ber</span><span·class="p">,</span><span·class="ss">asn1config</span><span·class[·...·truncated·by·diffoscope;·len:·144,·SHA:·ae37d21c4c5fad37275e9c8f94591f82daa436cebe2360381d14eb7b45d302bf·...·]-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="6973074379-1">(</span><span·class="ss">&#39;GUI&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6973074379-2">[</span><span·class="ss">ber</span><span·class="p">,</span><span·class="ss">asn1config</span><span·class[·...·truncated·by·diffoscope;·len:·144,·SHA:·74f99c53ecea7e8ee9a92ad8d49d84e8a17e738b2b461d79bd54731e2fa7fc04·...·]-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="3485106342-3">(</span><span·class="ss">&#39;GUI&#39;</span><span·class="p"·data-group-id="3485106342-3">)</span><span·class="p">.</span><span·class="w">266 2&gt;·</span><span·class="nf">rr</span><span·class="p"·data-group-id="6973074379-3">(</span><span·class="ss">&#39;GUI&#39;</span><span·class="p"·data-group-id="6973074379-3">)</span><span·class="p">.</span><span·class="w">
267 </span><span·class="p"·data-group-id="3485106342-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="3485106342-4">]</span><span·class="gp·unselectable">267 </span><span·class="p"·data-group-id="6973074379-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="6973074379-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="3485106342-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="3485106342-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="6973074379-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="6973074379-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="3485106342-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:·fe56af01c54fcc4f6f8fd9e0bbb06ed2d2c2475cf6f3d86aea90f8bb4edf3ea0·...·]-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="6973074379-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:·a6975935235dfd434d5f32f27bb2a361188013e94c906412f4d05ce2a040754e·...·]-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="3485106342-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="3485106342-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="6973074379-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="6973074379-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="3485106342-8">(</span><span·class="n">ButtonBytes</span><span·class="p"·data-group-id="3485106342-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="6973074379-8">(</span><span·class="n">ButtonBytes</span><span·class="p"·data-group-id="6973074379-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="3485106342-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="3485106342-10">{</span><span·class="ss">&#39;Button_number&#39;</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·223,·SHA:·e152cfbc6c3348b6d121169591fb80af3ae6966f7686f97f298a5a0a4d79034e·...·]-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="6973074379-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="6973074379-10">{</span><span·class="ss">&#39;Button_number&#39;</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·223,·SHA:·cf1b42a94411269741f30d55b80ca1349d24eb10fb56b0e1122d7f7e79ca5aee·...·]-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="3485106342-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="6973074379-9">}</span><span·class="gp·unselectable">
275 6&gt;·</span><span·class="p"·data-group-id="3485106342-11">{</span><span·class="n">UndecKey</span><span·class="p">,</span><span·class="n">UndecBytes</span><span·class="p"·data-group-id="3485106342-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="6973074379-11">{</span><span·class="n">UndecKey</span><span·class="p">,</span><span·class="n">UndecBytes</span><span·class="p"·data-group-id="6973074379-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="3485106342-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:·4a65e685526e04eb5651b5fe2aea37dcd9e11c97970fdeb8c8c2eb4551dec379·...·]-12">}</span><span·class="gp·unselectable">276 </span><span·class="p"·data-group-id="6973074379-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:·ce25b97e1f6aa508937c1a0f634e2f2bf4529cc80a676e84252228741e9d90bb·...·]-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="3485106342-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="3485106342-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="6973074379-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="6973074379-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="3485106342-14">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="p"·data-group-id="3485106342-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="6973074379-14">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="p"·data-group-id="6973074379-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="3485106342-16">[</span><span·class="p"·data-group-id="3485106342-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="3485106[·...·truncated·by·diffoscope;·len:·3,·SHA:·023849c38925e2af028a2eb4e1dc41afd7dc7a238195c1c2ae00438d1dae00e1·...·]-17">}</span><span·class="p">,</span><span·class="w">281 ···</span><span·class="p"·data-group-id="6973074379-16">[</span><span·class="p"·data-group-id="6973074379-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="6973074[·...·truncated·by·diffoscope;·len:·3,·SHA:·64c212df34c66e6fe9fccbfebc8899c10584cfa1669c42a175d65db073b13bc0·...·]-17">}</span><span·class="p">,</span><span·class="w">
282 ····</span><span·class="p"·data-group-id="3485106342-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="3485106342-18">}</span><span·class="p">,</span><span·class="w">282 ····</span><span·class="p"·data-group-id="6973074379-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="6973074379-18">}</span><span·class="p">,</span><span·class="w">
283 ····</span><span·class="p"·data-group-id="3485106342-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="3485106342-19">}</span><span·class="p">,</span><span·class="w">283 ····</span><span·class="p"·data-group-id="6973074379-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="6973074379-19">}</span><span·class="p">,</span><span·class="w">
284 ····</span><span·class="p"·data-group-id="3485106342-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="3485106342-20">}</span><span·class="p">,</span><span·class="w">284 ····</span><span·class="p"·data-group-id="6973074379-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="6973074379-20">}</span><span·class="p">,</span><span·class="w">
285 ····</span><span·class="p"·data-group-id="3485106342-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="3485106342-21">}</span><span·class="p"·data-group-id="348510[·...·truncated·by·diffoscope;·len:·4,·SHA:·40fb2eddec2f3ffd73fd49b0b72d6f0a1821308747ace6ea3049b40c45917870·...·]-16">]</span><span·class="p">,</span><span·class="w">285 ····</span><span·class="p"·data-group-id="6973074379-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="6973074379-21">}</span><span·class="p"·data-group-id="697307[·...·truncated·by·diffoscope;·len:·4,·SHA:·89e9e4fb88afcb66fdbaea7c2395abb79495adb9393945d87f0715911fc0449a·...·]-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="3485106342-22">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="3485106342-23">[</span><span·class="p"·data-group-id="3485106342-24">{</span><span·class="ss">&#39;Action&#39;</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·559,·SHA:·3d3db8a39a2e97a38e3b3c0e752d75e503c027dd2cb7543861b6cf8da9060245·...·]-14">}</span><span·class="p">.</span><span·class="w">287 ···</span><span·class="p"·data-group-id="6973074379-22">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="6973074379-23">[</span><span·class="p"·data-group-id="6973074379-24">{</span><span·class="ss">&#39;Action&#39;</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·559,·SHA:·abce9ddc9384e1f80e032c21da8e8df5b2f13153d5fe49dd87fa4234643e18dd·...·]-14">}</span><span·class="p">.</span><span·class="w">
288 </span><span·class="p"·data-group-id="3485106342-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="3485106342-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="6973074379-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="6973074379-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="3485106342-28">[</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3485106342-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:·a44587fc59214a3799c39bc1fc898fcba7edc592a7031efcb6d860528ff0b5c3·...·]-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="6973074379-28">[</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="6973074379-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:·6a206a94e1f41c36d751bbec06971b726a0f0af5c3a0856b370fe6fbd488b22d·...·]-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="3485106342-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:·c5c2310364bfa6923da185ae666d21a538be93ab8124654454fbf891e36f1d8e·...·]-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="6973074379-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:·a42d1df50f1b447b36e289b7b39b8ed8ab92d292c482462da026d7e2bc4975dd·...·]-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="3485106342-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:·7f058dc3aea18ebe5d13489b602790fdbc6710a03eb285bcfcae3181a8ef688b·...·]-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="6973074379-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:·d81718bda3f347dcbeb27ed734fb81f58809dbe91e7775e62c89a24bcdee7e49·...·]-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="3485106342-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:·7f058dc3aea18ebe5d13489b602790fdbc6710a03eb285bcfcae3181a8ef688b·...·]-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="6973074379-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:·d81718bda3f347dcbeb27ed734fb81f58809dbe91e7775e62c89a24bcdee7e49·...·]-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="3485106342-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:·c0c3e62bd7d7e917b00f93f2eee6592bfa6ca5797c14ba9357517dfb2d51b0ea·...·]-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="6973074379-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:·cbabcbaefba5f2d9ebbdc7292e364e6cdcefecb8a723c489a850875b9cdd4b42·...·]-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="3485106342-34">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="3485106342-35">[</span><span·class="o">#</span><span·class="ss">&#39;Action&#39;</span><span·class="p"·data-group-id="3485106342-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="6973074379-34">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="6973074379-35">[</span><span·class="o">#</span><span·class="ss">&#39;Action&#39;</span><span·class="p"·data-group-id="6973074379-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="3485106342-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:·6c43d6b0ce944e2b3b0da06136ec0b948172e6bbaa714c28da2f9e92d116daeb·...·]-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="6973074379-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:·f304bbb4eec158d2d9d956989d857c742731711e2b84698880e823749696dcb2·...·]-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="3485106342-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="3485106342-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="6973074379-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="6973074379-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="3485106342-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="3485106342-40">{</span><span·class="ss">buttonList</span><span·class="o">=</span><sp[·...·truncated·by·diffoscope;·len:·300,·SHA:·9419a0ae8a0b82971442cecf04f2897dc6dfaaea5c8f6a86bd3d2e3d9b400bc0·...·]-39">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">300 10&gt;·</span><span·class="p"·data-group-id="6973074379-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="6973074379-40">{</span><span·class="ss">buttonList</span><span·class="o">=</span><sp[·...·truncated·by·diffoscope;·len:·300,·SHA:·0209fc1ae40f957072088fdba8c199942f0f39dd78c3ffcd186ae79ac8bc92e9·...·]-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="3485106342-42">(</span><span·class="n">WindowBytes</span><span·class="p"·data-group-id="3485106342-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="6973074379-42">(</span><span·class="n">WindowBytes</span><span·class="p"·data-group-id="6973074379-42">)</span><span·class="p">.</span><span·class="w">
302 </span><span·class="p"·data-group-id="3485106342-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="3485106342-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="6973074379-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="6973074379-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="3485106342-45">{</span><span·class="ss">&#39;Status_buttonList&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="3485106342-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="6973074379-45">{</span><span·class="ss">&#39;Status_buttonList&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6973074379-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="3485106342-46">]</span><span·class="p"·data-group-id="3485106342-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="6973074379-46">]</span><span·class="p"·data-group-id="6973074379-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="3485106342-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="6973074379-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="3485106342-47">}</span><span·class="p"·data-group-id="3485106342-44">}</span><span·class="p"·data-group-id="3485106342-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="6973074379-47">}</span><span·class="p"·data-group-id="6973074379-44">}</span><span·class="p"·data-group-id="6973074379-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="3485106342-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="3485106342-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="6973074379-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="6973074379-48">)</span><span·class="p">.</span><span·class="w">
314 </span><span·class="p"·data-group-id="3485106342-49">[</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3485106342-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:·a44587fc59214a3799c39bc1fc898fcba7edc592a7031efcb6d860528ff0b5c3·...·]-50">}</span><span·class="p">,</span><span·class="w">314 </span><span·class="p"·data-group-id="6973074379-49">[</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="6973074379-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:·6a206a94e1f41c36d751bbec06971b726a0f0af5c3a0856b370fe6fbd488b22d·...·]-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="3485106342-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:·c5c2310364bfa6923da185ae666d21a538be93ab8124654454fbf891e36f1d8e·...·]-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="6973074379-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:·a42d1df50f1b447b36e289b7b39b8ed8ab92d292c482462da026d7e2bc4975dd·...·]-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="3485106342-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:·7f058dc3aea18ebe5d13489b602790fdbc6710a03eb285bcfcae3181a8ef688b·...·]-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="6973074379-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:·d81718bda3f347dcbeb27ed734fb81f58809dbe91e7775e62c89a24bcdee7e49·...·]-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="3485106342-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:·7f058dc3aea18ebe5d13489b602790fdbc6710a03eb285bcfcae3181a8ef688b·...·]-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="6973074379-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:·d81718bda3f347dcbeb27ed734fb81f58809dbe91e7775e62c89a24bcdee7e49·...·]-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="3485106342-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:·78f1e657f507339b6be992ea45bce59a604c0e4f82c9f0d6408e4bfd3491bb3e·...·]-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="6973074379-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:·cea52152552274e980985bfce92f2913f0e11e9164f3de9ac62bfdd44b813bbd·...·]-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="3485106342-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="3485106342-56">(</span><span·class="n">UndecWindowParts</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·9010a7e5907f0479b346f38594ef7b23af0a2a52130a00c4690e02304c51a589·...·]-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="6973074379-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="6973074379-56">(</span><span·class="n">UndecWindowParts</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·cbc19a0e72906a72f3bdf90ac02a664ff624056f1f0967dffe072855b660ddff·...·]-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="3485106342-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:·7f058dc3aea18ebe5d13489b602790fdbc6710a03eb285bcfcae3181a8ef688b·...·]-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="6973074379-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:·d81718bda3f347dcbeb27ed734fb81f58809dbe91e7775e62c89a24bcdee7e49·...·]-57">}</span><span·class="gp·unselectable">
321 13&gt;·</span><span·class="p"·data-group-id="3485106342-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="3485106342-59">{</span><span·class="ss">actions</span><span·class="o">=</span><span·[·...·truncated·by·diffoscope;·len:·518,·SHA:·81404f4a3dae4a8d39850b3a6739aaa1290960ecba7fdb80e9bd18ac2a86d0fa·...·]-61">)</span><span·class="p">.</span><span·class="w">321 13&gt;·</span><span·class="p"·data-group-id="6973074379-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="6973074379-59">{</span><span·class="ss">actions</span><span·class="o">=</span><span·[·...·truncated·by·diffoscope;·len:·518,·SHA:·a234be2139b51eff95270a2bba7739992903644fd7be924738782ff217cfc63e·...·]-61">)</span><span·class="p">.</span><span·class="w">
322 </span><span·class="p"·data-group-id="3485106342-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="3485106342-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="6973074379-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="6973074379-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="3485106342-64">{</span><span·class="ss">&#39;Status_buttonList&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="3485106342-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="6973074379-64">{</span><span·class="ss">&#39;Status_buttonList&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6973074379-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="3485106342-65">]</span><span·class="p"·data-group-id="3485106342-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="6973074379-65">]</span><span·class="p"·data-group-id="6973074379-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="3485106342-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="6973074379-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="3485106342-66">}</span><span·class="p"·data-group-id="3485106342-63">}</span><span·class="p"·data-group-id="3485106342-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="6973074379-66">}</span><span·class="p"·data-group-id="6973074379-63">}</span><span·class="p"·data-group-id="6973074379-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="3485106342-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="3485106342-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="6973074379-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="6973074379-67">)</span><span·class="p">.</span><span·class="w">
334 </span><span·class="p"·data-group-id="3485106342-68">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="3485106342-69">[</span><span·class="o">#</span><span·class="ss">&#39;Action&#39;</span><span·class="p"·data-group-id="3485106342-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="6973074379-68">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="6973074379-69">[</span><span·class="o">#</span><span·class="ss">&#39;Action&#39;</span><span·class="p"·data-group-id="6973074379-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="3485106342-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:·320a7d181739c9b5fd4cbe73ad1fcf6369360f9cbfbfcc0527cbf92db1f64601·...·]-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="6973074379-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:·1d8b7a0673b45e250480b0c7e5e29c201af67bb5f86faaa27ea6d47fb071d708·...·]-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="6426915739-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="6426915739-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·274,·SHA:·0d4f2027d3cefc10a6cf636d22de37dd27d0262cd647afb7e5558142ef62cf1a·...·]-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="4823124523-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="4823124523-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·274,·SHA:·3c538aab370116ff0a515901dfb2217f36b8fd65ec2e62f48aeb940637425a1e·...·]-2">)</span><span·class="p">,</span><span·class="w">
498 </span><span·class="p"·data-group-id="6426915739-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="6426915739-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·273,·SHA:·07de8035982619c571ad65064b264c54ebea0612f9f01501a34fb708aa7b9a89·...·]-4">)</span><span·class="p">,</span><span·class="w">498 </span><span·class="p"·data-group-id="4823124523-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="4823124523-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·273,·SHA:·4d3ef09b999f304c8739186c24e87a80c9f82505cff47e75802e2e5efee6679b·...·]-4">)</span><span·class="p">,</span><span·class="w">
499 </span><span·class="p"·data-group-id="6426915739-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="6426915739-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·273,·SHA:·0508ecf928cb12e2446939143e1a8b238b2da9d28883cd3693eed052441c8f81·...·]-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="4823124523-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="4823124523-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·273,·SHA:·da4e7da3b197355ac56c083c38b20c25abcf5f4cce63acdcb463f3b53bdd1f38·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>565 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1546 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v5.33 v5.3
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·asn1[q···················]6 Search·documentation·of·asn1[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>313 <p>Copyright·©·1996-2024·<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="3984129418-1">(</span><span·class="p">_</span><span·class="n">Config</span><span·class="p"·data-group-id="3984129418-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="4848616189-1">(</span><span·class="p">_</span><span·class="n">Config</span><span·class="p"·data-group-id="4848616189-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
219 ····</span><span·class="p"·data-group-id="3984129418-2">{</span><span·class="ss">started</span><span·class="p">,</span><span·class="n">ServerId</span><span·class="p"·data-group-id="3984129418-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:·ee0d8d4a064d23d07287786a7beb76dde6bb712c01b915b87e060de6dee29a01·...·]-3">)</span><span·class="p">,</span><span·class="w">219 ····</span><span·class="p"·data-group-id="4848616189-2">{</span><span·class="ss">started</span><span·class="p">,</span><span·class="n">ServerId</span><span·class="p"·data-group-id="4848616189-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:·7919c02537b1583894df865f7083ce884ea498027a613d7c299d95c50a9a6f09·...·]-3">)</span><span·class="p">,</span><span·class="w">
220 ····</span><span·class="p"·data-group-id="3984129418-4">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="3984129418-5">[</span><span·class="p"·data-group-id="3984129418-5">]</span><span·class="p"·data-group-id="3984129418-4">}</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·269,·SHA:·50e4e4e69754964a285b05c7c7944a25bfd818b7bb071224cf82c2ba8c9b387e·...·]-6">)</span><span·class="p">,</span><span·class="w">220 ····</span><span·class="p"·data-group-id="4848616189-4">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="4848616189-5">[</span><span·class="p"·data-group-id="4848616189-5">]</span><span·class="p"·data-group-id="4848616189-4">}</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·269,·SHA:·ceffec0f568b5a9759f0e5da8958b02aa3133f0b6f6b03e65455493b0de9a9a4·...·]-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="3984129418-7">(</span><span·class="p"·data-group-id="3984129418-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="4848616189-7">(</span><span·class="p"·data-group-id="4848616189-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="3984129418-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="3984129418-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="4848616189-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="4848616189-8">)</span><span·class="p">,</span><span·class="w">
223 ····</span><span·class="p"·data-group-id="3984129418-9">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="3984129418-10">[</span><span·class="n">MyId</span><span·class="p"·data-group-id="3984129418-10">]</span><span·class="p"·data-group-id="3984129418-9"[·...·truncated·by·diffoscope;·len:·299,·SHA:·9a5c068b65011b0217d79ed07333d3380257cd8f142de12f408df7e6b4d25a05·...·]-11">)</span><span·class="p">,</span><span·class="w">223 ····</span><span·class="p"·data-group-id="4848616189-9">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="4848616189-10">[</span><span·class="n">MyId</span><span·class="p"·data-group-id="4848616189-10">]</span><span·class="p"·data-group-id="4848616189-9"[·...·truncated·by·diffoscope;·len:·299,·SHA:·6fc60ffef43f4de1c8f61b35ce3acbdaf091b12cc02b9410aaa4150eded04ce5·...·]-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="3984129418-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="3984129418-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="4848616189-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="4848616189-12">)</span><span·class="p">,</span><span·class="w">
225 ····</span><span·class="p"·data-group-id="3984129418-13">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="3984129418-14">[</span><span·class="p"·data-group-id="3984129418-14">]</span><span·class="p"·data-group-id="3984129418-13">}</span><span·class="w">[·...·truncated·by·diffoscope;·len:·274,·SHA:·fc5052d85e34b26d7a8ce445aee9885ed3d873b635ce8617366183193918f24a·...·]-15">)</span><span·class="p">,</span><span·class="w">225 ····</span><span·class="p"·data-group-id="4848616189-13">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="4848616189-14">[</span><span·class="p"·data-group-id="4848616189-14">]</span><span·class="p"·data-group-id="4848616189-13">}</span><span·class="w">[·...·truncated·by·diffoscope;·len:·274,·SHA:·7cd2aa8220a5d7c77de9ba09e47533a0ec08de0a97d65737eb62249438d5a696·...·]-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="3984129418-16">(</span><span·class="n">ServerId</span><span·class="p"·data-group-id="3984129418-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="4848616189-16">(</span><span·class="n">ServerId</span><span·class="p"·data-group-id="4848616189-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>304 <p>Copyright·©·1996-2024·<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
2.53 KB
OEBPS/content.opf
2.49 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>184 <p>Copyright·©·1996-2024·<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="6671016935-1">{</span><span·class="n">CfgVarName</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="6671016935-1">}</span><span·class="p">.</span></code></pre><p>where</p><pre><code·class="makeup·erlang"·translate="no"[·...·truncated·by·diffoscope;·len:·228,·SHA:·1d77663c3563e7bb6ceafc9aac1f2ad32885d877be20c731b911870616374b35·...·]-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="3284878295-1">{</span><span·class="n">CfgVarName</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="3284878295-1">}</span><span·class="p">.</span></code></pre><p>where</p><pre><code·class="makeup·erlang"·translate="no"[·...·truncated·by·diffoscope;·len:·228,·SHA:·dc1827de1be7dcb3d986ed30e59d7469e86d0848106e122fa2cec1a3a4e7b2d7·...·]-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="9431308380-2">(</span><span·class="p"·data-group-id="9431308380-2">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9431308380-3">[</span><span·class="p"·data-group-id="9431308380-4">{</span><sp[·...·truncated·by·diffoscope;·len:·176,·SHA:·97301a1250de1b79d696eb98f4ee0041dc33a0b2886e7abfcf25a9546956cbc6·...·]-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="7907430095-2">(</span><span·class="p"·data-group-id="7907430095-2">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="7907430095-3">[</span><span·class="p"·data-group-id="7907430095-4">{</span><sp[·...·truncated·by·diffoscope;·len:·176,·SHA:·a82622cec78679449970a83d54e74ad7f6294925c331ff3ccd63b24bdb65d806·...·]-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="5692826865-1">(</span><span·class="p"·data-group-id="5692826865-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="8007131861-1">(</span><span·class="p"·data-group-id="8007131861-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ····</span><span·class="p"·data-group-id="5692826865-2">[</span><span·class="p"·data-group-id="5692826865-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:·84328016c9573e35f547ee39c46f9eaba21d650a9b9ea9b867a3100b80fb482e·...·]-2">]</span><span·class="p">.</span><span·class="w">174 ····</span><span·class="p"·data-group-id="8007131861-2">[</span><span·class="p"·data-group-id="8007131861-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:·b575b827ad542b364d49a435fecb7fdede7c9867beb527432555a75173599a15·...·]-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="5692826865-4">(</span><span·class="n">Config</span><span·class="p"·data-group-id="5692826865-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="8007131861-4">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8007131861-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="5692826865-5">(</span><span·class="ss">domain</span><span·class="p"·data-group-id="5692826865-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="8007131861-5">(</span><span·class="ss">domain</span><span·class="p"·data-group-id="8007131861-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="6832721200-1">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6832721200-2">[</span><span·class="p"·data-group-id="6832721200-3">{</span><span·class="ss">ftp</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·89,·SHA:·636235767ac9c9f51d20d687fbb3ce7977e898afe6bad42cfa6468ab2fec03b6·...·]-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="7315590506-1">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7315590506-2">[</span><span·class="p"·data-group-id="7315590506-3">{</span><span·class="ss">ftp</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·89,·SHA:·375e8295d03c0ba7e308a996f6ae72b87e352fb3352e610efca80409081bb41b·...·]-3">}</span><span·class="p">,</span><span·class="w">
265 ············</span><span·class="p"·data-group-id="6832721200-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="s">&quot;tester&quot;</span><span·class="p"·data-group-id="6832721200-4">}</span><span·class="p">,</span><span·class="w">265 ············</span><span·class="p"·data-group-id="7315590506-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="s">&quot;tester&quot;</span><span·class="p"·data-group-id="7315590506-4">}</span><span·class="p">,</span><span·class="w">
266 ············</span><span·class="p"·data-group-id="6832721200-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="s">&quot;letmein&quot;</span><span·class="p"·data-group-id="6832721200-5">}</span><span·class="p"·data-group-id="6832721200-2">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·441d76254f8419957130f915fd7e7b2ee63f20098adb57d71bb732d799375938·...·]-1">}</span><span·class="p">.</span><span·class="w">266 ············</span><span·class="p"·data-group-id="7315590506-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="s">&quot;letmein&quot;</span><span·class="p"·data-group-id="7315590506-5">}</span><span·class="p"·data-group-id="7315590506-2">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·9412f65774e0a7adc3509a0e737c17e0553cb2f069d6a12b007e1cbd8db5e07d·...·]-1">}</span><span·class="p">.</span><span·class="w">
  
267 </span><span·class="p"·data-group-id="6832721200-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="6832721200-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="7315590506-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="7315590506-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="0010882640-1">[</span><span·class="p"·data-group-id="0010882640-2">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0010882640-3">[</span><span·class="p"·data-group-id="0010882640-4">{</[·...·truncated·by·diffoscope;·len:·823,·SHA:·c68ca8a4568b119dfba3b1f1792dc4a8290114fffbcd5e2833affc9154b0a1a8·...·]-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="9161749755-1">[</span><span·class="p"·data-group-id="9161749755-2">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9161749755-3">[</span><span·class="p"·data-group-id="9161749755-4">{</[·...·truncated·by·diffoscope;·len:·823,·SHA:·0dab55f492b540ebf42b3e4a2ca7a5f2884f56c1bec719cdf961c3ee7a0fd1c4·...·]-2">}</span><span·class="p">,</span><span·class="w">
288 ·</span><span·class="p"·data-group-id="0010882640-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="0010882640-7">}</span><span·class="p"·data-group-id="0010882640-1">]</span></code></pre><h2·id="examples-of-configuration-data-handling"·class="section-heading">288 ·</span><span·class="p"·data-group-id="9161749755-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="9161749755-7">}</span><span·class="p"·data-group-id="9161749755-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="1255594658-1">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1255594658-2">[</span><span·class="p"·data-group-id="1255594658-3">{</span><span·class="ss">ftp</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·89,·SHA:·81f0dc1d5079f2d1fd7d31fd61372df1c49cc766ffddbde08cb1be7f026c832f·...·]-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="2284576042-1">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2284576042-2">[</span><span·class="p"·data-group-id="2284576042-3">{</span><span·class="ss">ftp</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·89,·SHA:·aebc3ce53091d21bb5da5a0db5d5913885a74f81a429cb41a29e15a5b28eb445·...·]-3">}</span><span·class="p">,</span><span·class="w">
296 ············</span><span·class="p"·data-group-id="1255594658-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="s">&quot;tester&quot;</span><span·class="p"·data-group-id="1255594658-4">}</span><span·class="p">,</span><span·class="w">296 ············</span><span·class="p"·data-group-id="2284576042-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="s">&quot;tester&quot;</span><span·class="p"·data-group-id="2284576042-4">}</span><span·class="p">,</span><span·class="w">
297 ············</span><span·class="p"·data-group-id="1255594658-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="s">&quot;letmein&quot;</span><span·class="p"·data-group-id="1255594658-5">}</span><span·class="p"·data-group-id="1255594658-2">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·0cb21ac72d71aadae2d55a927c2c9403c546a7803da1546f7e0a5df25f1ff5b6·...·]-1">}</span><span·class="p">.</span><span·class="w">297 ············</span><span·class="p"·data-group-id="2284576042-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="s">&quot;letmein&quot;</span><span·class="p"·data-group-id="2284576042-5">}</span><span·class="p"·data-group-id="2284576042-2">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·ecbc45baeb186985f05a2c2ae69bb2fb1d2afc6cb5c6c4ad85cf5630aad9b676·...·]-1">}</span><span·class="p">.</span><span·class="w">
  
298 </span><span·class="p"·data-group-id="1255594658-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="1255594658-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="2284576042-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="2284576042-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="8624155671-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="8624155671-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="0176270140-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="0176270140-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
302 ····</span><span·class="p"·data-group-id="8624155671-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="8624155671-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:·6b7403ef241ad03813cd859ae2f1b3b65b2b5094fa7f7ab5babca0efb1af9f0f·...·]-3">)</span><span·class="p">,</span><span·class="w">302 ····</span><span·class="p"·data-group-id="0176270140-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="0176270140-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:·562b984997e95429cbce4de825c25af18963cdde205053eabb277674be93f74c·...·]-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="8624155671-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="8624155671-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="0176270140-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="0176270140-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="8624155671-5">(</span><span·class="ss">ftp</span><span·class="p"·data-group-id="8624155671-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="0176270140-5">(</span><span·class="ss">ftp</span><span·class="p"·data-group-id="0176270140-5">)</span><span·class="p">.</span><span·class="w">
  
306 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="8624155671-6">(</span><span·class="p"·data-group-id="8624155671-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="0176270140-6">(</span><span·class="p"·data-group-id="0176270140-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
307 ····</span><span·class="p"·data-group-id="8624155671-7">[</span><span·class="p"·data-group-id="8624155671-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="8624155671-8">}</span><span·class="p">,</span><span·class="w">307 ····</span><span·class="p"·data-group-id="0176270140-7">[</span><span·class="p"·data-group-id="0176270140-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="0176270140-8">}</span><span·class="p">,</span><span·class="w">
308 ·····</span><span·class="p"·data-group-id="8624155671-9">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="8624155671-9">}</span><span·class="p"·data-group-id="8624155671-7">]</span><span·class="p">.</span><span·class="w">308 ·····</span><span·class="p"·data-group-id="0176270140-9">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="0176270140-9">}</span><span·class="p"·data-group-id="0176270140-7">]</span><span·class="p">.</span><span·class="w">
  
309 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="8624155671-10">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8624155671-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="0176270140-10">(</span><span·class="n">Config</span><span·class="p"·data-group-id="0176270140-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="8624155671-11">(</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="8624155671-12">(</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="8624155671-12">)</span><span[·...·truncated·by·diffoscope;·len:·127,·SHA:·30a1e8b043bed50481c89f9bf968614a975226e5099e651a1e6b9d6a04b292e2·...·]-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="0176270140-11">(</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="0176270140-12">(</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="0176270140-12">)</span><span[·...·truncated·by·diffoscope;·len:·127,·SHA:·d3d851d986b966b0fdaa6c187b96dd4f3df1e3ac0dac9a2b9d262fc0cc7a2630·...·]-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="8624155671-13">(</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="8624155671-14">(</span><span·class="ss">priv_dir</span><span·class="p">,</span><span·class="n">Config</span><spa[·...·truncated·by·diffoscope;·len:·184,·SHA:·412465d474a0fe677d0e36b5feae724e948e7338e1b1eccf76c061409ca2c314·...·]-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="0176270140-13">(</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="0176270140-14">(</span><span·class="ss">priv_dir</span><span·class="p">,</span><span·class="n">Config</span><spa[·...·truncated·by·diffoscope;·len:·184,·SHA:·b7b4b2ba2ac15f6fc1b26bb584dac91f47cdca803f8af5ad8b2f62d852844d42·...·]-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="8624155671-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="8624155671-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="0176270140-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="0176270140-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="1598863936-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="1598863936-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="8062416974-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="8062416974-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
315 ····</span><span·class="p"·data-group-id="1598863936-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle1</span><span·class="p"·data-group-id="1598863936-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:·602c2f8fdd978b582a21f68ae4f8f68c95907c0d77dd421106f40c2fb351843f·...·]-3">)</span><span·class="p">,</span><span·class="w">315 ····</span><span·class="p"·data-group-id="8062416974-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle1</span><span·class="p"·data-group-id="8062416974-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:·240822dd1b0e3bb12ae9b480bc0feeacc652b272344800c6183412da33b28fb9·...·]-3">)</span><span·class="p">,</span><span·class="w">
316 ····</span><span·class="p"·data-group-id="1598863936-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle2</span><span·class="p"·data-group-id="1598863936-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:·d5d1f8f1de7594261fb952763ffc6812bdbd751891ab4a7f82e2fcf303ad79bd·...·]-5">)</span><span·class="p">,</span><span·class="w">316 ····</span><span·class="p"·data-group-id="8062416974-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle2</span><span·class="p"·data-group-id="8062416974-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:·319988063f8738035a3c983c9e6494b0c1da34837a9483c9bd7530837d399e32·...·]-5">)</span><span·class="p">,</span><span·class="w">
317 ····</span><span·class="p"·data-group-id="1598863936-6">[</span><span·class="p"·data-group-id="1598863936-7">{</span><span·class="ss">ftp_handles</span><span·class="p">,</span><span·class="p"·data-group-id="1598863936-8">[</span><span·class="n">Handle1</span><span·class="p">,</span><span·class="n"[·...·truncated·by·diffoscope;·len:·263,·SHA:·40fd72989d2e2d49fbfcd06dccc94bafd023f6d673dc253497ad45582f4adad5·...·]-6">]</span><span·class="p">.</span><span·class="w">317 ····</span><span·class="p"·data-group-id="8062416974-6">[</span><span·class="p"·data-group-id="8062416974-7">{</span><span·class="ss">ftp_handles</span><span·class="p">,</span><span·class="p"·data-group-id="8062416974-8">[</span><span·class="n">Handle1</span><span·class="p">,</span><span·class="n"[·...·truncated·by·diffoscope;·len:·263,·SHA:·12616fa9f48c7c1c66394466d23addb7679dfd6ef3dee2327b3ca182204ce5d5·...·]-6">]</span><span·class="p">.</span><span·class="w">
  
318 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="1598863936-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="1598863936-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="8062416974-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="8062416974-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="1598863936-10">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1598863936-11">(</span><span·class="n">Handle</span><span·class="p"·data-group-id="1598863936-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·214,·SHA:·02948a03940a6425609276b4f0aba91509c6b65917a0f3171cda878e2e392039·...·]-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="8062416974-10">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8062416974-11">(</span><span·class="n">Handle</span><span·class="p"·data-group-id="8062416974-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·214,·SHA:·abb9e707416139d58de9354a47ba59e1e4d05ad537f6418c7f40c252aafe5993·...·]-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="1598863936-13">(</span><span·class="ss">ftp_handles</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="1598863936-13">)</span><span·class="p"·data-group-id="1598863936-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="8062416974-13">(</span><span·class="ss">ftp_handles</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="8062416974-13">)</span><span·class="p"·data-group-id="8062416974-10">)</span><span·class="p">.</span><span·class="w">
  
321 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="1598863936-14">(</span><span·class="p"·data-group-id="1598863936-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="8062416974-14">(</span><span·class="p"·data-group-id="8062416974-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
322 ····</span><span·class="p"·data-group-id="1598863936-15">[</span><span·class="p"·data-group-id="1598863936-16">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">ftp_host</span><span·class="p"·data-group-id="1598863936-16">}</span><span·class="p">,</span><span·class="w">322 ····</span><span·class="p"·data-group-id="8062416974-15">[</span><span·class="p"·data-group-id="8062416974-16">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">ftp_host</span><span·class="p"·data-group-id="8062416974-16">}</span><span·class="p">,</span><span·class="w">
323 ·····</span><span·class="p"·data-group-id="1598863936-17">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="1598863936-17">}</span><span·class="p"·data-group-id="1598863936-15">]</span><span·class="p">.</span><span·class="w">323 ·····</span><span·class="p"·data-group-id="8062416974-17">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="8062416974-17">}</span><span·class="p"·data-group-id="8062416974-15">]</span><span·class="p">.</span><span·class="w">
  
324 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="1598863936-18">(</span><span·class="n">Config</span><span·class="p"·data-group-id="1598863936-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="8062416974-18">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8062416974-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="1598863936-19">(</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="1598863936-20">(</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="1598863936-20">)</span><span[·...·truncated·by·diffoscope;·len:·127,·SHA:·974d4f2c1b91887b1df962a263bc2081b90fa32e3a3df5dd64a660bc504935b7·...·]-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="8062416974-19">(</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="8062416974-20">(</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="8062416974-20">)</span><span[·...·truncated·by·diffoscope;·len:·127,·SHA:·16a54d6e6f271e38d074710281f3fc586756045d86a34e4629f1d52d53b7f6dd·...·]-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="1598863936-21">(</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="1598863936-22">(</span><span·class="ss">priv_dir</span><span·class="p">,</span><span·class="n">Config</span><spa[·...·truncated·by·diffoscope;·len:·184,·SHA:·c42244fed51d5ed61fa2bd09873a81986e435b3e36883b8dc961e70251592dee·...·]-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="8062416974-21">(</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="8062416974-22">(</span><span·class="ss">priv_dir</span><span·class="p">,</span><span·class="n">Config</span><spa[·...·truncated·by·diffoscope;·len:·184,·SHA:·3e4a2c8e52a6d16782f9dd7a82798df26b17e5f3456e7777fb9f7d5bc07a8407·...·]-21">)</span><span·class="p">,</span><span·class="w">
327 ····</span><span·class="p"·data-group-id="1598863936-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="1598863936-23">]</span><span·class="w">·</span><span·class="o">=</s[·...·truncated·by·diffoscope;·len:·301,·SHA:·e6c489afbe84a2ed5c1722b1b8f7a6b3f81ef6d5b614cb8a0d09f72217570111·...·]-24">)</span><span·class="p">,</span><span·class="w">327 ····</span><span·class="p"·data-group-id="8062416974-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="8062416974-23">]</span><span·class="w">·</span><span·class="o">=</s[·...·truncated·by·diffoscope;·len:·301,·SHA:·06bc60bbe247b06808829a9e8958f5eb0abfa65817560d30ed00aa2720e827f3·...·]-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="1598863936-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="1598863936-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="8062416974-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="8062416974-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="7854460474-1">(</span><span·class="ss">config_driver</span><span·class="p"·data-group-id="7854460474-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="9195177672-1">(</span><span·class="ss">config_driver</span><span·class="p"·data-group-id="9195177672-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="7854460474-2">(</span><span·class="p"·data-group-id="7854460474-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:·d35614b4286d6c80891431ada3b07bf96ec711e41ad077b3da9efa54aee996ae·...·]-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="9195177672-2">(</span><span·class="p"·data-group-id="9195177672-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:·73a33c3ed3fa20cc908733632683330fd602993ead672b3b4f5acd98cea95218·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
338 </span><span·class="nf">read_config</span><span·class="p"·data-group-id="7854460474-4">(</span><span·class="n">ServerName</span><span·class="p"·data-group-id="7854460474-4">)</span><span·class="p">-&gt;</span><span·class="w">338 </span><span·class="nf">read_config</span><span·class="p"·data-group-id="9195177672-4">(</span><span·class="n">ServerName</span><span·class="p"·data-group-id="9195177672-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="7854460474-5">(</span><span·class="n">ServerName</span><span·class="p"·data-group-id="7854460474-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="9195177672-5">(</span><span·class="n">ServerName</span><span·class="p"·data-group-id="9195177672-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="1901862087-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="1901862087-1">}</span><span·class="p">.</span><span·class="w">204 </span><span·class="p"·data-group-id="9588594653-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="9588594653-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="1901862087-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="1901862087-2">}</span><span·class="p">.</span><span·class="w">207 </span><span·class="p"·data-group-id="9588594653-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="9588594653-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="1901862087-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="1901862087-3">}</span><span·class="p">.</span><span·class="w">210 </span><span·class="p"·data-group-id="9588594653-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="9588594653-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="1901862087-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="1901862087-4">}</span><span·class="p">.</span><span·class="w">213 </span><span·class="p"·data-group-id="9588594653-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="9588594653-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="1901862087-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="1901862087-5">}</span><span·class="p">.</span><span·class="w">216 </span><span·class="p"·data-group-id="9588594653-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="9588594653-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="1901862087-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="1901862087-6">}</span><span·class="p">.</span><span·class="w">218 </span><span·class="p"·data-group-id="9588594653-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="9588594653-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="1901862087-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="1901862087-7">}</span><span·class="p">.</span><span·class="w">221 </span><span·class="p"·data-group-id="9588594653-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="9588594653-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="1901862087-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="1901862087-8">}</span><span·class="p">.</span><span·class="w">223 </span><span·class="p"·data-group-id="9588594653-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="9588594653-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="1901862087-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="1901862087-9">}</span><span·class="p">.</span><span·class="w">225 </span><span·class="p"·data-group-id="9588594653-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="9588594653-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="1901862087-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="1901862087-10">}</span><span·class="p">.</span><span·class="w">227 </span><span·class="p"·data-group-id="9588594653-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="9588594653-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="1901862087-11">{</span><span·class="ss">cross</span><span·class="p">,</span><span·class="p"·data-group-id="1901862087-12">[</span><span·class="p"·data-group-id="1901862087-13">{</span><span·class="n">Tag</span><span·class="p">,</span><span·class="n">Mods</[·...·truncated·by·diffoscope;·len:·154,·SHA:·34a9a238d44ed32f1e3cc13f98ac78cc361ea8c65b67b02b892d70a6423e6add·...·]-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="9588594653-11">{</span><span·class="ss">cross</span><span·class="p">,</span><span·class="p"·data-group-id="9588594653-12">[</span><span·class="p"·data-group-id="9588594653-13">{</span><span·class="n">Tag</span><span·class="p">,</span><span·class="n">Mods</[·...·truncated·by·diffoscope;·len:·154,·SHA:·e323400b0428ee25ed22c361d2f7212a99a3c7065253f9febc64a5ea5fb48837·...·]-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="6343567186-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:·224,·SHA:·669f837dde3f1804d7c85e8b73c3ded258b77d5080da48f6d7613be1af0d7b94·...·]-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="1148447299-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:·224,·SHA:·2ecd083bda27ed5b3b37cbfb0d6a350ca1dcbbc970d40344228f0bffd4b538e6·...·]-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="7614891786-1">(</span><span·class="n">Level</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7614891786-2">[</span><span·class="p"·data-group-id="7614891786-3">{</span><span·class="ss">s1</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·387,·SHA:·d858f94a693072e08738ef3bd69a7adcf102b6293893224baf99542cb93d366e·...·]-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="0627041787-1">(</span><span·class="n">Level</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0627041787-2">[</span><span·class="p"·data-group-id="0627041787-3">{</span><span·class="ss">s1</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·387,·SHA:·c152538734887177c5b06fb78827fcc29d86a17a3534805eda578a1edeb106c0·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>354 <p>Copyright·©·1996-2024·<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="0336076262-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id="0336076262-2">[</span><span·class="p"·data-group-id="0336076262-3">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="0336076262-3">}</span><span·class="p">,</span><span·class="w"> 
1980 ·······</span><span·class="p"·data-group-id="0336076262-4">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="p"·data-group-id="0336076262-5">[</span><span·class="p"·data-group-id="0336076262-6">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">Username</span><span·class="p"·data-group-id="0336076262-6">}</span><span·class="p">,</span><span·class="w"> 
1981 ··············</span><span·class="p"·data-group-id="0336076262-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="0336076262-7">}</span><span·class="p"·data-group-id="0336076262-5">]</span><span·class="p"·data-group-id="0336076262-4">}</span><span·class="p"·data-group-id="0336076262-2">]</span><span·class="p"·data-group-id="0336076262-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="9970294115-1">(</span><span·class="ss">unix</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="9970294115-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9970294115-2">[</span><span·class="p"·data-group-id="9970294115-3">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="9970294115-3">}</span><span·class="p">,</span><span·class="w"> 
1982 ·</span><span·class="p"·data-group-id="9970294115-4">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9970294115-5">[</span><span·class="p"·data-group-id="9970294115-6">{</span><span·class="[·...·truncated·by·diffoscope;·len:·520,·SHA:·f14ee7a770d1afca45637a43f52e24d1e296f8116ab61949ab6adc82e21cdbf7·...·]</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"·[·...·truncated·by·diffoscope;·len:·348,·SHA:·1c8623cca0ae4834f2444a3c707c95d055ed9ab6126de5c4fcceb1b9da5ecdfd·...·]</span><span·class="w">
 1980 ·······</span><span·class="p"·data-group-id="7808822457-4">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="p"·data-group-id="7808822457-5">[</span><span·class="p"·data-group-id="7808822457-6">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">Username</span><span·class="p"·data-group-id="7808822457-6">}</span><span·class="p">,</span><span·class="w">
 1981 ··············</span><span·class="p"·data-group-id="7808822457-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="7808822457-7">}</span><span·class="p"·data-group-id="7808822457-5">]</span><span·class="p"·data-group-id="7808822457-4">}</span><span·class="p"·data-group-id="7808822457-2">]</span><span·class="p"·data-group-id="7808822457-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="6856370498-1">(</span><span·class="ss">unix</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="6856370498-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6856370498-2">[</span><span·class="p"·data-group-id="6856370498-3">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="6856370498-3">}</span><span·class="p">,</span><span·class="w">
 1982 ·</span><span·class="p"·data-group-id="6856370498-4">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6856370498-5">[</span><span·class="p"·data-group-id="6856370498-6">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">Username</span><span·class="p"·data-group-id="6856370498-6">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6856370498-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="6856370498-7">}</span><span·class="p"·data-group-id="6856370498-5">]</span><span·class="p"·data-group-id="6856370498-4">}</span><span·class="p"·data-group-id="6856370498-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="9970294115-8">(</span><span·class="p"·data-group-id="9970294115-9">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">telnet</span><span·class="p"·data-group-id="9970294115-9">}</span><span·class="p">,</span><span·class="n">Defaul[·...·truncated·by·diffoscope;·len:·49,·SHA:·810369058531f2c7a225eb705846711c107c2de75e228ad4c3e615077ce35261·...·]-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="6856370498-8">(</span><span·class="p"·data-group-id="6856370498-9">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">telnet</span><span·class="p"·data-group-id="6856370498-9">}</span><span·class="p">,</span><span·class="n">Defaul[·...·truncated·by·diffoscope;·len:·49,·SHA:·86d80eb696c967a095939d73993d49ddb002b1388f596111ec7d9888fedb8b5a·...·]-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="9970294115-10">(</span><span·class="p"·data-group-id="9970294115-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="9970294115-1[·...·truncated·by·diffoscope;·len:·106,·SHA:·d4bd138b2aa81a85c16c955d154476d27957c423650691cf54788f69eccc6364·...·]-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="6856370498-10">(</span><span·class="p"·data-group-id="6856370498-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="6856370498-1[·...·truncated·by·diffoscope;·len:·106,·SHA:·68bb7c453bb7b17ff5843c305a772f93332a8e94462680645a91db0c417194d2·...·]-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="9970294115-12">(</span><span·class="p"·data-group-id="9970294115-13">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">ftp</span><span·class="p"·data-group-id="9970294115-13">}</span><span·class="p">,</span><span·class="n">Defaul[·...·truncated·by·diffoscope;·len:·49,·SHA:·810369058531f2c7a225eb705846711c107c2de75e228ad4c3e615077ce35261·...·]-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="6856370498-12">(</span><span·class="p"·data-group-id="6856370498-13">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">ftp</span><span·class="p"·data-group-id="6856370498-13">}</span><span·class="p">,</span><span·class="n">Defaul[·...·truncated·by·diffoscope;·len:·49,·SHA:·86d80eb696c967a095939d73993d49ddb002b1388f596111ec7d9888fedb8b5a·...·]-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="9970294115-14">(</span><span·class="ss">unknownkey</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="9970294115-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="6856370498-14">(</span><span·class="ss">unknownkey</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="6856370498-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="5495021797-1">(</span><span·class="ss">myuser</span><span·class="p">,</span><span·class="p"·data-group-id="5495021797-2">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">user</span><span·class="p"·data-group-id="5495021797-2">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·03b9f6770a81255d2d60661d58183eff6f1887e2d53c08cb6ef7acf95faf2b0d·...·]-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="1789631196-1">(</span><span·class="ss">myuser</span><span·class="p">,</span><span·class="p"·data-group-id="1789631196-2">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">user</span><span·class="p"·data-group-id="1789631196-2">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·b5c11e2a265adfd09a5393187bf41aa0699a6d03206e5d6d02e09a704f025c64·...·]-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="5495021797-3">(</span><span·class="ss">myuser</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="5495021797-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:·80f11cab0a2cbc97ec02cebd933af0ba32554d5e8670cc81b95ffddc4c395157·...·]-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="1789631196-3">(</span><span·class="ss">myuser</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="1789631196-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:·db6f17931528accfb3d40798c684341dc593df231d6ba1aa8128a324573f7d58·...·]-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="0263319123-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="0263319123-2">(</span><span·class="p"·data-group-id="0263319123-2">)</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·237,·SHA:·81dcb162b14764882040a036708b5295b643a0be72ce112b79caee5945889bb7·...·]-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="3495576525-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="3495576525-2">(</span><span·class="p"·data-group-id="3495576525-2">)</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·237,·SHA:·9878aa4b8c17c9ac2e1830975893d96104ad309d04c7a2ff65604c589b05bda8·...·]-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="9640292733-1">(</span><span·class="p"·data-group-id="9640292733-2">[</span><span·class="p"·data-group-id="9640292733-3">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="p"·data-group-id="9640292733-4">[</span><span·class="s">&quot[·...·truncated·by·diffoscope;·len:·303,·SHA:·40320071a4a8aa6d2c9a5a41a36e553ca4d3a67e66ef27a08c01b89822768605·...·]-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="2214149922-1">(</span><span·class="p"·data-group-id="2214149922-2">[</span><span·class="p"·data-group-id="2214149922-3">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="p"·data-group-id="2214149922-4">[</span><span·class="s">&quot[·...·truncated·by·diffoscope;·len:·303,·SHA:·19f41ffae817d82d98335dc72efc797be4018b7329b60d7f8a706d4c827856de·...·]-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="9191600936-1">(</span><span·class="ss">myvar</span><span·class="p"·data-group-id="9191600936-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:·3488,·SHA:·385a350d219374747ce23e5a52056ec8c82bfa402eec99ed937d6ddeef5bf150·...·]-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="3097423857-1">(</span><span·class="ss">myvar</span><span·class="p"·data-group-id="3097423857-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:·3488,·SHA:·fe60f280e61c8c0be4d1c89b7ef835fd7edbeeaee5bf29e23b3685a2e0442fcc·...·]-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="7232148384-1">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="p"·data-group-id="7232148384-2">{</span><span·class="ss">machine</span><span·class="p">,</span><span·class="nb">node</span><span·class="p"·data-group-id="7232148384-2">}</span><span·class="p"·data-group-id="7232148384-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:·2b6dec3c8941c478aab62726854a112d92218935267f5a49a0bd4bb28b6ac85e·...·]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:·2ba3985605044140512c62af40c26a3829a0037a83861ae4bcb12da4a9e3802f·...·]
 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="5519339139-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="5519339139-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="7458478407-1">{</span><span·class="ss">machine</span><span·class="p">,</span><span·class="p"·data-group-id="7458478407-2">[</span><span·class="p"·data-group-id="7458478407-3">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="7458478407-4">[</span><span·class="p"·data-group-id="7458478407-5">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="7458478407-5">}</span><span·class="p">,</span><span·class="p"·data-group-id="7458478407-6">{</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="7458478407-6">}</span><span·class="p"·data-group-id="7458478407-4">]</span><span·class="p"·data-group-id="7458478407-3">}</span><span·class="p"·data-group-id="7458478407-2">]</span><span·class="p"·data-group-id="7458478407-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="0940107715-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="0940107715-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="7726954936-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="7726954936-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="0940107715-2">(</span><span·class="ss">unix_telnet</span><span·class="p"·data-group-id="0940107715-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="7726954936-2">(</span><span·class="ss">unix_telnet</span><span·class="p"·data-group-id="7726954936-2">)</span><span·class="p">.</span><span·class="w">
3574 </span><span·class="p"·data-group-id="0940107715-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="0940107715-3">}</span><span·class="gp·unselectable">3574 </span><span·class="p"·data-group-id="7726954936-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="7726954936-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="0940107715-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="0940107715-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="7726954936-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="7726954936-4">)</span><span·class="p">.</span><span·class="w">
3576 </span><span·class="p"·data-group-id="0940107715-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0940107715-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:·fcbe978e2be667a3614bb8d68a9d6f9ed0cc701a1497c9271c3a0d87df3001ab·...·]-5">}</span></code></pre>3576 </span><span·class="p"·data-group-id="7726954936-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7726954936-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:·dfb43b87bc3293d36e892190afbe20ef8a6c78485388e963dc7c1c4fcbbdcb95·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3870 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3871 ····</footer>3871 ····</footer>
3872 ··</div>3872 ··</div>
3873 </main>3873 </main>
Max diff block lines reached; 140/41090 bytes (0.34%) 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>318 <p>Copyright·©·1996-2024·<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="8414580429-1">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="8414580429-2">[</span><span·class="p"·data-group-id="8414580429-3">{</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="8414580429-3">}</span><span·class="p"·data-group-id="8414580429-2">]</span><span·class="p"·data-group-id="8414580429-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="5883698592-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id="588369859[·...·truncated·by·diffoscope;·len:·239,·SHA:·e17a67b827bc904b28421840dc2f589714e1dd0fb97ec0c7c8cef9c18ffd2e5a·...·]590 configuration·file·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4387343416-1">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="4387343416-2">[</span><span·class="p"·data-group-id="4387[·...·truncated·by·diffoscope;·len:·364,·SHA:·29a9c81d5b65d6980f8f3d462b150e7faa7b6e9a6e9433ea4844c8fb618026b1·...·]
 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="9464642165-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id="9464642165-2">[</span><span·class="p"·data-group-id="9464642165-3">{</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="9464642165-3">}</span><span·class="p">,</span><span·class="w">
592 ·······</span><span·class="p"·data-group-id="5883698592-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">Username</span><span·class="p"·data-group-id="5883698592-4">}</span><span·class="p">,</span><span·class="w">592 ·······</span><span·class="p"·data-group-id="9464642165-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">Username</span><span·class="p"·data-group-id="9464642165-4">}</span><span·class="p">,</span><span·class="w">
593 ·······</span><span·class="p"·data-group-id="5883698592-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="5883698592-5">}</span><span·class="p"·data-group-id="5883698592-2">]</span><span·class="p"·data-group-id="5883698592-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="9464642165-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="9464642165-5">}</span><span·class="p"·data-group-id="9464642165-2">]</span><span·class="p"·data-group-id="9464642165-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>775 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1402 <p>Copyright·©·1996-2024·<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="8895790126-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="8895790126-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="9553806526-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="9553806526-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="8895790126-2">(</span><span·class="p"·data-group-id="8895790126-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="9553806526-2">(</span><span·class="p"·data-group-id="9553806526-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
258 ····</span><span·class="p"·data-group-id="8895790126-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="8895790126-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">258 ····</span><span·class="p"·data-group-id="9553806526-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="9553806526-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
259 ······</span><span·class="p"·data-group-id="8895790126-4">{</span><span·class="p"·data-group-id="8895790126-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="8895790126-5">}<[·...·truncated·by·diffoscope;·len:·124,·SHA:·5d00363bb841c35375cf4f244dc5ee34c6c4e680a589948742021427da223df7·...·]26-4">}</span><span·class="p">;</span><span·class="w">259 ······</span><span·class="p"·data-group-id="9553806526-4">{</span><span·class="p"·data-group-id="9553806526-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="9553806526-5">}<[·...·truncated·by·diffoscope;·len:·124,·SHA:·6eea2dc7e49f97094d6b13c1885282f89ae2d12a723c8e06e1cbe0c05ae87a62·...·]26-4">}</span><span·class="p">;</span><span·class="w">
260 ····</span><span·class="p"·data-group-id="8895790126-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="8895790126-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">260 ····</span><span·class="p"·data-group-id="9553806526-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="9553806526-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
261 ······</span><span·class="p"·data-group-id="8895790126-7">{</span><span·class="p"·data-group-id="8895790126-8">[</span><span·class="p"·data-group-id="8895790126-9">{</span><span·class="ss">db_handle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handle</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·647,·SHA:·a63f94d6ff97080a59799078ad1a27aafcb22d93a36d08b76eec4ff034d69a80·...·]26-7">}</span><span·class="w">261 ······</span><span·class="p"·data-group-id="9553806526-7">{</span><span·class="p"·data-group-id="9553806526-8">[</span><span·class="p"·data-group-id="9553806526-9">{</span><span·class="ss">db_handle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handle</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·647,·SHA:·344d1e7d618b9871404a8957d82117263b69111bc5f63b2c884fa1812628bbd2·...·]26-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="6176893380-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:·42f8f2d5aa6b8c27d7920913486fa85d807b0d8b2b0e771aeedd590f2b0797a3·...·]-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="8050097697-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:·ef3123a52aa95dbad81ac49b119cf6fb7f5f57638c23fa368b223e2be9b15a43·...·]-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="6176893380-4">(</span><span·class="p"·data-group-id="6176893380-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="8050097697-4">(</span><span·class="p"·data-group-id="8050097697-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="6176893380-5">{</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="6176893380-6">(</span><span·class="ss">tc_status</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·189,·SHA:·3eeec415fc18215fe8b082eade74b4f9935ac1a05fcf5f5df34774e8e4e6db9b·...·]-5">}</span><span·class="p">;</span><span·class="w">287 ······</span><span·class="p"·data-group-id="8050097697-5">{</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="8050097697-6">(</span><span·class="ss">tc_status</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·189,·SHA:·e99b7e20901adb2513f523c333427391abb4086a12d06b680165ac760cdbdd78·...·]-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="6176893380-7">{</span><span·class="p"·data-group-id="6176893380-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="6176893380-8">}</spa[·...·truncated·by·diffoscope;·len:·122,·SHA:·f7df3f8e6160ed9e5f2401f8aafb7d3396f2ddc519253e181f24447959c5abe3·...·]-7">}</span><span·class="w">290 ······</span><span·class="p"·data-group-id="8050097697-7">{</span><span·class="p"·data-group-id="8050097697-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="8050097697-8">}</spa[·...·truncated·by·diffoscope;·len:·122,·SHA:·e918d8dd1e2dd26f658e402fd51c9c51717f485455e1f54c8fe16a33744f2d3e·...·]-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="6176893380-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:·1dd28f701ab0c651a8f864d5c77ded886d3b2ed8f542bf6c87cc4bc359a42f41·...·]-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="8050097697-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:·161ca01289861e62cbc44ef0ea52394a83eb917940d764a6881aaa9fae303856·...·]-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="6176893380-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="6176893380-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="8050097697-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="8050097697-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="8892218604-1">(</span><span·class="ss">example_cth</span><span·class="p"·data-group-id="8892218604-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="3703625988-1">(</span><span·class="ss">example_cth</span><span·class="p"·data-group-id="3703625988-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="8892218604-2">(</span><span·class="p"·data-group-id="8892218604-3">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="8892218604-3">]</span><span·class="p"·data-group-id="8892218604-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="3703625988-2">(</span><span·class="p"·data-group-id="3703625988-3">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="3703625988-3">]</span><span·class="p"·data-group-id="3703625988-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="8892218604-4">(</span><span·class="p"·data-group-id="8892218604-5">[</span><span·class="ss">id</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="8892218604-5">]</span><span·class="p"·data-group-id="8892218604-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="3703625988-4">(</span><span·class="p"·data-group-id="3703625988-5">[</span><span·class="ss">id</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="3703625988-5">]</span><span·class="p"·data-group-id="3703625988-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="8892218604-6">(</span><span·class="p"·data-group-id="8892218604-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="8892218604-7">]</span><span·class="p"·data-group-id="889221[·...·truncated·by·diffoscope;·len:·4,·SHA:·6c600dbc187cf2990e202ebcaa8cfeadb7b69a8b6ca906c6c9583201fddd7993·...·]-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="3703625988-6">(</span><span·class="p"·data-group-id="3703625988-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="3703625988-7">]</span><span·class="p"·data-group-id="370362[·...·truncated·by·diffoscope;·len:·4,·SHA:·a49e54e5732c1d43aac8cfc314d8e43c920a8246f24892185bb1fd0307c02a69·...·]-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="8892218604-8">(</span><span·class="p"·data-group-id="8892218604-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="8892218604-9">]</span><span·class="p"·data-group-id="889221[·...·truncated·by·diffoscope;·len:·4,·SHA:·6c600dbc187cf2990e202ebcaa8cfeadb7b69a8b6ca906c6c9583201fddd7993·...·]-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="3703625988-8">(</span><span·class="p"·data-group-id="3703625988-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="3703625988-9">]</span><span·class="p"·data-group-id="370362[·...·truncated·by·diffoscope;·len:·4,·SHA:·a49e54e5732c1d43aac8cfc314d8e43c920a8246f24892185bb1fd0307c02a69·...·]-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="8892218604-10">(</span><span·class="p"·data-group-id="8892218604-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="8892218604-11">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·9c64d34f7ef5cc83fadd4e76824fddf936ea112743999c41a54715cf2c34a2a7·...·]-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="3703625988-10">(</span><span·class="p"·data-group-id="3703625988-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="3703625988-11">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·ad33ba6a29efa87a136c3bdcc9a1f3b325ab2f83f3bb992fe8b615686a9c10e0·...·]-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="8892218604-12">(</span><span·class="p"·data-group-id="8892218604-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="8892218604-13">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·9c64d34f7ef5cc83fadd4e76824fddf936ea112743999c41a54715cf2c34a2a7·...·]-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="3703625988-12">(</span><span·class="p"·data-group-id="3703625988-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="3703625988-13">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·ad33ba6a29efa87a136c3bdcc9a1f3b325ab2f83f3bb992fe8b615686a9c10e0·...·]-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="8892218604-14">(</span><span·class="p"·data-group-id="8892218604-15">[</span><span·class="ss">on_tc_skip</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="8892218604-15">]</span><span·class="p"·data-group-id="8892218604-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="3703625988-14">(</span><span·class="p"·data-group-id="3703625988-15">[</span><span·class="ss">on_tc_skip</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="3703625988-15">]</span><span·class="p"·data-group-id="3703625988-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="8892218604-16">(</span><span·class="p"·data-group-id="8892218604-17">[</span><span·class="ss">terminate</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="8892218604-17">]</span><span·class="p"·data-group-id="8892218604-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="3703625988-16">(</span><span·class="p"·data-group-id="3703625988-17">[</span><span·class="ss">terminate</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="3703625988-17">]</span><span·class="p"·data-group-id="3703625988-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="8892218604-18">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8892218604-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:·c004fb6182a8d5e5aa76d83a2b68249de23de4cbad89cd57f8afc6892b021a64·...·]-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="3703625988-18">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3703625988-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:·cf4c4cc48205dee45c43878e97a8d007f2095c312237948ff2d1ec2fe7a4772d·...·]-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="8892218604-20">(</span><span·class="ss">test_run</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8892218604-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:·9a6bf6906b8e5543b7925ba2bc5fba691a7f7a12584f857a649d963f74ea5ed3·...·]-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="3703625988-20">(</span><span·class="ss">test_run</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3703625988-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:·31d9f51042f083a250748d0415d786458ea06ed9b24dfe4d5e84cbdb2ab8abde·...·]-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="8892218604-22">(</span><span·class="n">Opts</span><span·class="p"·data-group-id="8892218604-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="3703625988-22">(</span><span·class="n">Opts</span><span·class="p"·data-group-id="3703625988-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="8892218604-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:·29b3f59a40bd55ca1d15caaf727ede71c7835c421e390fa538811797520b5947·...·]-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="3703625988-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:·74e8383731807e0eb432e60208cf10b6c36f2a304291e9f650b2ec605b6daf7f·...·]-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="8892218604-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="8892218604-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="3703625988-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="3703625988-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
372 ····</span><span·class="p"·data-group-id="8892218604-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="8892218604-26">{</span><span·class="ss">filename</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·602,·SHA:·a5fd2ca66ebb108ad06f3702ac4e33b7f7139ead85839b992b318caa6de149a2·...·]-25">}</span><span·class="p">.</span><span·class="w">372 ····</span><span·class="p"·data-group-id="3703625988-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="3703625988-26">{</span><span·class="ss">filename</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·602,·SHA:·f6d3d6d2182ca02e6105015cbd08b25bec4d4e94b52fbe3646b1839e13b9bd40·...·]-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="8892218604-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="8892218604-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="3703625988-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="3703625988-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
375 ····</span><span·class="p"·data-group-id="8892218604-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="8892218604-30">{</span><span·class="ss">suit[·...·truncated·by·diffoscope;·len:·461,·SHA:·9666457983d6640cc75cfc335072aa3cc91735483bb3d77b8a7e98b9f4b1c531·...·]-29">}</span><span·class="p">.</span><span·class="w">375 ····</span><span·class="p"·data-group-id="3703625988-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="3703625988-30">{</span><span·class="ss">suit[·...·truncated·by·diffoscope;·len:·461,·SHA:·53453a87787d0b7655f752d42557a8c2e006b3d9cef7e8a5ee7eb58b4899f793·...·]-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="8892218604-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:·a4836ee74c416aab04f8393439e00fc04236455d5a608f30fbad27ebdce72594·...·]-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="3703625988-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:·5e5fcda57b424fdc6410920fab36672e08af39c859fc704756e73a4ddb5a940c·...·]-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="8892218604-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="3703625988-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="8892218604-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="8892218604-34">)</span><span·class="p"·data-group-id="8892218604-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="3703625988-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="3703625988-34">)</span><span·class="p"·data-group-id="3703625988-33">}</span><span·class="p">,</span><span·class="w">
380 ····</span><span·class="p"·data-group-id="8892218604-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="8892218604-36">{</span><span·class="ss">data[·...·truncated·by·diffoscope;·len:·406,·SHA:·01085e7c4d7b46d9c0e298568f8a937e832920c309ae2c2a2233e7b7a3f747ed·...·]-37">]</span><span·class="p">,</span><span·class="w">380 ····</span><span·class="p"·data-group-id="3703625988-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="3703625988-36">{</span><span·class="ss">data[·...·truncated·by·diffoscope;·len:·406,·SHA:·f2122d46e34bbfb5b741e36564bd6af424ccf2812a2e66e3091e66fe53cded41·...·]-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="8892218604-36">}</span><span·class="p"·data-group-id="8892218604-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="3703625988-36">}</span><span·class="p"·data-group-id="3703625988-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="8892218604-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:·5dd069cfccadaca26c675ec3d27e73bfc7cb2fa07bb0290f383f24ee0365c5e6·...·]-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="3703625988-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:·895e3ca120e595fad353474ebfab3f310a73dbf1e8f9e3d04c0d1ce371ba9371·...·]-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="8892218604-39">(</span><span·class="ss">microsecond</span><span·class="p"·data-group-id="8892218604-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="3703625988-39">(</span><span·class="ss">microsecond</span><span·class="p"·data-group-id="3703625988-39">)</span><span·class="p">,</span><span·class="w">
385 ····</span><span·class="p"·data-group-id="8892218604-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="8892218604-41">{</span><span·class="ss">ts</[·...·truncated·by·diffoscope;·len:·590,·SHA:·3cd5739a5e6299bc5ce9d7fb99693d953114c4e905f9aac7ba9d4161eb00fbf7·...·]-40">}</span><span·class="p">.</span><span·class="w">385 ····</span><span·class="p"·data-group-id="3703625988-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="3703625988-41">{</span><span·class="ss">ts</[·...·truncated·by·diffoscope;·len:·590,·SHA:·bea2f759b2fce2fe5a493588f8e4331ec82e99e74d14d847ec4619aaad7468ab·...·]-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="8892218604-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:·d7950f9ee4964a2a604a19153ad3ee95a9326360d9e10ffafc6d05a87025b483·...·]-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="3703625988-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:·f15ad30f5340b9e42ac3b44bddb18e12247427ec14bdd5f44e7eb1ca9f1075fa·...·]-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="8892218604-43">(</span><span·class="ss">microsecond</span><span·class="p"·data-group-id="8892218604-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="3703625988-43">(</span><span·class="ss">microsecond</span><span·class="p"·data-group-id="3703625988-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="8892218604-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:·d3979c65ddecd798b649743d4d55cbcb6a47ebb4a1e633e6d5047c1ceaa559a7·...·]-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="3703625988-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:·70cc973abb90d71e916df3b2cb09b79a0c41883438356702c77f16d83fcd898d·...·]-44">}</span><span·class="p">,</span><span·class="w">
390 ····</span><span·class="p"·data-group-id="8892218604-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="8892218604-46">{</span><span·class="ss">ts</[·...·truncated·by·diffoscope;·len:·693,·SHA:·482bd450f979f7824d04fd34eeb6c8e444e5b782aacfff9a87cd7c80747004f2·...·]-45">}</span><span·class="p">.</span><span·class="w">390 ····</span><span·class="p"·data-group-id="3703625988-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="3703625988-46">{</span><span·class="ss">ts</[·...·truncated·by·diffoscope;·len:·693,·SHA:·ff247ec7ba829e47997db8fe8778381e20ef6b47146fbf3bf51b827ed2691215·...·]-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="8892218604-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:·b0adee46b210877157e2512550173d3480ae1c6427d4a58ecddb54ab36511c7c·...·]-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="3703625988-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:·6aad8da45986ad850d57745aa94ea7bd00baa523b863a22ba747eb80ca20df38·...·]-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="8892218604-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:·48405793a7fe759e256d5f85b30491453f4972cfad12c11bbe6bfe8bfc5a16a5·...·]-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="3703625988-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:·cf1d79277cb0b5d6958b083f4c624b00f71bbc4aafba4699d966275a86c716fd·...·]-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="8892218604-50">(</span><span·class="n">State</span><span·class="p"·data-group-id="8892218604-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="3703625988-50">(</span><span·class="n">State</span><span·class="p"·data-group-id="3703625988-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="8892218604-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="8892218604-51">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·569,·SHA:·37f55a3668e4319d4827902bc36ba6da2754572e2a0dd053b0456a6265a7beb3·...·]-52">)</span><span·class="p">,</span><span·class="w">398 ····</span><span·class="p"·data-group-id="3703625988-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="3703625988-51">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·569,·SHA:·f629124fda29d36cc49cade4ce5c14181fa6e9bc59f03ac7eb8823780cee2cb5·...·]-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="8892218604-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:·518fce3dfd40f7f882eb7cd396bdca51b2b51bccc2ba59998ccde9c4a83b2f7f·...·]-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="3703625988-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:·54453bc3bc768e0aab1fa3381cb5d4420b5e83d73c7d7bff11a682814eee7dfa·...·]-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="8892218604-57">(</span><span·class="n">File</span><span·class="p"·data-group-id="8892218604-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="3703625988-57">(</span><span·class="n">File</span><span·class="p"·data-group-id="3703625988-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="8892218604-58">(</span><span·class="n">State</span><span·class="p"·data-group-id="8892218604-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="3703625988-58">(</span><span·class="n">State</span><span·class="p"·data-group-id="3703625988-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="3793588697-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="3793588697-2">(</span><span·class="p"·data-group-id="3793588697-2">)</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·243,·SHA:·88a0c367f2c15a386cffd09ee9c75a6565ec43f7b174ce8839fa05ca6b2eb3fd·...·]7-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="9734119247-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="9734119247-2">(</span><span·class="p"·data-group-id="9734119247-2">)</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·243,·SHA:·e00e5668fa9e1acaa2c692934cc5d7038d565562ef79fcb98ec402f844357644·...·]7-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>797 <p>Copyright·©·1996-2024·<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="8547373817-1">(</span><span·class="p"·data-group-id="8547373817-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="8547373817-3">[</span><spa[·...·truncated·by·diffoscope;·len:·243,·SHA:·dc8a42c4a33e3af6b98a3fd68e40ec77e461085132c623f893f338973df46f63·...·]-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="4188581555-1">(</span><span·class="p"·data-group-id="4188581555-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="4188581555-3">[</span><spa[·...·truncated·by·diffoscope;·len:·243,·SHA:·69a0dda61fd48df87ea31d44d4a654f030b4d353fa61962ad10ca68ac0c80ccc·...·]-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="3968751190-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:·b3c505079b18d9fddd2bd9925712e0d02e2c2846b592b42d7154169e428c2d24·...·]-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="6290834558-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:·2226f5d539bf58b0b38f3934c848885f40bab791a04196b52b3dceb04466ebf4·...·]-1">}</span><span·class="p">.</span><span·class="w">
200 </span><span·class="p"·data-group-id="3968751190-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:·3a78d8e64e39e73f93e335e9989bcb80d91f3071c17a0c976bdf5243ae62963e·...·]-2">}</span><span·class="p">.</span><span·class="w">200 </span><span·class="p"·data-group-id="6290834558-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:·3df3ea1da1b26738b06039602793bee3580432189aae99fe0ae136078206e266·...·]-2">}</span><span·class="p">.</span><span·class="w">
201 </span><span·class="p"·data-group-id="3968751190-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:·3a78d8e64e39e73f93e335e9989bcb80d91f3071c17a0c976bdf5243ae62963e·...·]-3">}</span><span·class="p">.</span><span·class="w">201 </span><span·class="p"·data-group-id="6290834558-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:·3df3ea1da1b26738b06039602793bee3580432189aae99fe0ae136078206e266·...·]-3">}</span><span·class="p">.</span><span·class="w">
202 </span><span·class="p"·data-group-id="3968751190-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:·3a78d8e64e39e73f93e335e9989bcb80d91f3071c17a0c976bdf5243ae62963e·...·]-4">}</span><span·class="p">.</span><span·class="w">202 </span><span·class="p"·data-group-id="6290834558-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:·3df3ea1da1b26738b06039602793bee3580432189aae99fe0ae136078206e266·...·]-4">}</span><span·class="p">.</span><span·class="w">
203 </span><span·class="p"·data-group-id="3968751190-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:·b68ce83353a371842d8a3757a969bfd17b76a530543a01a13f3608ad8d3c2308·...·]-5">}</span><span·class="p">.</span><span·class="w">203 </span><span·class="p"·data-group-id="6290834558-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:·f4126c747aa384b7eb9d4a3f44a8b6baebe5a534ae4c91a1bd773d98bb145516·...·]-5">}</span><span·class="p">.</span><span·class="w">
204 </span><span·class="p"·data-group-id="3968751190-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="39687511[·...·truncated·by·diffoscope;·len:·2,·SHA:·69f59c273b6e669ac32a6dd5e1b2cb63333d8b004f9696447aee2d422ce63763·...·]-6">}</span><span·class="p">.</span><span·class="w">204 </span><span·class="p"·data-group-id="6290834558-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="62908345[·...·truncated·by·diffoscope;·len:·2,·SHA:·6208ef0f7750c111548cf90b6ea1d0d0a66f6bff40dbef07cb45ec436263c7d6·...·]-6">}</span><span·class="p">.</span><span·class="w">
  
205 </span><span·class="p"·data-group-id="3968751190-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="39687[·...·truncated·by·diffoscope;·len:·5,·SHA:·954c668d28faef91dc50b2ad98d5766a5d7b6c971fdd9a727c2d26f7691a4edb·...·]-7">}</span><span·class="p">.</span><span·class="w">205 </span><span·class="p"·data-group-id="6290834558-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="62908[·...·truncated·by·diffoscope;·len:·5,·SHA:·bc430dc14f7717dc5519762deb9b6f4dafa00c08d261039da0e5d74cc0ab1ad4·...·]-7">}</span><span·class="p">.</span><span·class="w">
206 </span><span·class="p"·data-group-id="3968751190-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="39687[·...·truncated·by·diffoscope;·len:·5,·SHA:·954c668d28faef91dc50b2ad98d5766a5d7b6c971fdd9a727c2d26f7691a4edb·...·]-8">}</span><span·class="p">.</span><span·class="w">206 </span><span·class="p"·data-group-id="6290834558-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="62908[·...·truncated·by·diffoscope;·len:·5,·SHA:·bc430dc14f7717dc5519762deb9b6f4dafa00c08d261039da0e5d74cc0ab1ad4·...·]-8">}</span><span·class="p">.</span><span·class="w">
  
207 </span><span·class="p"·data-group-id="3968751190-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:·b0f51a36e068274edf9e4091478d852737f67ae30d69b8e33785388c91f26b38·...·]-9">}</span><span·class="p">.</span><span·class="w">207 </span><span·class="p"·data-group-id="6290834558-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:·d2782d49a804b6249286bd179611b0c6bc51d81d15f001fbf1459d4e6bdf26ae·...·]-9">}</span><span·class="p">.</span><span·class="w">
208 </span><span·class="p"·data-group-id="3968751190-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="3968751190-10">}</span><span·class="p">.</span><span·class="w">208 </span><span·class="p"·data-group-id="6290834558-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="6290834558-10">}</span><span·class="p">.</span><span·class="w">
  
209 </span><span·class="p"·data-group-id="3968751190-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:·648c6663da9aa367733380e6f49b6348309c3265d37888c2342cf840406f56a1·...·]-11">}</span><span·class="p">.</span><span·class="w">209 </span><span·class="p"·data-group-id="6290834558-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:·4196ed8a48a1dbcc03b531dee5fff4a1b043919ef8311c8e3605aac5c06d1794·...·]-11">}</span><span·class="p">.</span><span·class="w">
210 </span><span·class="p"·data-group-id="3968751190-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:·648c6663da9aa367733380e6f49b6348309c3265d37888c2342cf840406f56a1·...·]-12">}</span><span·class="p">.</span><span·class="w">210 </span><span·class="p"·data-group-id="6290834558-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:·4196ed8a48a1dbcc03b531dee5fff4a1b043919ef8311c8e3605aac5c06d1794·...·]-12">}</span><span·class="p">.</span><span·class="w">
211 </span><span·class="p"·data-group-id="3968751190-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="3968751190-13">}</span><span·class="p">.</span><span·class="w">211 </span><span·class="p"·data-group-id="6290834558-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="6290834558-13">}</span><span·class="p">.</span><span·class="w">
  
212 </span><span·class="p"·data-group-id="3968751190-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:·673c9b09a1c6470cf28fc100cc9c9bcaa09dfb3a9ae09043c636a01962fa8611·...·]-14">}</span><span·class="p">.</span><span·class="w">212 </span><span·class="p"·data-group-id="6290834558-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:·074977a05d9d69113c855d0e546441874a0f4574c4ebcc685ce27a7a123865ad·...·]-14">}</span><span·class="p">.</span><span·class="w">
213 </span><span·class="p"·data-group-id="3968751190-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:·31a4e32e4614221f9b813cb54433f4edf2c6ca67268e05475bcf240b6cb0c732·...·]-15">}</span><span·class="p">.</span><span·class="w">213 </span><span·class="p"·data-group-id="6290834558-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:·b9d7949895ade5af9165bbce5ce3880e53c367b403cbbeea58c9b08fc49bb9ef·...·]-15">}</span><span·class="p">.</span><span·class="w">
214 </span><span·class="p"·data-group-id="3968751190-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:·8bddf467721f62e9d5ff0b07bf4f6f395fb027d7f6472cedef908faae50b28e5·...·]-17">}</span><span·class="p">.</span><span·class="w">214 </span><span·class="p"·data-group-id="6290834558-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:·6d215111cd65115e10bdf485078924455178aa09dd891813ca7b358daa0347da·...·]-17">}</span><span·class="p">.</span><span·class="w">
215 </span><span·class="p"·data-group-id="3968751190-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:·86db951f264b5b6a90a0b94d9061d0aef1c3e83cd7dff8758c1025e0da0918a1·...·]-19">}</span><span·class="p">.</span><span·class="w">215 </span><span·class="p"·data-group-id="6290834558-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:·ae591cf95229c420e2ffb38b32e86d35ac605ba9cbfe1d26c07570cf453eced3·...·]-19">}</span><span·class="p">.</span><span·class="w">
  
216 </span><span·class="p"·data-group-id="3968751190-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:·6bd033d9d26a33828ffcc2978af4ec422369a57ee9fcb24aee4de7794af6d63c·...·]-21">}</span><span·class="p">.</span><span·class="w">216 </span><span·class="p"·data-group-id="6290834558-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:·c864fcf0f90ce7ca2a78ef148222f16cc632bea0ed88e2655cb1cc1aed98cc56·...·]-21">}</span><span·class="p">.</span><span·class="w">
217 </span><span·class="p"·data-group-id="3968751190-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:·b7aa92b4aa4c7a770697b0d961f30c4631b1224f7ee1a3554e2caccd8a7c216c·...·]-23">}</span><span·class="p">.</span><span·class="w">217 </span><span·class="p"·data-group-id="6290834558-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:·caf84bdec47f92cc4111ba87d30f7c59e8784ca9d4fa87c5f0375ffc12833953·...·]-23">}</span><span·class="p">.</span><span·class="w">
  
218 </span><span·class="p"·data-group-id="3968751190-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:·24cf30240fd98f30ad242144a27c0d6605799d2c8556d9af7c16dbc58c54260e·...·]-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="6290834558-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:·529e0af3c374991c66f78a0725ae1ef8ff4dae49f870bdcd444f10439f66f9e5·...·]-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="7806584105-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="7806584105-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="1832073533-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="1832073533-1">}</span><span·class="p">.</span><span·class="w">
248 </span><span·class="p"·data-group-id="7806584105-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="7806584105-2">}</span><span·class="p">.</span><span·class="w">248 </span><span·class="p"·data-group-id="1832073533-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="1832073533-2">}</span><span·class="p">.</span><span·class="w">
249 </span><span·class="p"·data-group-id="7806584105-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="7806584105-3">}</span><span·class="p">.</span><span·class="w">249 </span><span·class="p"·data-group-id="1832073533-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="1832073533-3">}</span><span·class="p">.</span><span·class="w">
250 </span><span·class="p"·data-group-id="7806584105-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="7806584105-4">}</span><span·class="p">.</span><span·class="w">250 </span><span·class="p"·data-group-id="1832073533-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="1832073533-4">}</span><span·class="p">.</span><span·class="w">
251 </span><span·class="p"·data-group-id="7806584105-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="7806584105-6">[</span><span·class="p"·data-group-id="7806584105-7">{</span><span·class="ss">node_start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7806584105-8">[</span><span·class="p"·data-group-id="7806584105-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="7806584105-9">}</span><span·class="p"·data-group-id="7806584105-8">]</span><span·class="p"·data-group-id="7806584105-7">}</span><span·class="p"·data-group-id="7806584105-6">]</span><span·class="p"·data-group-id="7806584105-5">}</span><span·class="p">.</span><span·class="w"> 
252 </span><span·class="p"·data-group-id="7806584105-10">{</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7806584105-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="7806584105-11">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7806584105-12">{</span><span·class="ss">node_start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7806584105-13">[</span><span·class="p"·data-group-id="7806584105-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="7806584105-14">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7806584105-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="7806584105-15">}</span><span·class="p"·data-group-id="7806584105-13">]</span><span·class="p"·data-group-id="7806584105-12">}</span><span·class="p"·data-group-id="7806584105-10">}</span><span·class="p">.</span><span·class="w"> 
253 </span><span·class="p"·data-group-id="7806584105-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="7806584105-17">{</span><span·class="ss">eval</spa[·...·truncated·by·diffoscope;·len:·676,·SHA:·4139b1f4a837d635984e2dffd04d448e81d73e85df37f873b714e4865d7d79c4·...·]251 </span><span·class="p"·data-group-id="1832073533-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="1832073533-6">[</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·646,·SHA:·5399be47741eec46e58f83d27b25a728438caaee4ccc310fb93f4b3c6b96453d·...·]
 252 </span><span·class="p"·data-group-id="1832073533-10">{</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1832073533-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="1832073533-11">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1832073533-12">{</span><span·class="ss">node_start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1832073533-13">[</span><span·class="p"·data-group-id="1832073533-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="1832073533-14">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1832073533-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="1832073533-15">}</span><span·class="p"·data-group-id="1832073533-13">]</span><span·class="p"·data-group-id="1832073533-12">}</span><span·class="p"·data-group-id="1832073533-10">}</span><span·class="p">.</span><span·class="w">
 253 </span><span·class="p"·data-group-id="1832073533-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="1832073533-17">{</span><span·class="ss">eval</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1832073533-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="1832073533-19">[</span><span·class="p"·data-group-id="1832073533-19">]</span><span·class="p"·data-group-id="1832073533-18">}</span><span·class="p"·data-group-id="1832073533-17">}</span><span·class="p"·data-group-id="1832073533-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>315 <p>Copyright·©·1996-2024·<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="0340529974-1">{</span><span·class="nf">server_id</span><span·class="p"·data-group-id="0340529974-2">(</span><span·class="p"·data-group-id="0340529974-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0340529974-3">[<[·...·truncated·by·diffoscope;·len:·236,·SHA:·907fabd9f1af71b990147060441c3a0abdd8da7b6d291f7567824164aba06b28·...·]-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="8921413475-1">{</span><span·class="nf">server_id</span><span·class="p"·data-group-id="8921413475-2">(</span><span·class="p"·data-group-id="8921413475-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8921413475-3">[<[·...·truncated·by·diffoscope;·len:·236,·SHA:·ecc1739cea00a22a1044174d1d7021f6b0edf354ad5a2db7f8e1e5eff7d44f60·...·]-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="7647889725-1">(</span><span·class="p"·data-group-id="7647889725-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="0540191748-1">(</span><span·class="p"·data-group-id="0540191748-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
154 ····</span><span·class="p"·data-group-id="7647889725-2">[</span><span·class="p"·data-group-id="7647889725-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7647889725-4">[</span><span·class="p"·data-group-id="7647889725-5">{</[·...·truncated·by·diffoscope;·len:·937,·SHA:·85986c57d3b60db4495f90a4267f653b9dbdd1b85f6fa810c2d8f3c99d3750c8·...·]-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="0540191748-2">[</span><span·class="p"·data-group-id="0540191748-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0540191748-4">[</span><span·class="p"·data-group-id="0540191748-5">{</[·...·truncated·by·diffoscope;·len:·937,·SHA:·f3dcb991aedb6f3f83af3ef36f172a14e048a5f4ae588033421af5db6d92c14c·...·]-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="0754455594-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="p"·data-group-id="0754455594-2">[</span><span·class="p"·data-group-id="0754455594-3">{</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">conn_log_mod</span><span·class="p"·data-group-id="0754455594-4">(</span><span·class="p"·data-group-id="0754455594-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="0754455594-5">(</span><span·class="p"·data-group-id="0754455594-5">)</span><span·class="p"·data-group-id="0754455594-3">}</span><span·class="p"·data-group-id="0754455594-2">]</span><span·class="p"·data-group-id="0754455594-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="7311524222-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="p"·data-group-id="7311524222-2">[</span><span·class="p"·data-group-id="7311524222-3">{</span><span·class="ss">ct_netconfc</span><span·class="p">,</span><span·class="p"·data-group-id="7311524222-4">[</span><span·class="p"·data-group-id="7311524222-5">{</span><span·class="ss">log_type</span><span·class="p">,</span><span·class="ss">pretty</span><span·class="p"·data-group-id="7311524222-5">}</span><span·class="p">,</span><span·class="w"> 
166 ····························</span><span·class="p"·data-group-id="7311524222-6">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="7311524222-7">[</span><span·class="nc">ct</span><span·class="p">:</span><span·class=[·...·truncated·by·diffoscope;·len:·577,·SHA:·cebdf09e5b3e22c795e0b81d9a475b8d556ac1b26923c57a8419f88c24a87b87·...·]165 configuration·variable·<code·class="inline">ct_conn_log</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1198182532-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:·79649d4b8e8e9a9892c1f0d0efe6f1e987bb303de872eb69f97c3bfc63c849c7·...·]
 166 ····························</span><span·class="p"·data-group-id="1835526280-6">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="1835526280-7">[</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">key_or_name</span><span·class="p"·data-group-id="1835526280-8">(</span><span·class="p"·data-group-id="1835526280-8">)</span><span·class="p"·data-group-id="1835526280-7">]</span><span·class="p"·data-group-id="1835526280-6">}</span><span·class="p"·data-group-id="1835526280-4">]</span><span·class="p"·data-group-id="1835526280-3">}</span><span·class="p"·data-group-id="1835526280-2">]</span><span·class="p"·data-group-id="1835526280-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="7792554061-1">(</span><span·class="p"·data-group-id="7792554061-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="1493327816-1">(</span><span·class="p"·data-group-id="1493327816-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
170 ···</span><span·class="p"·data-group-id="7792554061-2">[</span><span·class="p"·data-group-id="7792554061-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7792554061-4">[</span><span·class="p"·data-group-id="7792554061-5">{</[·...·truncated·by·diffoscope;·len:·487,·SHA:·2fab0f05a828c0a9d9315582fb34901e92dc0d3f485d06367860066f67cb69b2·...·]-9">}</span><span·class="p">}</span><span·class="p">,</span><span·class="w">170 ···</span><span·class="p"·data-group-id="1493327816-2">[</span><span·class="p"·data-group-id="1493327816-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1493327816-4">[</span><span·class="p"·data-group-id="1493327816-5">{</[·...·truncated·by·diffoscope;·len:·487,·SHA:·2b890819cb4d594d68fd974c29067b430ebac4f54bfa9f820e1e30447394026b·...·]-9">}</span><span·class="p">}</span><span·class="p">,</span><span·class="w">
171 ··············································</span><span·class="p"·data-group-id="7792554061-10">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="7792554061-11">[</span><span·class="ss">nc_server1</span><span·class="p">,</span><span·class="ss">nc_server2</span><span·class="p"·data-group-id="7792554061-11">]</span><span·class="p"·data-group-id="7792554061-10">}</span><span·class="p"·data-group-id="7792554061-8">]</span><span·class="p"·data-group-id="7792554061-7">}</span><span·class="w"> 
172 ·······························</span><span·class="p"·data-group-id="7792554061-6">]</span><span·class="p"·data-group-id="7792554061-5">}</span><span·class="p"·data-group-id="7792554061-4">]</span><span·class="p"·data-group-id="7792554061-3">}</span><span·class="p"·data-group-id="779255[·...·truncated·by·diffoscope;·len:·533,·SHA:·227c7ac06c175f8dfec72cb6244793c4c84d8c09e0bddc59cec7b02ab7b1ba95·...·]</span><span·class="w">171 ··············································</span><span·class="p"·data-group-id="1493327816-10">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="1493327816-11">[</span><span·class="ss">nc_server1</span><span·class="p">,</span><span·class="ss[·...·truncated·by·diffoscope;·len:·226,·SHA:·06bf9bf02d52978fa632e86f60303f7a7c7635d9b83bf55a961c8b1650c06f62·...·]</span><span·class="w">
 172 ·······························</span><span·class="p"·data-group-id="1493327816-6">]</span><span·class="p"·data-group-id="1493327816-5">}</span><span·class="p"·data-group-id="1493327816-4">]</span><span·class="p"·data-group-id="1493327816-3">}</span><span·class="p"·data-group-id="1493327816-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="2648940437-1">(</span><span·class="ss">nc_server1</span><span·class="p">,</span><span·class="p"·data-group-id="2648940437-2">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="2648940437-2">]</span><span·class="p"·data-group-id="2648940437-1">)</span><span·class="p">,</span><span·class="w">
173 </span><span·class="nf">open</span><span·class="p"·data-group-id="8114593511-3">(</span><span·class="ss">nc_server2</span><span·class="p">,</span><span·class="p"·data-group-id="8114593511-4">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="8114593511-4">]</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·ea7516a4dba8b9d656ab8bea392ac499f2152a1110eba5d8b06e06753ea0b9ab·...·]-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·to173 </span><span·class="nf">open</span><span·class="p"·data-group-id="2648940437-3">(</span><span·class="ss">nc_server2</span><span·class="p">,</span><span·class="p"·data-group-id="2648940437-4">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="2648940437-4">]</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·4e7f6dca42960e7ca7a0fe24d5931315eed74e6120fbd87b5958e1f40adddabe·...·]-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="5615201236-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="p"·data-group-id="5615201236-2">[</span><span·class="p"·data-group-id="5615201236-3">{</span><span·class="ss">ct_netconfc</span><span·class="p">,</span><span·class[·...·truncated·by·diffoscope;·len:·730,·SHA:·83158f3a6ebdb87f4dbef8521937e18a54f8b7a412f3739078e4b98c40ce9b79·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">174 one·single·text·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5947889376-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="p"·data-group-id="5947889376-2">[</span><span·class="p"·data-group-id="5947889376-3">{</span><span·class="ss">ct_netconfc</span><span·class="p">,</span><span·class[·...·truncated·by·diffoscope;·len:·730,·SHA:·d4cc5c7938ff9131c6eb71b9f9ab3ca80f9446e8103b51a538291cfbfbef237a·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
175 ····</span><span·class="p"·data-group-id="8185655014-2">[</span><span·class="p"·data-group-id="8185655014-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8185655014-4">[</span><span·class="p"·data-group-id="8185655014-5">{</[·...·truncated·by·diffoscope;·len:·395,·SHA:·88de46a1338679088d52242dcb9a64e0431b0800944be5bf446307fb352795f4·...·]-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="6964526589-2">[</span><span·class="p"·data-group-id="6964526589-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6964526589-4">[</span><span·class="p"·data-group-id="6964526589-5">{</[·...·truncated·by·diffoscope;·len:·395,·SHA:·c54fd907ca5db96beb87a8fbfaa0854b3eaeadc63eb22e4536e3465c0ae536d0·...·]-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="0490544874-1">[</span><span·class="p"·data-group-id="0490544874-2">{</span><span·class="ss">&#39;default-operation&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0490544874-3">[</span><span·class="s">&quot;none&qu[·...·truncated·by·diffoscope;·len:·104,·SHA:·e9f2b028612f4882c2aef9bef1c36d3d34f1a2a5bf39ffdfd7be59a10d84b71e·...·]-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="9995893279-1">[</span><span·class="p"·data-group-id="9995893279-2">{</span><span·class="ss">&#39;default-operation&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9995893279-3">[</span><span·class="s">&quot;none&qu[·...·truncated·by·diffoscope;·len:·104,·SHA:·1cc4fe41ae5c0d4b9982cda2476a8ac6022f6938b512d00bae0a6b20d5e4eb4f·...·]-2">}</span><span·class="p">,</span><span·class="w">
2175 ·</span><span·class="p"·data-group-id="0490544874-4">{</span><span·class="ss">&#39;error-option&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0490544874-5">[</span><span·class="s">&quot;rollback-on-error&quot;</span><span·class="p"·data-group-id="0490[·...·truncated·by·diffoscope;·len:·112,·SHA:·a404725fef5cf2b19b9e5886467858da507f4fca0d80068b9155ba73f8d133e9·...·]-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="9995893279-4">{</span><span·class="ss">&#39;error-option&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9995893279-5">[</span><span·class="s">&quot;rollback-on-error&quot;</span><span·class="p"·data-group-id="9995[·...·truncated·by·diffoscope;·len:·112,·SHA:·a131801b42b70c62828087cc0673efb58fdff918a79698e82d4eacf9d8e06909·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3297 <p>Copyright·©·1996-2024·<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="3417080187-1">(</span><span·class="ss">my_prop_test_SUITE</span><span·class="p"·data-group-id="3417080187-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="7985124376-1">(</span><span·class="ss">my_prop_test_SUITE</span><span·class="p"·data-group-id="7985124376-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="3417080187-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="3417080187-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="7985124376-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="7985124376-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="3417080187-3">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="3417080187-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="7985124376-3">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="7985124376-3">)</span><span·class="p">.</span><span·class="w">
  
142 </span><span·class="nf">all</span><span·class="p"·data-group-id="3417080187-4">(</span><span·class="p"·data-group-id="3417080187-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3417080187-5">[</span><span·class="ss">prop_ftp_case</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·53a05207fc7173c7e8ee039b8fefd31ab807913adae06d00a0a6becd1cca29fe·...·]-5">]</span><span·class="p">.</span><span·class="w">142 </span><span·class="nf">all</span><span·class="p"·data-group-id="7985124376-4">(</span><span·class="p"·data-group-id="7985124376-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7985124376-5">[</span><span·class="ss">prop_ftp_case</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·c2280e2064f1f5363be5020eb4e5610e0234c44d3e6a7b7dd9ceeeb37bdd237d·...·]-5">]</span><span·class="p">.</span><span·class="w">
  
143 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="3417080187-6">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3417080187-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="7985124376-6">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7985124376-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="3417080187-7">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3417080187-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="7985124376-7">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7985124376-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="3417080187-8">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3417080187-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="7985124376-8">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7985124376-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="3417080187-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="7985124376-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="3417080187-10">(</span><span·class="p"·data-group-id="3417080187-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="7985124376-10">(</span><span·class="p"·data-group-id="7985124376-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="3417080187-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="7985124376-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="6874555932-1">(</span><span·class="ss">ftp_simple_client_server</span><span·class="p"·data-group-id="6874555932-1">)</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="5030546814-1">(</span><span·class="ss">ftp_simple_client_server</span><span·class="p"·data-group-id="5030546814-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="6874555932-2">(</span><span·class="p"·data-group-id="6874555932-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-i[·...·truncated·by·diffoscope;·len:·66,·SHA:·8b59798138f769feddc7cd61a84416f4c52a6e5a2d51887e8d6f58c42d71d50f·...·]-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="5030546814-2">(</span><span·class="p"·data-group-id="5030546814-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-i[·...·truncated·by·diffoscope;·len:·66,·SHA:·caebcc29ab9ef84079b24405a6b55dfffe5307d5b2e3d0e762a00336fda842f1·...·]-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="6874555932-4">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="6874555932-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="5030546814-4">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="5030546814-4">)</span><span·class="p">.</span><span·class="w">
  
156 </span><span·class="nf">prop_ftp</span><span·class="p"·data-group-id="6874555932-5">(</span><span·class="p"·data-group-id="6874555932-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="5030546814-5">(</span><span·class="p"·data-group-id="5030546814-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="6874555932-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="5030546814-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="5661154276-1">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="5661154276-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="5276099510-1">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="5276099510-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="3367628689-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="3367628689-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="1090659394-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="1090659394-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="3367628689-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><s[·...·truncated·by·diffoscope;·len:·92,·SHA:·a462b3f528c1eaac2806d373970e16bce0870021fe074cd4949e894d40c0a1f5·...·]-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="1090659394-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><s[·...·truncated·by·diffoscope;·len:·92,·SHA:·41cf76cf93cbe3b2d1994f0ebca94d97301aaf41d67ee20d533fdc5b51293d85·...·]-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="7614766599-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="7614766599-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="1863981500-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="1863981500-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="0811326617-1">[</span><span·class="p"·data-group-id="0811326617-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:·f4cbdd0f0b1461e3e6a48c4cc798101be08d6cd42efe796aa775d3a7747edaad·...·]-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="6311234031-1">[</span><span·class="p"·data-group-id="6311234031-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:·3cae9f49d163d80ea52d2b232e6e6b580b78cf9c6ceee94d228747a2ff4dcfc5·...·]-2">}</span><span·class="p">,</span><span·class="w">
589 ·</span><span·class="p"·data-group-id="0811326617-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="6311234031-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="0811326617-3">}</span><span·class="p"·data-group-id="0811326617-1">]</span></code></pre></li><li><p>For·parallel·commands:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7201648564-1">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·322,·SHA:·104c503d68eb4df61f8d0f25cbd18be25903f8bd8929ee6c862ef61e67222d41·...·]-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="6311234031-3">}</span><span·class="p"·data-group-id="6311234031-1">]</span></code></pre></li><li><p>For·parallel·commands:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0242108265-1">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·322,·SHA:·4eb0908ba4f4d54dc247a2a87153827c0b5e6326495e092b98bcbf4cd26d9a1f·...·]-2">}</span><span·class="p">,</span><span·class="w">
591 ·</span><span·class="p"·data-group-id="7201648564-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:·37,·SHA:·f47795c4191d456703146e6d09b565b274bfd917554d3c168ec405548adefb59·...·]-3">}</span><span·class="p">,</span><span·class="w">591 ·</span><span·class="p"·data-group-id="0242108265-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:·37,·SHA:·1a603d8b78e0cdf24c8c0b4b22698b4f8e5ad4ff2112ac7fdf5320f10e563d73·...·]-3">}</span><span·class="p">,</span><span·class="w">
592 ·</span><span·class="p"·data-group-id="7201648564-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="0242108265-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="7201648564-4">}</span><span·class="p"·data-group-id="7201648564-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="0242108265-4">}</span><span·class="p"·data-group-id="0242108265-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>655 <p>Copyright·©·1996-2024·<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="1901858798-1">(</span><span·class="ss">ct_prop</span><span·class="p"·data-group-id="1901858798-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="1996101472-1">(</span><span·class="ss">ct_prop</span><span·class="p"·data-group-id="1996101472-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="1901858798-2">(</span><span·class="p"·data-group-id="1901858798-3">[</span><span·class="ss">prop_sort</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1901858798-3">]</span><span·class="p"·data-group-id="1901858798-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="1996101472-2">(</span><span·class="p"·data-group-id="1996101472-3">[</span><span·class="ss">prop_sort</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1996101472-3">]</span><span·class="p"·data-group-id="1996101472-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="1901858798-4">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="1901858798-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="1996101472-4">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="1996101472-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="1901858798-5">(</span><span·class="p"·data-group-id="1901858798-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="1996101472-5">(</span><span·class="p"·data-group-id="1996101472-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="1901858798-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="1901858798-7">(</span><span·class="p"·data-group-id="1901858798-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="1996101472-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="1996101472-7">(</span><span·class="p"·data-group-id="1996101472-7">)</span><span·class="p">,</span><span·class="w">
159 ············</span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="1901858798-8">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">sort</span><span·class="p"·data-group-id="1901858798-9">(</span><span·class="n">UnSorted</span><span·class="p"·data-group-id="1901858798-9">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·183807ecc265ff43f8756e65ae51abb1f66620537cdff60acf95073fb74306bd·...·]-8">)</span><span·class="w">159 ············</span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="1996101472-8">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">sort</span><span·class="p"·data-group-id="1996101472-9">(</span><span·class="n">UnSorted</span><span·class="p"·data-group-id="1996101472-9">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·dac835b5eb02239799c072beb034d9172170acd9ea5033044bff988a9bb96515·...·]-8">)</span><span·class="w">
160 ···········</span><span·class="p"·data-group-id="1901858798-6">)</span><span·class="p">.</span><span·class="w">160 ···········</span><span·class="p"·data-group-id="1996101472-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="1901858798-10">(</span><span·class="p"·data-group-id="1901858798-11">[</span><span·class="p"·data-group-id="1901858798-11">]</span><span·class="p"·data-group-id="1901858798-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="1996101472-10">(</span><span·class="p"·data-group-id="1996101472-11">[</span><span·class="p"·data-group-id="1996101472-11">]</span><span·class="p"·data-group-id="1996101472-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="1901858798-12">(</span><span·class="p"·data-group-id="1901858798-13">[</span><span·class="p">_</span><span·class="p"·data-group-id="1901858798-13">]</span><span·class="p"·data-group-id="1901858798-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="1996101472-12">(</span><span·class="p"·data-group-id="1996101472-13">[</span><span·class="p">_</span><span·class="p"·data-group-id="1996101472-13">]</span><span·class="p"·data-group-id="1996101472-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="1901858798-14">(</span><span·class="p"·data-group-id="1901858798-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="1901858798-15">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·7f0ad56b719d6e66fe7acdd65f1a94ce5c2736527c531126c6d5d37ffaf7a9ae·...·]-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="1996101472-14">(</span><span·class="p"·data-group-id="1996101472-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="1996101472-15">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·f17772e687366a1b6b08969e8c1ce9f2bd5c8f49e682aef3cd370ff13bbe56e4·...·]-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="1901858798-16">(</span><span·class="p"·data-group-id="1901858798-17">[</span><span·class="n">H2</span><span·class="p">|</span><span·class="n">SortedTail</span><span·class="p"·data-group-id="1901858798-17">]</span><span·class="p"·data-group-id="1901858798-16">)</span><span·class="p">;</span><span·class="w">167 ····</span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="1996101472-16">(</span><span·class="p"·data-group-id="1996101472-17">[</span><span·class="n">H2</span><span·class="p">|</span><span·class="n">SortedTail</span><span·class="p"·data-group-id="1996101472-17">]</span><span·class="p"·data-group-id="1996101472-16">)</span><span·class="p">;</span><span·class="w">
168 </span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="1901858798-18">(</span><span·class="p">_</span><span·class="p"·data-group-id="1901858798-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="1996101472-18">(</span><span·class="p">_</span><span·class="p"·data-group-id="1996101472-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="8156523994-1">(</span><span·class="ss">ct_property_test_SUITE</span><span·class="p"·data-group-id="8156523994-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="9678344237-1">(</span><span·class="ss">ct_property_test_SUITE</span><span·class="p"·data-group-id="9678344237-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="8156523994-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="8156523994-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="9678344237-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="9678344237-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="8156523994-3">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="8156523994-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="9678344237-3">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="9678344237-3">)</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">all</span><span·class="p"·data-group-id="8156523994-4">(</span><span·class="p"·data-group-id="8156523994-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8156523994-5">[</span><span·class="ss">prop_sort</span><span·class="w">173 </span><span·class="nf">all</span><span·class="p"·data-group-id="9678344237-4">(</span><span·class="p"·data-group-id="9678344237-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9678344237-5">[</span><span·class="ss">prop_sort</span><span·class="w">
174 ·········</span><span·class="p"·data-group-id="8156523994-5">]</span><span·class="p">.</span><span·class="w">174 ·········</span><span·class="p"·data-group-id="9678344237-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="8156523994-6">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8156523994-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="9678344237-6">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9678344237-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="8156523994-7">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8156523994-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="9678344237-7">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9678344237-7">)</span><span·class="p">.</span><span·class="w">
  
178 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="8156523994-8">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8156523994-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="9678344237-8">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9678344237-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="8156523994-9">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8156523994-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="9678344237-9">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9678344237-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="8156523994-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="9678344237-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="8156523994-11">(</span><span·class="p"·data-group-id="8156523994-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="9678344237-11">(</span><span·class="p"·data-group-id="9678344237-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="8156523994-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="9678344237-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="2787164760-1">(</span><span·class="n">Config</span><span·class="p"·data-group-id="2787164760-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="1570497136-1">(</span><span·class="n">Config</span><span·class="p"·data-group-id="1570497136-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="2787164760-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="1570497136-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="2787164760-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="2787164760-4">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class=[·...·truncated·by·diffoscope;·len:·29,·SHA:·82f0522afe37e4f827c3087c2ae79234f9fe05d98949499b1e651820d4fb87f2·...·]-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="1570497136-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="1570497136-4">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class=[·...·truncated·by·diffoscope;·len:·29,·SHA:·27d842e9b5b86bd3daef0b5033d5c5d9e7b9e9742d98d8daf0af4b7882109c24·...·]-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="2787164760-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="2787164760-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="1570497136-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="1570497136-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="2787164760-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:·f384754fd0df293243f8d15c065f407b66aefce374c5a243c0d672f1703700bb·...·]-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="1570497136-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:·2f1e89b7ce82e00d560a05a21ebe13098cbd2e6f9035991942f5eea8444e2346·...·]-6">)</span><span·class="w">
230 ·····················</span><span·class="k">end</span><span·class="p"·data-group-id="2787164760-3">)</span><span·class="p"·data-group-id="2787164760-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="1570497136-3">)</span><span·class="p"·data-group-id="1570497136-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>331 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>574 <p>Copyright·©·1996-2024·<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="1086461519-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:·eec3f74909bf6dae53925876823909060cd8907a8b5f41b2a5fe1b3612311770·...·]-1">]</span><span·class="w">254 ··</span><span·class="p"·data-group-id="8044352016-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:·31fd9ab9e8011a3cfe7eefbcf6c949899986c80f6dd6a4c8bc926b7a5610368f·...·]-1">]</span><span·class="w">
255 ··</span><span·class="p"·data-group-id="1086461519-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="8044352016-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="1086461519-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="8044352016-2">]</span><span·class="w">
257 ··</span><span·class="p"·data-group-id="1086461519-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="1086461519-3">]</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·208,·SHA:·86916b7ae5e26ae818fcddde26f7ee12de3febab7584704750d70f4c17effaa5·...·]-4">]</span></code></pre><h2·id="start-a-common-test-master-node"·class="section-heading">257 ··</span><span·class="p"·data-group-id="8044352016-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="8044352016-3">]</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·208,·SHA:·9055b1dbb8bc20533863a162780492e34327c29d96a7c25a86fc16f1428c7c80·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>310 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>565 <p>Copyright·©·1996-2024·<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="4309166260-1">(</span><span·class="p"·data-group-id="4309166260-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4309166260-2">[</span><span·class="p"·data-group-id="4309166260-3">{</span[·...·truncated·by·diffoscope;·len:·683,·SHA:·c3851f21b85461895a777c1c4e3e76adc4f585df261f472149d7ecb7ec03c7ab·...·]-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="3798662538-1">(</span><span·class="p"·data-group-id="3798662538-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3798662538-2">[</span><span·class="p"·data-group-id="3798662538-3">{</span[·...·truncated·by·diffoscope;·len:·683,·SHA:·77c6256875f2b33a2359e4f2d8c640e0edefa58738226cd7625c8f988de57863·...·]-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="5728728311-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="5728728311-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="3515431663-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="3515431663-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="9379347414-1">{</span><span·class="ss">snmp_app</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9379347414-2">[</span><span·class="p"·data-group-id="9379347414-3">{</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9379347414-4">[</span><span·class="nf">snmp_app_manager_params</span><span·class="p"·data-group-id="9379347414-5">(</span><span·class="p"·data-group-id="9379347414-5">)</span><span·class="p"·data-group-id="9379347414-4">]</span><span·class="p"·data-group-id="9379347414-3">}</span><span·class="p">,</span><span·class="w"> 
161 ············</span><span·class="p"·data-group-id="9379347414-6">{</span><span·class="ss">agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9379347414-7">[</span><span·class="nf">snmp_app_agent_params</span><span·cla[·...·truncated·by·diffoscope;·len:·450,·SHA:·209b15e90fcad056e1d0a8d4715cfb580ed3955f62f0b9d3ca5e9c7d7016297a·...·]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="9809289561-1">{</span><span·class="ss">snmp_app</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·543,·SHA:·36297c3200e34b57331b73be231c222a77c4e6e4d9667db9e05fd2c1625ac506·...·]
 161 ············</span><span·class="p"·data-group-id="9809289561-6">{</span><span·class="ss">agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9809289561-7">[</span><span·class="nf">snmp_app_agent_params</span><span·class="p"·data-group-id="9809289561-8">(</span><span·class="p"·data-group-id="9809289561-8">)</span><span·class="p"·data-group-id="9809289561-7">]</span><span·class="p"·data-group-id="9809289561-6">}</span><span·class="p"·data-group-id="9809289561-2">]</span><span·class="p"·data-group-id="9809289561-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1931 <p>Copyright·©·1996-2024·<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="6971127378-1">[</span><span·class="p"·data-group-id="6971127378-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="6971127378-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="8911904908-1">[</span><span·class="p"·data-group-id="8911904908-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="8911904908-2">}</span><span·class="p">,</span><span·class="w">
136 ·</span><span·class="p"·data-group-id="6971127378-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="6971127378-3">}</span><span·class="p">,</span><span·class="w">136 ·</span><span·class="p"·data-group-id="8911904908-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="8911904908-3">}</span><span·class="p">,</span><span·class="w">
137 ·</span><span·class="p"·data-group-id="6971127378-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="6971127378-4">}</span><span·class="w">137 ·</span><span·class="p"·data-group-id="8911904908-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="8911904908-4">}</span><span·class="w">
138 ·</span><span·class="p"·data-group-id="6971127378-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="6971127378-5">}</span><span·class="w">138 ·</span><span·class="p"·data-group-id="8911904908-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="8911904908-5">}</span><span·class="w">
139 ·</span><span·class="p"·data-group-id="6971127378-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="6971127378-6">}</span><span·class="w">139 ·</span><span·class="p"·data-group-id="8911904908-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="8911904908-6">}</span><span·class="w">
140 ·</span><span·class="p"·data-group-id="6971127378-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="6971127378-7">}</span><span·class="w">140 ·</span><span·class="p"·data-group-id="8911904908-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="8911904908-7">}</span><span·class="w">
141 ·</span><span·class="p"·data-group-id="6971127378-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="6971127378-8">}</span><span·class="w">141 ·</span><span·class="p"·data-group-id="8911904908-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="8911904908-8">}</span><span·class="w">
142 ·</span><span·class="p"·data-group-id="6971127378-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="6971127378-9">}</span><span·class="p"·data-group-id="6971127378-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="8911904908-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="8911904908-9">}</span><span·class="p"·data-group-id="8911904908-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3873 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1668 <p>Copyright·©·1996-2024·<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="5699429256-1">{</span><span·class="ss">telnet_settings</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5699429256-2">[</span><span·class="p"·data-group-id="5699429256-3">{</span><span·class="ss">connect_timeout</span><sp[·...·truncated·by·diffoscope;·len:·93,·SHA:·9ffefc4ad630bda49e82add04d6c8f2d457761f41f60ed06fff45adcef852c77·...·]-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="5830211073-1">{</span><span·class="ss">telnet_settings</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5830211073-2">[</span><span·class="p"·data-group-id="5830211073-3">{</span><span·class="ss">connect_timeout</span><sp[·...·truncated·by·diffoscope;·len:·93,·SHA:·b0538f4537e9f26b67f0a8fc65242dea2d6890e83bc990da8c933b2c06207613·...·]-3">}</span><span·class="p">,</span><span·class="w">
140 ···················</span><span·class="p"·data-group-id="5699429256-4">{</span><span·class="ss">command_timeout</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="5699429256-4">}</span><span·class="p">,</span><span·class="w">140 ···················</span><span·class="p"·data-group-id="5830211073-4">{</span><span·class="ss">command_timeout</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="5830211073-4">}</span><span·class="p">,</span><span·class="w">
141 ···················</span><span·class="p"·data-group-id="5699429256-5">{</span><span·class="ss">reconnection_attempts</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="5699429256-5">}</span><span·class="p">,</span><span·class="w">141 ···················</span><span·class="p"·data-group-id="5830211073-5">{</span><span·class="ss">reconnection_attempts</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="5830211073-5">}</span><span·class="p">,</span><span·class="w">
142 ···················</span><span·class="p"·data-group-id="5699429256-6">{</span><span·class="ss">reconnection_interval</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="5699429256-6">}</span><span·class="p">,</span><span·class="w">142 ···················</span><span·class="p"·data-group-id="5830211073-6">{</span><span·class="ss">reconnection_interval</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="5830211073-6">}</span><span·class="p">,</span><span·class="w">
143 ···················</span><span·class="p"·data-group-id="5699429256-7">{</span><span·class="ss">keep_alive</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="5699429256-7">}</span><span·class="p">,</span><span·class="w">143 ···················</span><span·class="p"·data-group-id="5830211073-7">{</span><span·class="ss">keep_alive</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="5830211073-7">}</span><span·class="p">,</span><span·class="w">
144 ···················</span><span·class="p"·data-group-id="5699429256-8">{</span><span·class="ss">poll_limit</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="5699429256-8">}</span><span·class="p">,</span><span·class="w">144 ···················</span><span·class="p"·data-group-id="5830211073-8">{</span><span·class="ss">poll_limit</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="5830211073-8">}</span><span·class="p">,</span><span·class="w">
145 ···················</span><span·class="p"·data-group-id="5699429256-9">{</span><span·class="ss">poll_interval</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="5699429256-9">}</span><span·class="p">,</span><span·class="w">145 ···················</span><span·class="p"·data-group-id="5830211073-9">{</span><span·class="ss">poll_interval</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="5830211073-9">}</span><span·class="p">,</span><span·class="w">
146 ···················</span><span·class="p"·data-group-id="5699429256-10">{</span><span·class="ss">tcp_nodelay</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="5699429256-10">}</span><span·class="p"·data-group-id="5699429256-2">]</span><span·class="p"·data-group-id="5699429256-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="5830211073-10">{</span><span·class="ss">tcp_nodelay</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="5830211073-10">}</span><span·class="p"·data-group-id="5830211073-2">]</span><span·class="p"·data-group-id="5830211073-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="2286139149-1">(</span><span·class="p"·data-group-id="2286139149-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="7171846557-1">(</span><span·class="p"·data-group-id="7171846557-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
162 ····</span><span·class="p"·data-group-id="2286139149-2">[</span><span·class="p"·data-group-id="2286139149-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2286139149-4">[</span><span·class="p"·data-group-id="2286139149-5">{</[·...·truncated·by·diffoscope;·len:·805,·SHA:·f2fb4c28051a2a7bd48e6566c7e1c9c6d0eda63038e72ee8fae26eec323afdd8·...·]-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="7171846557-2">[</span><span·class="p"·data-group-id="7171846557-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7171846557-4">[</span><span·class="p"·data-group-id="7171846557-5">{</[·...·truncated·by·diffoscope;·len:·805,·SHA:·e038ab53bb9571c45ea1317bd6f067282ac18d039424719f56096029a2b85f7d·...·]-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="3858058510-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3858058510-2">[</span><span·class="p"·data-group-id="3858058510-3">{</span><span·class="ss">ct_telnet</span><span·class=[·...·truncated·by·diffoscope;·len:·242,·SHA:·badcda60a35b9e348a30d2f1552dba2e2167741e3147f82747181f4c702a5e0a·...·]-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="0510651532-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0510651532-2">[</span><span·class="p"·data-group-id="0510651532-3">{</span><span·class="ss">ct_telnet</span><span·class=[·...·truncated·by·diffoscope;·len:·242,·SHA:·73bc67cd61b2ef0efb504e14221df59a14806da31111081ed2033eb78df7ba0e·...·]-5">}</span><span·class="p">,</span><span·class="w">
176 ···························</span><span·class="p"·data-group-id="3858058510-6">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="3858058510-7">[</span><span·class="nf">key_or_name</span><span·class="p"·data-group-id="3858058510-8">(</span><span·class="p"·data-group-id="385805851[·...·truncated·by·diffoscope;·len:·319,·SHA:·93c8109514b0a8a25e31598b56b2b01d959059f4ead372bb1186171e8500210a·...·]-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="0510651532-6">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="0510651532-7">[</span><span·class="nf">key_or_name</span><span·class="p"·data-group-id="0510651532-8">(</span><span·class="p"·data-group-id="051065153[·...·truncated·by·diffoscope;·len:·319,·SHA:·9c4b4b80ae1edf58165189958b63feb31256c67abcbe9e8cf4ea89e390adc1a0·...·]-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="1442565101-1">(</span><span·class="p"·data-group-id="1442565101-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="8324210220-1">(</span><span·class="p"·data-group-id="8324210220-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
180 ····</span><span·class="p"·data-group-id="1442565101-2">[</span><span·class="p"·data-group-id="1442565101-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">180 ····</span><span·class="p"·data-group-id="8324210220-2">[</span><span·class="p"·data-group-id="8324210220-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">
181 ······</span><span·class="p"·data-group-id="1442565101-4">[</span><span·class="p"·data-group-id="1442565101-5">{</span><span·class="ss">cth_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1442565101-6">[</span><span·class="p"·data-group-id="1442565101-7">{</span><span·class="ss">ct_telnet</span><span·class="p">,</span><span·class="p"·data-group-id="1442565101-8">[</span><span·class="p"·data-group-id="1442565101-9">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="1442565101-10">[</span><span·class="ss">server1</span><span·class="p">,</span><span·class="ss">server2</span><span·class="p"·data-group-id="1442565101-10">]</span><span·class="p"·data-group-id="1442565101-9">}</span><span·class="p"·data-group-id="1442565101-8">]</span><span·class="p"·data-group-id="1442565101-7">}</span><span·class="p"·data-group-id="1442565101-6">]</span><span·class="p"·data-group-id="1442565101-5">}</span><span·class="p"·data-group-id="1442565101-4">]</span><span·class="p"·data-group-id="1442565101-3">}</span><span·class="p"·data-group-id="1442565101-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="4679076213-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·1151,·SHA:·f21730aaf46163cc1bd1e667552e9b1536de7e9fc6fe430b82e7b39e460c8f53·...·]181 ······</span><span·class="p"·data-group-id="8324210220-4">[</span><span·class="p"·data-group-id="8324210220-5">{</span><span·class="ss">cth_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8324210220-6">[</span>[·...·truncated·by·diffoscope;·len:·1003,·SHA:·4b94a4c1e5b3b1c12e31491e2cdbd7355a754ad67aea010a1d6ad179e11c7bea·...·]
 182 like·the·following·in·a·configuration·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9194092014-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9194092014-2">[</span><span·class="p"·data-group-id="9194092014-3">{</span><span·class="ss">ct_telnet</span><span·class="p">,</span><span·class="p"·data-group-id="9194092014-4">[</span><span·class="p"·data-group-id="9194092014-5">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="9194092014-6">[</span><span·class="ss">server1</span><span·class="p">,</span><span·class="ss">server2</span><span·class="p"·data-group-id="9194092014-6">]</span><span·class="p"·data-group-id="9194092014-5">}</span><span·class="p"·data-group-id="9194092014-4">]</span><span·class="p"·data-group-id="9194092014-3">}</span><span·class="p"·data-group-id="9194092014-2">]</span><span·class="p"·data-group-id="9194092014-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="4516288737-1">(</span><span·class="p"·data-group-id="4516288737-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
183 ····</span><span·class="p"·data-group-id="6190305096-2">[</span><span·class="p"·data-group-id="6190305096-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6190305096-4">[</span><span·class="p"·data-group-id="6190305096-5">{</[·...·truncated·by·diffoscope;·len:·395,·SHA:·b94cd236ff7802610ce03b8ca30ba1bbd60bdab0312b27bffe639404d7f589cc·...·]-2">]</span><span·class="p">.</span></code></pre><h2·id="module-see-also"·class="section-heading">183 ····</span><span·class="p"·data-group-id="4516288737-2">[</span><span·class="p"·data-group-id="4516288737-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4516288737-4">[</span><span·class="p"·data-group-id="4516288737-5">{</[·...·truncated·by·diffoscope;·len:·395,·SHA:·1d5f88f2ff8f68d249ffd18fa8d80aa1fa3ba51359e16474c6d1bafdd9f38878·...·]-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="0265677360-1">(</span><span·class="n">Connection</span><span·class="p">,</span><span·class="p"·data-group-id="0265677360-2">[</span><span·class="p"·data-group-id="0265677360-3">{</span><span·class="ss">abc</span><span·class="p">,</span><span·class="s">&quo[·...·truncated·by·diffoscope;·len:·1029,·SHA:·d282289118d6c0b6601a2163fa9ae181013bf6dc4e4cffebb76ddbf3e81106e2·...·]-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="1311560134-1">(</span><span·class="n">Connection</span><span·class="p">,</span><span·class="p"·data-group-id="1311560134-2">[</span><span·class="p"·data-group-id="1311560134-3">{</span><span·class="ss">abc</span><span·class="p">,</span><span·class="s">&quo[·...·truncated·by·diffoscope;·len:·1029,·SHA:·aaf440c2dad93fb4599daa13635116dee52449cd3fb49e52334b3a3e3572d8e5·...·]-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="7353018098-1">(</span><span·class="n">Connection</span><span·class="p">,</span><span·class="p"·data-group-id="7353018098-2">[</span><span·class="p"·data-group-id="7353018098-3">{</span><span·class="ss">abc</span><span·class="p">,</span><span·class="s">&quo[·...·truncated·by·diffoscope;·len:·1181,·SHA:·becf7043f6cb7d2cce0a049dd48450ea3dbcb9ac0db5c8ae4e0f053df460daf3·...·]8-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="9529028028-1">(</span><span·class="n">Connection</span><span·class="p">,</span><span·class="p"·data-group-id="9529028028-2">[</span><span·class="p"·data-group-id="9529028028-3">{</span><span·class="ss">abc</span><span·class="p">,</span><span·class="s">&quo[·...·truncated·by·diffoscope;·len:·1181,·SHA:·09c32bad58d26bb625f9098c2c78dedcca22a24804f86777a55dfa3537beb6cc·...·]8-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1225 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>240 <p>Copyright·©·1996-2024·<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="1318650626-1">(</span><span·class="ss">my_server_SUITE</span><span·class="p"·data-group-id="1318650626-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="6997352805-1">(</span><span·class="ss">my_server_SUITE</span><span·class="p"·data-group-id="6997352805-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="1318650626-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="1318650626-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="6997352805-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="6997352805-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="1318650626-3">(</span><span·class="s">&quot;ct.hrl&quot;</span><span·class="p"·data-group-id="1318650626-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="6997352805-3">(</span><span·class="s">&quot;ct.hrl&quot;</span><span·class="p"·data-group-id="6997352805-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="1318650626-4">(</span><span·class="p"·data-group-id="1318650626-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1318650626-5">[</span><span·class="p"·data-group-id="1318650626-6">{</span[·...·truncated·by·diffoscope;·len:·187,·SHA:·f7d3867d182e5cfd90795f227429b657a3ad922d9ec3f047fa6e5c4cd629c449·...·]-5">]</span><span·class="p">.</span><span·class="w">168 </span><span·class="nf">suite</span><span·class="p"·data-group-id="6997352805-4">(</span><span·class="p"·data-group-id="6997352805-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6997352805-5">[</span><span·class="p"·data-group-id="6997352805-6">{</span[·...·truncated·by·diffoscope;·len:·187,·SHA:·ed17a622c92fe91de1c538ba13ef776296ead19f984bd59a5adecfc196ab8ad6·...·]-5">]</span><span·class="p">.</span><span·class="w">
  
169 </span><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="1318650626-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="1318650626-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="6997352805-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="6997352805-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="1318650626-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="1318650626-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="6997352805-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="6997352805-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 ····</span><span·class="p"·data-group-id="1318650626-9">[</span><span·class="p"·data-group-id="1318650626-10">{</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="nf">start_server</span><span·class="p"·data-group-id="1318650626-11">(</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·218,·SHA:·8997daee324279e6df5aae849ca04d8f2b13f7b59e2c950c4069116bbbf3a425·...·]-9">]</span><span·class="p">;</span><span·class="w">172 ····</span><span·class="p"·data-group-id="6997352805-9">[</span><span·class="p"·data-group-id="6997352805-10">{</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="nf">start_server</span><span·class="p"·data-group-id="6997352805-11">(</span><span·class="p"·data-group-id="6[·...·truncated·by·diffoscope;·len:·218,·SHA:·ea50c67f8b4ffcf35b96c5b173c0af60f512acbbcba9568897380b90d0872b20·...·]-9">]</span><span·class="p">;</span><span·class="w">
  
173 </span><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="1318650626-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="1318650626-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="6997352805-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="6997352805-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="1318650626-13">(</span><span·class="p"·data-group-id="1318650626-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="6997352805-13">(</span><span·class="p"·data-group-id="6997352805-13">)</span><span·class="p">,</span><span·class="w">
175 ····</span><span·class="nf">configure_server</span><span·class="p"·data-group-id="1318650626-14">(</span><span·class="p"·data-group-id="1318650626-14">)</span><span·class="p">,</span><span·class="w">175 ····</span><span·class="nf">configure_server</span><span·class="p"·data-group-id="6997352805-14">(</span><span·class="p"·data-group-id="6997352805-14">)</span><span·class="p">,</span><span·class="w">
176 ····</span><span·class="p"·data-group-id="1318650626-15">[</span><span·class="p"·data-group-id="1318650626-16">{</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="1318650626-16">}</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·107,·SHA:·fa8dc89036afd373bed8a9cf8c4964958af8160965d7cc1c59d7ba02f491aadd·...·]-15">]</span><span·class="p">.</span><span·class="w">176 ····</span><span·class="p"·data-group-id="6997352805-15">[</span><span·class="p"·data-group-id="6997352805-16">{</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="6997352805-16">}</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·107,·SHA:·8bec2f2e2d77c765e6285a5dc7cf61509fbefbdda146538559a53a2da1e6c5a3·...·]-15">]</span><span·class="p">.</span><span·class="w">
  
177 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="1318650626-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="1318650626-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="6997352805-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="6997352805-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="1318650626-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="1318650626-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="6997352805-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="6997352805-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="1318650626-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="1318650626-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="6997352805-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="6997352805-19">)</span><span·class="p">,</span><span·class="w">
181 ····</span><span·class="nf">stop_server</span><span·class="p"·data-group-id="1318650626-20">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="1318650626-20">)</span><span·class="p">.</span><span·class="w">181 ····</span><span·class="nf">stop_server</span><span·class="p"·data-group-id="6997352805-20">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="6997352805-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="1318650626-21">(</span><span·class="p"·data-group-id="1318650626-21">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1318650626-22">[</span><span·class="ss">start_and_stop</span><span·class[·...·truncated·by·diffoscope;·len:·202,·SHA:·150a4c2316f7583cd60f9634de5686b080c53b7cffa6e0bb4304e980e8a42da6·...·]-22">]</span><span·class="p">.</span><span·class="w">183 </span><span·class="nf">all</span><span·class="p"·data-group-id="6997352805-21">(</span><span·class="p"·data-group-id="6997352805-21">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6997352805-22">[</span><span·class="ss">start_and_stop</span><span·class[·...·truncated·by·diffoscope;·len:·202,·SHA:·a0d9d59d87cde562f2c49d229a456b507415784cceda77f39bd4a0b057e819ca·...·]-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="1318650626-23">(</span><span·class="p">_</span><span·class="p"·data-group-id="1318650626-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="6997352805-23">(</span><span·class="p">_</span><span·class="p"·data-group-id="6997352805-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="1318650626-24">(</span><span·class="p"·data-group-id="1318650626-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="6997352805-24">(</span><span·class="p"·data-group-id="6997352805-24">)</span><span·class="p">,</span><span·class="w">
187 ····</span><span·class="nf">stop_server</span><span·class="p"·data-group-id="1318650626-25">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="1318650626-25">)</span><span·class="p">.</span><span·class="w">187 ····</span><span·class="nf">stop_server</span><span·class="p"·data-group-id="6997352805-25">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="6997352805-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="1318650626-26">(</span><span·class="n">Config</span><span·class="p"·data-group-id="1318650626-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="6997352805-26">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6997352805-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="1318650626-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="1318650626-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="6997352805-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="6997352805-27">)</span><span·class="p">,</span><span·class="w">
191 ····</span><span·class="nf">configure_server</span><span·class="p"·data-group-id="1318650626-28">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="1318650626-28">)</span><span·class="p">.</span><span·class="w">191 ····</span><span·class="nf">configure_server</span><span·class="p"·data-group-id="6997352805-28">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="6997352805-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="1318650626-29">(</span><span·class="n">Config</span><span·class="p"·data-group-id="1318650626-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="6997352805-29">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6997352805-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="1318650626-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="1318650626-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="6997352805-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="6997352805-30">)</span><span·class="p">,</span><span·class="w">
195 ····</span><span·class="p"·data-group-id="1318650626-31">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="1318650626-31">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_serve[·...·truncated·by·diffoscope;·len:·190,·SHA:·92382d73140a5439b74ff2a83b6bf036d16e3da8b2e94077078eb997eb16a965·...·]-32">)</span><span·class="p">,</span><span·class="w">195 ····</span><span·class="p"·data-group-id="6997352805-31">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="6997352805-31">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_serve[·...·truncated·by·diffoscope;·len:·190,·SHA:·3818f356820f35b1ce84c38c47ac05135fef98af2773fbf1f4b07fbf8a1e9e00·...·]-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="1318650626-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="1318650626-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="6997352805-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="6997352805-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="1318650626-34">(</span><span·class="p"·data-group-id="1318650626-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="6997352805-34">(</span><span·class="p"·data-group-id="6997352805-34">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
199 ····</span><span·class="p"·data-group-id="1318650626-35">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="1318650626-35">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_serve[·...·truncated·by·diffoscope;·len:·156,·SHA:·fe45d21b791f13ce1c042bf863343b171f1199fbd5c16feb977280d34f86611c·...·]-36">)</span><span·class="p">,</span><span·class="w">199 ····</span><span·class="p"·data-group-id="6997352805-35">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="6997352805-35">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_serve[·...·truncated·by·diffoscope;·len:·156,·SHA:·fbb8d8278f1634a5b2ee2d82e941d8be60d4b35fc6ea3943e68beebce703382a·...·]-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="1318650626-37">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="1318650626-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="6997352805-37">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="6997352805-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="1318650626-38">(</span><span·class="p"·data-group-id="1318650626-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="6997352805-38">(</span><span·class="p"·data-group-id="6997352805-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="1318650626-39">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="1318650626-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="6997352805-39">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="6997352805-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="1318650626-40">(</span><span·class="ss">my_server_cfg</span><span·class="p"·data-group-id="1318650626-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="6997352805-40">(</span><span·class="ss">my_server_cfg</span><span·class="p"·data-group-id="6997352805-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="1318650626-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="1318650626-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="6997352805-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="6997352805-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="2430795326-1">(</span><span·class="ss">server_b_SUITE</span><span·class="p"·data-group-id="2430795326-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="6384641252-1">(</span><span·class="ss">server_b_SUITE</span><span·class="p"·data-group-id="6384641252-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="2430795326-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="2430795326-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="6384641252-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="6384641252-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="2430795326-3">(</span><span·class="s">&quot;ct.hrl&quot;</span><span·class="p"·data-group-id="2430795326-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="6384641252-3">(</span><span·class="s">&quot;ct.hrl&quot;</span><span·class="p"·data-group-id="6384641252-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="2430795326-4">(</span><span·class="n">Config</span><span·class="p"·data-group-id="2430795326-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="6384641252-4">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6384641252-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="2430795326-5">{</span><span·class="ss">server_a_SUITE</span><span·class="p">,</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="2430795326-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc[·...·truncated·by·diffoscope;·len:·282,·SHA:·44f79b441be2dc6c1935b5b3678afea5fa71968a5798e7c695eb54848e0441e7·...·]-6">)</span><span·class="p">,</span><span·class="w">256 ····</span><span·class="p"·data-group-id="6384641252-5">{</span><span·class="ss">server_a_SUITE</span><span·class="p">,</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="6384641252-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc[·...·truncated·by·diffoscope;·len:·282,·SHA:·8241e97b81e0514a4e6c7125e38f06c2b8758f0ec54092267c5c5f4a9cd332dd·...·]-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="2430795326-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="2430795326-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="6384641252-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="6384641252-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="2430795326-8">(</span><span·class="n">ServerId</span><span·class="p"·data-group-id="2430795326-8">)</span><span·class="p">,</span><span·class="w"> 
260 ····</span><span·class="p"·data-group-id="2430795326-9">[</span><span·class="p"·data-group-id="2430795326-10">{</span><span·class="ss">ids</span><span·class="p">,</span><span·class="p"·data-group-id="2430795326-11">{</span><span·class="n">ServerId</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·309,·SHA:·2f8c152105c12482560eff8f33db5a855c31f0cefcc0277d9dae466486893a57·...·]</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="6384641252-8">(</span><span·class="n">ServerId</span><span·class="p"·data-group-id="638464125[·...·truncated·by·diffoscope;·len:·30,·SHA:·c85438d304f976c900a53974877f9db13f2773fdbd35868d8fb22dbfbe5900f2·...·]</span><span·class="w">
 260 ····</span><span·class="p"·data-group-id="6384641252-9">[</span><span·class="p"·data-group-id="6384641252-10">{</span><span·class="ss">ids</span><span·class="p">,</span><span·class="p"·data-group-id="6384641252-11">{</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="6384641252-11">}</span><span·class="p"·data-group-id="6384641252-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="6384641252-9">]</span><span·class="p">.</span><span·class="w">
  
261 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="2430795326-12">(</span><span·class="n">Config</span><span·class="p"·data-group-id="2430795326-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="6384641252-12">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6384641252-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="2430795326-13">{</span><span·class="ss">save_config</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="2430795326-13">}</span><span·class="w">263 ····</span><span·class="p"·data-group-id="6384641252-13">{</span><span·class="ss">save_config</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="6384641252-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="2430795326-14">(</span><span·class="p"·data-group-id="2430795326-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2430795326-15">[</span><span·class="ss">allocate</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·106,·SHA:·9725c4fbdcee97012711dd605676b70c6ef5529b52f99facf46d5572ef17f2e5·...·]-15">]</span><span·class="p">.</span><span·class="w">265 </span><span·class="nf">all</span><span·class="p"·data-group-id="6384641252-14">(</span><span·class="p"·data-group-id="6384641252-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6384641252-15">[</span><span·class="ss">allocate</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·106,·SHA:·7845a965bafe9056ad1d7e62633f7acc448141f35771e877fb03de79cf4518da·...·]-15">]</span><span·class="p">.</span><span·class="w">
  
266 </span><span·class="nf">allocate</span><span·class="p"·data-group-id="2430795326-16">(</span><span·class="n">Config</span><span·class="p"·data-group-id="2430795326-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="6384641252-16">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6384641252-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
267 ····</span><span·class="p"·data-group-id="2430795326-17">{</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="2430795326-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pro[·...·truncated·by·diffoscope;·len:·269,·SHA:·8752e6d8fa8012a662d73c11e1f5a380f23506c2cdb687a022261a0e9e99a1ac·...·]-18">)</span><span·class="p">,</span><span·class="w">267 ····</span><span·class="p"·data-group-id="6384641252-17">{</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="6384641252-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pro[·...·truncated·by·diffoscope;·len:·269,·SHA:·6b4f9889e40e50189b46eaebdb65c01493be16c7f842c7dc22ab1709adc75860·...·]-18">)</span><span·class="p">,</span><span·class="w">
268 ····</span><span·class="p"·data-group-id="2430795326-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle</span><span·class="p"·data-group-id="2430795326-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:·3310a8d6b7e7afbbf18947a47fa27404c36faed96367b80e9855be69b7e6ef2d·...·]-20">)</span><span·class="p">,</span><span·class="w">268 ····</span><span·class="p"·data-group-id="6384641252-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle</span><span·class="p"·data-group-id="6384641252-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:·492f037701fdf35deda111a2c1dda823f73167e189f6613876a28bf791bff568·...·]-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="2430795326-21">[</span><span·class="p"·data-group-id="2430795326-22">{</span><span·class="ss">handle</span><span·class="p">,</span><span·class="n">Handle</span><span·class="p"·data-group-id="2430795326-22">}</span><span·class="p"·data-group-id="2430795326-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="6384641252-21">[</span><span·class="p"·data-group-id="6384641252-22">{</span><span·class="ss">handle</span><span·class="p">,</span><span·class="n">Handle</span><span·class="p"·data-group-id="6384641252-22">}</span><span·class="p"·data-group-id="6384641252-21">]</span><span·class="p">,</span><span·class="w">
271 ····</span><span·class="p"·data-group-id="2430795326-23">{</span><span·class="ss">save_config</span><span·class="p">,</span><span·class="n">NewConfig</span><span·class="p"·data-group-id="2430795326-23">}</span><span·class="p">.</span><span·class="w">271 ····</span><span·class="p"·data-group-id="6384641252-23">{</span><span·class="ss">save_config</span><span·class="p">,</span><span·class="n">NewConfig</span><span·class="p"·data-group-id="6384641252-23">}</span><span·class="p">.</span><span·class="w">
  
272 </span><span·class="nf">deallocate</span><span·class="p"·data-group-id="2430795326-24">(</span><span·class="n">Config</span><span·class="p"·data-group-id="2430795326-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="6384641252-24">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6384641252-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
273 ····</span><span·class="p"·data-group-id="2430795326-25">{</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="2430795326-25">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pro[·...·truncated·by·diffoscope;·len:·269,·SHA:·cb2c0bae34e297cf1209225e28db41cf501ea9784d77ee51328f809b2522a361·...·]-26">)</span><span·class="p">,</span><span·class="w">273 ····</span><span·class="p"·data-group-id="6384641252-25">{</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="6384641252-25">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pro[·...·truncated·by·diffoscope;·len:·269,·SHA:·17479534e6de9d787358dcb805f34e9e17b23146fc3d9add4e5bac4c65ed4ad1·...·]-26">)</span><span·class="p">,</span><span·class="w">
274 ····</span><span·class="p"·data-group-id="2430795326-27">{</span><span·class="ss">allocate</span><span·class="p">,</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="2430795326-27">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pr[·...·truncated·by·diffoscope;·len:·279,·SHA:·8522657b2ab6464c41749c76cbcc5f9314c570934935599c17d3eeb19dffc767·...·]-28">)</span><span·class="p">,</span><span·class="w">274 ····</span><span·class="p"·data-group-id="6384641252-27">{</span><span·class="ss">allocate</span><span·class="p">,</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="6384641252-27">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pr[·...·truncated·by·diffoscope;·len:·279,·SHA:·895d4308075e4112c78122dd463e9f709b9863694bf4767910337e256eeffa05·...·]-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="2430795326-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="2430795326-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="6384641252-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="6384641252-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="2430795326-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="2430795326-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="6384641252-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="6384641252-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="6153419347-1">{</span><span·class="ss">event_handler</span><span·class="p">,</span><span·class="n">EventHandlers</span><span·class="p"·data-group-id="6153419347-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="0400211795-1">{</span><span·class="ss">event_handler</span><span·class="p">,</span><span·class="n">EventHandlers</span><span·class="p"·data-group-id="0400211795-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="6153419347-2">[</span><span·class="n">EH</span><span·class="p"·data-group-id="6153419347-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="0400211795-2">[</span><span·class="n">EH</span><span·class="p"·data-group-id="0400211795-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="6153419347-3">(</span><span·class="p"·data-group-id="6153419347-3">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="6153419347-4">{</span><span·class="nf">atom</span><span·class="p"·data-group-id="6153419347-5">(</span><span·class="p"·data-group-id="6153419347-5">)</span><span·class="p">,</span><span·class="n">InitArgs</span><span·class="p"·data-group-id="6153419347-4">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="6153419347-6">{</span><span·class="p"·data-group-id="6153419347-7">[</span><span·class="nf">atom</span><span·class="p"·data-group-id="6153419347-8">(</span><span·class="p"·data-group-id="6153419347-8">)</span><span·class="p"·data-group-id="6153419347-7">]</span><span·class="p">,</span><span·class="n">InitArgs</span><span·class="p"·data-group-id="6153419347-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="6153419347-9">[</span><span·class="nf">term</span><span·class="p"·data-group-id="6153419347-10">(</span><span·class="p"·data-group-id="615[·...·truncated·by·diffoscope;·len:·187,·SHA:·3d569c3c6392ea8bca2dfddbaa85c0ab91be3da7596ee2f9b33acbc52f01aab8·...·]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="0400211795-3">(</span><span·class="p"·data-group-id="0400211795-3">)</span><span·class="w">·</span><span·class="p">|[·...·truncated·by·diffoscope;·len:·815,·SHA:·498485d273f5f129e6f002a305ed3eb6fa5b4e84614671f4e705dca2766a51ef·...·]
 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="0400211795-9">[</span><span·class="nf">term</span><span·class="p"·data-group-id="0400211795-10">(</span><span·class="p"·data-group-id="0400211795-10">)</span><span·class="p"·data-group-id="0400211795-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="2118832062-1">(</span><span·class="p"·data-group-id="2118832062-2">[</span><span·class="p"·data-group-id="2118832062-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-[·...·truncated·by·diffoscope;·len:·873,·SHA:·f428579835102eb6df6c038bd42671c82643ddb36fe5172f974320896d334f59·...·]-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.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="8064771216-1">(</span><span·class="p"·data-group-id="8064771216-2">[</span><span·class="p"·data-group-id="8064771216-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-[·...·truncated·by·diffoscope;·len:·873,·SHA:·97ea90412b56e2cd71ae4352ec6ee8bd09929deb3ffd507ae7ca197456ac6f53·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>325 <p>Copyright·©·1996-2024·<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="7998501125-1">(</span><span·class="ss">db_data_type_SUITE</span><span·class="p"·data-group-id="7998501125-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="9157484271-1">(</span><span·class="ss">db_data_type_SUITE</span><span·class="p"·data-group-id="9157484271-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="7998501125-2">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="7998501125-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="9157484271-2">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="9157484271-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="7998501125-3">(</span><span·class="p"·data-group-id="7998501125-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="9157484271-3">(</span><span·class="p"·data-group-id="9157484271-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="7998501125-4">]</span><span·class="p"·data-group-id="7998501125-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="9157484271-4">]</span><span·class="p"·data-group-id="9157484271-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="7998501125-5">(</span><span·class="p"·data-group-id="7998501125-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:·120,·SHA:·79bc9fae0a62443e2e382f9a634c78e12d87b3da63cfbf06a13570a89e9853b7·...·]-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="9157484271-5">(</span><span·class="p"·data-group-id="9157484271-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:·120,·SHA:·0608dece538b050393fd37f0573a60a96c861749bd05e2dd2f67f5618263e048·...·]-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-8">(</span><span·class="p"·data-group-id="7998501125-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="9157484271-8">(</span><span·class="p"·data-group-id="9157484271-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
157 ····</span><span·class="p"·data-group-id="7998501125-9">[</span><span·class="p"·data-group-id="7998501125-10">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="7998501125-11">{</span><span·class="ss">minutes</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·159,·SHA:·61456666c071f8fd5a4f3124bbdc3b47dd55139f79beae3ea982a8e476222b44·...·]-9">]</span><span·class="p">.</span><span·class="w">157 ····</span><span·class="p"·data-group-id="9157484271-9">[</span><span·class="p"·data-group-id="9157484271-10">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="9157484271-11">{</span><span·class="ss">minutes</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·159,·SHA:·a7c5821097a15e9e99954cbe7e337003cd23cf664ee3643da71469a1dcda1741·...·]-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="7998501125-12">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7998501125-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="9157484271-12">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9157484271-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
167 ····</span><span·class="p"·data-group-id="7998501125-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="7998501125-13">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·383,·SHA:·0e4e9cda534216b3c9bd2a82dab7d861b63b94db10c8737124d78d75e95ac370·...·]-14">)</span><span·class="p">,</span><span·class="w">167 ····</span><span·class="p"·data-group-id="9157484271-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="9157484271-13">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·383,·SHA:·85b2cf59830981bbd9570a5f23574722d0215cce7eaf86fb1a3f4e18959149c3·...·]-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="7998501125-16">(</span><span·class="p"·data-group-id="7998501125-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="9157484271-16">(</span><span·class="p"·data-group-id="9157484271-16">)</span><span·class="p">,</span><span·class="w">
169 ····</span><span·class="p"·data-group-id="7998501125-17">[</span><span·class="p"·data-group-id="7998501125-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="7998501125-18">}</s[·...·truncated·by·diffoscope;·len:·368,·SHA:·30447354f6748b54b715facceab2422f60e09c60756cf58501a88501f9520a06·...·]-17">]</span><span·class="p">.</span><span·class="w">169 ····</span><span·class="p"·data-group-id="9157484271-17">[</span><span·class="p"·data-group-id="9157484271-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="9157484271-18">}</s[·...·truncated·by·diffoscope;·len:·368,·SHA:·3075dc1a77f3bde4ea25b3e00247089208b35a2b1353166db5f3cada450e422d·...·]-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="7998501125-20">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7998501125-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="9157484271-20">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9157484271-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-22">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="7998501125-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="9157484271-22">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="9157484271-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-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="7998501125-27"[·...·truncated·by·diffoscope;·len:·131,·SHA:·ea1f31376e2d35ddb9b1f830fe384d3247a3494fa35b4c3d4f3cc43c27ca0571·...·]-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="9157484271-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="9157484271-27"[·...·truncated·by·diffoscope;·len:·131,·SHA:·691df3e9fcc9e5c9600f1e19d3ce9c90e27bc4e8caf2d15a42432b9a1213df73·...·]-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-32">(</span><span·class="p"·data-group-id="7998501125-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="9157484271-32">(</span><span·class="p"·data-group-id="9157484271-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 ····</span><span·class="p"·data-group-id="7998501125-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="7998501125-33">]</span><span·class="p">.</span><span·class="w">225 ····</span><span·class="p"·data-group-id="9157484271-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="9157484271-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="7998501125-34">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7998501125-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="9157484271-34">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9157484271-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="7998501125-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-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·47ce954dfe33154518a74f31f55f34285efc93832ea2b674afa0a1db129850de·...·]-35">)</span><span·class="p">.</span><span·class="w">230 ····</span><span·class="nf">insert_and_lookup</span><span·class="p"·data-group-id="9157484271-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-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·91cb7e15958befac49ba6a8e9075341ea6c1462ff2b5acf59065c752865e03b1·...·]-35">)</span><span·class="p">.</span><span·class="w">
  
231 </span><span·class="nf">integer</span><span·class="p"·data-group-id="7998501125-36">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7998501125-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="9157484271-36">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9157484271-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="7998501125-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="7998501125-37">)</span><span·class="p">.</span><span·class="w">232 ····</span><span·class="nf">insert_and_lookup</span><span·class="p"·data-group-id="9157484271-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="9157484271-37">)</span><span·class="p">.</span><span·class="w">
  
  
233 </span><span·class="nf">insert_and_lookup</span><span·class="p"·data-group-id="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-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="7998501125-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="9157484271-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="9157484271-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="7998501125-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:·64,·SHA:·d5550cdf99e21cd2d163cc6f2ae375509010fc7cfb4c972acac52073292ec529·...·]-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="9157484271-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:·64,·SHA:·906cbcc3212bba6ba5171ad7e03b946390281c14e6febeca8a945b2bcb36e949·...·]-41">)</span><span·class="p">,</span><span·class="w">
237 ····</span><span·class="p"·data-group-id="7998501125-42">[</span><span·class="n">Value</span><span·class="p"·data-group-id="7998501125-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:·276,·SHA:·8f6546d7805c1fe505f3e80b8c69949cbe46047682a97724b9259f8d31616431·...·]-43">)</span><span·class="p">,</span><span·class="w">237 ····</span><span·class="p"·data-group-id="9157484271-42">[</span><span·class="n">Value</span><span·class="p"·data-group-id="9157484271-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:·276,·SHA:·dae4b57959f1e67356b460f5583afc17e23947a47a1ed3ea5abeb100e3b55d35·...·]-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="2322334908-1">(</span><span·class="ss">my1st_SUITE</span><span·class="p"·data-group-id="2322334908-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="7119651073-1">(</span><span·class="ss">my1st_SUITE</span><span·class="p"·data-group-id="7119651073-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="2322334908-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="2322334908-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="7119651073-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="7119651073-2">)</span><span·class="p">.</span><span·class="w">
  
174 </span><span·class="nf">all</span><span·class="p"·data-group-id="2322334908-3">(</span><span·class="p"·data-group-id="2322334908-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="7119651073-3">(</span><span·class="p"·data-group-id="7119651073-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
175 ····</span><span·class="p"·data-group-id="2322334908-4">[</span><span·class="ss">mod_exists</span><span·class="p"·data-group-id="2322334908-4">]</span><span·class="p">.</span><span·class="w">175 ····</span><span·class="p"·data-group-id="7119651073-4">[</span><span·class="ss">mod_exists</span><span·class="p"·data-group-id="7119651073-4">]</span><span·class="p">.</span><span·class="w">
  
176 </span><span·class="nf">mod_exists</span><span·class="p"·data-group-id="2322334908-5">(</span><span·class="p">_</span><span·class="p"·data-group-id="2322334908-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="7119651073-5">(</span><span·class="p">_</span><span·class="p"·data-group-id="7119651073-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ····</span><span·class="p"·data-group-id="2322334908-6">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">mymod</span><span·class="p"·data-group-id="2322334908-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:·ed43a887301e66f4363c1c365bcd86c8e30a86805136213c5489e3a287b0d2b3·...·]-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="7119651073-6">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">mymod</span><span·class="p"·data-group-id="7119651073-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:·dff498b4227908ae7c63d175a9d6109db4fb1475b842f838224fc4c63041eb93·...·]-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="0837076706-1">(</span><span·class="ss">check_log_SUITE</span><span·class="p"·data-group-id="0837076706-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="8748042642-1">(</span><span·class="ss">check_log_SUITE</span><span·class="p"·data-group-id="8748042642-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="0837076706-2">(</span><span·class="p"·data-group-id="0837076706-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:·69f370062ff32eb806a9360a782b1fcd7bfda2f4e0c2d709433310fcc535b79c·...·]-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="8748042642-2">(</span><span·class="p"·data-group-id="8748042642-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:·ddbdad809d10e3610818aebfd0cd1f9b58fbde51e4abb9efe3a0cf049bcbb00d·...·]-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="0837076706-4">(</span><span·class="p"·data-group-id="0837076706-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:·80a47d45850918240d31327a9195da991a2a813d201bddbe7d7ec979c65b2283·...·]-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="8748042642-4">(</span><span·class="p"·data-group-id="8748042642-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:·c2276389dd9a1b0d96049e781a6759dc4454928f35aeee05272f3efb706c9780·...·]-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="0837076706-6">(</span><span·class="nf">value</span><span·class="p"·data-group-id="0837076706-7">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="0837076706-7">)</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·344,·SHA:·d547ae93de916113ac13b4f0fde32182063badd75fbcb6e3622ceb7b4d3511cc·...·]-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="8748042642-6">(</span><span·class="nf">value</span><span·class="p"·data-group-id="8748042642-7">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="8748042642-7">)</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·344,·SHA:·a7207e0df078a56447315c80616de8fa9c28858fdd418d24846a8f0a6daa1849·...·]-6">)</span><span·class="p">.</span><span·class="w">
  
195 </span><span·class="nf">all</span><span·class="p"·data-group-id="0837076706-9">(</span><span·class="p"·data-group-id="0837076706-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0837076706-10">[</span><span·class="ss">check_restart_result</span><span·c[·...·truncated·by·diffoscope;·len:·121,·SHA:·cbaf9e8db37b3135696b7aad03f532f74b00a9d68346ebcfb812dfd9d49ea37c·...·]-10">]</span><span·class="p">.</span><span·class="w">195 </span><span·class="nf">all</span><span·class="p"·data-group-id="8748042642-9">(</span><span·class="p"·data-group-id="8748042642-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8748042642-10">[</span><span·class="ss">check_restart_result</span><span·c[·...·truncated·by·diffoscope;·len:·121,·SHA:·5a52af29dc4c5bb4c7129d7231cd06441ec8a9ddbe7c8ed5118b8b69b03f8fb2·...·]-10">]</span><span·class="p">.</span><span·class="w">
  
196 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="0837076706-11">(</span><span·class="n">InitConfigData</span><span·class="p"·data-group-id="0837076706-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="8748042642-11">(</span><span·class="n">InitConfigData</span><span·class="p"·data-group-id="8748042642-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
197 ····</span><span·class="p"·data-group-id="0837076706-12">[</span><span·class="p"·data-group-id="0837076706-13">{</span><span·class="ss">logref</span><span·class="p">,</span><span·class="nf">open_log</span><span·class="p"·data-group-id="0837076706-14">(</span><span·class="p"·data-group-id="08370767[·...·truncated·by·diffoscope;·len:·219,·SHA:·239aedbf8f456e7c7c6f32588f521a46af9b6d2029b6e49765707b6c2e1f50cd·...·]-12">]</span><span·class="p">.</span><span·class="w">197 ····</span><span·class="p"·data-group-id="8748042642-12">[</span><span·class="p"·data-group-id="8748042642-13">{</span><span·class="ss">logref</span><span·class="p">,</span><span·class="nf">open_log</span><span·class="p"·data-group-id="8748042642-14">(</span><span·class="p"·data-group-id="87480426[·...·truncated·by·diffoscope;·len:·219,·SHA:·b7d6007d90bacf2061e353426383cd1daf5c938db3709ca9becb4590cb999e0b·...·]-12">]</span><span·class="p">.</span><span·class="w">
  
198 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="0837076706-15">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="0837076706-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="8748042642-15">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="8748042642-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="0837076706-16">(</span><span·class="o">?</span><span·class="nf">value</span><span·class="p"·data-group-id="0837076706-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:·15c877b8a7704efbcdb958613a1c0c44ccdfe69903586eb6de4cab62ea182f3d·...·]-16">)</span><span·class="p">.</span><span·class="w">199 ····</span><span·class="nf">close_log</span><span·class="p"·data-group-id="8748042642-16">(</span><span·class="o">?</span><span·class="nf">value</span><span·class="p"·data-group-id="8748042642-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:·512cd4cc8e26791ba1d4855c33832a1a7481043ddf9e3db4ada4161a8711d3c2·...·]-16">)</span><span·class="p">.</span><span·class="w">
  
200 </span><span·class="nf">check_restart_result</span><span·class="p"·data-group-id="0837076706-18">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="0837076706-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="8748042642-18">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="8748042642-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="0837076706-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="0837076706-20">(</span><span·class="ss">logref</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·159,·SHA:·859ee1bb1bbc85d232e9321f16c2424952765bc93a6b6bd02765b2e01173148b·...·]-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="8748042642-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="8748042642-20">(</span><span·class="ss">logref</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·159,·SHA:·75aa7a66673c60b3630323b170c4002e8d35ed5bd89862348525caeb016a5b84·...·]-19">)</span><span·class="p">,</span><span·class="w">
202 ····</span><span·class="p"·data-group-id="0837076706-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="0837076706-21">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·258,·SHA:·e8654e61dc011bfd6d92292ee7939d6caaa0bcd7fc3b69112057cf1b5381ad7a·...·]-22">)</span><span·class="p">.</span><span·class="w">202 ····</span><span·class="p"·data-group-id="8748042642-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="8748042642-21">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·258,·SHA:·8982512bf40c05d779acdc677d39453ae573020d1093e4aeff0464ad5fce5826·...·]-22">)</span><span·class="p">.</span><span·class="w">
  
203 </span><span·class="nf">check_no_errors</span><span·class="p"·data-group-id="0837076706-23">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="0837076706-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="8748042642-23">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="8748042642-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="0837076706-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="0837076706-25">(</span><span·class="ss">logref</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·155,·SHA:·caf09705b5073a1b159fb16139118348b97b45058ea7d05ceae9844c031a1e11·...·]-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="8748042642-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="8748042642-25">(</span><span·class="ss">logref</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·155,·SHA:·a1e45aa7e638dd923afb94f620d9ef4e6de32aa3a24789b8e6038dd572c194fd·...·]-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="0837076706-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="0837076706-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="8748042642-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="8748042642-26">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
206 ········</span><span·class="p"·data-group-id="0837076706-27">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="n">Line</span><span·class="p"·data-group-id="0837076706-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:·29b49fe9d03266698f487efe5b13dd1545aa0d4411a3426acfe9e026f05b4bbc·...·]-28">)</span><span·class="p">;</span><span·class="w">206 ········</span><span·class="p"·data-group-id="8748042642-27">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="n">Line</span><span·class="p"·data-group-id="8748042642-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:·dfc9275df2c9b39d1d9569159bc16dcdcf4adcf180aacb474773e52994198f27·...·]-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="8103943781-1">(</span><span·class="p"·data-group-id="8103943781-2">[</span><span·class="p"·data-group-id="8103943781-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:·dd15c2c1b364bd0061ca4997ef20c9244014b650f252fc6d5b1217cc6ff08b3b·...·]-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="1214508691-1">(</span><span·class="p"·data-group-id="1214508691-2">[</span><span·class="p"·data-group-id="1214508691-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:·f2c7812301db81d05526757aeb938b699838d7ada0bec2ca4d6e1955e3be7285·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>298 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>205 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2660 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>237 <p>Copyright·©·1996-2024·<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="9931368663-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id="9931368663-2">[</span><span·class="p"·data-group-id="9931368663-3">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">HostNam[·...·truncated·by·diffoscope;·len:·60,·SHA:·6afc956bf18ea5e02fe45b302d667a83d4cd86630164439fd72dbbd153a294fb·...·]-3">}</span><span·class="p">,</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="9246253071-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id="9246253071-2">[</span><span·class="p"·data-group-id="9246253071-3">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">HostNam[·...·truncated·by·diffoscope;·len:·60,·SHA:·9f0d53eeef57613f23333692a7988c777ba8fec94527aae216c289a10b525842·...·]-3">}</span><span·class="p">,</span><span·class="w">
130 ·······</span><span·class="p"·data-group-id="9931368663-4">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="n">PortNum</span><span·class="p"·data-group-id="9931368663-4">}</span><span·class="p">,</span><span·class="w">·················</span><span·class="c1">%·optional</span><span·class="w">130 ·······</span><span·class="p"·data-group-id="9246253071-4">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="n">PortNum</span><span·class="p"·data-group-id="9246253071-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="9931368663-5">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">UserName</span><span·class="p"·data-group-id="9931368663-5">}</span><span·class="p">,</span><span·class="w">131 ·······</span><span·class="p"·data-group-id="9246253071-5">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">UserName</span><span·class="p"·data-group-id="9246253071-5">}</span><span·class="p">,</span><span·class="w">
132 ·······</span><span·class="p"·data-group-id="9931368663-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="9931368663-6">}</span><span·class="p">,</span><span·class="w"> 
133 ·······</span><span·class="p"·data-group-id="9931368663-7">{</span><span·class="ss">keep_alive</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="9931368663-7">}</span><span·class="p"·data-group-id="9931368663-2">]</span><span·class="p"·data-group-id="9931368663-1"[·...·truncated·by·diffoscope;·len:·221,·SHA:·ddbe67da320d8da3704da6f4a01f7147fe06f5560a55f68ebbdc39c82ce2f96f·...·]132 ·······</span><span·class="p"·data-group-id="9246253071-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="9246253071-6">}</span><span·class="p">,</span><span·class="w">
 133 ·······</span><span·class="p"·data-group-id="9246253071-7">{</span><span·class="ss">keep_alive</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="9246253071-7">}</span><span·class="p"·data-group-id="9246253071-2">]</span><span·class="p"·data-group-id="9246253071-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="6425260020-1">(</span><span·class="p"·data-group-id="6425260020-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6425260020-2">[</span><span·class="p"·data-group-id="6425260020-3">{</span[·...·truncated·by·diffoscope;·len:·1121,·SHA:·157ad9ac4de3e0b95c0e4e998e49594c2248eab39dff37321ca06d9efffa99fa·...·]-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="1756045378-1">(</span><span·class="p"·data-group-id="1756045378-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1756045378-2">[</span><span·class="p"·data-group-id="1756045378-3">{</span[·...·truncated·by·diffoscope;·len:·1121,·SHA:·dd458e89c655977519b9288742015ad0cd4f1f07fbe94aa976eb503147d37185·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>297 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>211 <p>Copyright·©·1996-2024·<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="7451895727-1">(</span><span·class="p"·data-group-id="7451895727-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="4034901396-1">(</span><span·class="p"·data-group-id="4034901396-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
270 ····</span><span·class="p"·data-group-id="7451895727-2">[</span><span·class="p"·data-group-id="7451895727-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="7451895727-3">}</span><span·class="p">,</span><span·class="w">270 ····</span><span·class="p"·data-group-id="4034901396-2">[</span><span·class="p"·data-group-id="4034901396-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="4034901396-3">}</span><span·class="p">,</span><span·class="w">
271 ·····</span><span·class="p"·data-group-id="7451895727-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="7451895727-5">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·195,·SHA:·41d1ca169243907a60f2f43b954ed727989118001bdd6a07a348a4edc1fbb78d·...·]-6">}</span><span·class="p">,</span><span·class="w">271 ·····</span><span·class="p"·data-group-id="4034901396-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="4034901396-5">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·195,·SHA:·7defe086f75dfa8633adec03058d01dbdf15c6a39da439600949ec1ff8a1a412·...·]-6">}</span><span·class="p">,</span><span·class="w">
272 ····························</span><span·class="p"·data-group-id="7451895727-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="7451895727-7">}</span><span·class="p">,</span><span·class="w">272 ····························</span><span·class="p"·data-group-id="4034901396-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="4034901396-7">}</span><span·class="p">,</span><span·class="w">
273 ····························</span><span·class="p"·data-group-id="7451895727-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="7451895727-8">}</span><span·class="p"·data-group-id="7451895727-5">]</span><span·c[·...·truncated·by·diffoscope;·len:·334,·SHA:·1050d77217d158de43bebfb07d61f6011ebaadb09fdf92de4ecfc1f21cdb4817·...·]1-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">273 ····························</span><span·class="p"·data-group-id="4034901396-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="4034901396-8">}</span><span·class="p"·data-group-id="4034901396-5">]</span><span·c[·...·truncated·by·diffoscope;·len:·334,·SHA:·3e60f917599b7de1e264e3cc0258d5ca24a7679e8ef2696311f3e3c775f13ddd·...·]1-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
274 ····</span><span·class="p"·data-group-id="8661709911-2">[</span><span·class="p"·data-group-id="8661709911-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:·49,·SHA:·c2a7139f68e7273afc67f7c292cf38af6e48076a8a91ad89f0acc132725693f7·...·]1-3">}</span><span·class="p">,</span><span·class="w">274 ····</span><span·class="p"·data-group-id="2286217441-2">[</span><span·class="p"·data-group-id="2286217441-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:·49,·SHA:·df56b589bd5af5e618631510d99989cefa5dfbaf6d5c6fe7c0ec32030ff729f3·...·]1-3">}</span><span·class="p">,</span><span·class="w">
275 ·····</span><span·class="p"·data-group-id="8661709911-4">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8661709911-5">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·363,·SHA:·3082a673ebe6759a9865352488fa9080f37a6b194c55ed1cf7a32a1b010cb642·...·]1-4">}</span><span·class="p">,</span><span·class="w">275 ·····</span><span·class="p"·data-group-id="2286217441-4">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2286217441-5">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·363,·SHA:·a381462a851f71a78e0c098e9208241b9e071aa5fd40529138f3a5aa54b1658c·...·]1-4">}</span><span·class="p">,</span><span·class="w">
276 ·····</span><span·class="p"·data-group-id="8661709911-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="8661709911-8">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·201,·SHA:·ae065fd171beefc91d1fd79cc593fe820d4f7d6444d7c66afe8a3d493cd581c5·...·]1-9">}</span><span·class="p">,</span><span·class="w">276 ·····</span><span·class="p"·data-group-id="2286217441-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="2286217441-8">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·201,·SHA:·ee3fb3bdf6e27695e8dccb9666abffa44412cf4e0db5ca70c85fb1ec909e792a·...·]1-9">}</span><span·class="p">,</span><span·class="w">
277 ·····························</span><span·class="p"·data-group-id="8661709911-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="8661709911-10">}</span><span·class="p">,</span><span·class="w">277 ·····························</span><span·class="p"·data-group-id="2286217441-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="2286217441-10">}</span><span·class="p">,</span><span·class="w">
278 ·····························</span><span·class="p"·data-group-id="8661709911-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="8661709911-11">}</span><span·class="p"·data-group-id="8661709911-8">]</span><span[·...·truncated·by·diffoscope;·len:·112,·SHA:·6579b2cc9dcb5564799ad5b1e6f2e3a25f249853a6b51acfbe544fe6e99d40d4·...·]1-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="2286217441-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="2286217441-11">}</span><span·class="p"·data-group-id="2286217441-8">]</span><span[·...·truncated·by·diffoscope;·len:·112,·SHA:·e19b69eff08b2aa6defdf1b161cfa9ab66ca98c7b0654ea33851082a1f302a0e·...·]1-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="3880718456-1">(</span><span·class="p"·data-group-id="3880718456-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="7864734712-1">(</span><span·class="p"·data-group-id="7864734712-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
285 ····</span><span·class="p"·data-group-id="3880718456-2">[</span><span·class="w">285 ····</span><span·class="p"·data-group-id="7864734712-2">[</span><span·class="w">
286 ·····</span><span·class="p"·data-group-id="3880718456-3">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="3880718456-4">{</span><span·class="ss">seconds</span><span·class="p">,</span><span·class="mi">60</span><span·class="p"·data-group-id="3880718456-4"[·...·truncated·by·diffoscope;·len:·50,·SHA:·eab74136a05f31f9076a6a9dc8a520fd9c7c2f5cf6636938aba9229af6f9de30·...·]-3">}</span><span·class="p">,</span><span·class="w">286 ·····</span><span·class="p"·data-group-id="7864734712-3">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="7864734712-4">{</span><span·class="ss">seconds</span><span·class="p">,</span><span·class="mi">60</span><span·class="p"·data-group-id="7864734712-4"[·...·truncated·by·diffoscope;·len:·50,·SHA:·46fbce9330a497a0747ca422ddd8400c5302409edb40e5475e6ccc72b7ea5292·...·]-3">}</span><span·class="p">,</span><span·class="w">
287 ·····</span><span·class="p"·data-group-id="3880718456-5">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">interfaces</span><span·class="p"·data-group-id="3880718456-5">}</span><span·class="p">,</span><span·class="w">287 ·····</span><span·class="p"·data-group-id="7864734712-5">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">interfaces</span><span·class="p"·data-group-id="7864734712-5">}</span><span·class="p">,</span><span·class="w">
288 ·····</span><span·class="p"·data-group-id="3880718456-6">{</span><span·class="ss">userdata</span><span·class="p">,</span><span·class="w">288 ·····</span><span·class="p"·data-group-id="7864734712-6">{</span><span·class="ss">userdata</span><span·class="p">,</span><span·class="w">
289 ·········</span><span·class="p"·data-group-id="3880718456-7">[</span><span·class="p"·data-group-id="3880718456-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="3880718456-8">}</span><span·class="p">,</span><span·class="w">289 ·········</span><span·class="p"·data-group-id="7864734712-7">[</span><span·class="p"·data-group-id="7864734712-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="7864734712-8">}</span><span·class="p">,</span><span·class="w">
290 ··········</span><span·class="p"·data-group-id="3880718456-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="3880718456-9">}</span><span·class="p"·data-group-id="3880718456-7">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·a3ce998ffac49d13e5982abd28efcaf1da98b6783f21baae29c124a4642cce46·...·]-6">}</span><span·class="w">290 ··········</span><span·class="p"·data-group-id="7864734712-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="7864734712-9">}</span><span·class="p"·data-group-id="7864734712-7">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·c0564229f2a01c50c03d64bbab929aeb5c69a13c4f6adab6e6873a547986126b·...·]-6">}</span><span·class="w">
291 ····</span><span·class="p"·data-group-id="3880718456-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="7864734712-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="0271800169-1">(</span><span·class="p"·data-group-id="0271800169-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="0109887556-1">(</span><span·class="p"·data-group-id="0109887556-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
306 ····</span><span·class="p"·data-group-id="0271800169-2">[</span><span·class="w">306 ····</span><span·class="p"·data-group-id="0109887556-2">[</span><span·class="w">
307 ·····</span><span·class="p"·data-group-id="0271800169-3">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="0271800169-4">{</span><span·class="ss">minutes</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="0271800169-4">[·...·truncated·by·diffoscope;·len:·49,·SHA:·4d72bb294bbafb7bbc1a776e2238bb37e1e8c60557c6ea0cab473a9ce4966f06·...·]-3">}</span><span·class="p">,</span><span·class="w">307 ·····</span><span·class="p"·data-group-id="0109887556-3">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="0109887556-4">{</span><span·class="ss">minutes</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="0109887556-4">[·...·truncated·by·diffoscope;·len:·49,·SHA:·a523e1d3aaa691caaf54ab9e2afffb9635c1e755933f54cc70371cca85a97bff·...·]-3">}</span><span·class="p">,</span><span·class="w">
308 ·····</span><span·class="p"·data-group-id="0271800169-5">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">global_names</span><span·class="p"·data-group-id="0271800169-5">}</span><span·class="p">,</span><span·class="w">308 ·····</span><span·class="p"·data-group-id="0109887556-5">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">global_names</span><span·class="p"·data-group-id="0109887556-5">}</span><span·class="p">,</span><span·class="w">
309 ·····</span><span·class="p"·data-group-id="0271800169-6">{</span><span·class="ss">userdata</span><span·class="p">,</span><span·class="p"·data-group-id="0271800169-7">[</span><span·class="p"·data-group-id="0271800169-8">{</span><span·class="ss">info</span><span·class="p">,</span><span·class="s">&quot[·...·truncated·by·diffoscope;·len:·200,·SHA:·33561b689f650e0b86ec3322bdb46c841fd2d7ffb36578e3a5bffccd46059fef·...·]-6">}</span><span·class="p">,</span><span·class="w">309 ·····</span><span·class="p"·data-group-id="0109887556-6">{</span><span·class="ss">userdata</span><span·class="p">,</span><span·class="p"·data-group-id="0109887556-7">[</span><span·class="p"·data-group-id="0109887556-8">{</span><span·class="ss">info</span><span·class="p">,</span><span·class="s">&quot[·...·truncated·by·diffoscope;·len:·200,·SHA:·a1aef3f56fea1af95f5f9069dbf41f5ff706ca7c065981d8f1a89744ecec96aa·...·]-6">}</span><span·class="p">,</span><span·class="w">
310 ·····</span><span·class="p"·data-group-id="0271800169-9">{</span><span·class="ss">silent_connections</span><span·class="p">,</span><span·class="p"·data-group-id="0271800169-10">[</span><span·class="ss">telnet</span><span·class="p"·data-group-id="0271800169-10">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·5188f3ee469f18bd010a0fee6218af348282206cd766e575d280961dfd896ac3·...·]-9">}</span><span·class="p">,</span><span·class="w">310 ·····</span><span·class="p"·data-group-id="0109887556-9">{</span><span·class="ss">silent_connections</span><span·class="p">,</span><span·class="p"·data-group-id="0109887556-10">[</span><span·class="ss">telnet</span><span·class="p"·data-group-id="0109887556-10">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·dc6b3dcd4cfb442fc2bd2553d5e62ca0e710cf8a0dc550cc3f5a4c7c4d067100·...·]-9">}</span><span·class="p">,</span><span·class="w">
311 ·····</span><span·class="p"·data-group-id="0271800169-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="0271800169-11">}</span><span·class="w">311 ·····</span><span·class="p"·data-group-id="0109887556-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="0109887556-11">}</span><span·class="w">
312 ····</span><span·class="p"·data-group-id="0271800169-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="0109887556-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="7554059578-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:·309,·SHA:·0dc46afb7040dd91aaa55ec616e9209735efc5b22ed1902f3fefc81654ebe8fb·...·]-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="0684683160-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:·309,·SHA:·f68bc68768a4a83e1223a0a5d17e72d0afdf7b738dad47dac18a71fa0285aeab·...·]-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="7554059578-3">{</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="n">Seed</span><span·class="p"·data-group-id="7554059578-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="0684683160-3">{</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="n">Seed</span><span·class="p"·data-group-id="0684683160-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="7554059578-4">{</span><span·class="nf">integer</span><span·class="p"·data-group-id="7554059578-5">(</span><span·class="p"·data-group-id="7554059578-5">)</span><span·class="p">,</span><span·class="nf">integer</span><span·class="p"·data-group-id="7554059578-[·...·truncated·by·diffoscope;·len:·266,·SHA:·5a03acaf9d9ebaca1114cb0fa82a63f64af14f0ef891906f72441918e12c28af·...·]-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="0684683160-4">{</span><span·class="nf">integer</span><span·class="p"·data-group-id="0684683160-5">(</span><span·class="p"·data-group-id="0684683160-5">)</span><span·class="p">,</span><span·class="nf">integer</span><span·class="p"·data-group-id="0684683160-[·...·truncated·by·diffoscope;·len:·266,·SHA:·3074bd98aa2efcc4b0dd440c39da26d346dbdce635ad23405611b89882dc5314·...·]-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="7554059578-8">(</span><span·class="p"·data-group-id="7554059578-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="0684683160-8">(</span><span·class="p"·data-group-id="0684683160-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="0694485316-1">(</span><span·class="p"·data-group-id="0694485316-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0694485316-2">[</span><span·class="p"·data-group-id="0694485316-3">{</span[·...·truncated·by·diffoscope;·len:·496,·SHA:·7cb4974447bb55d382cf9a92c08a8c46c641d03f5cca844cebaa26c56e1d1cd2·...·]-3">}</span><span·class="p">,</span><span·class="w">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="3140631798-1">(</span><span·class="p"·data-group-id="3140631798-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3140631798-2">[</span><span·class="p"·data-group-id="3140631798-3">{</span[·...·truncated·by·diffoscope;·len:·496,·SHA:·8c5835f25bad32993acc5075f21748147b3ce4700f4b7ac2a35330ed9c00a2a7·...·]-3">}</span><span·class="p">,</span><span·class="w">
345 ·············</span><span·class="p"·data-group-id="0694485316-6">{</span><span·class="ss">group2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0694485316-7">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="ss">sequence</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·423,·SHA:·347992eb9f4eb4f7e7dd4f21209c3b2d4ebe6a18c5861f9d2d8514cf01059593·...·]-2">]</span><span·class="p">.</span></code></pre><p>To·specify·in·which·order·groups·are·to·be·executed·(also·with·respect·to·test345 ·············</span><span·class="p"·data-group-id="3140631798-6">{</span><span·class="ss">group2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3140631798-7">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="ss">sequence</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·423,·SHA:·8ec589b3a3f4017564a9fc03f01baf3b4d071bed5301df41a6744c5af835a713·...·]-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="5651464060-1">(</span><span·class="p"·data-group-id="5651464060-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5651464060-2">[</span><span·class="ss">testcase1</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·1055,·SHA:·543e2c6c947d88970055355ec2dbb039932389c7e4bffb27634fa1a2a35fd8c4·...·]-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="9222322121-1">(</span><span·class="p"·data-group-id="9222322121-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9222322121-2">[</span><span·class="ss">testcase1</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·1055,·SHA:·e911165d91a7a81ce00d37f51c45e2f7bc523ed020ca1e0fe0f51d4f8044e9ca·...·]-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="7760651014-1">(</span><span·class="p"·data-group-id="7760651014-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7760651014-2">[</span><span·class="p"·data-group-id="7760651014-3">{</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7760651014-4">[</span><span·class="p"·data-group-id="7760651014-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7760651014-5">[</span><span·class="p"·data-group-id="7760651014-6">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7760651014-7">[</span><span·class="p"·data-group-id="7760651014-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7760651014-8">[</span><span·class="ss">t2a</span><span·class="p">,</span><span·class="ss">t2b</span><span·class="p"·data-group-id="7760651014-8">]</span><span·class="p"·data-group-id="7760651014-6">}</span><span·class="p">,</span><span·class="w"> 
357 ··························</span><span·class="p"·data-group-id="7760651014-9">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7760651014-10">[</span><span·class="p"·data-group-id="7760651[·...·truncated·by·diffoscope;·len:·629,·SHA:·fba0a3b79d001b5eb6d95dba24c748818c14ac9e7514975e7bb2d532a0af1a6a·...·]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="9980832231-1">(</span><span·class="p"·data-group-id="9980832231-1">)</s[·...·truncated·by·diffoscope;·len:·1033,·SHA:·21f1654d17e51c7c1754dae8f9997cde69d0a6a48ebb4c20ca883a1400512547·...·]
 357 ··························</span><span·class="p"·data-group-id="9980832231-9">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9980832231-10">[</span><span·class="p"·data-group-id="9980832231-10">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9980832231-11">[</span><span·class="ss">t31</span><span·class="p">,</span><span·class="ss">t3b</span><span·class="p"·data-group-id="9980832231-11">]</span><span·class="p"·data-group-id="9980832231-9">}</span><span·class="p"·data-group-id="9980832231-5">]</span><span·class="p"·data-group-id="9980832231-3">}</span><span·class="p"·data-group-id="9980832231-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="9544024372-1">(</span><span·class="p"·data-group-id="9544024372-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="6729850491-1">(</span><span·class="p"·data-group-id="6729850491-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
359 ···</span><span·class="p"·data-group-id="9544024372-2">[</span><span·class="p"·data-group-id="9544024372-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="9544024372-4">[</span><span·class="p"·data-group-id="9544024372-5">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9544024372-6">[</span><span·class="ss">parallel</span><span·class="p"·data-group-id="9544024372-6">]</span><span·class="p"·data-group-id="9544024372-5">}</span><span·class="p"·data-group-id="9544024372-4">]</span><span·class="p"·data-group-id="9544024372-3">}</span><span·class="p">,</span><span·class="w"> 
360 ····</span><span·class="p"·data-group-id="9544024372-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="9544024372-8">[</span><span·class="p"·data-group-id="9544024372-9">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9544024372-10">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="p"·data-group-id="9544024372-11">{</span><span·class="ss">repeat</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="9544024372-11">}</span><span·class="p"·data-group-id="9544024372-10">]</span><span·class="p"·data-group-id="9544024372-9">}</span><span·class="p"·data-group-id="9544024372-8">]</span><span·class="p"·data-group-id="9544024372-7">}</span><span·class="p"·data-group-id="9544024372-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="4613793988-1">(</span><span·class="p"·data-group-id="4613793988-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
361 ···</span><span·class="p"·data-group-id="4613793988-2">[</span><span·class="p"·data-group-id="4613793988-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:·6fa6d484ce32325eb44fb953f8bbd37b9568ccb5a7987d966c7d7b151383f09a·...·]">}</span><span·class="p">,</span><span·class="w">359 ···</span><span·class="p"·data-group-id="6729850491-2">[</span><span·class="p"·data-group-id="6729850491-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:·a29539eece8871b0aaa53a5eccc852832cadb1556e7c64b428695bf6f5349e69·...·]">}</span><span·class="p">,</span><span·class="w">
 360 ····</span><span·class="p"·data-group-id="6729850491-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="6729850491-8">[</span><span·class="p"·data-group-id="6729850491-9">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6729850491-10">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="p"·data-group-id="6729850491-11">{</span><span·class="ss">repeat</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="6729850491-11">}</span><span·class="p"·data-group-id="6729850491-10">]</span><span·class="p"·data-group-id="6729850491-9">}</span><span·class="p"·data-group-id="6729850491-8">]</span><span·class="p"·data-group-id="6729850491-7">}</span><span·class="p"·data-group-id="6729850491-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="8193167231-1">(</span><span·class="p"·data-group-id="8193167231-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
 361 ···</span><span·class="p"·data-group-id="8193167231-2">[</span><span·class="p"·data-group-id="8193167231-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="8193167231-4">[</span><span·class="p"·data-group-id="8193167231-5">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8193167231-6">[</span><span·class="ss">parallel</span><span·class="p"·data-group-id="8193167231-6">]</span><span·class="p"·data-group-id="8193167231-5">}</span><span·class="p">,</span><span·class="w">
362 ······························</span><span·class="p"·data-group-id="4613793988-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="4613793988-7">}</span><span·class="p"·data-group-id="4613793988-4">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·0997af4c2d14d8d031c80300576d51c68c3d62b09d7527d7c4895523c101a5c5·...·]-3">}</span><span·class="p">,</span><span·class="w">362 ······························</span><span·class="p"·data-group-id="8193167231-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="8193167231-7">}</span><span·class="p"·data-group-id="8193167231-4">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·8ab3e2a1c2b87eaf555caec255adbed8bf41e788a0930bcf527ccc45c6878d31·...·]-3">}</span><span·class="p">,</span><span·class="w">
363 ····</span><span·class="p"·data-group-id="4613793988-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>[·...·truncated·by·diffoscope;·len:·577,·SHA:·a18f7c1e87bc41d29d035bc80cabed56dd214aab23f7b38674d88f235a45b144·...·]-10">}</span><span·class="p">,</span><span·class="w">363 ····</span><span·class="p"·data-group-id="8193167231-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>[·...·truncated·by·diffoscope;·len:·577,·SHA:·dbaa459fa18f18cebb3f5e12d814de0081afe3c0047d49ebbf3de9946ffdb64c·...·]-10">}</span><span·class="p">,</span><span·class="w">
364 ······························</span><span·class="p"·data-group-id="4613793988-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="4613793988-13">}</span><span·class="p"·data-group-id="4613793988-9">]</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·77,·SHA:·9bb7dcefab27df18ae33410c4b624bcb822e9c7525a58c2077b0c652a7aa78e0·...·]-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="8193167231-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="8193167231-13">}</span><span·class="p"·data-group-id="8193167231-9">]</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·77,·SHA:·99d53dcb8bf68edc2703664a451fe92a3f98a97516a167175e8a458068644ea3·...·]-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="4217664298-1">(</span><span·class="p"·data-group-id="4217664298-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="4647876745-1">(</span><span·class="p"·data-group-id="4647876745-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
366 ···</span><span·class="p"·data-group-id="4217664298-2">[</span><span·class="p"·data-group-id="4217664298-3">{</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4217664298-4">[</span><span·class="p"·data-group-id="4217664298-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4217664298-5">[</span><span·class="p"·data-group-id="4217664298-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="4217664298-6">}</span><span·class="p"·data-group-id="4217664298-5">]</span><span·class="p"·data-group-id="4217664298-3">}</span><span·class="p">,</span><span·class="w"> 
367 ····</span><span·class="p"·data-group-id="4217664298-7">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4217664298-8">[</span><span·class="p"·data-group-id="4217664298-8">]</span><span·class[·...·truncated·by·diffoscope;·len:·401,·SHA:·30ff412948f25ac5cbee1a88d8d10c006d0bc70b013bab044532becf6a26b77b·...·]">}</span><span·class="p">,</span><span·class="w">366 ···</span><span·class="p"·data-group-id="4647876745-2">[</span><span·class="p"·data-group-id="4647876745-3">{</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4647876745-4">[</span><span·class=[·...·truncated·by·diffoscope;·len:·451,·SHA:·844a5fd03e6b2737cf1c0d74f06cc877ecb21ec4458dd29bacbc007d5edeb028·...·]">}</span><span·class="p">,</span><span·class="w">
 367 ····</span><span·class="p"·data-group-id="4647876745-7">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4647876745-8">[</span><span·class="p"·data-group-id="4647876745-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4647876745-9">[</span><span·class="p"·data-group-id="4647876745-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="4647876745-10">}</span><span·class="p"·data-group-id="4647876745-9">]</span><span·class="p"·data-group-id="4647876745-7">}</span><span·class="p">,</span><span·class="w">
368 ····</span><span·class="p"·data-group-id="4217664298-11">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4217664298-12">[</span><span·class="p"·data-group-id="4217664298-13">{</span><span·class="ss">repeat</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·519,·SHA:·701d6783788b3763b76c5f0e648709967937a668a5ac3842578ea1613704499f·...·]-2">]</span><span·class="p">.</span><span·class="w">368 ····</span><span·class="p"·data-group-id="4647876745-11">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4647876745-12">[</span><span·class="p"·data-group-id="4647876745-13">{</span><span·class="ss">repeat</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·519,·SHA:·1c560a6411892e0fc54076bdc5c2a9e1bb9cfdacb5d27417508b007028a49a0c·...·]-2">]</span><span·class="p">.</span><span·class="w">
  
369 </span><span·class="nf">all</span><span·class="p"·data-group-id="4217664298-15">(</span><span·class="p"·data-group-id="4217664298-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="4647876745-15">(</span><span·class="p"·data-group-id="4647876745-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
370 ···</span><span·class="p"·data-group-id="4217664298-16">[</span><span·class="p"·data-group-id="4217664298-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="4647876745-16">[</span><span·class="p"·data-group-id="4647876745-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="4217664298-18">[</span><span·class="p"·data-group-id="4217664298-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="4647876745-18">[</span><span·class="p"·data-group-id="4647876745-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="4217664298-20">[</span><span·class="p"·data-group-id="4217664298-21">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4217664298-22">[</span><span·class="ss">parallel</span><span·class="p">[·...·truncated·by·diffoscope;·len:·562,·SHA:·af1d7dbafc4786a555951ad1017d6845f97be9048f9a31cd901411206350bac0·...·]-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="4647876745-20">[</span><span·class="p"·data-group-id="4647876745-21">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4647876745-22">[</span><span·class="ss">parallel</span><span·class="p">[·...·truncated·by·diffoscope;·len:·562,·SHA:·dec44845c89265f994244cf6710d6713650ebfc728134f2877f9d34a5d86832b·...·]-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="6114308798-1">(</span><span·class="p"·data-group-id="6114308798-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="0036538943-1">(</span><span·class="p"·data-group-id="0036538943-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
374 ···</span><span·class="p"·data-group-id="6114308798-2">[</span><span·class="p"·data-group-id="6114308798-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:·97ed1fe349244cb5a67fd41c0fc367cfa69187c3de59a3a9599ea22a4cfcf233·...·]-3">}</span><span·class="p">,</span><span·class="w">374 ···</span><span·class="p"·data-group-id="0036538943-2">[</span><span·class="p"·data-group-id="0036538943-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:·bef1d711b3bf593148f5066010bca2c33b51de29cfe6328db5022d2469a401d4·...·]-3">}</span><span·class="p">,</span><span·class="w">
375 ····</span><span·class="p"·data-group-id="6114308798-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:·ed9dea1b07658c7857c48896cb47e1d885bd285a5ead2b6f22898873c1aa7c08·...·]-7">)</span><span·class="p">,</span><span·class="w">375 ····</span><span·class="p"·data-group-id="0036538943-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:·cd3800f7a09cefc38045492dc8755ed1ea23246a50e46e84b3615d9304b16b9f·...·]-7">)</span><span·class="p">,</span><span·class="w">
376 ······························</span><span·class="p"·data-group-id="6114308798-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="6114308798-8">}</span><span·class="p"·data-group-id="6114308798-6">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·75,·SHA:·34c10f691a8ff1dbf3014bfc238953c3a06aa719ff0197ceda1593b2f826b925·...·]-2">]</span><span·class="p">.</span><span·class="w">376 ······························</span><span·class="p"·data-group-id="0036538943-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="0036538943-8">}</span><span·class="p"·data-group-id="0036538943-6">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·75,·SHA:·fa41ac55dc68d0749cc37dfee46f9745dd05664cb0869482c74dda9e70e44edb·...·]-2">]</span><span·class="p">.</span><span·class="w">
377 </span><span·class="nf">test_cases</span><span·class="p"·data-group-id="6114308798-9">(</span><span·class="p"·data-group-id="6114308798-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="0036538943-9">(</span><span·class="p"·data-group-id="0036538943-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
378 ···</span><span·class="p"·data-group-id="6114308798-10">[</span><span·class="p"·data-group-id="6114308798-11">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6114308798-12">[</span><span·class="ss">parallel</span><span·class="p"[·...·truncated·by·diffoscope;·len:·399,·SHA:·0e8ce846c4303c999b2d3c0a478bb7efeb5b547624b544445d79eb96852be634·...·]-10">]</span><span·class="p">.</span><span·class="w">378 ···</span><span·class="p"·data-group-id="0036538943-10">[</span><span·class="p"·data-group-id="0036538943-11">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0036538943-12">[</span><span·class="ss">parallel</span><span·class="p"[·...·truncated·by·diffoscope;·len:·399,·SHA:·080ba06012f6779fc305a1394abd66f410f0af18cdb20fb4bb236af9d1573226·...·]-10">]</span><span·class="p">.</span><span·class="w">
  
379 </span><span·class="nf">shuffle_test</span><span·class="p"·data-group-id="6114308798-14">(</span><span·class="p"·data-group-id="6114308798-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="0036538943-14">(</span><span·class="p"·data-group-id="0036538943-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
380 ···</span><span·class="p"·data-group-id="6114308798-15">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6114308798-16">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="p"·data-group-id="6114308798-17">[·...·truncated·by·diffoscope;·len:·237,·SHA:·f2eb93f1d3f988d5705489a9b1c61d7502503e7351cc3cd56d5f0618a76a6c63·...·]-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="0036538943-15">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0036538943-16">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="p"·data-group-id="0036538943-17">[·...·truncated·by·diffoscope;·len:·237,·SHA:·ffcb472688270f42834dc5a4b02d68a864a87a645b2d317a499bed22893f7f12·...·]-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
Offset 401, 21 lines modifiedOffset 401, 21 lines modified
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>213 <p>Copyright·©·1996-2024·<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="1852916662-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:·29,·SHA:·d741edf3da29b10d5b84f9c3e753a6d128144c38e18f49d291e2027f77e523f2·...·]-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="3473108290-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:·29,·SHA:·dfbfe8f8a59424f6586ab3f290ec1ecc42654292a9fcedb74fb52f049d86c83f·...·]-1">}</span><span·class="p">,</span><span·class="w">
190 ·············</span><span·class="p"·data-group-id="1852916662-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·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·bb82fd3f422ea97328e89adcf21a8430bb0c303aae628c00e279c314daaf9114·...·]-2">}</span><span·class="w">190 ·············</span><span·class="p"·data-group-id="3473108290-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·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·96f3cce7b69096687cd3fa8da4b5993263152ab3c854e0090d2a4272e2ffc6ce·...·]-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="7323037459-1">(</span><span·class="p"·data-group-id="7323037459-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="7323037459-2">(</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·ce1ea3b4ff981846e93eaea32b658b05a872a443b5a00c7230d1b2b932a2c2b9·...·]-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="8008097665-1">(</span><span·class="p"·data-group-id="8008097665-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="8008097665-2">(</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·1cd3da98eafb0dfb5aac0b7e7cfad2c86b08130a34cfcb23fa7de0228e73d508·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>293 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>11557 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>677 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>734 <p>Copyright·©·1996-2024·<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="9570671107-1">(</span><span·class="ss">something</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9570671107-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:·6b4464c8a832b924de8a836f78e2c0a2de299cf16bad386ba874c225e8387319·...·]-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="0647188688-1">(</span><span·class="ss">something</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0647188688-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:·3b0a9397928267eec39feb77ab21c31d04ac4c3eeb9bcd4951b984ad51509f11·...·]-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="1493197821-1">(</span><span·class="p"·data-group-id="1493197821-2">{</span><span·class="ss">inline</span><span·class="p">,</span><span·class="p"·data-group-id="1493197821-3">[</span><span·class="ss">pi</span><span·class="p">/</span><span·class="mi">0</span[·...·truncated·by·diffoscope;·len:·148,·SHA:·3352c6ee21f71fcc9e19b4d6bc10490eb00248502f3d7c8145bbb507901245e7·...·]-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="2949912842-1">(</span><span·class="p"·data-group-id="2949912842-2">{</span><span·class="ss">inline</span><span·class="p">,</span><span·class="p"·data-group-id="2949912842-3">[</span><span·class="ss">pi</span><span·class="p">/</span><span·class="mi">0</span[·...·truncated·by·diffoscope;·len:·148,·SHA:·8b97428b1d901482192194c9258c69f3f02d226f5616f003fb1296411b9d4e30·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
181 </span><span·class="nf">pi</span><span·class="p"·data-group-id="1493197821-4">(</span><span·class="p"·data-group-id="1493197821-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="2949912842-4">(</span><span·class="p"·data-group-id="2949912842-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="6455620865-1">(</span><span·class="ss">inline</span><span·class="p"·data-group-id="6455620865-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="2061180365-1">(</span><span·class="ss">inline</span><span·class="p"·data-group-id="2061180365-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="6455620865-2">(</span><span·class="p"·data-group-id="6455620865-3">{</span><span·class="ss">inline_size</span><span·class="p">,</span><span·class="mi">100</span><span·class="p"·data-group-id="6455620865-3">}</span><span·class="p"·data-group-id="6455620865-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="2061180365-2">(</span><span·class="p"·data-group-id="2061180365-3">{</span><span·class="ss">inline_size</span><span·class="p">,</span><span·class="mi">100</span><span·class="p"·data-group-id="2061180365-3">}</span><span·class="p"·data-group-id="2061180365-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="1296739918-1">(</span><span·class="ss">module</span><span·class="p"·data-group-id="1296739918-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="9638594154-1">(</span><span·class="ss">module</span><span·class="p"·data-group-id="9638594154-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="1296739918-2">(</span><span·class="s">&quot;eunit/include/eunit.hrl&quot;</span><span·class="p"·data-group-id="1296739918-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="9638594154-2">(</span><span·class="s">&quot;eunit/include/eunit.hrl&quot;</span><span·class="p"·data-group-id="9638594154-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="1296739918-3">(</span><span·class="s">&quot;header.hrl&quot;</span><span·class="p"·data-group-id="1296739918-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="9638594154-3">(</span><span·class="s">&quot;header.hrl&quot;</span><span·class="p"·data-group-id="9638594154-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="2986785768-1">(</span><span·class="p"·data-group-id="2986785768-2">{</span><span·class="ss">no_auto_import</span><span·class="p">,</span><span·class="p"·data-group-id="2986785768-3">[</span><span·class="ss">error</span><span·class="p">/</span><span·class="[·...·truncated·by·diffoscope;·len:·159,·SHA:·3fd90234a538be070ac2cfb50f03dec2bf52543b58e2bc6122c72e8ecbc885fb·...·]-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="0445831629-1">(</span><span·class="p"·data-group-id="0445831629-2">{</span><span·class="ss">no_auto_import</span><span·class="p">,</span><span·class="p"·data-group-id="0445831629-3">[</span><span·class="ss">error</span><span·class="p">/</span><span·class="[·...·truncated·by·diffoscope;·len:·159,·SHA:·739159bc0fa6fb31d7b25e688ce0e10e1516bc9df1802ab04b213d0aef286828·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1372 <p>Copyright·©·1996-2024·<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
142 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/compiler.epub
2.67 KB
zipinfo {}
Max HTML report size reached
53.6 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
15.8 KB
OEBPS/ssa_checks.xhtml
Max HTML report size reached
47.9 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="4322645092-1">(</span><span·class="ss">t</span><span·class="p"·data-group-id="4322645092-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="3766126399-1">(</span><span·class="ss">t</span><span·class="p"·data-group-id="3766126399-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="4322645092-2">(</span><span·class="p"·data-group-id="4322645092-3">[</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="4322645092-3">]</span><span·class="p"·data-group-id="4322645092-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="3766126399-2">(</span><span·class="p"·data-group-id="3766126399-3">[</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="3766126399-3">]</span><span·class="p"·data-group-id="3766126399-2">)</span><span·class="p">.</span><span·class="w">
  
154 </span><span·class="nf">f</span><span·class="p"·data-group-id="4322645092-4">(</span><span·class="p"·data-group-id="4322645092-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="3766126399-4">(</span><span·class="p"·data-group-id="3766126399-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="4322645092-5">[</span><span·class="p"·data-group-id="4322645092-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:·0d435661f5098649f4065aad63029122be56fe19aa5ef530a6e87bc53928c1cf·...·]-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="3766126399-5">[</span><span·class="p"·data-group-id="3766126399-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:·e8d048a19d2cf00685bab2f98b66ca06d63351c5c6823bb73f2cc377dcb93ab0·...·]-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="6748592949-1">(</span><span·class="p"·data-group-id="6748592949-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="6311355984-1">(</span><span·class="p"·data-group-id="6311355984-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="0961693824-1">(</span><span·class="p"·data-group-id="0961693824-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="1010324203-1">(</span><span·class="p"·data-group-id="1010324203-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="0961693824-2">(</span><span·class="p">_</span><span·class="p"·data-group-id="0961693824-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="1010324203-2">(</span><span·class="p">_</span><span·class="p"·data-group-id="1010324203-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="8741845390-1">(</span><span·class="p"·data-group-id="8741845390-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="1046868769-1">(</span><span·class="p"·data-group-id="1046868769-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="8741845390-2">(</span><span·class="p"·data-group-id="8741845390-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="1046868769-2">(</span><span·class="p"·data-group-id="1046868769-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="8741845390-3">(</span><span·class="p"·data-group-id="8741845390-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:·4569fc9213a10ce6da40b0f7534aa54598c1a2c29358b8dd779c0b039cf451a9·...·]-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="1046868769-3">(</span><span·class="p"·data-group-id="1046868769-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:·3e23b0d79b76a46304326c6119b80286458e15230bbf9fdb92053178b4eca546·...·]-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="8505067839-2">(</span><span·class="p"·data-group-id="8505067839-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="0992354990-2">(</span><span·class="p"·data-group-id="0992354990-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="8505067839-3">(</span><span·class="p"·data-group-id="8505067839-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:·278f8f66e0f9e3ccde1b3b22b37ab21ea5434e265d3727e959722c91e9b4ae6a·...·]-1">)</span><span·class="p">.</span><span·class="w">176 </span><span·class="nf">char</span><span·class="p"·data-group-id="0992354990-3">(</span><span·class="p"·data-group-id="0992354990-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:·e4dd4e41b401123cd446ca5193fdcdc4203de28aaca1315b79434d4430ea96dc·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
177 </span><span·class="nf">update</span><span·class="p"·data-group-id="7056842494-3">(</span><span·class="n">Value</span><span·class="p"·data-group-id="7056842494-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="6458728436-3">(</span><span·class="n">Value</span><span·class="p"·data-group-id="6458728436-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="7056842494-4">{</span><span·class="p"·data-group-id="7056842494-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="6458728436-4">{</span><span·class="p"·data-group-id="6458728436-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="7056842494-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="n">Value</span><span·class="p"·data-group-id="7056842494-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="6458728436-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="n">Value</span><span·class="p"·data-group-id="6458728436-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="7056842494-6">{</span><span·class="ss">b</span><span·class="o">=</span><span·class="mi">2</span><span·class="p"·data-group-id="7056842494-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="6458728436-6">{</span><span·class="ss">b</span><span·class="o">=</span><span·class="mi">2</span><span·class="p"·data-group-id="6458728436-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="7056842494-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="mi">3</span><span·class="p"·data-group-id="7056842494-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="6458728436-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="mi">3</span><span·class="p"·data-group-id="6458728436-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="7942355569-1">(</span><span·class="p"·data-group-id="7942355569-2">[</span><span·class="ss">nowarn_missing_spec</span><span·class="p"·data-group-id="7942355569-2">]</span><span·class="p"·data-group-id="7942355569-1">)</span><span·class="p">.</span></code><[·...·truncated·by·diffoscope;·len:·1215,·SHA:·af8aeb21afd1312841fd864ea873651f3193103f0faa21f9dceba322a5454563·...·]-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="1613538508-1">(</span><span·class="p"·data-group-id="1613538508-2">[</span><span·class="ss">nowarn_missing_spec</span><span·class="p"·data-group-id="1613538508-2">]</span><span·class="p"·data-group-id="1613538508-1">)</span><span·class="p">.</span></code><[·...·truncated·by·diffoscope;·len:·1215,·SHA:·7730c100bff9be3e85218c3b2b80b9e06cb6483f9bcd41d995215da9ac824ab1·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
185 </span><span·class="nf">update</span><span·class="p"·data-group-id="4939314614-3">(</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="4939314614-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:·3bb4c4f8ab7e6528c8283256b8bd97fb294292b21f6cf4d645bfa3da3db1f3bf·...·]-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="5080800511-3">(</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="5080800511-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:·683403c2d4a189a595975add35f3c648bfb51206e94b3e505572e1e74f84864a·...·]-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="4939314614-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">up_to_date</span><span·class="p"·data-group-id="4939314614-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="5080800511-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">up_to_date</span><span·class="p"·data-group-id="5080800511-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="4939314614-6">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">negative</span><span·class="p"·data-group-id="4939314614-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="5080800511-6">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">negative</span><span·class="p"·data-group-id="5080800511-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="4939314614-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">zero</span><span·class="p"·data-group-id="4939314614-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="5080800511-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">zero</span><span·class="p"·data-group-id="5080800511-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="4939314614-8">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">positive</span><span·class="p"·data-group-id="4939314614-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="5080800511-8">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">positive</span><span·class="p"·data-group-id="5080800511-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3100 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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="1402191781-1">(</span><span·class="p"·data-group-id="1402191781-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="8578429545-1">(</span><span·class="p"·data-group-id="8578429545-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="1402191781-2">#{</span><span·class="p"·data-group-id="1402191781-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="8578429545-2">#{</span><span·class="p"·data-group-id="8578429545-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="3571959879-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="3571959879-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="0081627468-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="0081627468-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="2016250601-1">(</span><span·class="o">&lt;</span><span·class="ss">formals</span><span·class="o">&gt;</span><span·class="p"·data-group-id="2016250601-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="8957076179-1">(</span><span·class="o">&lt;</span><span·class="ss">formals</span><span·class="o">&gt;</span><span·class="p"·data-group-id="8957076179-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="2573096557-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="2573096557-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="4322464306-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="4322464306-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="7065205654-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:·e8a2eceaa088740b76203458487996eee35a913248a2f1a88850c429a906db8e·...·]-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="0762337068-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:·efe80e2156ae38099749784eadb35302800430a62fdd78670e6e854ea8b0052f·...·]-1">)</span><span·class="w">
  
163 </span><span·class="nf">switch</span><span·class="p"·data-group-id="7065205654-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:·867cb77e5b619868038299c7305c8cb48246dfe507f2ba290fb68f9486559380·...·]-2">)</span><span·class="w">163 </span><span·class="nf">switch</span><span·class="p"·data-group-id="0762337068-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:·d864b5e93f4edfe5b8d1873436af7a6760abb77e8231ea2c3747deae89b07bd1·...·]-2">)</span><span·class="w">
  
164 </span><span·class="nf">ret</span><span·class="p"·data-group-id="7065205654-5">(</span><span·class="o">&lt;</span><span·class="ss">value</span><span·class="o">&gt;</span><span·class="p"·data-group-id="7065205654-5">)</span><span·class="w">164 </span><span·class="nf">ret</span><span·class="p"·data-group-id="0762337068-5">(</span><span·class="o">&lt;</span><span·class="ss">value</span><span·class="o">&gt;</span><span·class="p"·data-group-id="0762337068-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="2444222070-1">(</span><span·class="p"·data-group-id="2444222070-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="1637474152-1">(</span><span·class="p"·data-group-id="1637474152-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="2444222070-2">(</span><span·class="p"·data-group-id="2444222070-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="1637474152-2">(</span><span·class="p"·data-group-id="1637474152-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="2444222070-3">(</span><span·class="p"·data-group-id="2444222070-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="1637474152-3">(</span><span·class="p"·data-group-id="1637474152-3">)</span><span·class="p">,</span><span·class="w">
177 ····</span><span·class="p"·data-group-id="2444222070-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="2444222070-4">}</span><span·class="p">.</span></code></pre><h2·id="semantics"·class="section-heading">177 ····</span><span·class="p"·data-group-id="1637474152-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="1637474152-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>251 <p>Copyright·©·1996-2024·<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
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2024·<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
180 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/crypto.epub
2.98 KB
zipinfo {}
Max HTML report size reached
59.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="3828914719-1">(</span><span·class="p"·data-group-id="3828914719-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3828914719-2">[</span><span·class="n">E</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·863,·SHA:·34fed9c4b2c3cc24b95c54608eb8e95403a250cdaffbe45cecd0fc3497db9c93·...·]-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="6878926798-1">(</span><span·class="p"·data-group-id="6878926798-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6878926798-2">[</span><span·class="n">E</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·863,·SHA:·b2951795a3ab6e81f21fac97e9936130dc1e6ae2906b918593a2445f1a16380c·...·]-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="3828914719-1">(</span><span·class="p"·data-group-id="3828914719-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3828914719-2">[</span><span·class="n">E</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·863,·SHA:·34fed9c4b2c3cc24b95c54608eb8e95403a250cdaffbe45cecd0fc3497db9c93·...·]-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="6878926798-1">(</span><span·class="p"·data-group-id="6878926798-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6878926798-2">[</span><span·class="n">E</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·863,·SHA:·b2951795a3ab6e81f21fac97e9936130dc1e6ae2906b918593a2445f1a16380c·...·]-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="9711498525-1">(</span><span·class="p"·data-group-id="9711498525-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="6734303721-1">(</span><span·class="p"·data-group-id="6734303721-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="9711498525-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="9711498525-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="6734303721-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="6734303721-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="9711498525-3">(</span><span·class="p"·data-group-id="9711498525-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="6734303721-3">(</span><span·class="p"·data-group-id="6734303721-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="8181123843-1">(</span><span·class="ss">crypto_cache</span><span·class="p"·data-group-id="8181123843-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="9616901585-1">(</span><span·class="ss">crypto_cache</span><span·class="p"·data-group-id="9616901585-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="8181123843-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="8181123843-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="9616901585-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="9616901585-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="8181123843-3">(</span><span·class="p"·data-group-id="8181123843-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="9616901585-3">(</span><span·class="p"·data-group-id="9616901585-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="5194535358-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="5194535358-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="3315388117-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="3315388117-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="5194535358-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="5194535358-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="3315388117-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="3315388117-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="5194535358-3">(</span><span·class="p"·data-group-id="5194535358-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="3315388117-3">(</span><span·class="p"·data-group-id="3315388117-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="5194535358-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="5194535358-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="3315388117-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="3315388117-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="5194535358-5">(</span><span·class="mi">42</span><span·class="p"·data-group-id="5194535358-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="3315388117-5">(</span><span·class="mi">42</span><span·class="p"·data-group-id="3315388117-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="5194535358-6">(</span><span·class="p"·data-group-id="5194535358-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="3315388117-6">(</span><span·class="p"·data-group-id="3315388117-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="6486203670-1">(</span><span·class="p"·data-group-id="6486203670-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="1456410983-1">(</span><span·class="p"·data-group-id="1456410983-1">)</span><span·class="p">.</span><span·class="w">
6152 </span><span·class="p"·data-group-id="6486203670-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="1456410983-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="6486203670-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="1456410983-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="1019829517-1">(</span><span·class="p"·data-group-id="1019829517-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="9133956601-1">(</span><span·class="p"·data-group-id="9133956601-1">)</span><span·class="p">.</span><span·class="w">
6224 </span><span·class="p"·data-group-id="1019829517-2">[</span><span·class="p"·data-group-id="1019829517-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:·c9179508597d284604517d83081599f4b2ce5be780ef3e550facb1526817068d·...·]-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="9133956601-2">[</span><span·class="p"·data-group-id="9133956601-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:·55e63d097c6132b5a7f0d9075e5771533e397a7a9307d2431a2043de4d0a0764·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>226 <p>Copyright·©·1996-2024·<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="4171063958-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="4171063958-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·276,·SHA:·a84ea19e45bfb8540de56427dc8c59775d5770dbabba32a8de8aa16d2af20a14·...·]-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="6106894142-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="6106894142-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·276,·SHA:·266f565faed685d0cff7dfa715a97b305a093f1e905fb7730c7cecdb7d828a7b·...·]-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="4171063958-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:·513c2755373cac32552b315fe477100d9bdf6e5b1bd35469491909738b8599b1·...·]-3">}</span><span·class="gp·unselectable">166 </span><span·class="p"·data-group-id="6106894142-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:·2c57390ac77e849119deeff94bdeccbb9cebdc024f6b365eb2311f66e2877118·...·]-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="4171063958-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="6106894142-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="4171063958-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="6106894142-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="4171063958-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:·5057274ff130861b23348efb95c85ae90afc1b8e56b780692f71b93492280cd9·...·]-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="6106894142-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:·965540f547dd55e2fa188cbff49c4caa9a1150ad92295f901f97ca252eb09ea2·...·]-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="7727495506-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="1560506467-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="7727495506-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="1560506467-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="7727495506-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:·b03c3af747b6c8421b5572182eb8a5240237edb48d774067cca6426a5f4061cd·...·]-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="1560506467-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:·5697c56c62a69abc0916dacac613624cbd2d3e79eb5b7f2d536b79503498c548·...·]-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="3592822144-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="7392351753-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="3592822144-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="7392351753-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="3592822144-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:·ebacb0f5adb7181ee9aa7d443c12bbce8731fc62fc4612a187a630b3fb4e97b9·...·]-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="7392351753-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:·28a6cb7e3d08dc48255d50717e4a1fa35a6b3f24eff920f0f82caab3cfd52951·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>249 <p>Copyright·©·1996-2024·<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="8735988198-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="8735988198-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="8735988198-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="8735988198-3">[</span><span·class="p"·data-group-id="8735988198-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8735988198-4">[</span><span·class="p"·data-group-id="8735988198-4">]</span><span·class="p"·data-group-id="8735988198-2">)</span><span·class="p">.</span><span·class="w"> 
156 ·</span><span·class="p"·data-group-id="8735988198-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="8735988198-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="7021214291-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:·8f871e9a976079783bc3c25bc9ce63efc0faef49865cac067aae5c920f3e3238·...·]">
 156 ·</span><span·class="p"·data-group-id="7021214291-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="7021214291-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="1457737895-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="1457737895-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·124,·SHA:·5cebcb7d6f0cadea61e7d3a473460211ca358e4e17b316161c7ef184251282c8·...·]-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="2427113788-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="2427113788-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·124,·SHA:·f052263c7ad26e06e11e7881dec1073ed51f4d3684225dd8dae4874dec0b463a·...·]-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="1457737895-3">[</span><span·class="p"·data-group-id="1457737895-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="2427113788-3">[</span><span·class="p"·data-group-id="2427113788-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="1457737895-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="2427113788-4">}</span><span·class="p">,</span><span·class="w">
166 ·······································</span><span·class="p"·data-group-id="1457737895-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:·e013062d0327994044b94c06eb50eb518cbccfc1c65d0db46b914b7744c98c7d·...·]-5">}</span><span·class="p">,</span><span·class="w">166 ·······································</span><span·class="p"·data-group-id="2427113788-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:·2389f65d4a6147cfb0f462328696675c6681eef78b0a3589431119ce32ae7c73·...·]-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="1457737895-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="2427113788-3">]</span><span·class="p">,</span><span·class="w">
168 ······································</span><span·class="p"·data-group-id="1457737895-6">[</span><span·class="p"·data-group-id="1457737895-6">]</span><span·class="p"·data-group-id="1457737895-2">)</span><span·class="p">.</span><span·class="w">168 ······································</span><span·class="p"·data-group-id="2427113788-6">[</span><span·class="p"·data-group-id="2427113788-6">]</span><span·class="p"·data-group-id="2427113788-2">)</span><span·class="p">.</span><span·class="w">
169 ·</span><span·class="p"·data-group-id="1457737895-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="1457737895-7">}</span></code></pre><h3·id="load-an-engine-and-replace-some-methods"·class="section-heading">169 ·</span><span·class="p"·data-group-id="2427113788-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="2427113788-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="2432836170-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="2432836170-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·124,·SHA:·2f3b854ac29bceddd48e608036ef797050f125ef825dc9c9222c4032336cac09·...·]-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="5810023768-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="5810023768-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·124,·SHA:·b049cc686d1625b91ed2f5acb913510027b5c685d9af473dc6297d4b7e8a31c7·...·]-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="2432836170-3">[</span><span·class="p"·data-group-id="2432836170-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="5810023768-3">[</span><span·class="p"·data-group-id="5810023768-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="2432836170-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="5810023768-4">}</span><span·class="p">,</span><span·class="w">
179 ·······································</span><span·class="p"·data-group-id="2432836170-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:·619904b1b1dab0a67888fe51667de8a84941ca4d999cd3d5d687911ea1de2035·...·]-5">}</span><span·class="p">,</span><span·class="w">179 ·······································</span><span·class="p"·data-group-id="5810023768-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:·342665749e20f6bddb8c8a05ec0b8df8fb81ea7f03f2cadc1fef1379cbb155d4·...·]-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="2432836170-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="5810023768-3">]</span><span·class="p">,</span><span·class="w">
181 ······································</span><span·class="p"·data-group-id="2432836170-6">[</span><span·class="p"·data-group-id="2432836170-6">]</span><span·class="p"·data-group-id="2432836170-2">)</span><span·class="p">.</span><span·class="w">181 ······································</span><span·class="p"·data-group-id="5810023768-6">[</span><span·class="p"·data-group-id="5810023768-6">]</span><span·class="p"·data-group-id="5810023768-2">)</span><span·class="p">.</span><span·class="w">
182 </span><span·class="p"·data-group-id="2432836170-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="2432836170-7">}</span><span·class="gp·unselectable">182 </span><span·class="p"·data-group-id="5810023768-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="5810023768-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="2432836170-8">(</span><span·class="n">Engine</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2432836170-9">[</span><span·class="ss">engine_method_digests</span><span·class="p"·data-group-id="2432836170-9">]</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·8c98c58847c8c2fa8a972866e48f699298848b341cfa2c3a58be0cbb70577fd7·...·]-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="5810023768-8">(</span><span·class="n">Engine</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5810023768-9">[</span><span·class="ss">engine_method_digests</span><span·class="p"·data-group-id="5810023768-9">]</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·c8459185cd09e7d6ac9f1721014e152bf5029d5cbe9669823c635ea7091f39a6·...·]-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="9376424116-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="9376424116-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·133,·SHA:·b5287a11287b5e36f41d3ed1384bbbd211de078f8f761951b0ff5ccefeb1d601·...·]-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="2054933007-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="2054933007-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·133,·SHA:·804f1a1ab7b8e31fb47f906aa72881ee224943c11fb2fe320239d7e7c3bfa856·...·]-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="9376424116-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="2054933007-2">)</span><span·class="p">.</span><span·class="w">
194 ·</span><span·class="p"·data-group-id="9376424116-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="9376424116-3">}</span></code></pre><p>To·remove·the·tag·from·the·OpenSSL·engine[·...·truncated·by·diffoscope;·len:·469,·SHA:·6aa4ed8775127a6dabd32628a5cdbd8047bf7c6a30786ff779e85678365b59cc·...·]-1">)</span><span·class="p">.</span><span·class="w">194 ·</span><span·class="p"·data-group-id="2054933007-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="2054933007-3">}</span></code></pre><p>To·remove·the·tag·from·the·OpenSSL·engine[·...·truncated·by·diffoscope;·len:·469,·SHA:·6973a3c997d5d880a04eb2818ce0e89798b817243e1413763f00eaaafa99d236·...·]-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="3911930887-1">(</span><span·class="n">Engine</span><span·class="p"·data-group-id="3911930887-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="8558246988-1">(</span><span·class="n">Engine</span><span·class="p"·data-group-id="8558246988-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="8167326416-1">(</span><span·class="p"·data-group-id="8167326416-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="4537516593-1">(</span><span·class="p"·data-group-id="4537516593-1">)</span><span·class="p">.</span><span·class="w">
204 </span><span·class="p"·data-group-id="8167326416-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="[·...·truncated·by·diffoscope;·len:·59,·SHA:·61d289e50a9a6105617063a11936558995b00d82c3ad07f4e65d9f9a1453ec3e·...·]-2">]</span></code></pre>204 </span><span·class="p"·data-group-id="4537516593-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="[·...·truncated·by·diffoscope;·len:·59,·SHA:·315acc4ab4d449eb6cb4351a85ba3aa3d22beba6622543642f204b839763fe6b·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>253 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>294 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>297 <p>Copyright·©·1996-2024·<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="4170307235-1">(</span><span·class="p"·data-group-id="4170307235-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="2873865090-1">(</span><span·class="p"·data-group-id="2873865090-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="4170307235-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:·1e02655f80ad70a34d16468b2f1b2b73f1367757dc6a682e430806134478df7f·...·]-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="2873865090-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:·ec8ba0d75976a11aa64edb03522b4a84c23ef130ead8fcbb3692664588ec137b·...·]-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="4170307235-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="4170307235-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="2873865090-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="2873865090-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="4170307235-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="4170307235-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="2873865090-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="2873865090-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="4170307235-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:·d3157e7de26d8acb479a5acf90c3a6f28a6894e690a271de68da4cba65349394·...·]-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="2873865090-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:·f0c461718577ddd4c92bad8367c3e7cc95a63b36b9ad7054a5defc5a3849bf31·...·]-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="4170307235-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:·c684d876321923573377320acfb91f694254ecd64d52e243c898df0f883a825b·...·]-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="2873865090-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:·1efe522b1dc9ccfee2140304e19349fb875c55abe1636390913832f0fb8ddbb4·...·]-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="4170307235-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="2873865090-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="4170307235-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="2873865090-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="4170307235-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="4170307235-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="2873865090-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="2873865090-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="9881924763-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="9881924763-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="7495719315-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="7495719315-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="9881924763-2">(</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_init</span><span·class="p"·data-group-id="9881924763-3">(</span><span·class="n">Crypto</span><span·class="p">,</span><span·class="w">·</span><span·class="n"[·...·truncated·by·diffoscope;·len:·254,·SHA:·9e756b729e6513297d5c0ba00decab8bbd27b46caa3e0f6dc7e283e424a82420·...·]-2">)</span><span·class="p">.</span><span·class="w">223 »       </span><span·class="nf">crypto_loop</span><span·class="p"·data-group-id="7495719315-2">(</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_init</span><span·class="p"·data-group-id="7495719315-3">(</span><span·class="n">Crypto</span><span·class="p">,</span><span·class="w">·</span><span·class="n"[·...·truncated·by·diffoscope;·len:·254,·SHA:·06dd47a6c1e1cec5bfeaad6b7b4e6508fc0556f03b5e73721b962c8672372100·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
224 »       </span><span·class="nf">crypto_loop</span><span·class="p"·data-group-id="9881924763-4">(</span><span·class="n">State</span><span·class="p"·data-group-id="9881924763-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="7495719315-4">(</span><span·class="n">State</span><span·class="p"·data-group-id="7495719315-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="9881924763-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="9881924763-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">226 ········</span><span·class="p"·data-group-id="7495719315-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="7495719315-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="9881924763-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="9881924763-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="7495719315-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="7495719315-6">)</span><span·class="p">,</span><span·class="w">
228 »       </span><span·class="nf">loop</span><span·class="p"·data-group-id="9881924763-7">(</span><span·class="n">State</span><span·class="p"·data-group-id="9881924763-7">)</span><span·class="w">228 »       </span><span·class="nf">loop</span><span·class="p"·data-group-id="7495719315-7">(</span><span·class="n">State</span><span·class="p"·data-group-id="7495719315-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="8543703132-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:·035cd2696df14afcb82eb159470e903283004398cbabd4f72cfe3134d8319de1·...·]-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="7887880568-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:·ed22161e9fc35292408cc6495dcd93496670a21d089ffdb5ad7b5d600c68185a·...·]-1">]</span><span·class="p">.</span><span·class="w">
242 »       </span><span·class="p"·data-group-id="8543703132-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:·035cd2696df14afcb82eb159470e903283004398cbabd4f72cfe3134d8319de1·...·]-2">]</span><span·class="w">242 »       </span><span·class="p"·data-group-id="7887880568-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:·ed22161e9fc35292408cc6495dcd93496670a21d089ffdb5ad7b5d600c68185a·...·]-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="8543703132-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:·939b081d4a9eede72c8657224a63c732975a702633aa7a7974993709b98ae310·...·]-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="7887880568-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:·9db7326d9a78bfe3de3ac9a170af30b288346d6eec623c554e7717f5b1f11540·...·]-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="2060665949-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:·b319bbd901ae180cd80a2a850c499800a5b4cbc4c92f03714aa25f7b40f71c1c·...·]-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="4357632473-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:·26e8214f71846bc542c07087b582b68b29acff178ae04c05166adad06b2f6ba3·...·]-1">]</span><span·class="p">.</span><span·class="w">
261 »       </span><span·class="p"·data-group-id="2060665949-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:·b319bbd901ae180cd80a2a850c499800a5b4cbc4c92f03714aa25f7b40f71c1c·...·]-2">]</span><span·class="w">261 »       </span><span·class="p"·data-group-id="4357632473-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:·26e8214f71846bc542c07087b582b68b29acff178ae04c05166adad06b2f6ba3·...·]-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="2060665949-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:·9d664c6de9866d370eb16b057d6974f833343eb921667161e3d86e724f423bf5·...·]-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="4357632473-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:·4e47bb3946bfbdda4e53030aae0567838d6e8742531afa51225e4c8f01997241·...·]-3">)</span><span·class="p">.</span><span·class="w">
265 »       </span><span·class="p"·data-group-id="2060665949-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="4357632473-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="2060665949-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="4357632473-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="3710258210-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="3710258210-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="8902624760-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="8902624760-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="3710258210-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="3710258210-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="8902624760-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="8902624760-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="3710258210-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="3710258210-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="8902624760-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="8902624760-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="3710258210-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="3710258210-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="8902624760-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="8902624760-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="3710258210-5">(</span><span·class="n">StateMac</span><span·class="p"·data-group-id="3710258210-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="8902624760-5">(</span><span·class="n">StateMac</span><span·class="p"·data-group-id="8902624760-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="9105492305-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:·cb0ff4d479a1c3345d150d7b7ce523b5357095ceb5ce88d67592ade39e8a8d84·...·]-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="3029209406-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:·0c30b52d909acc5fee2329698c50157f2e2eae94df4bc8e4ffaa3bb1070e1233·...·]-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="9105492305-2">(</span><span·class="mi">7</span><span·class="p"·data-group-id="9105492305-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="9105492305-3">(</span><span[·...·truncated·by·diffoscope;·len:·61,·SHA:·95a41168765d8a3d6b7ef740dccff55c5e36f4a5db5644276f7cbce23d4b0b60·...·]-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="3029209406-2">(</span><span·class="mi">7</span><span·class="p"·data-group-id="3029209406-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="3029209406-3">(</span><span[·...·truncated·by·diffoscope;·len:·61,·SHA:·ccc378c8647fea0426f44167efbfe6f4da98d581cbf2d7cf95ee917f0cb5c015·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>346 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2157 <p>Copyright·©·1996-2024·<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.27 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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-9403A99F.js31 dist/search_data-1474772F.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>204 <p>Copyright·©·1996-2024·<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
110 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/debugger.epub
3.66 KB
zipinfo {}
Max HTML report size reached
72.3 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
2.86 KB
OEBPS/content.opf
2.83 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>348 <p>Copyright·©·1996-2024·<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="9570267561-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">Compiled</span><span·class="p"·data-group-id="9570267561-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="3964761142-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">Compiled</span><span·class="p"·data-group-id="3964761142-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="9570267561-2">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">Compiled</span><span·class="p"·data-group-id="9570267561-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="3964761142-2">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">Compiled</span><span·class="p"·data-group-id="3964761142-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="9570267561-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">File</span><span·class="p"·data-group-id="9570267561-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="3964761142-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">File</span><span·class="p"·data-group-id="3964761142-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="9570267561-4">(</span><span·class="n">Module</span><span·class="p"·data-group-id="9570267561-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="3964761142-4">(</span><span·class="n">Module</span><span·class="p"·data-group-id="3964761142-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="9570267561-5">{</span><span·class="ss">loaded</span><span·class="p">,</span><span·class="n">File</span><span·class="p"·data-group-id="9570267561-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="3964761142-5">{</span><span·class="ss">loaded</span><span·class="p">,</span><span·class="n">File</span><span·class="p"·data-group-id="3964761142-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="1112217594-1">(</span><span·class="mi">0</span><span·class="p"·data-group-id="1112217594-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="3219302247-1">(</span><span·class="mi">0</span><span·class="p"·data-group-id="3219302247-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="1112217594-2">(</span><span·class="n">N</span><span·class="p"·data-group-id="1112217594-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:·f1e22673c84577cd6ba923d484308317f4a45fd77ea1833cd5e827d86a7e8048·...·]-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="3219302247-2">(</span><span·class="n">N</span><span·class="p"·data-group-id="3219302247-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:·a109a7178ac92534c6348155595315e5e4582a7756b1b0a2d7e095010b97528c·...·]-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="5703275348-2">(</span><span·class="p"·data-group-id="5703275348-3">[</span><span·class="ss">c_break</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="5703275348-3">]</span><span·class="p"·data-group-id="5703275348-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="3021100384-2">(</span><span·class="p"·data-group-id="3021100384-3">[</span><span·class="ss">c_break</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="3021100384-3">]</span><span·class="p"·data-group-id="3021100384-2">)</span><span·class="p">.</span><span·class="w">
  
214 </span><span·class="nf">c_break</span><span·class="p"·data-group-id="5703275348-4">(</span><span·class="n">Bindings</span><span·class="p"·data-group-id="5703275348-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="3021100384-4">(</span><span·class="n">Bindings</span><span·class="p"·data-group-id="3021100384-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="5703275348-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="5703275348-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="3021100384-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="3021100384-5">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
216 ········</span><span·class="p"·data-group-id="5703275348-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="5703275348-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">216 ········</span><span·class="p"·data-group-id="3021100384-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="3021100384-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="7434047467-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="7434047467-2">{</span><span·class="ss">badarith</span><span·class="p">,</span><span·class="p"·data-group-id="7434047467-3">[</span><span·clas[·...·truncated·by·diffoscope;·len:·506,·SHA:·8007cec4865f46ad55e526287a1a5ee5c4f7898fe13a284a6994f8527fd61cb4·...·]7-4">}</span><span·class="p">,</span><span·class="w">238 </span><span·class="p"·data-group-id="1359326357-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1359326357-2">{</span><span·class="ss">badarith</span><span·class="p">,</span><span·class="p"·data-group-id="1359326357-3">[</span><span·clas[·...·truncated·by·diffoscope;·len:·506,·SHA:·2debd91f949f5f9a053bf4921a89be09486f1af6a78ab5a387c1afb7beef33bc·...·]7-4">}</span><span·class="p">,</span><span·class="w">
239 ···················</span><span·class="p"·data-group-id="7434047467-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="7434047467-8">[</span><span·class="p"·data-group-id="7434047467-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="7434047467-9">}</span><span·class="p">,</span><span·class="p"·data-group-id="7434047467-10">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">573</span><span·class="p"·data-group-id="7434047467-10">}</span><span·class="p"·data-group-id="7434047467-8">]</span><span·class="p"·data-group-id="7434047467-7">}</span><span·class="p">,</span><span·class="w"> 
240 ···················</span><span·class="p"·data-group-id="7434047467-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="7434047467-12">[</span><span·class="p"·data-group-id="7434047467-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="7434047467-13">}</span><span·class="p">,</span><span·class="p"·data-group-id="7434047467-14">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">357</span><span·class="p"·data-group-id="7434047467-14">}</span><span·class="p"·data-group-id="7434047467-12">]</span><span·class="p"·data-group-id="7434047467-11">}</span><span·class="p">,</span><span·class="w"> 
241 ···················</span><span·class="p"·data-group-id="7434047467-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="7434047467-16">[</span><span·class="p"·data-group-id="7434047467-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="7434047467-17">}</span><span·class="p">,</span><span·class="p"·data-group-id="7434047467-18">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">674</span><span·class="p"·data-group-id="7434047467-18">}</span><span·class="p"·data-group-id="7434047467-16">]</span><span·class="p"·data-group-id="7434047467-15">}</span><span·class="p">,</span><span·class="w"> 
242 ···················</span><span·class="p"·data-group-id="7434047467-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="7434047467-20">[</span><span·class="p"·data-group-id="7434047467-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="7434047467-21">}</span><span·class="p">,</span><span·class="p"·data-group-id="7434047467-22">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">629</span><span·class="p"·data-group-id="7434047467-22">}</span><span·class="p"·data-group-id="7434047467-20">]</span><span·class="p"·data-group-id="7434047467-19">}</span><span·class="p">,</span><span·class="w"> 
243 ···················</span><span·class="p"·data-group-id="7434047467-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="7434047467-24">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·724,·SHA:·6842926fd3f3f57d285b1932cf6cc83e735612b8f36c641c3ed18f958a09897a·...·]239 ···················</span><span·class="p"·data-group-id="1359326357-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="1359326357-8">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·542,·SHA:·f4021982da0123515206174baa62d633fbea82ad04d64f6f855e3a99d2a2fcf1·...·]
 240 ···················</span><span·class="p"·data-group-id="1359326357-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="1359326357-12">[</span><span·class="p"·data-group-id="1359326357-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="1359326357-13">}</span><span·class="p">,</span><span·class="p"·data-group-id="1359326357-14">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">357</span><span·class="p"·data-group-id="1359326357-14">}</span><span·class="p"·data-group-id="1359326357-12">]</span><span·class="p"·data-group-id="1359326357-11">}</span><span·class="p">,</span><span·class="w">
 241 ···················</span><span·class="p"·data-group-id="1359326357-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="1359326357-16">[</span><span·class="p"·data-group-id="1359326357-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="1359326357-17">}</span><span·class="p">,</span><span·class="p"·data-group-id="1359326357-18">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">674</span><span·class="p"·data-group-id="1359326357-18">}</span><span·class="p"·data-group-id="1359326357-16">]</span><span·class="p"·data-group-id="1359326357-15">}</span><span·class="p">,</span><span·class="w">
 242 ···················</span><span·class="p"·data-group-id="1359326357-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="1359326357-20">[</span><span·class="p"·data-group-id="1359326357-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="1359326357-21">}</span><span·class="p">,</span><span·class="p"·data-group-id="1359326357-22">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">629</span><span·class="p"·data-group-id="1359326357-22">}</span><span·class="p"·data-group-id="1359326357-20">]</span><span·class="p"·data-group-id="1359326357-19">}</span><span·class="p">,</span><span·class="w">
 243 ···················</span><span·class="p"·data-group-id="1359326357-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="1359326357-24">[</span><span·class="p"·data-group-id="1359326357-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="1359326357-25">}</span><span·class="p">,</span><span·class="p"·data-group-id="1359326357-26">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">614</span><span·class="p"·data-group-id="1359326357-26">}</span><span·class="p"·data-group-id="1359326357-24">]</span><span·class="p"·data-group-id="1359326357-23">}</span><span·class="p"·data-group-id="1359326357-3">]</span><span·class="p"·data-group-id="1359326357-2">}</span><span·class="p"·data-group-id="1359326357-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>548 <p>Copyright·©·1996-2024·<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="1039715068-1">(</span><span·class="ss">t</span><span·class="p"·data-group-id="1039715068-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="0886243084-1">(</span><span·class="ss">t</span><span·class="p"·data-group-id="0886243084-1">)</span><span·class="p">.</span><span·class="w">
138 </span><span·class="p"·data-group-id="1039715068-2">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">t</span><span·class="p"·data-group-id="1039715068-2">}</span><span·class="gp·unselectable">138 </span><span·class="p"·data-group-id="0886243084-2">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">t</span><span·class="p"·data-group-id="0886243084-2">}</span><span·class="gp·unselectable">
139 2&gt;·</span><span·class="nf">iaa</span><span·class="p"·data-group-id="1039715068-3">(</span><span·class="p"·data-group-id="1039715068-4">[</span><span·class="ss">init</span><span·class="p"·data-group-id="1039715068-4">]</span><span·class="p"·data-group-id="1039715068-3">)</span><span·class="p">.</span><span·class="w">139 2&gt;·</span><span·class="nf">iaa</span><span·class="p"·data-group-id="0886243084-3">(</span><span·class="p"·data-group-id="0886243084-4">[</span><span·class="ss">init</span><span·class="p"·data-group-id="0886243084-4">]</span><span·class="p"·data-group-id="0886243084-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1349 <p>Copyright·©·1996-2024·<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="0601176074-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="0601176074-2">[</span><span·class="n">Pid</span><sp[·...·truncated·by·diffoscope;·len:·190,·SHA:·2402aeb511f14036a587e220caf758a6f7b60d531cfc4608121a85ea3ff0b3dc·...·]-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="4665206757-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="4665206757-2">[</span><span·class="n">Pid</span><sp[·...·truncated·by·diffoscope;·len:·190,·SHA:·3f5a584df99ddffab4be2d7f507541aa1121f91adb122c548f44906813cf2dbe·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1460 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>193 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>964 <p>Copyright·©·1996-2024·<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-9403A99F.js"></script>124 <script·src="dist/search_data-1474772F.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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-009BAE67.js23 dist/search_data-1DB1C954.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2024·<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="4041552755-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="6929997439-1">{</span><span·class="ss">incremental</span><span·class="p">,</span><span·class="w">
274 ········</span><span·class="p"·data-group-id="4041552755-2">{</span><span·class="ss">default_apps</span><span·class="p">,</span><span·class="p"·data-group-id="4041552755-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:·109,·SHA:·47737ffc1e6f1f122eafce9667898412a0385c5ce005ffa476d2b486487e56e1·...·]-2">}</span><span·class="p">,</span><span·class="w">274 ········</span><span·class="p"·data-group-id="6929997439-2">{</span><span·class="ss">default_apps</span><span·class="p">,</span><span·class="p"·data-group-id="6929997439-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:·109,·SHA:·6de907322d3dfe8c189372db119cc1e522a7667895dd5f73a12dc47a7fc4cc54·...·]-2">}</span><span·class="p">,</span><span·class="w">
275 ········</span><span·class="p"·data-group-id="4041552755-4">{</span><span·class="ss">default_warning_apps</span><span·class="p">,</span><span·class="p"·data-group-id="4041552755-5">[</span><span·class="ss">stdlib</span><span·class="p"·data-group-id="4041552755-5">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·ac8869d4fd42c807d8f388ef6783d56ad716305e64b24c877e1261491066f000·...·]-4">}</span><span·class="w">275 ········</span><span·class="p"·data-group-id="6929997439-4">{</span><span·class="ss">default_warning_apps</span><span·class="p">,</span><span·class="p"·data-group-id="6929997439-5">[</span><span·class="ss">stdlib</span><span·class="p"·data-group-id="6929997439-5">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·57eadd3e1f20eaf9acc6950eaf9e37a6523a131e1a410a05ff775335e87a362e·...·]-4">}</span><span·class="w">
276 ······</span><span·class="p"·data-group-id="4041552755-1">}</span><span·class="p">.</span><span·class="w">276 ······</span><span·class="p"·data-group-id="6929997439-1">}</span><span·class="p">.</span><span·class="w">
277 ······</span><span·class="p"·data-group-id="4041552755-6">{</span><span·class="ss">warnings</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4041552755-7">[</span><span·class="ss">no_improper_lists</span><span·class="p"·data-group-id="4041552755-7">]</span><span·class="p"·data-group-id="4041552755-6">}</span><span·class="p">.</span><span·class="w"> 
278 ······</span><span·class="p"·data-group-id="4041552755-8">{</span><span·class="ss">add_pathsa</span><span·class="p">,</span><span·class="p"·data-group-id="4041552755-9">[</span><span·class="s">&quot;/users/samwise/potatoes/ebin&quot;</span><span·class="p"·data-group-id="4041552755-9">]</span><span·c[·...·truncated·by·diffoscope;·len:·36,·SHA:·66e15ca6c7af8cf43519d654cb06c7965b6e22590d058d64f4de1b8f3448f873·...·]">}</span><span·class="p">.</span><span·class="w">277 ······</span><span·class="p"·data-group-id="6929997439-6">{</span><span·class="ss">warnings</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6929997439-7">[</span><span·class="ss">no_improper_lists</span><span·class="p"·data-group-id="6929997439-7">]</span><span·c[·...·truncated·by·diffoscope;·len:·36,·SHA:·20dcd5aa0d039a4b6763e9b924f96d7b4f44ff92585354efd8936894b0dd4b99·...·]">}</span><span·class="p">.</span><span·class="w">
 278 ······</span><span·class="p"·data-group-id="6929997439-8">{</span><span·class="ss">add_pathsa</span><span·class="p">,</span><span·class="p"·data-group-id="6929997439-9">[</span><span·class="s">&quot;/users/samwise/potatoes/ebin&quot;</span><span·class="p"·data-group-id="6929997439-9">]</span><span·class="p"·data-group-id="6929997439-8">}</span><span·class="p">.</span><span·class="w">
279 ······</span><span·class="p"·data-group-id="4041552755-10">{</span><span·class="ss">add_pathsz</span><span·class="p">,</span><span·class="p"·data-group-id="4041552755-11">[</span><span·class="s">&quot;/users/smeagol/fish/ebin&quot;</span><span·class="p"·data-group-id="4041552755-11">]</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·41f13a8d5ca89b205cd01db4962d7887d58deb107ac608126466c8a27ba207ac·...·]-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">279 ······</span><span·class="p"·data-group-id="6929997439-10">{</span><span·class="ss">add_pathsz</span><span·class="p">,</span><span·class="p"·data-group-id="6929997439-11">[</span><span·class="s">&quot;/users/smeagol/fish/ebin&quot;</span><span·class="p"·data-group-id="6929997439-11">]</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·a3e20c739a651ddd41f0580f45a7029f58a0efddb84cc583edd6973a6772e232·...·]-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="5328343089-1">(</span><span·class="p"·data-group-id="5328343089-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:·74,·SHA:·d7d68ce6729523c68657ed8a7aa9d590298f2910f71be2cd8fcfbfd37e6c8e34·...·]-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="2329798412-1">(</span><span·class="p"·data-group-id="2329798412-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:·74,·SHA:·2872d5567e2efc9d54d7e657dce3e753f7f7c0bd62de1f2486ccde4bb32490d1·...·]-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="3664432443-1">(</span><span·class="p"·data-group-id="3664432443-2">[</span><span·class="p"·data-group-id="3664432443-3">{</span><span·class="ss">nowarn_function</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3664432443-4[·...·truncated·by·diffoscope;·len:·1864,·SHA:·286c49f2c0a640391b2b457f5db9ed60d060527fd2d6fc42dc294ceb7f623fd7·...·]6-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="3672776929-1">(</span><span·class="p"·data-group-id="3672776929-2">[</span><span·class="p"·data-group-id="3672776929-3">{</span><span·class="ss">nowarn_function</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3672776929-4[·...·truncated·by·diffoscope;·len:·1864,·SHA:·1f3642d024f7647dc7777f5785bb3dabce3cbf7fc3a04a5886ee0dc169b8a414·...·]6-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="2013993281-1">(</span><span·class="p"·data-group-id="2013993281-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:·3b07228946b5e75c09a5e908ede2b42e78229d444a5a7ac95efd8fcf6e89c080·...·]-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="0052370574-1">(</span><span·class="p"·data-group-id="0052370574-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:·6a5cb3a03654c087e330fc51525cdd8ae0a950e685101729cf482b73c626676d·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>883 <p>Copyright·©·1996-2024·<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="5607572272-1">(</span><span·class="nf">boolean</span><span·class="p"·data-group-id="5607572272-2">(</span><span·class="p"·data-group-id="5607572272-2">)</span><span·class="p"·data-group-id="5607572272-1">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·04b901a9336202c0df51d6b69de70ad900f1404099666229042988e6fde252c9·...·]-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="2206824875-1">(</span><span·class="nf">boolean</span><span·class="p"·data-group-id="2206824875-2">(</span><span·class="p"·data-group-id="2206824875-2">)</span><span·class="p"·data-group-id="2206824875-1">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·05b1196e817dc73b6dc5f2971d0971146981f1e77c7891a6b111f769bad58ada·...·]-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="5607572272-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="5607572272-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="2206824875-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="2206824875-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="5607572272-5">(</span><span·class="n">N</span><span·class="p"·data-group-id="5607572272-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="2206824875-5">(</span><span·class="n">N</span><span·class="p"·data-group-id="2206824875-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="8285258771-1">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="8285258771-2">(</span><span·class="p"·data-group-id="8285258771-2">)</span><span·class="p"·data-group-id="8285258771-1">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·367c9fe2464383b2bf0a096ef590fc2fbac3bcea58a687f30fbe8d06b871fc34·...·]-3">)</span><span·class="w">218 ··········</span><span·class="p"·data-group-id="5593559403-1">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="5593559403-2">(</span><span·class="p"·data-group-id="5593559403-2">)</span><span·class="p"·data-group-id="5593559403-1">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·4bd59109f6cf0c8e0ea0afb35b30ec23be4352b0c61e967093fc98e4f38ce057·...·]-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="8285258771-4">(</span><span·class="nf">boolean</span><span·class="p"·data-group-id="8285258771-5">(</span><span·class="p"·data-group-id="8285258771-5">)</span><span·class="p"·data-group-id="8285258771-4">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·935304c9625e3bb9c28f7c3819403d77f2a2dab4c5e6e158a3ab820d93f5f34a·...·]-6">)</span><span·class="w">220 ··········</span><span·class="p"·data-group-id="5593559403-4">(</span><span·class="nf">boolean</span><span·class="p"·data-group-id="5593559403-5">(</span><span·class="p"·data-group-id="5593559403-5">)</span><span·class="p"·data-group-id="5593559403-4">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·841702158f858ecc431d153c296061900fcef014fecffb4368a43d19fb57b100·...·]-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="1751508921-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="1751508921-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·c[·...·truncated·by·diffoscope;·len:·139,·SHA:·2dead012193ede2d4a4beb6e46b677046694a908f272855cfe815d5bfbc34d78·...·]-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="7255052009-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="7255052009-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·c[·...·truncated·by·diffoscope;·len:·139,·SHA:·1bc7e5e96aafd424f380ba9e07fc05d9ce2b5e307c3980c7b6c1f1e430a2aa55·...·]-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="1751508921-3">(</span><span·class="ss">a</span><span·class="p"·data-group-id="1751508921-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="7255052009-3">(</span><span·class="ss">a</span><span·class="p"·data-group-id="7255052009-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="1751508921-4">(</span><span·class="ss">b</span><span·class="p"·data-group-id="1751508921-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="7255052009-4">(</span><span·class="ss">b</span><span·class="p"·data-group-id="7255052009-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="7608387082-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="7608387082-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="4108178831-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="4108178831-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="7608387082-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="7608387082-2">)</span><span·class="w">·</span><span·class="p"[·...·truncated·by·diffoscope;·len:·159,·SHA:·13bb94419993ea1fb9be3099ad6bf191c24dff1e39c88927a89759808cc4af50·...·]-3">)</span><span·class="w">229 ··········</span><span·class="p"·data-group-id="4108178831-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="4108178831-2">)</span><span·class="w">·</span><span·class="p"[·...·truncated·by·diffoscope;·len:·159,·SHA:·e907aa2e84c67c8ba56bc0a11a1718fdf4492dc64dce4bf5aa72e429a9e78d60·...·]-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="7126470754-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="7126470754-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·c[·...·truncated·by·diffoscope;·len:·150,·SHA:·ac10345ad4c7c72cd488f0befdb7ad4a7b4fdb0c3731fcdaec3ff888a6a450e7·...·]-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="1030951086-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="1030951086-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·c[·...·truncated·by·diffoscope;·len:·150,·SHA:·5e5367f58a31f54985a47f315322efae81dea30c8fb46f6cd6d60b4ed07e2565·...·]-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="7126470754-3">(</span><span·class="ss">b</span><span·class="p"·data-group-id="7126470754-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="1030951086-3">(</span><span·class="ss">b</span><span·class="p"·data-group-id="1030951086-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="7126470754-4">(</span><span·class="ss">c</span><span·class="p"·data-group-id="7126470754-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="1030951086-4">(</span><span·class="ss">c</span><span·class="p"·data-group-id="1030951086-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="7126470754-5">(</span><span·class="ss">d</span><span·class="p"·data-group-id="7126470754-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="1030951086-5">(</span><span·class="ss">d</span><span·class="p"·data-group-id="1030951086-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>307 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1838 <p>Copyright·©·1996-2024·<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-009BAE67.js"></script>124 <script·src="dist/search_data-1DB1C954.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>201 <p>Copyright·©·1996-2024·<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
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>240 <p>Copyright·©·1996-2024·<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
584 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter.epub
3.83 KB
zipinfo {}
Max HTML report size reached
67.7 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="8934292496-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="8934292496-2">{</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·8e5c7f3b847c0701295e2ec13f7a80bee6da7959f376f5fe7766360613a44bcf·...·]-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="1520951315-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="1520951315-2">{</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·611b41b08d54f37e3f848426e5e01e18366a3f4738e9ebaa88e886d270d6f894·...·]-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="8934292496-3">[</span><span·class="o">#</span><span·class="ss">diameter_avp</span><span·class="p"·data-group-id="8934292496-4">{</span><span·class="p"·data-group-id="8934292496-4">}</span><span·class="p"·data-group-id="8934292496-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="1520951315-3">[</span><span·class="o">#</span><span·class="ss">diameter_avp</span><span·class="p"·data-group-id="1520951315-4">{</span><span·class="p"·data-group-id="1520951315-4">}</span><span·class="p"·data-group-id="1520951315-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="8934292496-5">(</span><span·class="p"·data-group-id="8934292496-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="1520951315-5">(</span><span·class="p"·data-group-id="1520951315-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="8934292496-6">[</span><span·class="n">Unsigned32</span><span·class="p"·data-group-id="8934292496-7">(</span><span·class="p"·data-group-id="8934292496-7">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·479,·SHA:·e49910088110cffd2ecd578bb8aad3a63656bf8b4b78d3c44db87dc220ff469a·...·]-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="1520951315-6">[</span><span·class="n">Unsigned32</span><span·class="p"·data-group-id="1520951315-7">(</span><span·class="p"·data-group-id="1520951315-7">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·479,·SHA:·29802b0eaab301f5eaf9e6ad3d662f78b6e60062814f97b2de20edcf3d11c33f·...·]-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="8934292496-11">(</span><span·class="p"·data-group-id="8934292496-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="1520951315-11">(</span><span·class="p"·data-group-id="1520951315-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="8934292496-12">(</span><span·class="p"·data-group-id="8934292496-12">)</span><span·class="p"·data-group-id="8934292496-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="1520951315-12">(</span><span·class="p"·data-group-id="1520951315-12">)</span><span·class="p"·data-group-id="1520951315-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1043 <p>Copyright·©·1996-2024·<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="1694350267-1">(</span><span·class="s">&quot;diameter/include/diameter.hrl&quot;</span><span·class="p"·data-group-id="1694350267-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="4449703219-1">(</span><span·class="s">&quot;diameter/include/diameter.hrl&quot;</span><span·class="p"·data-group-id="4449703219-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>562 <p>Copyright·©·1996-2024·<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="7300479928-1">(</span><span·class="p"·data-group-id="7300479928-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="7300479928-2">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·223,·SHA:·4b8d97a7befb48267029aae705c379c5f263514583bfdd75c8a3ab817250b0f5·...·]-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="1587630616-1">(</span><span·class="p"·data-group-id="1587630616-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="1587630616-2">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·223,·SHA:·e9a5f9a7a628de67ba23e4f7054bd8e8aabbbe449942864e0e16d561abe44a58·...·]-3">)</span><span·class="w">
313 </span><span·class="n">Integer32</span><span·class="p"·data-group-id="7300479928-4">(</span><span·class="p"·data-group-id="7300479928-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="1587630616-4">(</span><span·class="p"·data-group-id="1587630616-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="7300479928-5">(</span><span·class="p"·data-group-id="7300479928-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="1587630616-5">(</span><span·class="p"·data-group-id="1587630616-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="7300479928-6">(</span><span·class="p"·data-group-id="7300479928-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="1587630616-6">(</span><span·class="p"·data-group-id="1587630616-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="7300479928-7">(</span><span·class="p"·data-group-id="7300479928-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="1587630616-7">(</span><span·class="p"·data-group-id="1587630616-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="7300479928-8">(</span><span·class="p"·data-group-id="7300479928-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:·f329f9557bf5f80a63ef1b6b23d74e1efc7b67eadb35c7553ffc2e59e2dba14f·...·]-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="1587630616-8">(</span><span·class="p"·data-group-id="1587630616-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:·8ea457093d4406035581f3a9e3860326a5ff7f3ac5d0f0b42617701f475b4ff6·...·]-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="7300479928-10">(</span><span·class="p"·data-group-id="7300479928-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:·4fa08ebd2a1b3e5d143520253ac37183461001cb0179faecb2a87425843a29ac·...·]-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="1587630616-10">(</span><span·class="p"·data-group-id="1587630616-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:·2410ac061c91cf7771732ba9e28ca2dd7943cdc9162cb1047fdbcd2b1c53d718·...·]-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="7300479928-12">(</span><span·class="p"·data-group-id="7300479928-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="7300479928-13">(</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·0730cb0e97b6f3c5f9341dc2ac4998ed32eb7a64a199c3f8f20431adbe97fd5b·...·]-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="1587630616-12">(</span><span·class="p"·data-group-id="1587630616-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="1587630616-13">(</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·15d741c2cae2fe84a08d42d1f8789085cdc58af94e12940fe1bd9b83c5cf580b·...·]-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="2119787789-1">(</span><span·class="p"·data-group-id="2119787789-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2119787789-2">{</span><span·class="nf">date</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·301,·SHA:·358a042aa2bb0817a8faecab92c4fc805f68d1bcb90287bde140faa7fc19de87·...·]-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="5890919361-1">(</span><span·class="p"·data-group-id="5890919361-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5890919361-2">{</span><span·class="nf">date</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·301,·SHA:·99f2f78e7a61a95d2b29219cc2d5c91ee7e8c36467e5990cb1d8a0b04f026903·...·]-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="2119787789-5">(</span><span·class="p"·data-group-id="2119787789-5">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2119787789-6">{</span><span·class="n">Year</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·162,·SHA:·013333b8a09cf8ab8a58d3fde0785b2d3e09ef5a97fa87790cce52496e76f4c2·...·]-6">}</span><span·class="w">329 ··</span><span·class="nf">date</span><span·class="p"·data-group-id="5890919361-5">(</span><span·class="p"·data-group-id="5890919361-5">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5890919361-6">{</span><span·class="n">Year</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·162,·SHA:·e423243c6e5d5b4a571073b858b7456707ebce89ef485dcd84342caf7e861899·...·]-6">}</span><span·class="w">
330 ··</span><span·class="nf">time</span><span·class="p"·data-group-id="2119787789-7">(</span><span·class="p"·data-group-id="2119787789-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2119787789-8">{</span><span·class="n">Hour</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·166,·SHA:·c9cc285b8198a772929cd737684e3c7e3e3e2f138ba3079f0e23b8db40540e52·...·]-8">}</span><span·class="w">330 ··</span><span·class="nf">time</span><span·class="p"·data-group-id="5890919361-7">(</span><span·class="p"·data-group-id="5890919361-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5890919361-8">{</span><span·class="n">Hour</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·166,·SHA:·76b4cce43d17968c63ba19be417b0f8d5acf928639dca4edd57a1907ae667f84·...·]-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="2119787789-9">(</span><span·class="p"·data-group-id="2119787789-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="5890919361-9">(</span><span·class="p"·data-group-id="5890919361-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="6153752406-1">(</span><span·class="p"·data-group-id="6153752406-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="6153752406-2">(</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·9143f8a2535daddb0c3615e2b3c000cb15321793beadc5fbdc1ddae4ba797e42·...·]-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="9206744357-1">(</span><span·class="p"·data-group-id="9206744357-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="9206744357-2">(</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·a92b94748eaef95790a89ce23560a02c0ad4c42ed2bf68064ad99be850531f3f·...·]-2">)</span><span·class="w">
363 </span><span·class="n">QoSFilterRule</span><span·class="p"·data-group-id="6153752406-3">(</span><span·class="p"·data-group-id="6153752406-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="6153752406-4">(</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·103b002cf70432c59271d1da101063005516e79ef31722a38573a92e36eb6aa3·...·]-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="9206744357-3">(</span><span·class="p"·data-group-id="9206744357-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="9206744357-4">(</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·3f9b2d405c5902a43c537065463f4aad916ec73c6b95c485934acd4f5826494e·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>410 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>177 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>205 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>535 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>452 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>487 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>324 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>177 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>216 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1315 <p>Copyright·©·1996-2024·<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.27 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>144 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>263 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>838 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>237 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1408 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>188 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>445 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>219 <p>Copyright·©·1996-2024·<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="1546050200-1">(</span><span·class="ss">example</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1546050200-2">[</span><span·class="p"·data-group-id="1546050200-3">{</span><span·class="ss">preprocess</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="1546050200-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1546050200-4">{</span><span·class="ss">doclet</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">edoc_doclet_markdown</span><span·class="p"·data-group-id="1546050200-4">}</span><span·class="p">,</span><span·class="w"> 
129 ·······</span><span·class="p"·data-group-id="1546050200-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="1546050200-5">}</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·603,·SHA:·5afddc9830e4b997c5b3ccf9b13d9b7008225fc6a3086b4daab69052aee9375b·...·]>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"><sp[·...·truncated·by·diffoscope;·len:·900,·SHA:·111be068ae95cc115046e4b8034096ba25f7735592de7cc5bbbe4077f197a156·...·]>
 129 ·······</span><span·class="p"·data-group-id="5564864333-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="5564864333-5">}</span><span·class="p"·data-group-id="5564864333-2">]</span><span·class="p"·data-group-id="5564864333-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>220 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>654 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>220 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>406 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>749 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>450 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>359 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>845 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>142 <p>Copyright·©·1996-2024·<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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2024·<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
70.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
37.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="7508219035-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="5757840096-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="7508219035-2">[</span><span·class="p"·data-group-id="7508219035-3">{</span><span·class="s">&quot;objectclass&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7508219035-4">[</span><span·class="s">&quot;person&quot;[·...·truncated·by·diffoscope;·len:·101,·SHA:·fb62dc1421183005b507f88c68daedeb265b28852dd9f59dbd21d0087f9532f0·...·]-3">}</span><span·class="p">,</span><span·class="w">980 ·······</span><span·class="p"·data-group-id="5757840096-2">[</span><span·class="p"·data-group-id="5757840096-3">{</span><span·class="s">&quot;objectclass&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5757840096-4">[</span><span·class="s">&quot;person&quot;[·...·truncated·by·diffoscope;·len:·101,·SHA:·52e5944b0a9cdc2a1d7e4ff6889e6ff755aa1d13b9c75008b8f255a6bc9f85e1·...·]-3">}</span><span·class="p">,</span><span·class="w">
981 ········</span><span·class="p"·data-group-id="7508219035-5">{</span><span·class="s">&quot;cn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7508219035-6">[</span><span·class="s">&quot;Bill·Valentine&quot;</span><span·class="p"·data-group-id="7508219035-6">]<[·...·truncated·by·diffoscope;·len:·47,·SHA:·132d907f7ea900c9011b6d0c5190aa9a76e51ec7139146662be44010857bcf50·...·]-5">}</span><span·class="p">,</span><span·class="w">981 ········</span><span·class="p"·data-group-id="5757840096-5">{</span><span·class="s">&quot;cn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5757840096-6">[</span><span·class="s">&quot;Bill·Valentine&quot;</span><span·class="p"·data-group-id="5757840096-6">]<[·...·truncated·by·diffoscope;·len:·47,·SHA:·49700960f0926bf6d4368195ff5de32445eb13c2f4529ec5f666f2c07b7b70cb·...·]-5">}</span><span·class="p">,</span><span·class="w">
982 ········</span><span·class="p"·data-group-id="7508219035-7">{</span><span·class="s">&quot;sn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7508219035-8">[</span><span·class="s">&quot;Valentine&quot;</span><span·class="p"·data-group-id="7508219035-8">]</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·a8adab7d46fd97bb9eb484ca9506336540e8433e319437d9ba3771f38a789323·...·]-7">}</span><span·class="p">,</span><span·class="w">982 ········</span><span·class="p"·data-group-id="5757840096-7">{</span><span·class="s">&quot;sn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5757840096-8">[</span><span·class="s">&quot;Valentine&quot;</span><span·class="p"·data-group-id="5757840096-8">]</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·cbcd31932f8ea11bea03280421e5c7cf2eb00761c110f49c3725bd49f8605674·...·]-7">}</span><span·class="p">,</span><span·class="w">
983 ········</span><span·class="p"·data-group-id="7508219035-9">{</span><span·class="s">&quot;telephoneNumber&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7508219035-10">[</span><span·class="s">&quot;545·555·00&quot;</span><span·class="p"·data-group-id="750821[·...·truncated·by·diffoscope;·len:·111,·SHA:·edd1cbab3ff321ae32b5be7dda8f6c11ceccf006d6cd2cf889b749aa117e6c39·...·]-2">]</span><span·class="w">983 ········</span><span·class="p"·data-group-id="5757840096-9">{</span><span·class="s">&quot;telephoneNumber&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5757840096-10">[</span><span·class="s">&quot;545·555·00&quot;</span><span·class="p"·data-group-id="575784[·...·truncated·by·diffoscope;·len:·111,·SHA:·1392374d4892dd0d8fc835071387128d1de8939dbb5f3eacda31bef75a9dde08·...·]-2">]</span><span·class="w">
984 ·····</span><span·class="p"·data-group-id="7508219035-1">)</span></code></pre>984 ·····</span><span·class="p"·data-group-id="5757840096-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="2443751203-1">(</span><span·class="s">&quot;Bar&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2443751203-2">[</span><span·class="p"·data-group-id="2443751203-3">{</span><span·class="ss">type</span><span·class="p[·...·truncated·by·diffoscope;·len:·456,·SHA:·72beab722ddcb65f40c5aec3ae982eebfd7934948e2f54d0d64c4dfec9ef744d·...·]3-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="0675802583-1">(</span><span·class="s">&quot;Bar&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0675802583-2">[</span><span·class="p"·data-group-id="0675802583-3">{</span><span·class="ss">type</span><span·class="p[·...·truncated·by·diffoscope;·len:·456,·SHA:·40191a32a1305fdca050926d41cf67b76678205e2e312249f0090190ed729eaf·...·]3-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="0223188797-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="0786621349-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="0223188797-2">[</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">mod_replace</span><span·class="p"·data-group-id="0223188797-3">(</span><span·class="s">&quot;telephoneNumber&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0223188797-4">[</span><span·class="s">&quot;555·555·00&quot;</span><span·class="p"·data-group-id="0223188797-4">]</span><span·class="p"·data-group-id="0223188797-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="0223188797-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:·9ba36a3e1280f176b0b3f8e8438e82679b2615ace6b30fb5dae89f4d6e6efde9·...·]>1515 ·········</span><span·class="p"·data-group-id="0786621349-2">[</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">mod_replace</span><span·class="p"·data-group-id="0786621349-3">(</span><span·class="s">&quot;telephoneNumber&quot;</s[·...·truncated·by·diffoscope;·len:·295,·SHA:·38bb9fb021286957b347f0816ad8c8abc6be38155e4f04af21d1ebffc2142a13·...·]>
 1516 »       ··</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">mod_add</span><span·class="p"·data-group-id="0786621349-5">(</span><span·class="s">&quot;description&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0786621349-6">[</span><span·class="s">&quot;LDAP·Hacker&quot;</span><span·class="p"·data-group-id="0786621349-6">]</span><span·class="p"·data-group-id="0786621349-5">)</span><span·class="w">·</span><span·class="p"·data-group-id="0786621349-2">]</span><span·class="p"·data-group-id="0786621349-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="8067993923-1">(</span><span·class="mi">50</span><span·class="p"·data-group-id="8067993923-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="2594798277-1">(</span><span·class="mi">50</span><span·class="p"·data-group-id="2594798277-1">)</span><span·class="p">,</span><span·class="w">
1838 </span><span·class="p"·data-group-id="8067993923-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="8067993923-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·727,·SHA:·5a207ae851c3017f48b780c591a4a494f327de58f3258a454a8a868fc2674cd4·...·]-3">)</span><span·class="p">,</span></code></pre>1838 </span><span·class="p"·data-group-id="2594798277-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="2594798277-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·727,·SHA:·b6b808d93a5ec6bff91525412fc195ffa77ed3049269a6251a1a2f5db5b63e14·...·]-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="7591378333-1">(</span><span·class="n">PageSize</span><span·class="p"·data-group-id="7591378333-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="6278707328-1">(</span><span·class="n">PageSize</span><span·class="p"·data-group-id="6278707328-1">)</span><span·class="p">,</span><span·class="w">
1873 </span><span·class="p"·data-group-id="7591378333-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="7591378333-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·729,·SHA:·bfaaedf2abe7bb594ceb749cfac2c17c90467e430128e92c25e983884ae860e5·...·]-3">)</span><span·class="p">,</span><span·class="w">1873 </span><span·class="p"·data-group-id="6278707328-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="6278707328-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·729,·SHA:·e5886201714ba122870888d0e975bacb0cf7d7be23b769f3623a39637066f846·...·]-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="7591378333-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="7591378333-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·222,·SHA:·6354ba514620949bd822739488f1033b0066ef4da26d6305f3a85bb83e794bb8·...·]-8">)</span><span·class="p">,</span><span·class="w">1875 </span><span·class="p"·data-group-id="6278707328-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="6278707328-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·222,·SHA:·db6014194113e4948773c44b474cbed15090e74bffb3cc0050fad05b7b705fb1·...·]-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="7591378333-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="7591378333-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="6278707328-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="6278707328-9">)</span><span·class="p">,</span><span·class="w">
1877 </span><span·class="p"·data-group-id="7591378333-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="7591378333-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·790,·SHA:·f15eff33ad9710c45ace3496f2bba2378d109c638689535c0fb2110f2907f42c·...·]-11">)</span><span·class="p">,</span><span·class="w">1877 </span><span·class="p"·data-group-id="6278707328-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="6278707328-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·790,·SHA:·3e7b16dc4feac8b8995a01a4670f6fd66822f3f8bbb535c158e32855a18b5f83·...·]-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="7588159245-1">(</span><span·class="s">&quot;cn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7588159245-2">[</span><span·class="p"·data-group-id="7588159245-3">{</span><span·class="ss">any</span><span·class="p">[·...·truncated·by·diffoscope;·len:·191,·SHA:·fa20930cdb4f1b9a169b1459d19fa8302395c47c71268cc2c4c0679c5df80873·...·]-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="8667538628-1">(</span><span·class="s">&quot;cn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8667538628-2">[</span><span·class="p"·data-group-id="8667538628-3">{</span><span·class="ss">any</span><span·class="p">[·...·truncated·by·diffoscope;·len:·191,·SHA:·3990e45faf859dd9de5e0b6d64962113e192d526a9b6f64f5bad82df17a8a05a·...·]-1">)</span><span·class="p">,</span><span·class="w">
1998 ··</span><span·class="nf">search</span><span·class="p"·data-group-id="7588159245-4">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7588159245-5">[</span><span·class="p"·data-group-id="7588159245-6">{</span><span·class="ss">base</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·865,·SHA:·17ae24198a33589ce38929d5a08a97ed6360ce7fa36096fd6b28d9d16d90bafe·...·]-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="8667538628-4">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8667538628-5">[</span><span·class="p"·data-group-id="8667538628-6">{</span><span·class="ss">base</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·865,·SHA:·afb86c050e27abfffeba3bd536da5bbe88a5091a359c20f9294c783eba4341ff·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2238 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>504 <p>Copyright·©·1996-2024·<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.27 KB
./usr/share/doc/erlang-doc/html/lib/eldap-1.2.13/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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>136 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1028 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>876 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>205 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>430 <p>Copyright·©·1996-2024·<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="2797849215-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="2797849215-2">[</span><[·...·truncated·by·diffoscope;·len:·322,·SHA:·de25eb30229d018beeff6c4f9cfb388ea7c90880a84adde933e88023c024738f·...·]-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="7488991004-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="7488991004-2">[</span><[·...·truncated·by·diffoscope;·len:·322,·SHA:·fe9b14a6211b38acf69a293e3649dfb1a183d77aef668f394509f70a4dd427cb·...·]-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="2797849215-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="2797849215-5">[</spa[·...·truncated·by·diffoscope;·len:·343,·SHA:·2b93ec886798f59146caab9a4072ea0e26480bd435768f8abc39c50a15b17d5e·...·]-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="7488991004-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="7488991004-5">[</spa[·...·truncated·by·diffoscope;·len:·343,·SHA:·65326f9f14b361a38910d78dc477cf91d26ed6322af34a52f2a8a5197460915c·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>307 <p>Copyright·©·1996-2024·<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
53.1 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
44.6 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1808 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>136 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>213 <p>Copyright·©·1996-2024·<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
379 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
96.8 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
3.71 KB
OEBPS/content.opf
3.68 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>554 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1548 <p>Copyright·©·1996-2024·<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="9943216214-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="9943216214-1">)</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1129,·SHA:·96a227baecb2d502dad8160b315c823b10b33102e5c5f301cef930bf3eb45eaa·...·]4-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="5722778744-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="5722778744-1">)</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1129,·SHA:·fb1100d3586153710b2dc162e2637229195f50862232bf7e4ed7009b6ee6eec4·...·]4-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="9943216214-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="9943216214-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="5722778744-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="5722778744-7">)</span><span·class="gp·unselectable">
143 1&gt;·</span><span·class="p"·data-group-id="9943216214-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="9943216214-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·281,·SHA:·407c2abad4c812f94bf0020c89467f69c755043ec308d60b914ad229bb1505c6·...·]4-9">)</span><span·class="p">.</span><span·class="w">143 1&gt;·</span><span·class="p"·data-group-id="5722778744-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="5722778744-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·281,·SHA:·e487e94d5ec38e512e15cc04f280eac4d0ad769eee6227b0b68c2b4a6f4b598a·...·]4-9">)</span><span·class="p">.</span><span·class="w">
144 </span><span·class="p"·data-group-id="9943216214-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="9943216214-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="5722778744-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="5722778744-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="4426876814-1">(</span><span·class="n">Viewer</span><span·class="p"·data-group-id="4426876814-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="0184567101-1">(</span><span·class="n">Viewer</span><span·class="p"·data-group-id="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-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="4426876814-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="0184567101-9">)</span><span·class="p">.</span><span·class="w">
164 </span><span·class="p"·data-group-id="4426876814-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4426876814-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="0184567101-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0184567101-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="4426876814-11">}</span><span·class="p"·data-group-id="4426876814-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="0184567101-11">}</span><span·class="p"·data-group-id="0184567101-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="1620620648-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1620620648-2">(</span><span·class="p"·data-group-id="1620620648-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</[·...·truncated·by·diffoscope;·len:·540,·SHA:·cc25c19c6adc6415d87c2f271f6c2951179cf8769bac40e6b35c943519e379ea·...·]8-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="5065823878-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5065823878-2">(</span><span·class="p"·data-group-id="5065823878-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</[·...·truncated·by·diffoscope;·len:·540,·SHA:·014ab41166e3f4364c038cc50eb10802dce69453aba0fc643361bb7e299477f4·...·]8-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="1628918852-1">(</span><span·class="n">TraceData</span><span·class="p"·data-group-id="1628918852-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:·07264ab2b94b7799bea101ccbfed1fa318a98c4ecf7fec58eb8f8d4092a4262c·...·]-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="0291331337-1">(</span><span·class="n">TraceData</span><span·class="p"·data-group-id="0291331337-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:·0ada5eda196f708a8bb35aff06b0a51b402d0f96cb4aa66cdd6eb9d887e5e704·...·]-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="1628918852-3">(</span><span·class="p"·data-group-id="1628918852-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="0291331337-3">(</span><span·class="p"·data-group-id="0291331337-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="1628918852-4">{</span><span·class="p"·data-group-id="1628918852-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="0291331337-4">{</span><span·class="p"·data-group-id="0291331337-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="1628918852-5">{</span><span·class="p"·data-group-id="1628918852-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="0291331337-5">{</span><span·class="p"·data-group-id="0291331337-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="8828852386-1">(</span><span·class="n">E</span><span·class="p"·data-group-id="8828852386-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="8828852386-2">(</s[·...·truncated·by·diffoscope;·len:·146,·SHA:·409634f2f28a44b573d942cd1bd83837065dda64bce6b1a075ec75b99afa9ea5·...·]-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="0308500903-1">(</span><span·class="n">E</span><span·class="p"·data-group-id="0308500903-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="0308500903-2">(</s[·...·truncated·by·diffoscope;·len:·146,·SHA:·adf7adfc8486b6146f5f024cee1de91591c295efe29bb78ebec16ea30270ebfd·...·]-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="8828852386-3">(</span><span·class="n">A</span><span·class="p"·data-group-id="8828852386-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="0308500903-3">(</span><span·class="n">A</span><span·class="p"·data-group-id="0308500903-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="8828852386-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="8828852386-5">{</span><span·class="ss">from</span>[·...·truncated·by·diffoscope;·len:·323,·SHA:·d3532e7910f7f2bfed51f786b3c92db8bef7ce05706623b13b2c6553c7a4316d·...·]-6">)</span><span·class="p">,</span><span·class="w">223 ····</span><span·class="p"·data-group-id="0308500903-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="0308500903-5">{</span><span·class="ss">from</span>[·...·truncated·by·diffoscope;·len:·323,·SHA:·d88984ece442430b774ce32808d60609e4df7d722b119557a19be9096c21560b·...·]-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="8828852386-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="8828852386-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="0308500903-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="0308500903-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="8828852386-8">[</span><span·class="p"·data-group-id="8828852386-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:·ad1eca9ac8fcc9f7795f0e13a6606859af82bb838a1cd071ff8fed5d9e228cf6·...·]-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="0308500903-8">[</span><span·class="p"·data-group-id="0308500903-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:·88b82d0060c344cde2d6449863ec303729da2aafbf6c59a3b4b7b31e8c223b3b·...·]-9">}</span><span·class="p">,</span><span·class="w">
226 ·······························</span><span·class="p"·data-group-id="8828852386-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:·b7bd9ce0a83abfe871d8a13bb675386559feefbaad90aa783a85aae82de0583e·...·]-10">}</span><span·class="p">,</span><span·class="w">226 ·······························</span><span·class="p"·data-group-id="0308500903-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:·699b31603dd577b4c03c48a3e95ba5c98764e9a7142c2689f647b0058a39bdea·...·]-10">}</span><span·class="p">,</span><span·class="w">
227 ·······························</span><span·class="p"·data-group-id="8828852386-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:·3265b3e78829093e01fb61d44ffeefab187ac3e4d1acc5a7382aee7118cad345·...·]-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="0308500903-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:·2d26cda19bd9895f5f206f6d0b95af0d2c7a90ff61bb746edf8c7f5985c9094c·...·]-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="8819534688-3">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8819534688-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:·5a626b5f08647bf117f712676fe76c7d8ebb4c3b6c2b4125d0c80a417851a596·...·]-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="1159781360-3">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1159781360-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:·c623a91fcbecec7d3037034e24a2eafd3f3cc1b8e320567e5658b484e803cf10·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>424 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>216 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>430 <p>Copyright·©·1996-2024·<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="9583202940-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="9583202940-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·489,·SHA:·c82e4cc2f15879e0b9894a1e86bb818fb4e803cf3ba567ea5ad70770e12fd9b1·...·]-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="5664520012-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="5664520012-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·489,·SHA:·40f93f938e8a5ee8c679f5f101365bdd83a5d24a8bda7ac886b1768b590328cf·...·]-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="9583202940-5">(</span><span·class="n">ViewerPid</span><span·class="p"·data-group-id="9583202940-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="5664520012-5">(</span><span·class="n">ViewerPid</span><span·class="p"·data-group-id="5664520012-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="5844159707-1">(</span><span·class="ss">et_display_demo</span><span·class="p"·data-group-id="5844159707-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="7072253357-1">(</span><span·class="ss">et_display_demo</span><span·class="p"·data-group-id="7072253357-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="5844159707-2">(</span><span·class="p"·data-group-id="5844159707-3">[</span><span·class="ss">test</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="5844159707-3">]</span><span·class="p"·data-group-id="5844159707-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="7072253357-2">(</span><span·class="p"·data-group-id="7072253357-3">[</span><span·class="ss">test</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7072253357-3">]</span><span·class="p"·data-group-id="7072253357-2">)</span><span·class="p">.</span><span·class="w">
  
150 </span><span·class="nf">test</span><span·class="p"·data-group-id="5844159707-4">(</span><span·class="p"·data-group-id="5844159707-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="7072253357-4">(</span><span·class="p"·data-group-id="7072253357-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
151 ····</span><span·class="p"·data-group-id="5844159707-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="5844159707-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·723,·SHA:·72253910622ffe014e9b0d38194c4b40f8a42c0f8ca3fe3a7c1fba808f0e3a1d·...·]7-6">)</span><span·class="p">,</span><span·class="w">151 ····</span><span·class="p"·data-group-id="7072253357-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="7072253357-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·723,·SHA:·e83d99565069cdeef278af581feeecf31d396c17b1ce0fe4f89e6c724f20f0ec·...·]7-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="5844159707-10">{</span><span·class="ss">drink</span><span·class="p">,</span><span·class="ss">iced_chai_latte</span><span·class="p"·data-group-id="5844159707-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="7072253357-10">{</span><span·class="ss">drink</span><span·class="p">,</span><span·class="ss">iced_chai_latte</span><span·class="p"·data-group-id="7072253357-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="5844159707-11">{</span><span·class="nb">size</span><span·class="p">,</span><span·class="ss">grande</span><span·class="p"·data-group-id="5844159707-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="7072253357-11">{</span><span·class="nb">size</span><span·class="p">,</span><span·class="ss">grande</span><span·class="p"·data-group-id="7072253357-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="5844159707-12">{</span><span·class="ss">milk</span><span·class="p">,</span><span·class="ss">whole</span><span·class="p"·data-group-id="5844159707-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="7072253357-12">{</span><span·class="ss">milk</span><span·class="p">,</span><span·class="ss">whole</span><span·class="p"·data-group-id="7072253357-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="5844159707-13">{</span><span·class="ss">flavor</span><span·class="p">,</span><span·class="ss">vanilla</span><span·class="p"·data-group-id="5844159707-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="7072253357-13">{</span><span·class="ss">flavor</span><span·class="p">,</span><span·class="ss">vanilla</span><span·class="p"·data-group-id="7072253357-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="5844159707-14">(</span><span·class="n">Viewer</span><span·class="p"·data-group-id="5844159707-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="7072253357-14">(</span><span·class="n">Viewer</span><span·class="p"·data-group-id="7072253357-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="5844159707-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:·368,·SHA:·5ae60a6b74ce0c0f335e15ebebe756386adf4362d89a721e4540178563bfb664·...·]7-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="7072253357-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:·368,·SHA:·be7a664594c2d312bb36fd484c46c348171232eac0ca929fd38bbf9ee9f0f4db·...·]7-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="5844159707-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:·317,·SHA:·3be415fb49fa6ccfbefeb483cae184ebfd39abc5bdee6cf97aad01e2ea398f1c·...·]7-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="7072253357-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:·317,·SHA:·b1699137a3950d4d68f401428577e16454390a006830460fbd88c450858b0391·...·]7-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="5844159707-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:·113,·SHA:·f947dae4edf7ecf78f0eb7c1cc45e47f1a6081af2b03f9dd0cb3b550ea9ab6f0·...·]7-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="7072253357-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:·113,·SHA:·fc8a139df4e7fa336685478444c798bd08eeca8b0cd913b32d73afb5d070608a·...·]7-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="5844159707-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:·261,·SHA:·be7def64c3535643b5820e42a465ab3575463e6d1ccbda1ba807bcc582ce665b·...·]7-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="7072253357-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:·261,·SHA:·47870fd08b8ceebbab5efec8047d280413c3af921b1de9d3dccf83bd48ed2903·...·]7-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="5844159707-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:·183,·SHA:·f9489b7215778b1f489be5b809a806a2378a717b83a62bc9f6fd342b2614f6e4·...·]7-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="7072253357-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:·183,·SHA:·8097d7c47a254e12690396746f1467201d02b6b789b4fca2e1db8eaf19865c0d·...·]7-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="5844159707-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:·116,·SHA:·235d6383ff07636670974a5401d841a171f5beb2226df9d9784fb894b54a32a9·...·]7-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="7072253357-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:·116,·SHA:·2934e9845e61a643332b1b3e4458336232edc22c141e9650bfaaf5de50e3b3fa·...·]7-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="5844159707-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:·112,·SHA:·2fc222a195c4daefbbe51cba8ca2eb3a3da032c32ba225f9fa29b5c3e9aefd6d·...·]7-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="7072253357-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:·112,·SHA:·04158b98531ad635e61a1223c1907be18108e4d835e44d27299967e399209847·...·]7-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="5844159707-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:·187,·SHA:·ed5b94ea5bfbba1690bb0a399ce36ffa55d6e9f765640e21effa768fb5135ad8·...·]7-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="7072253357-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:·187,·SHA:·147c7444f8274b1fcc917a2a2771aaf36312d0338b81b711d0cf9c30c14149c8·...·]7-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="5844159707-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:·214,·SHA:·3336c83de892f95ac9d3b0ecb67a55c4ffa4122d6d53799050f0f3dfde4f06d1·...·]7-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="7072253357-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:·214,·SHA:·e27411486ee443fec7d26245b6f6ead631d04e30da3e62391eae2218badb1934·...·]7-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="5844159707-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:·210,·SHA:·46fc230d8064b9e081e8ceb6b6576da012961583c0c99a536266785878579b52·...·]7-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="7072253357-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:·210,·SHA:·c7ac17a7ddddaaf11d1387851164648736d87c57552bb2b95d7b436ccc9b13e2·...·]7-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="5844159707-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:·182,·SHA:·788b9b07133a0143389f0f4f6708f2a992da8fd7da7342b7abed61bb607de83a·...·]7-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="7072253357-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:·182,·SHA:·ae8610cc1db68986b0ef24492cd0c90bce10cc631c93f4442a5a03e2bf879921·...·]7-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="5844159707-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:·180,·SHA:·edd1d1c25e2383135c0c4e21d7abb50ba012b93868911379ea598bd4d6da8dd8·...·]7-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="7072253357-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:·180,·SHA:·131fc94529e843d1f107a190ef57e6e3bfbfd702baf54cbc042fae7c78bdeb9e·...·]7-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="5844159707-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:·272,·SHA:·77864eaba11c6b64f74994de15340ae8f1fe8db2f703c5d2643152b5f2701e35·...·]7-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="7072253357-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:·272,·SHA:·c0d53f5bd5c7ee1ff060682327acf8f1070a0a8ea6e4ff063e33979153ea0cdb·...·]7-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="8296249637-1">(</span><span·class="p"·data-group-id="8296249637-2">[</span><span·class="p"·data-group-id="8296249637-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:·657878119e08ab291b33c004116c460d60c42c86d72f57c5c9f69ac35eff0342·...·]-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="7242307639-1">(</span><span·class="p"·data-group-id="7242307639-2">[</span><span·class="p"·data-group-id="7242307639-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:·6c15c714edf44c6a9d3fd20be7614e4445b4fe9cf39d2d913fda552face15007·...·]-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="0952507011-1">(</span><span·class="ss">et_trace_demo</span><span·class="p"·data-group-id="0952507011-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="2332034806-1">(</span><span·class="ss">et_trace_demo</span><span·class="p"·data-group-id="2332034806-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="0952507011-2">(</span><span·class="p"·data-group-id="0952507011-3">[</span><span·class="ss">test</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0952507011-3">]</span><span·class="p"·data-group-id="0952507011-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="2332034806-2">(</span><span·class="p"·data-group-id="2332034806-3">[</span><span·class="ss">test</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="2332034806-3">]</span><span·class="p"·data-group-id="2332034806-2">)</span><span·class="p">.</span><span·class="w">
  
261 </span><span·class="nf">test</span><span·class="p"·data-group-id="0952507011-4">(</span><span·class="p"·data-group-id="0952507011-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="2332034806-4">(</span><span·class="p"·data-group-id="2332034806-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="0952507011-5">(</span><span·class="p"·data-group-id="0952507011-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="2332034806-5">(</span><span·class="p"·data-group-id="2332034806-6">[</span><span·class="w">
263 ········</span><span·class="p"·data-group-id="0952507011-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="0952507011-7">}</span><span·class="p">,</span><span·class="w">263 ········</span><span·class="p"·data-group-id="2332034806-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="2332034806-7">}</span><span·class="p">,</span><span·class="w">
264 ········</span><span·class="p"·data-group-id="0952507011-8">{</span><span·class="ss">trace_global</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="0952507011-8">}</span><span·class="p">,</span><span·class="w">264 ········</span><span·class="p"·data-group-id="2332034806-8">{</span><span·class="ss">trace_global</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="2332034806-8">}</span><span·class="p">,</span><span·class="w">
265 ········</span><span·class="p"·data-group-id="0952507011-9">{</span><span·class="nb">trace_pattern</span><span·class="p">,</span><span·class="p"·data-group-id="0952507011-10">{</span><span·class="ss">et</span><span·class="p">,</span><span·class="ss">max</span><span·class="p"·data-group-id="0952507011-[·...·truncated·by·diffoscope;·len:·53,·SHA:·7dde08da0f61e2a05b9bd2e51a2ba704225543f677b346ea0678786beaa15286·...·]-9">}</span><span·class="p">,</span><span·class="w">265 ········</span><span·class="p"·data-group-id="2332034806-9">{</span><span·class="nb">trace_pattern</span><span·class="p">,</span><span·class="p"·data-group-id="2332034806-10">{</span><span·class="ss">et</span><span·class="p">,</span><span·class="ss">max</span><span·class="p"·data-group-id="2332034806-[·...·truncated·by·diffoscope;·len:·53,·SHA:·5f52d2866edb065bf6ece34ecbb237080de59693929a9cffaf09e372e9c57d78·...·]-9">}</span><span·class="p">,</span><span·class="w">
266 ········</span><span·class="p"·data-group-id="0952507011-11">{</span><span·class="ss">max_actors</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="0952507011-11">}</span><span·class="w">266 ········</span><span·class="p"·data-group-id="2332034806-11">{</span><span·class="ss">max_actors</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="2332034806-11">}</span><span·class="w">
267 ······</span><span·class="p"·data-group-id="0952507011-6">]</span><span·class="p"·data-group-id="0952507011-5">)</span><span·class="p">,</span><span·class="w">267 ······</span><span·class="p"·data-group-id="2332034806-6">]</span><span·class="p"·data-group-id="2332034806-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="0952507011-12">{</span><span·class="ss">drink</span><span·class="p">,</span><span·class="ss">iced_chai_latte</span><span·class="p"·data-group-id="0952507011-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="2332034806-12">{</span><span·class="ss">drink</span><span·class="p">,</span><span·class="ss">iced_chai_latte</span><span·class="p"·data-group-id="2332034806-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="0952507011-13">{</span><span·class="nb">size</span><span·class="p">,</span><span·class="ss">grande</span><span·class="p"·data-group-id="0952507011-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="2332034806-13">{</span><span·class="nb">size</span><span·class="p">,</span><span·class="ss">grande</span><span·class="p"·data-group-id="2332034806-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="0952507011-14">{</span><span·class="ss">milk</span><span·class="p">,</span><span·class="ss">whole</span><span·class="p"·data-group-id="0952507011-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="2332034806-14">{</span><span·class="ss">milk</span><span·class="p">,</span><span·class="ss">whole</span><span·class="p"·data-group-id="2332034806-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="0952507011-15">{</span><span·class="ss">flavor</span><span·class="p">,</span><span·class="ss">vanilla</span><span·class="p"·data-group-id="0952507011-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="2332034806-15">{</span><span·class="ss">flavor</span><span·class="p">,</span><span·class="ss">vanilla</span><span·class="p"·data-group-id="2332034806-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="0952507011-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:·df55d1739920490d7eb216e00e9515505d1f3aa251686512e0a91c9007e9b2bb·...·]-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="2332034806-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:·181e37465e0b1279501fc842f544586ab22a6d92b0fe923a1843556e613160b6·...·]-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="0952507011-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:·e0d5c1d686cffdad88119c9897c330964d9b58766f938805323b05ac296f7eb3·...·]-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="2332034806-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:·3a7a1cdf4835c3adde57719c963f7d61a6209c472843fc0863b28cadb10abab4·...·]-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="0952507011-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:·2c8bef55aa3a27941f64fe4648beaea07178ffd872315c951b64dc1443e959d9·...·]-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="2332034806-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:·07467138cf15c514c84c064f562e4331c32d1f084f29e793bfc98f51bca1520f·...·]-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="0952507011-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:·ec8815010a7238fae028f9dc207a313f7a888ca4f37b0fac9d2dd4db13e8073a·...·]-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="2332034806-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:·3c7e7d1af00c448f340f287cc6097a5c6331c9f5447abb5b69d5626a1dd889cf·...·]-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="0952507011-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:·596d698e6a1f8f45fe0e6795121c18a94ac667a35843c7cadca225668e203f65·...·]-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="2332034806-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:·161c62a7240578d3b43c16cf8c14b5028b87f1cf8ad6293815af1939944dfdf0·...·]-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="0952507011-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:·f9d6c4fe1c87ad85e98a35f9cc3b94a7c3a0edc82a18ee1f86df34c00722487e·...·]-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="2332034806-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:·91c5a7e7dea82c59c80caf5ffd4ea5be57474811e6fad59689ae7e5b9f0750fc·...·]-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="0952507011-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:·9ce028a1ba5f533c5c43d3a3bec1d34241ca09545266c349e979518f381abc2b·...·]-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="2332034806-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:·34f47a24b99ac68537e48f6f67447b72a0fda0209d8d9945bbc94f671653e893·...·]-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="0952507011-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:·ca0a3225f3861521cb767e951dd258dbcdf1362ac635d18cbe2a69d28beec2c4·...·]-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="2332034806-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:·f805292b94611a6134e29a17dee117bb7240db5b52feb4be2e22da2722b356c7·...·]-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="0952507011-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:·339155fb7b46c2bcb91a9e8041dce8cbf80f0f456541ae4d10c7e22dc9b35e46·...·]-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="2332034806-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:·0796f34b9f4f20347df2944412a1f75b5c988d6257ffe2d8ac29f4eaa1e621e2·...·]-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="0952507011-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:·c7bd7e4b7bc8ba736d6f64b4602b3e9308895c67de562b4ca9e32a47be3b5f9f·...·]-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="2332034806-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:·3f92fb0b7378664899663b88774a8f638b29a47f2d704670079fc6a3966d1430·...·]-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="0952507011-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:·135,·SHA:·f7c1407af6ea74aa72c08857eca797f53dcc253a889166a02b4822174055fbd1·...·]-33">)</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="2332034806-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:·135,·SHA:·c15d1d1dea5d27a476a2c9b1379cce76c58a443afaa7660578db6babfd6bcc5c·...·]-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="0952507011-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:·133,·SHA:·67b5bef150da21b25bc574c3aae68ec07686c3b3c10f733507d78d7c31a3b3bd·...·]-35">)</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="2332034806-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:·133,·SHA:·2a76d3f2e8dfd9b9eb15e1ab1629236e763520cf152792646fbe4956f266c739·...·]-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="0952507011-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:·7ea0049dd245640b5d1a0fb49ce77d1945d4007486a0743fbc212529202a2a4b·...·]-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="2332034806-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:·5b63fc726e0ab43136889c8678ec6898f78955399e7c2be8f9e0919fa10422b3·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>338 <p>Copyright·©·1996-2024·<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·()·{
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>571 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>551 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v1.7.13 v1.7.1
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·et[q···················]6 Search·documentation·of·et[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
609 B
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/.build
    
Offset 15, 14 lines modifiedOffset 15, 14 lines modified
15 dist/lato-latin-300-normal-YUMVEFOL.woff215 dist/lato-latin-300-normal-YUMVEFOL.woff2
16 dist/lato-latin-400-normal-W7754I4D.woff216 dist/lato-latin-400-normal-W7754I4D.woff2
17 dist/lato-latin-700-normal-2XVSBPG4.woff217 dist/lato-latin-700-normal-2XVSBPG4.woff2
18 dist/lato-latin-ext-300-normal-VPGGJKJL.woff218 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
19 dist/lato-latin-ext-400-normal-N27NCBWW.woff219 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
20 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff220 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
21 dist/remixicon-NKANDIL5.woff221 dist/remixicon-NKANDIL5.woff2
22 dist/search_data-DB37E87B.js22 dist/search_data-81BBEE61.js
23 dist/sidebar_items-3A2D003A.js23 dist/sidebar_items-3A2D003A.js
24 eunit.html24 eunit.html
25 eunit_surefire.html25 eunit_surefire.html
26 index.html26 index.html
27 notes.html27 notes.html
28 search.html28 search.html
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>196 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>795 <p>Copyright·©·1996-2024·<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
22.5 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/eunit.epub
2.11 KB
zipinfo {}
Max HTML report size reached
19.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>351 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>159 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>774 <p>Copyright·©·1996-2024·<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.75 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.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-DB37E87B.js"></script>124 <script·src="dist/search_data-81BBEE61.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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
618 B
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.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-F6750343.js21 dist/search_data-73EEAED9.js
22 dist/sidebar_items-EF3B4869.js22 dist/sidebar_items-EF3B4869.js
23 ftp.html23 ftp.html
24 ftp_client.html24 ftp_client.html
25 index.html25 index.html
26 introduction.html26 introduction.html
27 notes.html27 notes.html
28 search.html28 search.html
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2024·<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
56.5 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/ftp.epub
2.22 KB
zipinfo {}
Max HTML report size reached
40.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1804 <p>Copyright·©·1996-2024·<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="8737699752-1">(</span><span·class="p"·data-group-id="8737699752-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="4883134020-1">(</span><span·class="p"·data-group-id="4883134020-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="8737699752-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="8737699752-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·497,·SHA:·45af010cf156fa6c176dc985c5ff55998954899450e3e58d0fb41c3646032cb2·...·]-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="4883134020-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="4883134020-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·497,·SHA:·739e5401ef2f985dadb64cb2b2ce127dfb980342f638bdad9395953da977b8fd·...·]-3">)</span><span·class="p">.</span><span·class="w">
143 ······</span><span·class="p"·data-group-id="8737699752-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="8737699752-6">}</span><span·class="w">143 ······</span><span·class="p"·data-group-id="4883134020-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="4883134020-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="8737699752-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:·9fb17df5ba3d8c3e0733f0579c7bd8567118799214e4a1e169ad61cea9e11034·...·]-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="4883134020-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:·c44156c33e14d927709b26917717703ef45304b7ead042eef9fa6a9fd01614c7·...·]-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="8737699752-8">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="8737699752-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="4883134020-8">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="4883134020-8">)</span><span·class="p">.</span><span·class="w">
147 ······</span><span·class="p"·data-group-id="8737699752-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="8737699752-9">}</span><span·class="w">147 ······</span><span·class="p"·data-group-id="4883134020-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="4883134020-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="8737699752-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="8737699752-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="4883134020-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="4883134020-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="8737699752-11">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="8737699752-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="4883134020-11">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="4883134020-11">)</span><span·class="p">.</span><span·class="w">
151 ······</span><span·class="p"·data-group-id="8737699752-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="8737699752-12">}</span><span·class="p">.</span><span·class="w">151 ······</span><span·class="p"·data-group-id="4883134020-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="4883134020-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="8737699752-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="8737699752-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="4883134020-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="4883134020-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="8737699752-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="8737699752-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="4883134020-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="4883134020-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="8737699752-15">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="8737699752-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="4883134020-15">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="4883134020-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="8737699752-16">(</span><span·class="p"·data-group-id="8737699752-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="4883134020-16">(</span><span·class="p"·data-group-id="4883134020-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>203 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>433 <p>Copyright·©·1996-2024·<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.74 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.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-F6750343.js"></script>124 <script·src="dist/search_data-73EEAED9.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v1.2.23 v1.2.2
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·ftp[q···················]6 Search·documentation·of·ftp[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>278 <p>Copyright·©·1996-2024·<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="3080599724-1">[</span><span·class="p"·data-group-id="3080599724-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3080599724-3">[</span><span·class="p"·data-group-id="3080599724-4">{</spa[·...·truncated·by·diffoscope;·len:·606,·SHA:·46ecb41834ef213111619caceeeb0a86ab3cd3bf30d9ebc8d92e369580dbc50d·...·]-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="2867666922-1">[</span><span·class="p"·data-group-id="2867666922-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2867666922-3">[</span><span·class="p"·data-group-id="2867666922-4">{</spa[·...·truncated·by·diffoscope;·len:·606,·SHA:·77c5da1f095031affda139505d343b41d7b4a84dddd710a7bf5cb5018cc3ed63·...·]-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="1840143824-1">(</span><span·class="p"·data-group-id="1840143824-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="8889816542-1">(</span><span·class="p"·data-group-id="8889816542-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="1129811511-1">(</span><span·class="p"·data-group-id="1129811511-2">[</span><span·class="p"·data-group-id="1129811511-3">{</span><span·class="ss">proxy</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1129811511-4">{</spa[·...·truncated·by·diffoscope;·len:·229,·SHA:·1cba4223d08c12da7cd573fff67a390e1f098cdb5ab342fa7b6831036cdff08e·...·]1-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="2126005981-1">(</span><span·class="p"·data-group-id="2126005981-2">[</span><span·class="p"·data-group-id="2126005981-3">{</span><span·class="ss">proxy</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2126005981-4">{</spa[·...·truncated·by·diffoscope;·len:·229,·SHA:·55b22fa2781583998e697eb832040ec48daf9c703bbdc2793cc47fe57af73715·...·]1-5">}</span><span·class="p">,</span><span·class="w">
151 </span><span·class="p"·data-group-id="1129811511-6">[</span><span·class="s">&quot;localhost&quot;</span><span·class="p"·data-group-id="1129811511-6">]</span><span·class="p"·data-group-id="1129811511-4">}</span><span·class="p"·data-group-id="1129811511-3">}</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·62,·SHA:·54970309eaa97e841747bac750325db08f545e015f8818a5a565aa7b841456ce·...·]1-1">)</span><span·class="p">.</span><span·class="w">151 </span><span·class="p"·data-group-id="2126005981-6">[</span><span·class="s">&quot;localhost&quot;</span><span·class="p"·data-group-id="2126005981-6">]</span><span·class="p"·data-group-id="2126005981-4">}</span><span·class="p"·data-group-id="2126005981-3">}</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·62,·SHA:·192281946da649383ebdeb95bbf87a6431d7294df0c8f34e1d40b82ac8ce9760·...·]1-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="4647522105-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4647522105-2">{</span><span·class="p"·data-group-id="4647522105-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="4647522105-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="4647522105-2">}</span><span·class="p"·data-group-id="4647522105-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="4647522105-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4647522105-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="4647522105-6">[</span><span·class="p"·data-group-id="4647522105-6">]</span><span·class="p"·data-group-id="4647522105-5">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4647522105-7">[</span><span·class="p"·data-group-id="4647522105-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4647522105-8">[</span><span·class="p"·data-group-id="4647522105-8">]</span><span·class="p"·data-group-id="4647522105-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="0489880467-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:·accab1101c5b72fcaa497d90edeef2207c5662f5b2c477ecf0153a7d7188a8a8·...·]-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="3806407334-1">{</span><span·clas[·...·truncated·by·diffoscope;·len:·658,·SHA:·43ed9a3d099b56d52cf1ba6226f4ebf077fb9e3af2b20ad12f97d9b0b4888978·...·]-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="3806407334-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3806407334-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="3806407334-6">[</span><span·class="p"·data-group-id="3806407334-6">]</span><span·class="p"·data-group-id="3806407334-5">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3806407334-7">[</span><span·class="p"·data-group-id="3806407334-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3806407334-8">[</span><span·class="p"·data-group-id="3806407334-8">]</span><span·class="p"·data-group-id="3806407334-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="7459756356-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7459756356-2">{</span><span·class="p"·data-group-id="7459756356-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="7459756356-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="7459756356-2">}</span><span·class="p"·data-group-id="7459756356-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="0489880467-4">(</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p"·data-group-id="0489880467-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:·46d11d68172d5e65b335fa188d15fcc592b504847f93094e73fe2a4dc5dce3b5·...·]-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="7459756356-4">(</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p"·data-group-id="7459756356-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:·6885bfc77288bdfa0e2a5c575d0870b3e315687b7b66eae785c3871d31adc1c7·...·]-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="4304268068-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4304268068-5">{</span><span·class="s">&quot;https://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·1321,·SHA:·27f3d8189aa84c51178e05ea5d84079b6cb913e88b0144f4b49438f9a3f97d56·...·]-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="5553044429-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5553044429-5">{</span><span·class="s">&quot;https://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·1321,·SHA:·21fda02afecac5d71f6142ea7f9eb9f0a74227c559d2cfcbf9a27fe2dac9da30·...·]-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="8322785456-2">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8322785456-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:·717,·SHA:·e4cbb6cc17878851221294aac7f618accef9d73612b98ffd473fe4598a848a2d·...·]-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·is157 </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="5849223212-2">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5849223212-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:·717,·SHA:·fdc17ad786c045a1ec2679186c3dd1e217ac16a2775d3bec0deb23e7a5b8d27c·...·]-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="2821096729-1">{</span><span·class="ss">http</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2821096729-2">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</s[·...·truncated·by·diffoscope;·len:·97,·SHA:·26c005936bcda8c8cef80a1c9830631d84ce5c01e10627c2f213e2823c44835c·...·]9-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="5161658359-1">{</span><span·class="ss">http</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5161658359-2">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</s[·...·truncated·by·diffoscope;·len:·97,·SHA:·6024f2b32d70e5b6df2dc8797542807247a46171228f40d4fb633f6f73fb558b·...·]9-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="0456395744-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0456395744-2">{</span><span·class="p"·data-group-id="0456395744-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="0456395744-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="0456395744-2">}</span><span·class="p"·data-group-id="0456395744-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="0456395744-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0456395744-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="0456395744-6">[</span><span·class="p"·data-group-id="0456395744-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="0456395744-7">}</span><span·class="p"·data-group-id="0456395744-6">]</span><span·class="p"·data-group-id="0456395744-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="0456395744-8">[</span><span·class="p"·data-group-id="0456395744-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0456395744-9[·...·truncated·by·diffoscope;·len:·1167,·SHA:·84b03b1dce82557b8be50129e82bed7ebed87e92f6625593a0b0acadb57fec63·...·]">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="2013541707-1">{</span><span·class="ss">ok</sp[·...·truncated·by·diffoscope;·len:·731,·SHA:·20d2a5437703788f2186e2ced08e46a84aebab27491f8255d4093c00d1479950·...·]">
 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="2013541707-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2013541707-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="2013541707-6">[</span><span·class="p"·data-group-id="2013541707-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="2013541707-7">}</span><span·class="p"·data-group-id="2013541707-6">]</span><span·class="p"·data-group-id="2013541707-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="2013541707-8">[</span><span·class="p"·data-group-id="2013541707-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2013541707-9">[</span><span·class="p"·data-group-id="2013541707-9">]</span><span·class="p"·data-group-id="2013541707-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="5368804390-1">(</span><span·class="p"·data-group-id="5368804390-2">[</span><span·class="p"·data-group-id="5368804390-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="5368804390-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5368804390-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="5368804390-4">}</span><span·class="p"·data-group-id="5368804390-2">]</span><span·class="p"·data-group-id="5368804390-1">)</span><span·class="p">.</span><span·class="gp·unselectable">
162 10&gt;·</span><span·class="p"·data-group-id="7881349359-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7881349359-6">{</span><span·class="p"·data-group-id="7881349359-7">{</span><span·class="n">NewVersion</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·446,·SHA:·04fdf3a1f7fa34680663cecbee2c410925bc767cf93e889d80ec315294d1b1f5·...·]-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">162 10&gt;·</span><span·class="p"·data-group-id="5368804390-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5368804390-6">{</span><span·class="p"·data-group-id="5368804390-7">{</span><span·class="n">NewVersion</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·446,·SHA:·31df83d354229a62eb937f215ee60766ecc01237a038e83c30af4a3ae0b3d2ea·...·]-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="7881349359-8">(</span><span·class="nb">put</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7881349359-9">{</span><span·class="s">&quot;http:///v1/kv/foo&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7881349359-10">[</span><span·class="p"·data-group-id="7881349359-10">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7881349359-11">[</span><span·class="p"·data-group-id="7881349359-11">]</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;hello&quot;</span><span·class="p"·data-group-id="7881349359-9">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7881349359-12">[</span><span·class="p"·data-group-id="7881349359-12">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7881349359-13">[</span><span·class="p"·data-group-id="7881349359-13">]</span><span·class="p"·data-group-id="7881349359-8">)</span><span·class="p">.</span></code></pre><p>Start·an·HTTP·client·profile:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">10&gt;·</span><span·class="p"·data-group-id="9648023376-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="9648023376-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">inets</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="9648023376-2">(</span><span·class="ss">httpc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9648023376-3">[</span><span·class="p"·data-group-id="9648023376-4">{</span><span·class="ss">profile</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p"·data-group-id="9648023376-4">}</span><span·class="p"·data-group-id="9648023376-3">]</span><span·class="p"·data-group-id="9648023376-2">)</span><span·class="p">.</span><span·class="w"> 
164 </span><span·class="p"·data-group-id="9648023376-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="9648023376-5">}</span></code></pre><p>The·new·profile·has·no·proxy·settings,·so·the·connection·is·refused:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">11&gt;·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="4891892353-1">(</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p"·data-group-id="4891892353-1">)</span><span·class="p">.</span><span·class="w"> 
165 </span><span·class="p"·data-group-id="4891892353-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="4891892353-2">}</span></code></pre><p>Stop·the·HTTP·[·...·truncated·by·diffoscope;·len:·392,·SHA:·d9b78626cd118840906243d9526f2a76a1841b53abd71a4b00b8e470b2316afb·...·]">)</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="5368804390-8">(</span><span·class="nb">put</span><span·class=[·...·truncated·by·diffoscope;·len:·1975,·SHA:·9afe3bca190878abec70c9287b6852a1c6880ba9873af730c5fa4f6b6ce9aea8·...·]">)</span><span·class="p">.</span><span·class="w">
 164 </span><span·class="p"·data-group-id="8323144103-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="8323144103-5">}</span></code></pre><p>The·new·profile·has·no·proxy·settings,·so·the·connection·is·refused:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">11&gt;·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="1805507917-1">(</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p"·data-group-id="1805507917-1">)</span><span·class="p">.</span><span·class="w">
 165 </span><span·class="p"·data-group-id="1805507917-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="1805507917-2">}</span></code></pre><p>Stop·the·HTTP·client·profile:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">12&gt;·</span><span·class="nc">inets</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="5051801543-1">(</span><span·class="ss">httpc</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p"·data-group-id="5051801543-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="4615847449-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="4615847449-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="8820327001-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="8820327001-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>216 <p>Copyright·©·1996-2024·<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="6809778567-1">[</span><span·class="p"·data-group-id="6809778567-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6809778567-3">[</span><span·class="p"·data-group-id="6809778567-4">{</spa[·...·truncated·by·diffoscope;·len:·359,·SHA:·f5be0d26be33ff519023b903137e7976510a449fe7b8cf95e7631fdd48996f86·...·]-8">{</span><span·class="ss">proplist_file</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="8221751163-1">[</span><span·class="p"·data-group-id="8221751163-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8221751163-3">[</span><span·class="p"·data-group-id="8221751163-4">{</spa[·...·truncated·by·diffoscope;·len:·359,·SHA:·da1b1d7ceb1a6fe852be710fed8803b7da35ec77ae6ab38087027741e11a53b8·...·]-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="6809778567-8">}</span><span·class="p"·data-group-id="6809778567-7">]</span><span·class="p"·data-group-id="6809778567-6">}</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="8221751163-8">}</span><span·class="p"·data-group-id="8221751163-7">]</span><span·class="p"·data-group-id="8221751163-6">}</span><span·class="p">,</span><span·class="w">
146 ··········</span><span·class="p"·data-group-id="6809778567-9">{</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6809778567-10">[</span><span·class="p"·data-group-id="6809778567-11">{</span><span·class="ss">proplist_file</span><span·class="p">,</span><span·class="w">146 ··········</span><span·class="p"·data-group-id="8221751163-9">{</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8221751163-10">[</span><span·class="p"·data-group-id="8221751163-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="6809778567-11">}</span><span·class="p"·data-group-id="6809778567-10">]</span><span·class="p"·data-group-id="6809778567-9">}</span><span·class="p"·data-group-id="6809778567-5">]</span><span·class="p"·data-group-id="6809778567-4">}</span><span·class="p"·data-group-id="6809778567-3">]</span><span·class="p"·data-group-id="6809778567-2">}</span><span·class="p"·data-group-id="6809778567-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="6160029258-1">(</span><span·class="p"·data-group-id="6160029258-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6160029258-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="6160029258-3">(</span><span·class="p"·data-group-id="6160029258-3">)</span><span·class="p"·data-group-id="6160029258-2">}</span><span·class="w"> 
149 </span><span·class="nf">httpd</span><span·class="p"·data-group-id="6160029258-4">(</span><span·class="p"·data-group-id="6160029258-4">)</span><span·class="w">·········</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6160029258-5">[</span><span·class="nf">httpd_config</span><span·class="p"·data-group-id="6160029258-6">(</span><span·class="p"·data-group-id="6160029258-6">)</span><span·class="p"·data-group-id="6160029258-5">]</span><span·class="w"> 
150 </span><span·class="nf">httpd_config</span><span·class="p"·data-group-id="6160029258-7">(</span><span·class="p"·data-group-id="6160029258-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:·19986213f41f72181f14569d1eaffdd7e5ca34bee94417d1b6b9f303c0d8f65e·...·]147 ···········</span><span·class="s">&quot;/var/tmp/server_root/conf/8080_props.conf&quot;</span><span·class="p"·data-group-id="8221751163-11">}</span><span·class="p"·data-group-id="8221751163-10">]</span><span·class="p"·data-group-id="8221751163-9">}</span><[·...·truncated·by·diffoscope;·len:·377,·SHA:·3fa541b8ebc6769d66cb25039f0cbc7f228afaa906e643b91be969c6079f4a5a·...·]
 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="8830904226-1">(</span><span·class="p"·data-group-id="8830904226-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8830904226-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="8830904226-3">(</span><span·class="p"·data-group-id="8830904226-3">)</span><span·class="p"·data-group-id="8830904226-2">}</span><span·class="w">
 149 </span><span·class="nf">httpd</span><span·class="p"·data-group-id="8830904226-4">(</span><span·class="p"·data-group-id="8830904226-4">)</span><span·class="w">·········</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8830904226-5">[</span><span·class="nf">httpd_config</span><span·class="p"·data-group-id="8830904226-6">(</span><span·class="p"·data-group-id="8830904226-6">)</span><span·class="p"·data-group-id="8830904226-5">]</span><span·class="w">
 150 </span><span·class="nf">httpd_config</span><span·class="p"·data-group-id="8830904226-7">(</span><span·class="p"·data-group-id="8830904226-7">)</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8830904226-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="8830904226-9">(</span><span·class="p"·data-group-id="8830904226-9">)</span><span·class="p"·data-group-id="8830904226-8">}</span><span·class="w">
151 ···················</span><span·class="p"·data-group-id="6160029258-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="6160029258-11">(</span><span·class="p"·data-group-id="6160029258-11">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·8095c3994fa8a4e43395a7739940ababba1ed7de41c246ff5b8a29529e5b00f3·...·]-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">151 ···················</span><span·class="p"·data-group-id="8830904226-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="8830904226-11">(</span><span·class="p"·data-group-id="8830904226-11">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·b0d27771a870aac9661fea7f0c23e0116d6d4d8279607bc27f1e08c2335b58a9·...·]-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
152 ···················</span><span·class="p"·data-group-id="6160029258-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="6160029258-13">(</span><span·class="p"·data-group-id="6160029258-13">)</span><span·class="p"·data-group-id="6160029258-12">}</span><span·class="w"> 
153 </span><span·class="nf">debug</span><span·class="p"·data-group-id="6160029258-14">(</span><span·class="p"·data-group-id="6160029258-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:·4c0968e677644e333077bae1cc10d08955a42e6139d4b595a146fbedf5c3c365·...·]</span><span·class="w">152 ···················</span><span·class="p"·data-group-id="8830904226-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="8830904226-13">(</span><span[·...·truncated·by·diffoscope;·len:·96,·SHA:·476d9d162cbb14a28d8b6f729e4b37e92201d742e785fcdae519ba6c7a8963ad·...·]</span><span·class="w">
 153 </span><span·class="nf">debug</span><span·class="p"·data-group-id="8830904226-14">(</span><span·class="p"·data-group-id="8830904226-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="8830904226-15">[</span><span·class="nf">debug_options</span><span·class="p"·data-group-id="8830904226-16">(</span><span·class="p"·data-group-id="8830904226-16">)</span><span·class="p"·data-group-id="8830904226-15">]</span><span·class="w">
154 </span><span·class="nf">debug_options</span><span·class="p"·data-group-id="6160029258-17">(</span><span·class="p"·data-group-id="6160029258-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6160029258-18">{</span><span·class="ss">all_functions</span><span·class=[·...·truncated·by·diffoscope;·len:·216,·SHA:·0691719bbf6b29bc228b06f856c8e015f86b8757ec6f9fff5d0fbbf751d179ea·...·]-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="8830904226-17">(</span><span·class="p"·data-group-id="8830904226-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8830904226-18">{</span><span·class="ss">all_functions</span><span·class=[·...·truncated·by·diffoscope;·len:·216,·SHA:·16b5f8289ebe47047a3969d8ff1863401b3ec8e0376612fb2c4e64550e31a525·...·]-18">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
155 ···················</span><span·class="p"·data-group-id="6160029258-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="6160029258-21">(</span><span·class="p"·data-group-id="6160029258-21">)</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·f629f8342e54d8d62a05872621806d157221e4d480499d49d908dd318bdb1605·...·]-20">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">155 ···················</span><span·class="p"·data-group-id="8830904226-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="8830904226-21">(</span><span·class="p"·data-group-id="8830904226-21">)</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·8d6cd4110c74d9a972b479cefc5ab2cab01c8c47690e2f3a57ac97aff9732447·...·]-20">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
156 ···················</span><span·class="p"·data-group-id="6160029258-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="6160029258-23">(</span><span·class="p"·data-group-id="6160029258-23">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·36711de6673db889731cc0d7bdf4056b889c52eb0d50499c61610d6e660331c6·...·]-22">}</span><span·class="w">156 ···················</span><span·class="p"·data-group-id="8830904226-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="8830904226-23">(</span><span·class="p"·data-group-id="8830904226-23">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·1f7d09f1f64560919b48d84529b4b58594ef97b76de5c3d6715348e7f25f1bad·...·]-22">}</span><span·class="w">
157 </span><span·class="nf">modules</span><span·class="p"·data-group-id="6160029258-24">(</span><span·class="p"·data-group-id="6160029258-24">)</span><span·class="w">·······</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6160029258-25">[</span><span·class="nf">atom</span><span·class="p"[·...·truncated·by·diffoscope;·len:·134,·SHA:·b30a99be64d7a8d6ad287c9de429f2637d25b393f259ab1a2660e2a477fb1462·...·]-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="8830904226-24">(</span><span·class="p"·data-group-id="8830904226-24">)</span><span·class="w">·······</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8830904226-25">[</span><span·class="nf">atom</span><span·class="p"[·...·truncated·by·diffoscope;·len:·134,·SHA:·7ef78ac3145dccb1379eb6cd8a73754b2a1501a95951397fabf8a923c6fa4ea7·...·]-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="1949025824-1">(</span><span·class="p"·data-group-id="1949025824-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="8378120057-1">(</span><span·class="p"·data-group-id="8378120057-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="1716880397-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="1716880397-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·702,·SHA:·aee4b7a20ff31f3f422f9c06142ee71a21c3e30dc296a3fef41263fd02554703·...·]7-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="8880925147-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="8880925147-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·702,·SHA:·8fddfcaca303d54de09c44b84bc639f6f8adba499519d5f9dfbdfec94fc7a32a·...·]7-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="1716880397-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="1716880397-6">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·301,·SHA:·068ed9bf87a5f327f4abc78897484d6fe53e0b62b60b52da31cbde847479124d·...·]7-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="8880925147-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="8880925147-6">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·301,·SHA:·fc275f063f724b4cb23b78b0ca3c604d6fb1e9ce69a49a0277e52f400d489a56·...·]7-2">)</span><span·class="p">.</span><span·class="w">
171 </span><span·class="p"·data-group-id="1716880397-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="1716880397-8">}</span></code></pre><p>Call·<code·cla[·...·truncated·by·diffoscope;·len:·320,·SHA:·1ac22b475b96d1ad71d3ed394f80f29a3deffd265078ccde98009a46ac4ff6ec·...·]-1">)</span><span·class="p">.</span><span·class="w">171 </span><span·class="p"·data-group-id="8880925147-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="8880925147-8">}</span></code></pre><p>Call·<code·cla[·...·truncated·by·diffoscope;·len:·320,·SHA:·d02c53661e617ebee0e89cf4a83c5e33dedb44ee1579702ef5036a6969f16f76·...·]-1">)</span><span·class="p">.</span><span·class="w">
172 </span><span·class="p"·data-group-id="9689206546-2">[</span><span·class="p"·data-group-id="9689206546-3">{</span><span·class="ss">mime_types</span><span·class="p">,</span><span·class="p"·data-group-id="9689206546-4">[</span><span·class="p"·data-group-id="9689206546-5">{</span><span·class="s">&[·...·truncated·by·diffoscope;·len:·473,·SHA:·c94b2fd751da5757f363b07ebd7b6adbc1c4e5b826e707c0b42c2e584c01f82d·...·]-3">}</span><span·class="p">,</span><span·class="w">172 </span><span·class="p"·data-group-id="4689054344-2">[</span><span·class="p"·data-group-id="4689054344-3">{</span><span·class="ss">mime_types</span><span·class="p">,</span><span·class="p"·data-group-id="4689054344-4">[</span><span·class="p"·data-group-id="4689054344-5">{</span><span·class="s">&[·...·truncated·by·diffoscope;·len:·473,·SHA:·57a0961207283c0c3ed324d6af4c0f8892dd43175c8095c9fa970a102bd60513·...·]-3">}</span><span·class="p">,</span><span·class="w">
173 ·</span><span·class="p"·data-group-id="9689206546-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="9689206546-7">}</span><span·class="p">,</span><span·class="w">173 ·</span><span·class="p"·data-group-id="4689054344-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="4689054344-7">}</span><span·class="p">,</span><span·class="w">
174 ·</span><span·class="p"·data-group-id="9689206546-8">{</span><span·class="ss">bind_address</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9689206546-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:·a789ace5aebc51b56af2ea5b59eace301cabd8037b6a8fc2095418fd9a4d3bb9·...·]-8">}</span><span·class="p">,</span><span·class="w">174 ·</span><span·class="p"·data-group-id="4689054344-8">{</span><span·class="ss">bind_address</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4689054344-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:·d7b8e4dc5cb91d29523cf36ced9cf05f58c2fe42d598afd2e08ac6e4205f2ece·...·]-8">}</span><span·class="p">,</span><span·class="w">
175 ·</span><span·class="p"·data-group-id="9689206546-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="9689206546-10">}</span><span·class="p">,</span><span·class="w">175 ·</span><span·class="p"·data-group-id="4689054344-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="4689054344-10">}</span><span·class="p">,</span><span·class="w">
176 ·</span><span·class="p"·data-group-id="9689206546-11">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="mi">59408</span><span·class="p"·data-group-id="9689206546-11">}</span><span·class="p">,</span><span·class="w">176 ·</span><span·class="p"·data-group-id="4689054344-11">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="mi">59408</span><span·class="p"·data-group-id="4689054344-11">}</span><span·class="p">,</span><span·class="w">
177 ·</span><span·class="p"·data-group-id="9689206546-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="9689206546-12">}</span><span·class="p">,</span><span·class="w">177 ·</span><span·class="p"·data-group-id="4689054344-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="4689054344-12">}</span><span·class="p">,</span><span·class="w">
178 ·</span><span·class="p"·data-group-id="9689206546-13">{</span><span·class="ss">ipfamily</span><span·class="p">,</span><span·class="ss">inet</span><span·class="p"·data-group-id="9689206546-13">}</span><span·class="p"·data-group-id="9689206546-2">]</span></code></pre><p>Reload·the·configuration·w[·...·truncated·by·diffoscope;·len:·519,·SHA:·5d1e376294b250abb2be24fa0089413359f49049c578fd6b7a824ca1f63f716d·...·]-3">}</span><span·class="p">,</span><span·class="w">178 ·</span><span·class="p"·data-group-id="4689054344-13">{</span><span·class="ss">ipfamily</span><span·class="p">,</span><span·class="ss">inet</span><span·class="p"·data-group-id="4689054344-13">}</span><span·class="p"·data-group-id="4689054344-2">]</span></code></pre><p>Reload·the·configuration·w[·...·truncated·by·diffoscope;·len:·519,·SHA:·6f6b5078ce2a4ce9ceecfd8d921d972d832d272bdf22c819b89f8b91589890ce·...·]-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="8606206763-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="8606206763-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·184,·SHA:·d0b3dcf30e9e1afc14726f21a04af1f40f7608405cd5821a662eb01928ed4117·...·]-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="4275456546-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="4275456546-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·184,·SHA:·3b9299322189c4bfc2ff97128002e33f32fcaa1d72669ce57675f25be53ab410·...·]-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="8606206763-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="8606206763-6">}</span><span·class="p"·data-group-id="8606206763-2">]</span>[·...·truncated·by·diffoscope;·len:·127,·SHA:·d8d66332ac21474ed97347e29d2532fba2e011cc7488edfba958a697a32ffbff·...·]-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="4275456546-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="4275456546-6">}</span><span·class="p"·data-group-id="4275456546-2">]</span>[·...·truncated·by·diffoscope;·len:·127,·SHA:·e26629d462ea653abefe4dffa929a99ecbd3795e3a2df4a2c4939c86b0b211ef·...·]-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="9116468814-1">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9116468814-2">[</span><span·class="ss">server_root</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">document_root</span><span·class="p"·data-group-id="9116468814-2">]</span><span·class="p"·data-group-id="9116468814-1">)</span><span·class="p">.</span><span·class="w"> 
183 </span><span·class="p"·data-group-id="9116468814-3">[</span><span·class="p"·data-group-id="9116468814-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="91164[·...·truncated·by·diffoscope;·len:·1948,·SHA:·70f386491205291e314dffc1399f62974fa9ba102393946bc9b3d9a8fdaa95d8·...·]>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[·...·truncated·by·diffoscope;·len:·446,·SHA:·cf812c4f2875cdb720af06e672ebf877f8358ff0c2460248e09dcbbca70160d2·...·]>
 183 </span><span·class="p"·data-group-id="8342139211-3">[</span><span·class="p"·data-group-id="8342139211-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="8342139211-4">}</span><span·class="p">,</span><span·class="p"·data-group-id="8342139211-5">{</span><span·class="ss">document_root</span><span·class="p">,</span><span·class="s">&quot;/tmp/www_test/htdocs&quot;</span><span·class="p"·data-group-id="8342139211-5">}</span><span·class="p"·data-group-id="8342139211-3">]</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">6&gt;·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">inets</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="2473068972-1">(</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="2473068972-1">)</span><span·class="p">.</span></code></pre><p>Alternative:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">6&gt;·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">inets</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="1215725268-1">(</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1215725268-2">{</span><span·class="p"·data-group-id="1215725268-3">{</span><span·class="mi">127</span><span·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"·data-group-id="1215725268-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">59408</span><span·class="p"·data-group-id="1215725268-2">}</span><span·class="p"·data-group-id="1215725268-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="9460635317-1">(</span><span·class="ss">mnesia_test</span><span·class="p"·data-group-id="9460635317-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="9460635317-2">(</span><span·class="p"·data-group-id="9460635317-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class[·...·truncated·by·diffoscope;·len:·191,·SHA:·6771fcb2edf575cc827bace41487f0df9a961a206575e17c1a338c04a3ac9ee0·...·]">)</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="3392814486-1">(</span><span·class="ss">mnesia_test</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·27,·SHA:·8852fe69ac48c05d81a378dfee68ffff98cffe705cadfd2aeea79464fe3c3a78·...·]">)</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="3392814486-2">(</span><span·class="p"·data-group-id="3392814486-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="3392814486-3">]</span><span·class="p"·data-group-id="3392814486-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="9460635317-4">(</span><span·class="s">&quot;mod_auth.hrl&quot;</span><span·class="p"·data-group-id="9460635317-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="3392814486-4">(</span><span·class="s">&quot;mod_auth.hrl&quot;</span><span·class="p"·data-group-id="3392814486-4">)</span><span·class="p">.</span><span·class="w">
  
311 </span><span·class="nf">first_start</span><span·class="p"·data-group-id="9460635317-5">(</span><span·class="p"·data-group-id="9460635317-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="3392814486-5">(</span><span·class="p"·data-group-id="3392814486-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="9460635317-6">(</span><span·class="p"·data-group-id="9460635317-7">[</span><span·class="nf">node</span><span·class="p"·data-group-id="9460635317-8">(</span><span·class="p"·data-group-id="9460635317-8">)</span><span·class="p"·data-group-id="9460635317-7">]<[·...·truncated·by·diffoscope;·len:·47,·SHA:·a5f94a5453e50a6eca1c5fce063f5b788f997da6228fb8f483fc34b8263a537c·...·]-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="3392814486-6">(</span><span·class="p"·data-group-id="3392814486-7">[</span><span·class="nf">node</span><span·class="p"·data-group-id="3392814486-8">(</span><span·class="p"·data-group-id="3392814486-8">)</span><span·class="p"·data-group-id="3392814486-7">]<[·...·truncated·by·diffoscope;·len:·47,·SHA:·2838b7e139dea06d50b731e4d2dd0b97a39afab035ea0779240b34c0c3e9834a·...·]-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="9460635317-9">(</span><span·class="p"·data-group-id="9460635317-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="3392814486-9">(</span><span·class="p"·data-group-id="3392814486-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="9460635317-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="3392814486-10">(</span><span·class="ss">httpd_user</span><span·class="p">,</span><span·class="w">
315 ························</span><span·class="p"·data-group-id="9460635317-11">[</span><span·class="p"·data-group-id="9460635317-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="9460635317-12">}</span><span·class="p">,</span><span·class="w">315 ························</span><span·class="p"·data-group-id="3392814486-11">[</span><span·class="p"·data-group-id="3392814486-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="3392814486-12">}</span><span·class="p">,</span><span·class="w">
316 ·························</span><span·class="p"·data-group-id="9460635317-13">{</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9460635317-14">[</span><span·class="nf">node</span><span·class="p"·data-group-id="9460635317-15">(</span><span·class="p[·...·truncated·by·diffoscope;·len:·135,·SHA:·54d4cc67e1899008039437b4a038176af7a3ef38bb24790256bbc3fec3d86bbb·...·]-13">}</span><span·class="p">,</span><span·class="w">316 ·························</span><span·class="p"·data-group-id="3392814486-13">{</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3392814486-14">[</span><span·class="nf">node</span><span·class="p"·data-group-id="3392814486-15">(</span><span·class="p[·...·truncated·by·diffoscope;·len:·135,·SHA:·34bdac891832ac8eaf0f2c6b2d9d33ff9bc63672ac0a28b792015f64d0e73c9a·...·]-13">}</span><span·class="p">,</span><span·class="w">
317 ·························</span><span·class="p"·data-group-id="9460635317-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="9460635317-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="9460635317-17">)</span><span·class="p"·data-group-id="9460635317-16">}</span><span·class="p"·data-group-id="9460635317-11">]</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·19,·SHA:·9dffc46b7b96d17116ddbdd1bd28174361571efc4340e85097b58b04e744ec64·...·]</span><span·class="p">,</span><span·class="w">317 ·························</span><span·class="p"·data-group-id="3392814486-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="3392814486-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="3392814486-17">)</span><span·class="p"·data-group-id="3392814486-16">}</span><span·class="p"·data-group-id="3392814486-11">]</span><span·class="p"·data-group-id="3392814486-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="9460635317-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="3392814486-18">(</span><span·class="ss">httpd_group</span><span·class="p">,</span><span·class="w">
320 ························</span><span·class="p"·data-group-id="9460635317-19">[</span><span·class="p"·data-group-id="9460635317-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="9460635317-20">}</span><span·class="p">,</span><span·class="w">320 ························</span><span·class="p"·data-group-id="3392814486-19">[</span><span·class="p"·data-group-id="3392814486-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="3392814486-20">}</span><span·class="p">,</span><span·class="w">
321 ·························</span><span·class="p"·data-group-id="9460635317-21">{</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9460635317-22">[</span><span·class="nf">node</span><span·class="p"·data-group-id="9460635317-23">(</span><span·class="p[·...·truncated·by·diffoscope;·len:·135,·SHA:·1c13778368dfab0504c1bdb852c6a3f98bf00ddd77582e69f996e57b0fb55296·...·]-21">}</span><span·class="p">,</span><span·class="w">321 ·························</span><span·class="p"·data-group-id="3392814486-21">{</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3392814486-22">[</span><span·class="nf">node</span><span·class="p"·data-group-id="3392814486-23">(</span><span·class="p[·...·truncated·by·diffoscope;·len:·135,·SHA:·c6e9e49f7e50576886ccf885c4d06a413d94229ee0301d2c985040c4e07ee3e5·...·]-21">}</span><span·class="p">,</span><span·class="w">
322 ·························</span><span·class="p"·data-group-id="9460635317-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="9460635317-25">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">322 ·························</span><span·class="p"·data-group-id="3392814486-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="3392814486-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="9460635317-25">)</span><span·class="p"·data-group-id="9460635317-24">}</span><span·class="p"·data-group-id="9460635317-19">]</span><span·class="p"·data-group-id="9460635317-18">)</span><span·class="p">,</span><span·class="w">323 ··················································</span><span·class="ss">httpd_group</span><span·class="p"·data-group-id="3392814486-25">)</span><span·class="p"·data-group-id="3392814486-24">}</span><span·class="p"·data-group-id="3392814486-19">]</span><span·class="p"·data-group-id="3392814486-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="9460635317-26">(</span><span·class="p"·data-group-id="9460635317-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="9460635317-27">]</span><span·cl[·...·truncated·by·diffoscope;·len:·110,·SHA:·6086cc8108979fb20a34f159cdc24d0980c6f05149b5b7d59dffd59980360f76·...·]-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="3392814486-26">(</span><span·class="p"·data-group-id="3392814486-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="3392814486-27">]</span><span·cl[·...·truncated·by·diffoscope;·len:·110,·SHA:·00fc4369814cbb7e0a914ff3d5cd4ca0fc30c8bae61a83381c11eeef7aeb0c51·...·]-26">)</span><span·class="p">.</span><span·class="w">
  
325 </span><span·class="nf">start</span><span·class="p"·data-group-id="9460635317-28">(</span><span·class="p"·data-group-id="9460635317-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="3392814486-28">(</span><span·class="p"·data-group-id="3392814486-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="9460635317-29">(</span><span·class="p"·data-group-id="9460635317-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="3392814486-29">(</span><span·class="p"·data-group-id="3392814486-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="9460635317-30">(</span><span·class="p"·data-group-id="9460635317-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="9460635317-31">]</span><span·cl[·...·truncated·by·diffoscope;·len:·110,·SHA:·6086cc8108979fb20a34f159cdc24d0980c6f05149b5b7d59dffd59980360f76·...·]-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="3392814486-30">(</span><span·class="p"·data-group-id="3392814486-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="3392814486-31">]</span><span·cl[·...·truncated·by·diffoscope;·len:·110,·SHA:·00fc4369814cbb7e0a914ff3d5cd4ca0fc30c8bae61a83381c11eeef7aeb0c51·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>486 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>286 <p>Copyright·©·1996-2024·<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="8213121025-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="8213121025-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="0789864080-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="0789864080-1">}</span><span·class="w">
1070 ·</span><span·class="p"·data-group-id="8213121025-2">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8213121025-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:·c94054e1034884d13fff9c71227c84b9e4f89a18cd65d15eb7da157a556e2eca·...·]-2">}</span><span·class="w">1070 ·</span><span·class="p"·data-group-id="0789864080-2">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0789864080-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:·196a9fe689d15e3dc51faa166f2c81405d84d44396bc2f1e0cde0d92cdb40c8f·...·]-2">}</span><span·class="w">
1071 ·</span><span·class="p"·data-group-id="8213121025-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="8213121025-4">}</span><span·class="w">1071 ·</span><span·class="p"·data-group-id="0789864080-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="0789864080-4">}</span><span·class="w">
1072 ·</span><span·class="p"·data-group-id="8213121025-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="821312102[·...·truncated·by·diffoscope;·len:·1,·SHA:·ef2d127de37b942baad06145e54b0c619a1f22327b2ebbcfbec78f5564afe39d·...·]-5">}</span><span·class="w">1072 ·</span><span·class="p"·data-group-id="0789864080-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="078986408[·...·truncated·by·diffoscope;·len:·1,·SHA:·5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9·...·]-5">}</span><span·class="w">
1073 ·</span><span·class="p"·data-group-id="8213121025-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:·7afc2287b99b34dbccd4b2b37be58f45d0649e8cb6066fd190c57305755cefe9·...·]-6">}</span><span·class="w">1073 ·</span><span·class="p"·data-group-id="0789864080-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:·7a6da29c2cd0d0c83ec1170171609388cdca0233615441d10a2834cde88fe73f·...·]-6">}</span><span·class="w">
1074 ·</span><span·class="p"·data-group-id="8213121025-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="8213121025-7">}</span><span·class="w">1074 ·</span><span·class="p"·data-group-id="0789864080-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="0789864080-7">}</span><span·class="w">
1075 ·</span><span·class="p"·data-group-id="8213121025-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="8213121025-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="0789864080-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="0789864080-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1615 <p>Copyright·©·1996-2024·<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="2649103461-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="0978441822-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="2649103461-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="2649103461-3">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="ss">inets</sp[·...·truncated·by·diffoscope;·len:·330,·SHA:·c543ea8c1131eef6aaaae7d5d5039b89747ac67eecd48d842e744077e9f70965·...·]-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="0978441822-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="0978441822-3">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="ss">inets</sp[·...·truncated·by·diffoscope;·len:·330,·SHA:·f823e2d914cc2e8f40b62abb6289e317c09ce3582eca6fe27c345209c6260347·...·]-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="4094864023-1">[</span><span·class="p"·data-group-id="4094864023-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="3670729082-1">[</span><span·class="p"·data-group-id="3670729082-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
225 ·</span><span·class="p"·data-group-id="4094864023-3">[</span><span·class="p"·data-group-id="4094864023-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">225 ·</span><span·class="p"·data-group-id="3670729082-3">[</span><span·class="p"·data-group-id="3670729082-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
226 ··</span><span·class="p"·data-group-id="4094864023-5">[</span><span·class="p"·data-group-id="4094864023-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="3670729082-5">[</span><span·class="p"·data-group-id="3670729082-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="4094864023-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="4094864023-8">#{</span><span·class="w">·</span><span·class="ss">file</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·173,·SHA:·46ce867a9898f19f189039de8ca01c1718bc0bc22f4f1432dc36d4eb9917bc10·...·]-8">}</span><span·class="p">,</span><span·class="w">227 ····</span><span·class="p"·data-group-id="3670729082-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="3670729082-8">#{</span><span·class="w">·</span><span·class="ss">file</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·173,·SHA:·113b4ca57b576b34e37bd9fcad30fa08995b9e037f7be9a41d15a9b58c5b9707·...·]-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="4094864023-9">[</span><span·class="p"·data-group-id="4094864023-10">{</span><span·class="ss">inets_httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4094864023-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="3670729082-9">[</span><span·class="p"·data-group-id="3670729082-10">{</span><span·class="ss">inets_httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3670729082-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="4094864023-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="3670729082-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="4094864023-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:·ed763a7af0ec1e43c16fb3f346de3c9ac66de11ea0fef772ea75d2a2b9211b04·...·]-13">]</span><span·class="w">230 ··································</span><span·class="p"·data-group-id="3670729082-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:·4ad7ff4d8860d6e1c378c3483d6a91a38366a5179121da58c41d6b8b7b2930f6·...·]-13">]</span><span·class="w">
231 ·································</span><span·class="p"·data-group-id="4094864023-12">}</span><span·class="p"·data-group-id="4094864023-11">}</span><span·class="p"·data-group-id="4094864023-10">}</span><span·class="p"·data-group-id="4094864023-9">]</span><span·class="p">,</span><span·class="w">231 ·································</span><span·class="p"·data-group-id="3670729082-12">}</span><span·class="p"·data-group-id="3670729082-11">}</span><span·class="p"·data-group-id="3670729082-10">}</span><span·class="p"·data-group-id="3670729082-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="4094864023-7">}</span><span·class="p"·data-group-id="4094864023-6">}</span><span·class="p"·data-group-id="4094864023-5">]</span><span·class="p"·data-group-id="4094864023-4">}</span><span·class="p"·data-group-id="4094864023-3">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·370,·SHA:·dd04721579b38198ba9be218d2f5d621751ae45cb226dcd6dd581a2c0b01620c·...·]1-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="3670729082-7">}</span><span·class="p"·data-group-id="3670729082-6">}</span><span·class="p"·data-group-id="3670729082-5">]</span><span·class="p"·data-group-id="3670729082-4">}</span><span·class="p"·data-group-id="3670729082-3">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·370,·SHA:·d683958628c732d20480e6bebbd32c1cc957df315d56fbf05cd503b37b96445e·...·]1-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="4651959641-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="2042152691-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="4651959641-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="2042152691-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="4651959641-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:·304,·SHA:·de2509b10c9c5d9b74b1fdebd1e8b6bf0feb979eee37091f8e3b0fc787da7be9·...·]1-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="2042152691-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:·304,·SHA:·6c591f0d3b51049b10ed24965d639ff7d9bf1dff8045c8fd0f8ba9240a8bc6a5·...·]1-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="3876983153-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:·1381,·SHA:·5241fbac334863e4a5885b6bf0f9c921b1fef7eaeb1d49b3b1fdecb0ed5259bc·...·]-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="8285091744-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:·1381,·SHA:·8c5a085ea011873aae57dd68a055c4324bd2d69274fb5bd6cd1f1ef4ec452778·...·]-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="1935523773-1">{</span><span·class="ss">directory_index</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1935523773-2">[</span><span·class="s">&quot;index.html&quot;</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·139,·SHA:·0c913a894ded2f952b7e2ab3d2c8dfd36124450ccd8695b65a63fb2601360e72·...·]-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="1658103580-1">{</span><span·class="ss">directory_index</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1658103580-2">[</span><span·class="s">&quot;index.html&quot;</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·139,·SHA:·7d9a195636bf6efa67453001c4f5e961bcafec756f81713722bc936e25ee2926·...·]-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="1027258776-1">{</span><span·class="p"·data-group-id="1027258776-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="9165964410-1">{</span><span·class="p"·data-group-id="9165964410-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="1027258776-2">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1027258776-3">{</span><span·class="w">367 ······</span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="9165964410-2">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9165964410-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="1027258776-4">[</span><span·class="p"·data-group-id="1027258776-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="9165964410-4">[</span><span·class="p"·data-group-id="9165964410-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="1027258776-5">[</span><span·class="p"·data-group-id="1027258776-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="9165964410-5">[</span><span·class="p"·data-group-id="9165964410-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="1027258776-3">}</span><span·class="p"·data-group-id="1027258776-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:·c6061d2f536e6848575003df57a5259fbcb75fae6ffdef0cea0ff55f63f05f16·...·]-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="9165964410-3">}</span><span·class="p"·data-group-id="9165964410-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:·e5fa439ab3c8a2379ccf1d3d73ca14261d50166a375701801a4d09b0b430c9f3·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1347 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>322 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>990 <p>Copyright·©·1996-2024·<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
185 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/inets.epub
3.91 KB
zipinfo {}
Max HTML report size reached
45.8 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>680 <p>Copyright·©·1996-2024·<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="2686719348-1">[</span><span·class="p"·data-group-id="2686719348-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2686719348-3">[</span><span·class="p"·data-group-id="2686719348-4">{</spa[·...·truncated·by·diffoscope;·len:·329,·SHA:·affa265b518a327df9d26406db07c8328363970500451fc1aefb9b62e8134548·...·]-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="7617589280-1">[</span><span·class="p"·data-group-id="7617589280-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7617589280-3">[</span><span·class="p"·data-group-id="7617589280-4">{</spa[·...·truncated·by·diffoscope;·len:·329,·SHA:·f940778592720a3b92c4b8c38e7806daae0941709bc36d417b07de6ee209b295·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>194 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>414 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1692 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>404 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>798 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2406 <p>Copyright·©·1996-2024·<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.26 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v9.23 v9.2
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·inets[q···················]6 Search·documentation·of·inets[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>132 <p>Copyright·©·1996-2024·<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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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·Wed·Dec·24·08:13:40·GMT·2025·-->4 <!--·Generated·by·javadoc·(21)·on·Thu·Nov·21·02:07:31·GMT·2024·-->
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="2025-12-24">8 <meta·name="dc.created"·content="2024-11-21">
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>423 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>835 <p>Copyright·©·1996-2024·<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-074FBB44.js"></script>114 <script·src="dist/search_data-62425A17.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>132 <p>Copyright·©·1996-2024·<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 {}
    
Offset 2, 8 lines modifiedOffset 2, 8 lines modified
2 _\x8j_\x8i_\x8n_\x8t_\x8e_\x8r_\x8f_\x8a_\x8c_\x8e2 _\x8j_\x8i_\x8n_\x8t_\x8e_\x8r_\x8f_\x8a_\x8c_\x8e
3 v1.14.13 v1.14.1
4 ····*·Pages4 ····*·Pages
5 Search·documentation·of·jinterface[q···················]5 Search·documentation·of·jinterface[q···················]
6 Settings6 Settings
7 Search·HexDocs7 Search·HexDocs
8 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_\x8e8 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
9 Copyright·©·1996-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B9 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
646 B
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/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-19AC09E1.js27 dist/search_data-69618D8B.js
28 dist/sidebar_items-EDDF452B.js28 dist/sidebar_items-EDDF452B.js
29 eep48_chapter.html29 eep48_chapter.html
30 erl_boot_server.html30 erl_boot_server.html
31 erl_ddll.html31 erl_ddll.html
32 erl_epmd.html32 erl_epmd.html
33 erpc.html33 erpc.html
34 error_handler.html34 error_handler.html
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>495 <p>Copyright·©·1996-2024·<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="7553986480-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="6590916114-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="7553986480-2">[</span><span·class="p"·data-group-id="7553986480-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="7553986480-3">}</span><span·class="p">,</span><span·class="w">148 ··</span><span·class="p"·data-group-id="6590916114-2">[</span><span·class="p"·data-group-id="6590916114-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="6590916114-3">}</span><span·class="p">,</span><span·class="w">
149 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-4">}</span><span·class="p">,</span><span·class="w">149 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-4">}</span><span·class="p">,</span><span·class="w">
150 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-5">}</span><span·class="p">,</span><span·class="w">150 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-5">}</span><span·class="p">,</span><span·class="w">
151 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-6">}</span><span·class="p">,</span><span·class="w">151 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-6">}</span><span·class="p">,</span><span·class="w">
152 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-7">}</span><span·class="p">,</span><span·class="w">152 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-7">}</span><span·class="p">,</span><span·class="w">
153 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-8">}</span><span·class="p">,</span><span·class="w">153 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-8">}</span><span·class="p">,</span><span·class="w">
154 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-9">}</span><span·class="p">,</span><span·class="w">154 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-9">}</span><span·class="p">,</span><span·class="w">
155 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-10">}</span><span·class="p">,</span><span·class="w">155 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-10">}</span><span·class="p">,</span><span·class="w">
156 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-11">}</span><span·class="p">,</span><span·class="w">156 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-11">}</span><span·class="p">,</span><span·class="w">
157 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-12">}</span><span·class="p">,</span><span·class="w">157 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-12">}</span><span·class="p">,</span><span·class="w">
158 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-13">}</span><span·class="p">,</span><span·class="w">158 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-13">}</span><span·class="p">,</span><span·class="w">
159 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-14">}</span><span·class="p">,</span><span·class="w">159 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-14">}</span><span·class="p">,</span><span·class="w">
160 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-15">}</span><span·class="p">,</span><span·class="w">160 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-15">}</span><span·class="p">,</span><span·class="w">
161 ···</span><span·class="p"·data-group-id="7553986480-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="7553986480-16">}</span><span·class="p"·data-group-id="7553986480-2">]</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·fba646d396baa9b708c588016c853e1fdd401e615ce7a32ce5a09dcf4c7bb94b·...·]-1">}</span><span·class="p">.</span><span·class="w">161 ···</span><span·class="p"·data-group-id="6590916114-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="6590916114-16">}</span><span·class="p"·data-group-id="6590916114-2">]</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·ce711079f1bb3124a3a8f80d330c68adf5a58e6b44d9eaed6ce4cc6e3c9d7345·...·]-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="7553986480-17">(</span><span·class="p"·data-group-id="7553986480-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="6590916114-17">(</span><span·class="p"·data-group-id="6590916114-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="7553986480-18">(</span><span·class="p"·data-group-id="7553986480-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="6590916114-18">(</span><span·class="p"·data-group-id="6590916114-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="7553986480-19">(</span><span·class="p"·data-group-id="7553986480-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="6590916114-19">(</span><span·class="p"·data-group-id="6590916114-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="7553986480-20">(</span><span·class="p"·data-group-id="7553986480-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="6590916114-20">(</span><span·class="p"·data-group-id="6590916114-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="7553986480-21">[</span><span·class="n">Module</span><span·class="p"·data-group-id="7553986480-21">]</span><span·class="w">·············</span><span·class="p"·data-group-id="7553986480-22">[</span><span·class="p"·data-group-id="7553986480-22">]</span><span·class="w">168 </span><span·class="n">Modules</span><span·class="w">······</span><span·class="p"·data-group-id="6590916114-21">[</span><span·class="n">Module</span><span·class="p"·data-group-id="6590916114-21">]</span><span·class="w">·············</span><span·class="p"·data-group-id="6590916114-22">[</span><span·class="p"·data-group-id="6590916114-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="7553986480-23">(</span><span·class="p"·data-group-id="7553986480-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="6590916114-23">(</span><span·class="p"·data-group-id="6590916114-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="7553986480-24">(</span><span·class="p"·data-group-id="7553986480-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="6590916114-24">(</span><span·class="p"·data-group-id="6590916114-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="7553986480-25">[</span><span·class="n">Name</span><span·class="p"·data-group-id="7553986480-25">]</span><span·class="w">···············</span><span·class="p"·data-group-id="7553986480-26">[</span><span·class="p"·data-group-id="7553986480-26">]</span><span·class="w">171 </span><span·class="n">Names</span><span·class="w">········</span><span·class="p"·data-group-id="6590916114-25">[</span><span·class="n">Name</span><span·class="p"·data-group-id="6590916114-25">]</span><span·class="w">···············</span><span·class="p"·data-group-id="6590916114-26">[</span><span·class="p"·data-group-id="6590916114-26">]</span><span·class="w">
172 </span><span·class="n">Apps</span><span·class="w">·········</span><span·class="p"·data-group-id="7553986480-27">[</span><span·class="n">App</span><span·class="p"·data-group-id="7553986480-27">]</span><span·class="w">················</span><span·class="p"·data-group-id="7553986480-28">[</span><span·class="p"·data-group-id="7553986480-28">]</span><span·class="w">172 </span><span·class="n">Apps</span><span·class="w">·········</span><span·class="p"·data-group-id="6590916114-27">[</span><span·class="n">App</span><span·class="p"·data-group-id="6590916114-27">]</span><span·class="w">················</span><span·class="p"·data-group-id="6590916114-28">[</span><span·class="p"·data-group-id="6590916114-28">]</span><span·class="w">
173 </span><span·class="n">Env</span><span·class="w">··········</span><span·class="p"·data-group-id="7553986480-29">[</span><span·class="p"·data-group-id="7553986480-30">{</span><span·class="n">Par</span><span·class="p">,</span><span·class="n">Val</span><span·class="p"·data-group-id="7553986480-30">}</span><span·class="p"·data-group-id="7553986480-29">]</[·...·truncated·by·diffoscope;·len:·133,·SHA:·eb9d186cb4395dac4fb569579a01d44b701566dcaafe65348e1d185ec463ad50·...·]-31">]</span><span·class="w">173 </span><span·class="n">Env</span><span·class="w">··········</span><span·class="p"·data-group-id="6590916114-29">[</span><span·class="p"·data-group-id="6590916114-30">{</span><span·class="n">Par</span><span·class="p">,</span><span·class="n">Val</span><span·class="p"·data-group-id="6590916114-30">}</span><span·class="p"·data-group-id="6590916114-29">]</[·...·truncated·by·diffoscope;·len:·133,·SHA:·91a97aec8148509f6952517807be5ec1f9dd06bb80effe236ccafa9c33372424·...·]-31">]</span><span·class="w">
174 </span><span·class="n">Start</span><span·class="w">········</span><span·class="p"·data-group-id="7553986480-32">{</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">StartArgs</span><span·class="p"·data-group-id="7553986480-32">}</span><span·class="w">···</span><span·class="p"·data-group-id="7553986480-33">[</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·115b9af5feae18a7a073ad8c5477c58edd3b9145d06a88d57a77055dd7c94e20·...·]-33">]</span><span·class="w">174 </span><span·class="n">Start</span><span·class="w">········</span><span·class="p"·data-group-id="6590916114-32">{</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">StartArgs</span><span·class="p"·data-group-id="6590916114-32">}</span><span·class="w">···</span><span·class="p"·data-group-id="6590916114-33">[</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·b542d0b30460d20cdc9092e2dab04e48c7ac71155333ee236808fc7f6bcfb66f·...·]-33">]</span><span·class="w">
175 </span><span·class="n">Phases</span><span·class="w">·······</span><span·class="p"·data-group-id="7553986480-34">[</span><span·class="p"·data-group-id="7553986480-35">{</span><span·class="n">Phase</span><span·class="p">,</span><span·class="n">PhaseArgs</span><span·class="p"·data-group-id="7553986480-35">}</span><span·class="p"·data-group-id="7553986480-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="6590916114-34">[</span><span·class="p"·data-group-id="6590916114-35">{</span><span·class="n">Phase</span><span·class="p">,</span><span·class="n">PhaseArgs</span><span·class="p"·data-group-id="6590916114-35">}</span><span·class="p"·data-group-id="6590916114-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="7553986480-36">[</span><span·class="n">ApplicationVersion</span><span·class="p"·data-group-id="7553986480-36">]</span><span·class="w">·</span><span·class="p"·data-group-id="7553986480-37">[</span><span·class="p"·data-group-id="7553986480-37">]</span><span·class="w">176 </span><span·class="n">RTDeps</span><span·class="w">·······</span><span·class="p"·data-group-id="6590916114-36">[</span><span·class="n">ApplicationVersion</span><span·class="p"·data-group-id="6590916114-36">]</span><span·class="w">·</span><span·class="p"·data-group-id="6590916114-37">[</span><span·class="p"·data-group-id="6590916114-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="7553986480-38">(</span><span·class="p"·data-group-id="7553986480-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="6590916114-38">(</span><span·class="p"·data-group-id="6590916114-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="7553986480-39">(</span><span·class="p"·data-group-id="7553986480-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="6590916114-39">(</span><span·class="p"·data-group-id="6590916114-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="7553986480-40">(</span><span·class="p"·data-group-id="7553986480-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="6590916114-40">(</span><span·class="p"·data-group-id="6590916114-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="1060687230-1">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1060687230-2">{</span><span·class="ss">application_starter</span><span·class="p">,</span><span·class="p"·data-group-id="106068723[·...·truncated·by·diffoscope;·len:·245,·SHA:·b32c02fb9bfbc6c62cb3990c5dfcc0afd78151e66603aca11188e602ac20ac72·...·]-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="1802374965-1">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1802374965-2">{</span><span·class="ss">application_starter</span><span·class="p">,</span><span·class="p"·data-group-id="180237496[·...·truncated·by·diffoscope;·len:·245,·SHA:·c38a69c13335a62d5cd6969a1e13046d806e7ad79ad11d1ead8db02bf2ee4715·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>285 <p>Copyright·©·1996-2024·<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="8834351373-1">[</span><span·class="ss">cp1@cave</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8834351373-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:·b59107e5c1c2bfe4096a66925e9d3160660a02ebbf911fff3375e8a360bcac8e·...·]-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="3011019460-1">[</span><span·class="ss">cp1@cave</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3011019460-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:·e5d05526ac749d846eeb2708791ef5c9459f5b9a9d4374a9783ab2fca018b164·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2272 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>474 <p>Copyright·©·1996-2024·<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="7854916748-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="0034168457-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="7854916748-2">[</span><span·class="s">&quot;mnesia-4.4.7&quot;</span><span·class="p"·data-group-id="7854916748-2">]</span><span·class="p">,</span><span·class="w">197 »       </span><span·class="p"·data-group-id="0034168457-2">[</span><span·class="s">&quot;mnesia-4.4.7&quot;</span><span·class="p"·data-group-id="0034168457-2">]</span><span·class="p">,</span><span·class="w">
198 »       </span><span·class="p"·data-group-id="7854916748-3">[</span><span·class="p"·data-group-id="7854916748-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:·1fb56a929ea8c8a669eafd864204df366c14b06f9ce2f7d594afa54fef61cc43·...·]-4">}</span><span·class="p">,</span><span·class="w">198 »       </span><span·class="p"·data-group-id="0034168457-3">[</span><span·class="p"·data-group-id="0034168457-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:·17d96e7714c7043add3b533fcfa58b1d619c8348fb04f98cba3a2cfde422a7f9·...·]-4">}</span><span·class="p">,</span><span·class="w">
199 »       ·</span><span·class="p"·data-group-id="7854916748-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="7854916748-6">}</span><span·class="p">,</span><span·class="w">199 »       ·</span><span·class="p"·data-group-id="0034168457-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="0034168457-6">}</span><span·class="p">,</span><span·class="w">
200 »       ·</span><span·class="p"·data-group-id="7854916748-7">{</span><span·class="ss">uncompress</span><span·class="p">,</span><span·class="p"·data-group-id="7854916748-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:·5adb68be105faaae14dce84fe2d75b93862a16775a35f790f230f41a54b47fe4·...·]-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="0034168457-7">{</span><span·class="ss">uncompress</span><span·class="p">,</span><span·class="p"·data-group-id="0034168457-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:·343e97b28d9c357d9158b513af68ab24d11069b901aef7076438826d22ee91d9·...·]-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="1514865207-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Prepared</span><span·class="p"·data-group-id="1514865207-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:·853d84c2af94629b6e5dea9b3bc28b6abd27635fc0b4c53d9800251f27f16b7a·...·]-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="3221778289-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Prepared</span><span·class="p"·data-group-id="3221778289-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:·43a3d6b689bb0a7fb0ccf5bac7c9156dd9b9782bee30fb77c95fc5dd6a2ed193·...·]-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="1514865207-3">(</span><span·class="n">Prepared</span><span·class="p"·data-group-id="1514865207-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="3221778289-3">(</span><span·class="n">Prepared</span><span·class="p"·data-group-id="3221778289-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="5667138996-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:·0df2ed2aaf2f13134a361a8367df9c2fa2278691e4b5da7ca0f298dd8838658d·...·]-2">)</span><span·class="p">,</span><span·class="w">2433 </span><span·class="p"·data-group-id="2386954501-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:·7b9bc28336a9ca1368054621f0d3db24f04b1b980f28159a17284870e66bd451·...·]-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="5667138996-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:·e8783dbdc315e7ad7acc867435845b61990ce46587ce791df4db32f9cd24358b·...·]-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="2386954501-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:·e34c4144147fc9d84b9a91f47197a26199d9a2c59e2325c10add308b38cced35·...·]-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="0513020394-1">(</span><span·class="p"·data-group-id="0513020394-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="9365411972-1">(</span><span·class="p"·data-group-id="9365411972-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="3767775908-1">(</span><span·class="ss">mnesia</span><span·class="p"·data-group-id="3767775908-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="0395982331-1">(</span><span·class="ss">mnesia</span><span·class="p"·data-group-id="0395982331-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="2887741046-1">(</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-group-id="2887741046-2">(</span><span·class="ss">megaco</span><span·class="p"·data-group-id="2887741046-2">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·112,·SHA:·132270933ab3cc793f8d0223b75c85b1f25122c14805837c0956586d24b881a3·...·]6-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="3777734216-1">(</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-group-id="3777734216-2">(</span><span·class="ss">megaco</span><span·class="p"·data-group-id="3777734216-2">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·112,·SHA:·1a25e856b72268aeac9734dcf05bcc32d03ae11f9f1a5088f0d943a67f97c4bc·...·]6-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="1569818601-1">(</span><span·class="p"·data-group-id="1569818601-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="3899914191-1">(</span><span·class="p"·data-group-id="3899914191-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="0465738626-1">[</span><span·class="p"·data-group-id="0465738626-2">{</span><span·class="n">Application1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0465738626-3">[</span><span·class="p"·data-group-id="0465738626-4">[·...·truncated·by·diffoscope;·len:·379,·SHA:·0ec573d1eb8be46568400b8d3e87a65e817da33fd5764e96301a80347810b8d7·...·]-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="6706265660-1">[</span><span·class="p"·data-group-id="6706265660-2">{</span><span·class="n">Application1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6706265660-3">[</span><span·class="p"·data-group-id="6706265660-4">[·...·truncated·by·diffoscope;·len:·379,·SHA:·1914861c1ee743ca774f908985dad523471cce95dfdc79ecb163b46887f9ea18·...·]-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="0465738626-5">{</span><span·class="n">ApplicationN</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0465738626-6">[</span><span·class="p"·data-group-id="0465738626-7">{</span><span·class="n">ParN1</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·379,·SHA:·179e3097972cd62eb74abf855c39ec762393b615b5b4610fbd6a36d653100476·...·]-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="6706265660-5">{</span><span·class="n">ApplicationN</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6706265660-6">[</span><span·class="p"·data-group-id="6706265660-7">{</span><span·class="n">ParN1</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·379,·SHA:·8f8bd653b2617c3e1dd1b56da32f15639c9aa7de2a3eff67d39cbaf37e925977·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>258 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3081 <p>Copyright·©·1996-2024·<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="5617725125-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="5649765882-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="5617725125-2">(</span><span·class="p"·data-group-id="5617725125-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="5649765882-2">(</span><span·class="p"·data-group-id="5649765882-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="5617725125-3">(</span><span·class="p"·data-group-id="5617725125-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="5649765882-3">(</span><span·class="p"·data-group-id="5649765882-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="5617725125-4">(</span><span·class="p"·data-group-id="5617725125-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="5649765882-4">(</span><span·class="p"·data-group-id="5649765882-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="5617725125-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="5617725125-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="5649765882-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="5649765882-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="5617725125-6">(</span><span·class="p"·data-group-id="5617725125-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="5649765882-6">(</span><span·class="p"·data-group-id="5649765882-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="5617725125-7">[</span><span·class="p"·data-group-id="5617725125-8">{</span><span·class="p"·data-group-id="5617725125-9">{</span><span·class="n">Kind</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·89,·SHA:·f74be022d60f951e566856ed4fffcd6c04e69ee5ba065a35a67761dfcfb14bdd·...·]-9">}</span><span·class="p">,</span><span·class="w">164 ···</span><span·class="p"·data-group-id="5649765882-7">[</span><span·class="p"·data-group-id="5649765882-8">{</span><span·class="p"·data-group-id="5649765882-9">{</span><span·class="n">Kind</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·89,·SHA:·9a36af6e5fae05aebe8fb2f01749192f0dd03dd4bbccae8be200c79fe244ae27·...·]-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="5617725125-10">(</span><span·class="p"·data-group-id="5617725125-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="5649765882-10">(</span><span·class="p"·data-group-id="5649765882-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="5617725125-11">[</span><span·class="nf">binary</span><span·class="p"·data-group-id="5617725125-12">(</span><span·class="p"·data-group-id="5617725125-12">)</span><span·class="p"·data-group-id="5617725125-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="5649765882-11">[</span><span·class="nf">binary</span><span·class="p"·data-group-id="5649765882-12">(</span><span·class="p"·data-group-id="5649765882-12">)</span><span·class="p"·data-group-id="5649765882-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="5617725125-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="5617725125-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="5649765882-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="5649765882-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="5617725125-14">(</span><span·class="p"·data-group-id="5617725125-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="5649765882-14">(</span><span·class="p"·data-group-id="5649765882-14">)</span><span·class="w">
169 ····</span><span·class="p"·data-group-id="5617725125-8">}</span><span·class="p"·data-group-id="5617725125-7">]</span><span·class="p"·data-group-id="5617725125-1">}</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">DocLanguage</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·200,·SHA:·b8e57b7bca040d8eb8c9e9ccd06d12e49cfb9d05dd98a0779e42c7981201944e·...·]-15">)</span><span·class="p">,</span><span·class="w">169 ····</span><span·class="p"·data-group-id="5649765882-8">}</span><span·class="p"·data-group-id="5649765882-7">]</span><span·class="p"·data-group-id="5649765882-1">}</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">DocLanguage</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·200,·SHA:·177297efc4ad66da808b81e5269227bb8254e06f34d8ac3f86627e3847e65697·...·]-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="5617725125-16">(</span><span·class="p"·data-group-id="5617725125-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="5617725125-17">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·7acaafbcf3acef624d63ac4ce4b8b2511af0704e420eaa57b434acc2dbf97987·...·]-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="5649765882-16">(</span><span·class="p"·data-group-id="5649765882-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="5649765882-17">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·a5b93afde7758fda438e46ff20715ab70588fbcd123f20a887aaf9a58f773cf3·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>263 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>414 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1350 <p>Copyright·©·1996-2024·<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="0535393987-1">(</span><span·class="ss">localhost</span><span·class="p"·data-group-id="0535393987-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="6881428780-1">(</span><span·class="ss">localhost</span><span·class="p"·data-group-id="6881428780-1">)</span><span·class="p">.</span><span·class="w">
363 </span><span·class="p"·data-group-id="0535393987-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0535393987-3">[</span><span·class="p"·data-group-id="0535393987-4">{</span><span·class="s">&quot;arne&quot;</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·161,·SHA:·c8eed0659a965c40077de79c848649cb9a7b329cf6fe8707866c6b2b73ea7bff·...·]-2">}</span></code></pre>363 </span><span·class="p"·data-group-id="6881428780-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6881428780-3">[</span><span·class="p"·data-group-id="6881428780-4">{</span><span·class="s">&quot;arne&quot;</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·161,·SHA:·aa612503df8d000676e4821e8ee5989b17307b4ed14ad6daca74c209bed4b7c4·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>571 <p>Copyright·©·1996-2024·<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="8734259310-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:·a72858f6d1a2654e108ede91dfe0d675c65dd4a5b85a72956296e9cd38d08679·...·]-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="5929775036-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:·e5138be9b27e71cf2b7c88c9407435793df3b608ce812eeae00684b5dfd9ef22·...·]-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="8734259310-2">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8734259310-3">(</span><span·class="n">Node</span><span·class="p"·data-group-id="8734259310-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="5929775036-2">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="5929775036-3">(</span><span·class="n">Node</span><span·class="p"·data-group-id="5929775036-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="8734259310-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:·2cc4ae271d37c84abeeef25fb9a9657fce6b9df291c74cedc07682db0dce47ef·...·]-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="5929775036-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:·8f79a6396953e7788d3c21463f43fa34d59592273ae96d3c7732dca94f338b93·...·]-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="8734259310-2">)</span><span·class="p">,</span><span·class="w">1228 ·····················</span><span·class="n">Nodes</span><span·class="p"·data-group-id="5929775036-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="8734259310-5">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8734259310-6">(</span><span·class="n">ReqId</span><span·class="p"·data-group-id="8734259310-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="5929775036-5">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="5929775036-6">(</span><span·class="n">ReqId</span><span·class="p"·data-group-id="5929775036-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="8734259310-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="8734259310-8">(</span><span·class="n"[·...·truncated·by·diffoscope;·len:·187,·SHA:·774079da453ac9b1a908aabe0eeca756e46c8968c6c92c20d68b0d3b84e64cd9·...·]-7">}</span><span·class="w">1231 ················</span><span·class="p"·data-group-id="5929775036-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="5929775036-8">(</span><span·class="n"[·...·truncated·by·diffoscope;·len:·187,·SHA:·edd2c25295448f065b1b8bb6c663c5e3d7f666a8d831a0907e210ef5e8256a30·...·]-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="8734259310-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="8734259310-9">}</span><span·class="w">1234 ··················</span><span·class="p"·data-group-id="5929775036-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="5929775036-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="8734259310-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="5929775036-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="3858726115-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:·2e32b33a05ce9e799fb620e8a91bf0d727b33a951cb217e66d39a0bd0c95dc0e·...·]-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="4583752084-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:·beecf631b5a62f86733a609043c561fd5d2bf40c1e41e4ead0df1cd785a89420·...·]-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="3858726115-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:·77bc33fa534223f136cda7fe6f55a7d7cf935855dd612d241d4fb855aff2becd·...·]-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="4583752084-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:·4fc86d5420b5312072e18356fb90c0bced703cf9579f8bed5c238eab7cc71600·...·]-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="3858726115-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="3858726115-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="4583752084-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="4583752084-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="2476458407-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><spa[·...·truncated·by·diffoscope;·len:·142,·SHA:·370952deed094af55c8ced38988db9c2667f688ee2e511e007831ad16a7182bd·...·]-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="2615332461-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><spa[·...·truncated·by·diffoscope;·len:·142,·SHA:·72ff2d16314ec8e171b519ee5f9de1653882209dff286df0f47ebd2b2e97a2ee·...·]-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="2476458407-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><spa[·...·truncated·by·diffoscope;·len:·64,·SHA:·16b1f2779e393516920a13c6ae7b13cd141a780a3781ca1cc6ab8a0f0ed86bb6·...·]-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="2615332461-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><spa[·...·truncated·by·diffoscope;·len:·64,·SHA:·a935ba28e4bf8f96faadbd7ea86be43c3bac4ebd65baeaacb63d13d8fc6483bb·...·]-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="2476458407-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="2476458407-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="2615332461-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="2615332461-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1938 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>336 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1253 <p>Copyright·©·1996-2024·<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="6121620518-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="6121620518-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="6402737517-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="6402737517-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
184 ····</span><span·class="p"·data-group-id="6121620518-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="6121620518-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·611,·SHA:·302d26bde01612665a7cae8c88402ba9d613c538d84a3dc683fa72965f591ab5·...·]-3">)</span><span·class="p">,</span><span·class="w">184 ····</span><span·class="p"·data-group-id="6402737517-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="6402737517-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·611,·SHA:·e0516da956dd90c8b147e7c1c8e86ce41beca1db1aee3d4c42a73c7fb593a42d·...·]-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="6121620518-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="61216[·...·truncated·by·diffoscope;·len:·5,·SHA:·daea69923719ce0e6e85624ad1e304eda459ba9765945e4cdd1c25ac072eca5c·...·]-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="6402737517-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="64027[·...·truncated·by·diffoscope;·len:·5,·SHA:·d8b02f724aa7bb4748e12e15522facd907a6f561359a8b4bd0aa7da39d7273c1·...·]-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="6121620518-6">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="6121620518-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="6402737517-6">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="6402737517-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="6121620518-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="6121620518-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="6402737517-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="6402737517-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="6121620518-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="6121620518-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="6402737517-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="6402737517-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="6121620518-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="6121620518-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="6402737517-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="6402737517-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="6121620518-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="612162051[·...·truncated·by·diffoscope;·len:·1,·SHA:·2c624232cdd221771294dfbb310aca000a0df6ac8b66b696d90ef06fdefb64a3·...·]-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="6402737517-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="640273751[·...·truncated·by·diffoscope;·len:·1,·SHA:·7902699be42c8a8e46fbbb4501726517e86b22c56a189f7625a6da49081b2451·...·]-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="2113553927-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="2113553927-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="8956868968-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="8956868968-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 ····</span><span·class="p"·data-group-id="2113553927-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="2113553927-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·612,·SHA:·2f22ff78c8bdaf527803ef4457ff0f727182680320c37b496350311170271442·...·]-3">)</span><span·class="p">,</span><span·class="w">194 ····</span><span·class="p"·data-group-id="8956868968-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="8956868968-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·612,·SHA:·7c465cb0e051169332c1fa9b2ba3eb5e4a49ac71f468fa8f15e54028a98bc68e·...·]-3">)</span><span·class="p">,</span><span·class="w">
195 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="2113553927-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="2113[·...·truncated·by·diffoscope;·len:·6,·SHA:·1f199fbb14e69d1bf74ef4e949bbd18348b6b2e29caa4503dbf4412d6b061d4e·...·]-5">)</span><span·class="p">,</span><span·class="w">195 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="8956868968-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="8956[·...·truncated·by·diffoscope;·len:·6,·SHA:·c748e58576fdb341b407e45b0818a8d70321a41b2e27489cb957a46bbfe17daa·...·]-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="2113553927-6">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="2113553927-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="8956868968-6">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="8956868968-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="2113553927-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="2113553927-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="8956868968-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="8956868968-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="2113553927-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="2113553927-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="8956868968-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="8956868968-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="2113553927-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="2113553927-10">(</span><span·class="mi">128</span>[·...·truncated·by·diffoscope;·len:·227,·SHA:·009f939adda2dd23fe28483f659e20abaa6d5d97558fe97531817740e855e84e·...·]-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="8956868968-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="8956868968-10">(</span><span·class="mi">128</span>[·...·truncated·by·diffoscope;·len:·227,·SHA:·ba9045d745926350931f90333abc87d5879cb4781b3f72adb630e610b8f695bf·...·]-9">)</span><span·class="p">,</span><span·class="w">
202 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="2113553927-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="211355[·...·truncated·by·diffoscope;·len:·4,·SHA:·cd24330a96de3b7876b448f608da39b473db3d6b1a4ced76f3d70f1b0b6d1423·...·]-11">)</span><span·class="p">;</span><span·class="w">202 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="8956868968-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="895686[·...·truncated·by·diffoscope;·len:·4,·SHA:·b56f9bbafbf963e7593ea59389283360591aa54439cfd56796d4e351ffa762eb·...·]-11">)</span><span·class="p">;</span><span·class="w">
203 </span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="2113553927-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="2113553927-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="8956868968-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="8956868968-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="2113553927-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="2113553927-14">(</span><span·class="n">M</span><s[·...·truncated·by·diffoscope;·len:·225,·SHA:·23de0d9d6250d1f2c9392c3b597de55a08f87c402f95912599f3c124a7d9bc91·...·]-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="8956868968-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="8956868968-14">(</span><span·class="n">M</span><s[·...·truncated·by·diffoscope;·len:·225,·SHA:·712e18d2e604dc5105ff45f91461425fc801cdef0419a164afa7e04e565aa2d2·...·]-13">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="2113553927-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="21135539[·...·truncated·by·diffoscope;·len:·2,·SHA:·670671cd97404156226e507973f2ab8330d3022ca96e0c93bdbdb320c41adcaf·...·]-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="8956868968-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="89568689[·...·truncated·by·diffoscope;·len:·2,·SHA:·a21855da08cb102d1d217c53dc5824a3a795c1c1a44e971bf01ab9da3a2acbbf·...·]-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="1989219187-1">(</span><span·class="s">&quot;f.txt&quot;</span><span·class="p"·data-group-id="1989219187-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="5551512699-1">(</span><span·class="s">&quot;f.txt&quot;</span><span·class="p"·data-group-id="5551512699-1">)</span><span·class="p">.</span><span·class="w">
1981 </span><span·class="p"·data-group-id="1989219187-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="1989219187-3">[</span><span·class="p"·data-group-id="1989219187-4">{</span><span·class="ss">person</span><span·class="p">,</span><span·class="s">&quot;ka[·...·truncated·by·diffoscope;·len:·487,·SHA:·8772a05dafb40bdc999a2af269d5b31c1ca1e37ddf29d1ade6d2f3f13ffa0ddf·...·]-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="5551512699-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5551512699-3">[</span><span·class="p"·data-group-id="5551512699-4">{</span><span·class="ss">person</span><span·class="p">,</span><span·class="s">&quot;ka[·...·truncated·by·diffoscope;·len:·487,·SHA:·b795955809d9e68d729815e0380c3d28005b2632a34bec17b1d2ad84dbcfc54d·...·]-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="4153158579-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="4153158579-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="4337100101-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="4337100101-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="1017489623-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="1017489623-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="6791652851-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="6791652851-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4069 <p>Copyright·©·1996-2024·<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="7577961846-1">(</span><span·class="p"·data-group-id="7577961846-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="0920300183-1">(</span><span·class="p"·data-group-id="0920300183-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="7577961846-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="7577961846-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·119,·SHA:·642723a22ce9369996371114db98c552b232da6797525df604b3494a62de397e·...·]-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="0920300183-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="0920300183-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·119,·SHA:·5e4034a509b13abba939b55aa8725be1e65e48a9ffa6d5aab3e4599a9e786440·...·]-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="7577961846-4">[</span><span·class="ss">binary</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7577961846-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:·46bd34f0d6d1a34be195c84cd5fb7bf0a4d90dc4fab715212fb1267a28d52641·...·]-3">)</span><span·class="p">,</span><span·class="w">133 ·································</span><span·class="p"·data-group-id="0920300183-4">[</span><span·class="ss">binary</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0920300183-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:·169b183d623fbe4d69b34453a2f55bb879b6b67bfd8dfc2192fae27d0be4d8c5·...·]-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="7577961846-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="7577961846-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="0920300183-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="0920300183-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="7577961846-7">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="7577961846-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="0920300183-7">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0920300183-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="7932243940-1">(</span><span·class="p"·data-group-id="7932243940-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="4423779576-1">(</span><span·class="p"·data-group-id="4423779576-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
137 ····</span><span·class="p"·data-group-id="7932243940-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="7932243940-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·535,·SHA:·de5ffe24cf945e5e3de76ca63441513ad8763a036ac33cf0ce3bf1fe6a6cb935·...·]-5">}</span><span·class="p">,</span><span·class="w">137 ····</span><span·class="p"·data-group-id="4423779576-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="4423779576-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·535,·SHA:·a6eab409dcc5b8bab1355a2b146b6e1e5aa120b83b5f82374025563ee82196be·...·]-5">}</span><span·class="p">,</span><span·class="w">
138 ········································</span><span·class="p"·data-group-id="7932243940-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="7932243940-6">}</span><span·class="p"·data-group-id="7932243940-4">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·d89ea999f79afafb476717d1c2f6d3af1084dfe0e88419f7029134067429c8ac·...·]-3">)</span><span·class="p">,</span><span·class="w">138 ········································</span><span·class="p"·data-group-id="4423779576-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="4423779576-6">}</span><span·class="p"·data-group-id="4423779576-4">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·4c23c1e21485cd1c67eeea86d0c3744d438b83dff9e88d30c6d7416357c16a95·...·]-3">)</span><span·class="p">,</span><span·class="w">
139 ····</span><span·class="p"·data-group-id="7932243940-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="7932243940-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·199,·SHA:·7881196c257a1c83feb36e5ec7ac222b14053a3c0111fb8490ab80c43165fc81·...·]-8">)</span><span·class="p">,</span><span·class="w">139 ····</span><span·class="p"·data-group-id="4423779576-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="4423779576-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·199,·SHA:·30b04e6dd2381f2199fd774517ef4017e487a039d6dec9756db4bce17b021ef1·...·]-8">)</span><span·class="p">,</span><span·class="w">
140 ····</span><span·class="p"·data-group-id="7932243940-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="7932243940-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·300,·SHA:·70b594be74e4fa3bdd92c4ab67820769034278ab56d6943fc3b1804756687052·...·]-10">)</span><span·class="p">,</span><span·class="w">140 ····</span><span·class="p"·data-group-id="4423779576-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="4423779576-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·300,·SHA:·6b2dfc62933d550f90463f50f38e0d51e00ccc3bdc6a63107d37935786de4d51·...·]-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="7932243940-12">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="7932243940-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="4423779576-12">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="4423779576-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="7932243940-13">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="7932243940-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="4423779576-13">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="4423779576-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="7932243940-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="7932243940-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="4423779576-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="4423779576-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="7932243940-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="7932243940-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="4423779576-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="4423779576-15">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
146 ········</span><span·class="p"·data-group-id="7932243940-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="7932243940-16">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">146 ········</span><span·class="p"·data-group-id="4423779576-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="4423779576-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="7932243940-17">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7932243940-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:·8d15bba88d004b544ffe59eb62d148458e660e5d94ab70de2715d31041939ba2·...·]-17">)</span><span·class="p">;</span><span·class="w">147 ············</span><span·class="nf">do_recv</span><span·class="p"·data-group-id="4423779576-17">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4423779576-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:·d6d62662ef9f5b451e6eb43e46db0061fad7b9f5266b369faedfdb89da8b4aec·...·]-17">)</span><span·class="p">;</span><span·class="w">
148 ········</span><span·class="p"·data-group-id="7932243940-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="7932243940-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
149 ············</span><span·class="p"·data-group-id="7932243940-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="7932243940-21">(</span><span·class="n">Bs</span>[·...·truncated·by·diffoscope;·len:·101,·SHA:·79e3fbbc5fc49e72cf650cbe93ffaeaf98671c46bf074a34d185509c4a6d57dc·...·]</span><span·class="w">148 ········</span><span·class="p"·data-group-id="4423779576-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="4423779576-19">}</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·11,·SHA:·729ec6a90153422f6d3e5f23f801dfde120453a477458b8201046ba74dbb1028·...·]</span><span·class="w">
 149 ············</span><span·class="p"·data-group-id="4423779576-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="4423779576-21">(</span><span·class="n">Bs</span><span·class="p"·data-group-id="4423779576-21">)</span><span·class="p"·data-group-id="4423779576-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="3118506117-1">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">LPort</span><span·class="p"·data-group-id="3118506117-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="2189779014-1">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">LPort</span><span·class="p"·data-group-id="2189779014-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="3118506117-2">(</span><span·class="n">LPort</span><span·class="p">,</span><span·class="p"·data-group-id="3118506117-3">[</span><span·class="p"·data-group-id="3118506117-4">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·387,·SHA:·07b85686ca7f9d9b49e706be26bb5daf5fd34d4e0049eb0f3e8670ee7c06bf5d·...·]-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="2189779014-2">(</span><span·class="n">LPort</span><span·class="p">,</span><span·class="p"·data-group-id="2189779014-3">[</span><span·class="p"·data-group-id="2189779014-4">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·387,·SHA:·c21500ef5faf9c7bfe02dc79f84c8ada4794e08fc5b134fcaddaa67b8eb917bd·...·]-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
194 ········</span><span·class="p"·data-group-id="3118506117-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="3118506117-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">194 ········</span><span·class="p"·data-group-id="2189779014-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="2189779014-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="3118506117-7">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">ListenSock</span><span·class="p"·data-group-id="3118506117-7">)</span><span·class="p">,</span><span·class="w">195 ············</span><span·class="nf">start_servers</span><span·class="p"·data-group-id="2189779014-7">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">ListenSock</span><span·class="p"·data-group-id="2189779014-7">)</span><span·class="p">,</span><span·class="w">
196 ············</span><span·class="p"·data-group-id="3118506117-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="3118506117-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·199,·SHA:·777bae6b56582f808dd6a702c849cd5a32a08b4fd8a09aa70d773e0e28331b71·...·]-9">)</span><span·class="p">,</span><span·class="w">196 ············</span><span·class="p"·data-group-id="2189779014-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="2189779014-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·199,·SHA:·8f88faaf1eb5d5541f4b8f46d2e064d066d98840437daa046d0d977450440d65·...·]-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="3118506117-10">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="n">Reason</span><span·class="p"·data-group-id="3118506117-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">198 ········</span><span·class="p"·data-group-id="2189779014-10">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="n">Reason</span><span·class="p"·data-group-id="2189779014-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
199 ············</span><span·class="p"·data-group-id="3118506117-11">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="n">Reason</span><span·class="p"·data-group-id="3118506117-11">}</span><span·class="w">199 ············</span><span·class="p"·data-group-id="2189779014-11">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="n">Reason</span><span·class="p"·data-group-id="2189779014-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="3118506117-12">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="3118506117-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="2189779014-12">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="2189779014-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="3118506117-13">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">LS</span><span·class="p"·data-group-id="3118506117-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="2189779014-13">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">LS</span><span·class="p"·data-group-id="2189779014-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="3118506117-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="3118506117-15">[</span><span·class="n">LS</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·72,·SHA:·fe22687e8c6610da72ea734fea3e66ffae4af30655ac239e2b15dae8afd20bd4·...·]-14">)</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="2189779014-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="2189779014-15">[</span><span·class="n">LS</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·72,·SHA:·7997e6035ce5ddc8c3bbeae7c0af379d0ba6670a858a6400e6e4c9d44d382cc8·...·]-14">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nf">start_servers</span><span·class="p"·data-group-id="3118506117-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="3118506117-16">)</span><span·class="p">.</span><span·class="w">205 ····</span><span·class="nf">start_servers</span><span·class="p"·data-group-id="2189779014-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="2189779014-16">)</span><span·class="p">.</span><span·class="w">
  
206 </span><span·class="nf">server</span><span·class="p"·data-group-id="3118506117-17">(</span><span·class="n">LS</span><span·class="p"·data-group-id="3118506117-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="2189779014-17">(</span><span·class="n">LS</span><span·class="p"·data-group-id="2189779014-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="3118506117-18">(</span><span·class="n">LS</span><span·class="p"·data-group-id="3118506117-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="2189779014-18">(</span><span·class="n">LS</span><span·class="p"·data-group-id="2189779014-18">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
208 ········</span><span·class="p"·data-group-id="3118506117-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="3118506117-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 ········</span><span·class="p"·data-group-id="2189779014-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="2189779014-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="3118506117-20">(</span><span·class="n">S</span><span·class="p"·data-group-id="3118506117-20">)</span><span·class="p">,</span><span·class="w">209 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="2189779014-20">(</span><span·class="n">S</span><span·class="p"·data-group-id="2189779014-20">)</span><span·class="p">,</span><span·class="w">
210 ············</span><span·class="nf">server</span><span·class="p"·data-group-id="3118506117-21">(</span><span·class="n">LS</span><span·class="p"·data-group-id="3118506117-21">)</span><span·class="p">;</span><span·class="w">210 ············</span><span·class="nf">server</span><span·class="p"·data-group-id="2189779014-21">(</span><span·class="n">LS</span><span·class="p"·data-group-id="2189779014-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="3118506117-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="3118506117-23">[</[·...·truncated·by·diffoscope;·len:·128,·SHA:·bf0d9c133c3961fcab9e3f736a7151468f806d66dd0788c584846730c05c6081·...·]-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="2189779014-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="2189779014-23">[</[·...·truncated·by·diffoscope;·len:·128,·SHA:·fe0103223168e27b023edab99fdf7c98b8c4906fc7d25c40792ae9e148383e66·...·]-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="3118506117-24">(</span><span·class="n">S</span><span·class="p"·data-group-id="3118506117-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="2189779014-24">(</span><span·class="n">S</span><span·class="p"·data-group-id="2189779014-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="3118506117-25">(</span><span·class="n">S</span><span·class="p">,</span><span·class="p"·data-group-id="3118506117-26">[</span><span·class="p"·data-group-id="3118506117-27">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="ss">once</[·...·truncated·by·diffoscope;·len:·154,·SHA:·410f489416ca685af875b4b3835308cd96d33ddd9e469798e15780973281acdd·...·]-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="2189779014-25">(</span><span·class="n">S</span><span·class="p">,</span><span·class="p"·data-group-id="2189779014-26">[</span><span·class="p"·data-group-id="2189779014-27">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="ss">once</[·...·truncated·by·diffoscope;·len:·154,·SHA:·9ae9663f4cb2e714f898b1dff320a4dba8258cbc5fef726ac49e8eefc1166f38·...·]-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="3118506117-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="3118506117-28">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">218 ········</span><span·class="p"·data-group-id="2189779014-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="2189779014-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="3118506117-29">(</span><span·class="n">Data</span><span·class="p"·data-group-id="3118506117-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="2189779014-29">(</span><span·class="n">Data</span><span·class="p"·data-group-id="2189779014-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="3118506117-30">(</span><span·class="n">S</span><span·class="p">,</span><span·class="n">Answer</span><span·class="p"·data-group-id="3118506117-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="2189779014-30">(</span><span·class="n">S</span><span·class="p">,</span><span·class="n">Answer</span><span·class="p"·data-group-id="2189779014-30">)</span><span·class="p">,</span><span·class="w">
221 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="3118506117-31">(</span><span·class="n">S</span><span·class="p"·data-group-id="3118506117-31">)</span><span·class="p">;</span><span·class="w">221 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="2189779014-31">(</span><span·class="n">S</span><span·class="p"·data-group-id="2189779014-31">)</span><span·class="p">;</span><span·class="w">
222 ········</span><span·class="p"·data-group-id="3118506117-32">{</span><span·class="ss">tcp_closed</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="3118506117-32">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">222 ········</span><span·class="p"·data-group-id="2189779014-32">{</span><span·class="ss">tcp_closed</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="2189779014-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="3118506117-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:·481430bd976f541f23bfb9ed4358a04adcd693d9bfcd96fdd703a58540e9aa4d·...·]-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="2189779014-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:·16b41d6450858b54da7d9d91cc204a216211f5df6a649df03dac27381a03dda1·...·]-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="0712304103-1">(</span><span·class="n">PortNo</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="0712304103-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="3075192237-1">(</span><span·class="n">PortNo</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="3075192237-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
226 ····</span><span·class="p"·data-group-id="0712304103-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Sock</span><span·class="p"·data-group-id="0712304103-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><[·...·truncated·by·diffoscope;·len:·458,·SHA:·7838ec54698204aecce12b628ca3050e082775c55aa6341bd0fb8bf87d4e85cc·...·]-5">}</span><span·class="p">,</span><span·class="w">226 ····</span><span·class="p"·data-group-id="3075192237-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Sock</span><span·class="p"·data-group-id="3075192237-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><[·...·truncated·by·diffoscope;·len:·458,·SHA:·29ab19c4589e821360f5ef4d5cdfed33047df272892205c90f7348d8ea06add8·...·]-5">}</span><span·class="p">,</span><span·class="w">
227 ····················································</span><span·class="p"·data-group-id="0712304103-6">{</span><span·class="ss">packet</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="0712304103-6">}</span><span·class="p"·data-group-id="0712304103-4">]</span><span·class="p"·data-group-id="0712304103-3">)</span><span·class="p">,</span><span·class="w">227 ····················································</span><span·class="p"·data-group-id="3075192237-6">{</span><span·class="ss">packet</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3075192237-6">}</span><span·class="p"·data-group-id="3075192237-4">]</span><span·class="p"·data-group-id="3075192237-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="0712304103-7">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="0712304103-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="3075192237-7">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="3075192237-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="0712304103-8">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="0712304103-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="3075192237-8">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="3075192237-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="0712304103-9">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0712304103-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="3075192237-9">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="3075192237-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="8344688066-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Sock</span><span·class="p"·data-group-id="8344688066-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:·b8dd8b545635e005912b4a70a8ff886fb2ddac54d7e85fd44967e23be3674366·...·]-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="7467574957-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Sock</span><span·class="p"·data-group-id="7467574957-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:·551922cb3d7b4ff6bf333e44f64ff04cdc45f3d643aacf60ed8aa265d46fd415·...·]-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="8344688066-3">[</span><span·class="p"·data-group-id="8344688066-4">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="8344688066-4">}</span><span·class="p">,</span><span·class="w">241 ····························</span><span·class="p"·data-group-id="7467574957-3">[</span><span·class="p"·data-group-id="7467574957-4">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="7467574957-4">}</span><span·class="p">,</span><span·class="w">
242 ·····························</span><span·class="p"·data-group-id="8344688066-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="8344688066-5">}</span><span·class="p">,</span><span·class="w">242 ·····························</span><span·class="p"·data-group-id="7467574957-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="7467574957-5">}</span><span·class="p">,</span><span·class="w">
243 ·····························</span><span·class="p"·data-group-id="8344688066-6">{</span><span·class="ss">packet</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="8344688066-6">}</span><span·class="p"·data-group-id="8344688066-3">]</span><span·class="p"·data-group-id="8344688066-2">)</span><span·class="p">,</span><span·class="w">243 ·····························</span><span·class="p"·data-group-id="7467574957-6">{</span><span·class="ss">packet</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="7467574957-6">}</span><span·class="p"·data-group-id="7467574957-3">]</span><span·class="p"·data-group-id="7467574957-2">)</span><span·class="p">,</span><span·class="w">
244 ················</span><span·class="nf">loop</span><span·class="p"·data-group-id="8344688066-7">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="8344688066-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="7467574957-7">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="7467574957-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="4898313441-1">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="4898313441-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="8085481950-1">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="8085481950-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="4898313441-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="4898313441-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">247 ········</span><span·class="p"·data-group-id="8085481950-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="8085481950-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="4898313441-3">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="p"·data-group-id="4898313441-4">[</span><span·class="n">Binary</span><span·class="p"·data-group-id="4898313441-4">]</span><span·class="p"·data-group-id="4898313441-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="8085481950-3">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="p"·data-group-id="8085481950-4">[</span><span·class="n">Binary</span><span·class="p"·data-group-id="8085481950-4">]</span><span·class="p"·data-group-id="8085481950-3">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
249 ················</span><span·class="p"·data-group-id="4898313441-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="4898313441-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">249 ················</span><span·class="p"·data-group-id="8085481950-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="8085481950-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="4898313441-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="8085481950-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="4898313441-7">[</span><span·class="p"·data-group-id="4898313441-7">]</span><span·class="p"·data-group-id="4898313441-6">)</span><span·class="p">,</span><span·class="w">251 ······························</span><span·class="p"·data-group-id="8085481950-7">[</span><span·class="p"·data-group-id="8085481950-7">]</span><span·class="p"·data-group-id="8085481950-6">)</span><span·class="p">,</span><span·class="w">
252 ····················</span><span·class="nf">handle_send_timeout</span><span·class="p"·data-group-id="4898313441-8">(</span><span·class="p"·data-group-id="4898313441-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="4898313441-9">{</span><span·class="nf">self</span><span·class="p"·data-group-id="4898313441-10">(</span><span·class="p"·data-group-id="489[·...·truncated·by·diffoscope;·len:·338,·SHA:·9eec25ff40e087efdec523cf1f14c99a74f80a9c9f8a1f4d247a26d54babf888·...·]</span><span·class="w">252 ····················</span><span·class="nf">handle_send_timeout</span><span·class="p"·data-group-id="8085481950-8">(</span><span·class="p"·data-group-id="8085481950-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="8085481950-9">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8085481950-10">(</span><span·class="p"·data-group-id="8085481950-10">)</span><span·class="p">,</span><span·class="p"·data-group-id="8085481950-11">{</span><span·class="ss">error_sending</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="p"·data-group-id="8085481950-11">}</span><span·class="p"·data-group-id="8085481950-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="4898313441-12">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="4898313441-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="8085481950-12">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="8085481950-12">)</span><span·class="p">;</span><span·class="w">
258 ················</span><span·class="p"·data-group-id="4898313441-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="4898313441-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">258 ················</span><span·class="p"·data-group-id="8085481950-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="8085481950-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="4898313441-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="8085481950-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="4898313441-15">[</span><span·class="n">OtherSendError</span><span·class="p"·data-group-id="4898313441-15">]</span><span·class="p"·data-group-id="4898313441-14">)</span><span·class="p">,</span><span·class="w">260 ······························</span><span·class="p"·data-group-id="8085481950-15">[</span><span·class="n">OtherSendError</span><span·class="p"·data-group-id="8085481950-15">]</span><span·class="p"·data-group-id="8085481950-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="4898313441-16">{</span><span·class="nf">self</span><span·class="p"·data-group-id="4898313441-17">(</span><span·class="p"·data-group-id="4898313441-17">)</span><span·class="p">,</span><span·class="p"·data-group-id="4898313441-18">{</span><span·class="ss">er[·...·truncated·by·diffoscope;·len:·198,·SHA:·cff49aa76901149e8c446eab8e135ae616c44709ff2f7759adb2e28a09b58fce·...·]-16">}</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="8085481950-16">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8085481950-17">(</span><span·class="p"·data-group-id="8085481950-17">)</span><span·class="p">,</span><span·class="p"·data-group-id="8085481950-18">{</span><span·class="ss">er[·...·truncated·by·diffoscope;·len:·198,·SHA:·8ff7df207fb5b3f579d036dfedd3a4ea159d24d95f9775461d3d7ad0b26e06ab·...·]-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="4898313441-19">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="4898313441-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="8085481950-19">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="8085481950-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="4898313441-20">{</span><span·class="nf">self</span><span·class="p"·data-group-id="4898313441-21">(</span><span·class="p"·data-group-id="4898313441-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:·f24b1d7cdd75994c39e14c5341a7d28123b176363a4dd90fd166f9af4912c32d·...·]-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="8085481950-20">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8085481950-21">(</span><span·class="p"·data-group-id="8085481950-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:·d947ede79ec433fb550929febbbf2ece1f78d0cf03265c65ccb8aad1d805a67c·...·]-20">}</span><span·class="p">,</span><span·class="w">
265 ····················</span><span·class="nf">loop</span><span·class="p"·data-group-id="4898313441-22">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="4898313441-22">)</span><span·class="w">265 ····················</span><span·class="nf">loop</span><span·class="p"·data-group-id="8085481950-22">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="8085481950-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; 712/61539 bytes (1.16%) 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="6674806522-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:·b73b048b798409b573d5e12f5bedc3d870cc93e36be9072b0678f4bc7d6e9634·...·]-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="1329506631-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:·5194c2f1f3b8cf24362f7ba988698f61c1480ddd7e0797440769dbc186b82738·...·]-1">}</span><span·class="w">·</span><span·class="c1">%·Without·ancillary·data</span><span·class="w">
964 </span><span·class="p"·data-group-id="6674806522-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:·38a9fc83c8e02504780374a89c9afec3d199047f23808f40a3989feecd5beb8a·...·]-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="1329506631-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:·12329f2fff296bf68307698baaf85583aaf88e1c19dc90c48ccf26f9313d7377·...·]-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="5362470323-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="5362470323-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="5316694587-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:·f7f6052ca68ecfdc79875ab8bc1cf32282dc832144b33c2b81b76dea79108e40·...·]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="8299675435-1">{</span><span·class="ss">udp_passive</span><span·class="p">,</span><span·class="err"> </span><spa[·...·truncated·by·diffoscope;·len:·165,·SHA:·ab024794961af6089fb631bee6b7b5a14ef1baf0b76ed0fd3a1bd83e7feb5d8c·...·]
 973 message·is·sent·to·the·controlling·process:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1033552622-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="1033552622-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1274 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1299 <p>Copyright·©·1996-2024·<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="7607518467-1">{</span><span·class="ss">global_groups</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7607518467-2">[</span><span·class="n">GroupTuple</span><span·class="w">·</span><span·class="p">:</span><span·class="p"[·...·truncated·by·diffoscope;·len:·268,·SHA:·6d26497b8b0efc2ee4b14fb91a2c71ecebf2e06792807c15cd52f4571eaa3537·...·]-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="9525589531-1">{</span><span·class="ss">global_groups</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9525589531-2">[</span><span·class="n">GroupTuple</span><span·class="w">·</span><span·class="p">:</span><span·class="p"[·...·truncated·by·diffoscope;·len:·268,·SHA:·23c2564aef615dfd883a3e97d3cf0e3ade21c2d61ce5a20fbd9783a2432d10f8·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>940 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>612 <p>Copyright·©·1996-2024·<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="8723867415-1">(</span><span·class="p"·data-group-id="8723867415-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="5808072918-1">(</span><span·class="p"·data-group-id="5808072918-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="8723867415-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:·f6aa789354ae3884bb89570416ec7022a2d354f6726ab440159cfd5a9aa7695a·...·]-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="5808072918-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:·15c37ee9b6b6b2125c3a07679b78913cdd295aac269cca6e3bd637ce8b58f1a7·...·]-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="8723867415-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:·0dc33bda6c4d250a0416263fd245a1d44cb5a7b3cee4f90759cf56a9785fc30c·...·]-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="5808072918-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:·4495730dfd2e9f1e781e085cfbd0286657cb77e683800b068bcd58c25e072e45·...·]-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="8723867415-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:·95d0058c4680f10291042d08fda540e759739bad64b66532dd56da07c491569e·...·]-6">}</span><span·class="w">159 ················</span><span·class="p"·data-group-id="5808072918-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:·b8df58d8998f4ed1bb2138f88037e8a14d379e0e63a8ed09511587736639730d·...·]-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="8723867415-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:·613e3f1e4a269294ac3481aecbe2fd835e89669ad40bc9939c09891dc653059b·...·]-9">}</span><span·class="w">161 ················</span><span·class="p"·data-group-id="5808072918-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:·33cbd4dbe5bd4f5ed030c3f1966da43cc48fc551d157f8844909662bd8223086·...·]-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="8723867415-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:·657,·SHA:·6ddb53d4e91c3163c3373253cef195e40191958183930a2b00012f9cadc3e0ed·...·]-1">)</span><span·class="p">.</span><span·class="w">163 ················</span><span·class="p"·data-group-id="5808072918-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:·657,·SHA:·f10cdcc30909b6f8171c7f2cef1880b0b469c2ef88f63c0eedc050556271ff4a·...·]-1">)</span><span·class="p">.</span><span·class="w">
164 </span><span·class="p"·data-group-id="9685474436-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9685474436-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:·140,·SHA:·63c4e04833a9aa1d7e96541bcf425297459ab24357bebea5805eed372cbd2bef·...·]-2">}</span><span·class="gp·unselectable">164 </span><span·class="p"·data-group-id="2064195811-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2064195811-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:·140,·SHA:·bac2537e88048495be6537b0ae09461eb47359097ade9d888d5ddd18f98a28f0·...·]-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="9685474436-4">(</span><span·class="s">&quot;::FFFF:192.168.42.2&quot;</span><span·class="p"·data-group-id="9685474436-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="2064195811-4">(</span><span·class="s">&quot;::FFFF:192.168.42.2&quot;</span><span·class="p"·data-group-id="2064195811-4">)</span><span·class="p">.</span><span·class="w">
166 </span><span·class="p"·data-group-id="9685474436-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9685474436-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:·343,·SHA:·79413d4de335f748720b19770a41e09883b457d78cf85fd478ff2d3bf18aecc2·...·]-5">}</span></code></pre><h2·id="module-posix-error-codes"·class="section-heading">166 </span><span·class="p"·data-group-id="2064195811-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2064195811-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:·343,·SHA:·da633d91a7b39b1bc3bcb85e10f6b7a0bf1944f39c6430f9a6433f77cb024e3e·...·]-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="4423162900-1">(</span><span·class="s">&quot;kernel/include/inet.hrl&quot;</span><span·class="p"·data-group-id="4423162900-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="6652000999-1">(</span><span·class="s">&quot;kernel/include/inet.hrl&quot;</span><span·class="p"·data-group-id="6652000999-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="2630254633-1">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="2630254633-1">)</span><span·class="w">·</span><span·class="p">-&gt;</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="6095502573-1">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="6095502573-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
2132 ····</span><span·class="p"·data-group-id="2630254633-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2630254633-3">[</span><span·class="p"·data-group-id="2630254633-4">{</span><span·class="ss">raw</span><span·class="p">,</span><span·class="p">_</span><sp[·...·truncated·by·diffoscope;·len:·942,·SHA:·cf4e568b86be571cd247582f8e25a95da5859cbf1a9ce7ee085357eab2442380·...·]3-5">)</span><span·class="p">,</span><span·class="w">2132 ····</span><span·class="p"·data-group-id="6095502573-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6095502573-3">[</span><span·class="p"·data-group-id="6095502573-4">{</span><span·class="ss">raw</span><span·class="p">,</span><span·class="p">_</span><sp[·...·truncated·by·diffoscope;·len:·942,·SHA:·af6773018affe3908e4b9ddd99a3bb406f47919dee0d022d5d6fba83fe79c8c2·...·]3-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="4602491813-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:·153,·SHA:·f2ca244510faa26bf9f62db36b4b40cdd28c692d542900bbe1de28eeaf4da575·...·]-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="7797348456-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:·153,·SHA:·0e9efd434ad02d1a37ed26416be20689abccc8145fe7ea9c3f1d68e6a3ce444e·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3338 <p>Copyright·©·1996-2024·<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="8325481864-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="8325481864-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="7055897766-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="7055897766-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="8325481864-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="8325481864-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="7055897766-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="7055897766-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
184 ········</span><span·class="p"·data-group-id="8325481864-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Msg</span><span·class="p"·data-group-id="8325481864-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">184 ········</span><span·class="p"·data-group-id="7055897766-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Msg</span><span·class="p"·data-group-id="7055897766-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
185 ············</span><span·class="p"·data-group-id="8325481864-4">[</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="8325481864-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:·cef4cafa69c7979469969d10d98ead9b37b5db33ff4edc72df9d0c1965976110·...·]-5">)</span><span·class="w">185 ············</span><span·class="p"·data-group-id="7055897766-4">[</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="7055897766-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:·a371016403314e3939d9a64c378450f44d520d085f7db43f5038e7f6bea84269·...·]-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="8325481864-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="8325481864-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="7055897766-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="7055897766-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="8325481864-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="8325481864-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="7055897766-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="7055897766-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="8325481864-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="8325481864-8">)</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·64,·SHA:·3c6785aed22df4f43bc2f6b2eaa2f7869ede09aa02b2a8a8ce46072004acd5c1·...·]-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="7055897766-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="7055897766-8">)</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·64,·SHA:·be3b2a520fcfdea3e970ddbbfba0bcbf1f9095d3644dedcaed9a51a088c164fe·...·]-4">]</span><span·class="p">;</span><span·class="w">
189 ········</span><span·class="p"·data-group-id="8325481864-9">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="8325481864-9">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">189 ········</span><span·class="p"·data-group-id="7055897766-9">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="7055897766-9">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
190 ············</span><span·class="p"·data-group-id="8325481864-10">[</span><span·class="p"·data-group-id="8325481864-10">]</span><span·class="w">190 ············</span><span·class="p"·data-group-id="7055897766-10">[</span><span·class="p"·data-group-id="7055897766-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="0933428173-1">(</span><span·class="p"·data-group-id="0933428173-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="1936220007-1">(</span><span·class="p"·data-group-id="1936220007-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="0933428173-2">(</span><span·class="n">DnsMsg</span><span·class="p"·data-group-id="0933428173-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="1936220007-2">(</span><span·class="n">DnsMsg</span><span·class="p"·data-group-id="1936220007-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
597 ········</span><span·class="p"·data-group-id="0933428173-3">[</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-5">[·...·truncated·by·diffoscope;·len:·102,·SHA:·eb33eb514534f3e7a9da328e47cd3dba9e5be83a991e5ebead02ee1e2ac1aaf3·...·]-4">}</span><span·class="w">597 ········</span><span·class="p"·data-group-id="1936220007-3">[</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-5">[·...·truncated·by·diffoscope;·len:·102,·SHA:·0dc5d12ecd1e5516c502d93a826601b40f1f3ef22f1b7af23d27bc1149bb640a·...·]-4">}</span><span·class="w">
598 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-7">(</span><span·class="p"·data-group-id="0933428173-7">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·7b3aadab0295bba923158f077312c999238a825955749fcb1ecf1959cb1883a0·...·]-6">}</span><span·class="w">598 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-7">(</span><span·class="p"·data-group-id="1936220007-7">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·970da0c2abe16f49f905673259cdbd33656b0ee68325b4438afb72ef7f41b315·...·]-6">}</span><span·class="w">
599 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-9">(</span><span·class="p"·data-group-id="0933428173-9">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·2e21e1855f3297adf2b98c92d82ffcbb54f1675c3d5aad1c0dd052c366be5816·...·]-8">}</span><span·class="w">599 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-9">(</span><span·class="p"·data-group-id="1936220007-9">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·be0d18e6bb7b60fe9c7e836babcf3937c8ce9f9cc39b69fd11e2be60d1aa2142·...·]-8">}</span><span·class="w">
600 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-11">(</span><span·class="p"·data-group-id="0933428173-11">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·7b3aadab0295bba923158f077312c999238a825955749fcb1ecf1959cb1883a0·...·]-10">}</span><span·class="w">600 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-11">(</span><span·class="p"·data-group-id="1936220007-11">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·970da0c2abe16f49f905673259cdbd33656b0ee68325b4438afb72ef7f41b315·...·]-10">}</span><span·class="w">
601 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-13">(</span><span·class="p"·data-group-id="0933428173-13">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·ae6dbf8e8b24e7896cfa9fff07137b042305454d7af1daefa80821871d6d22aa·...·]-3">]</span><span·class="w">601 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-13">(</span><span·class="p"·data-group-id="1936220007-13">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·0429afa71e3ed677ea50e4861b536e29b9f22b9c1dd7180faf26977f5b7ed39b·...·]-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="0933428173-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="0933428173-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·133,·SHA:·d36efdb9ae25d59fa5083357b0c8efa5011290905d77c0f799891984660366b3·...·]-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="1936220007-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="1936220007-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·133,·SHA:·c1c75d0667fa2322777df286a8934d1542ae7b79e47f90193b4c085c4c3b0e4f·...·]-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="0933428173-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="0933428173-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="1936220007-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="1936220007-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="0933428173-17">(</span><span·class="p"·data-group-id="0933428173-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="1936220007-17">(</span><span·class="p"·data-group-id="1936220007-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="0933428173-18">(</span><span·class="n">DnsHeader</span><span·class="p"·data-group-id="0933428173-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="1936220007-18">(</span><span·class="n">DnsHeader</span><span·class="p"·data-group-id="1936220007-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
606 ········</span><span·class="p"·data-group-id="0933428173-19">[</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-21">(</s[·...·truncated·by·diffoscope;·len:·99,·SHA:·27374eff381d8cef68b477b4417389d998575bdf3b46ea2bd1351ff43cd2b898·...·]-20">}</span><span·class="w">606 ········</span><span·class="p"·data-group-id="1936220007-19">[</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-21">(</s[·...·truncated·by·diffoscope;·len:·99,·SHA:·069c0884f845ef0529279d818dedbb205923ec869e02a083701e53c8f8853368·...·]-20">}</span><span·class="w">
607 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-23">(</span><span·class="p"·data-group-id="0933428173-23">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·2e21e1855f3297adf2b98c92d82ffcbb54f1675c3d5aad1c0dd052c366be5816·...·]-22">}</span><span·class="w">607 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-23">(</span><span·class="p"·data-group-id="1936220007-23">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·be0d18e6bb7b60fe9c7e836babcf3937c8ce9f9cc39b69fd11e2be60d1aa2142·...·]-22">}</span><span·class="w">
608 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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:·8867036b90885eb19095f9028e9062b33579b33cbf3f86c0a5d9fe6a54cf360d·...·]-24">}</span><span·class="w">608 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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:·bfb386bc8e998d32bcfe832d01729fdfe67ee93c519a348a263a60cbeb06d84c·...·]-24">}</span><span·class="w">
609 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-27">(</span><span·class="p"·data-group-id="0933428173-27">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·2e21e1855f3297adf2b98c92d82ffcbb54f1675c3d5aad1c0dd052c366be5816·...·]-26">}</span><span·class="w">609 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-27">(</span><span·class="p"·data-group-id="1936220007-27">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·be0d18e6bb7b60fe9c7e836babcf3937c8ce9f9cc39b69fd11e2be60d1aa2142·...·]-26">}</span><span·class="w">
610 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-29">(</span><span·class="p"·data-group-id="0933428173-29">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·2e21e1855f3297adf2b98c92d82ffcbb54f1675c3d5aad1c0dd052c366be5816·...·]-28">}</span><span·class="w">610 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-29">(</span><span·class="p"·data-group-id="1936220007-29">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·be0d18e6bb7b60fe9c7e836babcf3937c8ce9f9cc39b69fd11e2be60d1aa2142·...·]-28">}</span><span·class="w">
611 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-31">(</span><span·class="p"·data-group-id="0933428173-31">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·2e21e1855f3297adf2b98c92d82ffcbb54f1675c3d5aad1c0dd052c366be5816·...·]-30">}</span><span·class="w">611 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-31">(</span><span·class="p"·data-group-id="1936220007-31">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·be0d18e6bb7b60fe9c7e836babcf3937c8ce9f9cc39b69fd11e2be60d1aa2142·...·]-30">}</span><span·class="w">
612 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-33">(</span><span·class="p"·data-group-id="0933428173-33">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·2e21e1855f3297adf2b98c92d82ffcbb54f1675c3d5aad1c0dd052c366be5816·...·]-32">}</span><span·class="w">612 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-33">(</span><span·class="p"·data-group-id="1936220007-33">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·be0d18e6bb7b60fe9c7e836babcf3937c8ce9f9cc39b69fd11e2be60d1aa2142·...·]-32">}</span><span·class="w">
613 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-35">(</span><span·class="p"·data-group-id="0933428173-35">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·2e21e1855f3297adf2b98c92d82ffcbb54f1675c3d5aad1c0dd052c366be5816·...·]-34">}</span><span·class="w">613 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-35">(</span><span·class="p"·data-group-id="1936220007-35">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·be0d18e6bb7b60fe9c7e836babcf3937c8ce9f9cc39b69fd11e2be60d1aa2142·...·]-34">}</span><span·class="w">
614 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-37">(</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</spa[·...·truncated·by·diffoscope;·len:·201,·SHA:·1203930b8987d03f7e025b1a019b7973bab85eafbe3ae7062d0b639404a7081e·...·]-19">]</span><span·class="w">614 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-37">(</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</spa[·...·truncated·by·diffoscope;·len:·201,·SHA:·95de7668f0268ca44f161ce6bf71a71a5011c31465ba5ecb802e8582622b5fa9·...·]-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="0933428173-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="0933428173-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="1936220007-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="1936220007-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="0933428173-39">(</span><span·class="p"·data-group-id="0933428173-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:·73ce4479e7d7a9e950c18b9ea551c0654e259e4dae88b795d3fb40fe519b536a·...·]-40">)</span><span·class="w">616 </span><span·class="nf">query_type</span><span·class="p"·data-group-id="1936220007-39">(</span><span·class="p"·data-group-id="1936220007-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:·2ab75048c7198611a6a2e9f0ec33dd1f66f2c446a72af1010236de989eb8d302·...·]-40">)</span><span·class="w">
  
617 </span><span·class="nf">dns_query</span><span·class="p"·data-group-id="0933428173-41">(</span><span·class="p"·data-group-id="0933428173-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="1936220007-41">(</span><span·class="p"·data-group-id="1936220007-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="0933428173-42">(</span><span·class="n">DnsQuery</span><span·class="p"·data-group-id="0933428173-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="1936220007-42">(</span><span·class="n">DnsQuery</span><span·class="p"·data-group-id="1936220007-42">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
619 ········</span><span·class="p"·data-group-id="0933428173-43">[</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-45"[·...·truncated·by·diffoscope;·len:·104,·SHA:·8e5b28d50b1337144934da5dc7f06c8dfc29521929eae3dcd436b46b04c44273·...·]-44">}</span><span·class="w">619 ········</span><span·class="p"·data-group-id="1936220007-43">[</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-45"[·...·truncated·by·diffoscope;·len:·104,·SHA:·024b438d6962c765856c758223b29bf2e7a6ae6880b71d71f24f0893c5138cb7·...·]-44">}</span><span·class="w">
620 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-47">(</span><span·class="p"·data-group-id="0933428173-47">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·044d0f8f98eb2d58ba9d884d7b975bb2a1665762739fec8d3059df025a86f27e·...·]-46">}</span><span·class="w">620 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-47">(</span><span·class="p"·data-group-id="1936220007-47">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·10c0848da5accb13a2dbcd4c37893bf3ec937c8527be0ede5780496be17a24fd·...·]-46">}</span><span·class="w">
621 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-49">(</span><span·class="p"·data-group-id="0933428173-49">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·104,·SHA:·9c20c494822a72a8649e4e3e5d8948ce9f868de28a647fa5cc8e685a5bffc0a5·...·]-43">]</span><span·class="w">621 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-49">(</span><span·class="p"·data-group-id="1936220007-49">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·104,·SHA:·5c739e8495ace49780844f26129b6be063ee5f43c9ddabcb74d8d5bca3e29edf·...·]-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="0933428173-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="0933428173-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="1936220007-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="1936220007-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="0933428173-51">(</span><span·class="p"·data-group-id="0933428173-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="1936220007-51">(</span><span·class="p"·data-group-id="1936220007-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="0933428173-52">(</span><span·class="n">DnsRr</span><span·class="p"·data-group-id="0933428173-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="1936220007-52">(</span><span·class="n">DnsRr</span><span·class="p"·data-group-id="1936220007-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="0933428173-53">[</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-55"[·...·truncated·by·diffoscope;·len:·104,·SHA:·80033b788d7cf56a24bfb94543dc0666a1a12ffd8c4a8e18d26ba013932f6caa·...·]-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="1936220007-53">[</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-55"[·...·truncated·by·diffoscope;·len:·104,·SHA:·c5bd816f7ad5234ba2f0d64ca0e89e0ebf79f586006a25b303669ae6bc4c237b·...·]-54">}</span><span·class="w">
626 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-57">(</span><span·class="p"·data-group-id="0933428173-57">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·81949c29d6eaa8748f82de3fa14a4abbb8cca5716a4ab2859bf1bfe6327fdde2·...·]-56">}</span><span·class="w">626 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-57">(</span><span·class="p"·data-group-id="1936220007-57">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·1f51f82d7211a8ff0b3a49cce4f0c6e826d3b102076957a29a823567831683e8·...·]-56">}</span><span·class="w">
627 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-59">(</span><span·class="p"·data-group-id="0933428173-59">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·044d0f8f98eb2d58ba9d884d7b975bb2a1665762739fec8d3059df025a86f27e·...·]-58">}</span><span·class="w">627 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-59">(</span><span·class="p"·data-group-id="1936220007-59">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·10c0848da5accb13a2dbcd4c37893bf3ec937c8527be0ede5780496be17a24fd·...·]-58">}</span><span·class="w">
628 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-61">(</span><span·class="p"·data-group-id="0933428173-61">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·a927a1b4aaab306ee349c35f7bec764a58f042259c48e985f6f25cb360868c11·...·]-60">}</span><span·class="w">628 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-61">(</span><span·class="p"·data-group-id="1936220007-61">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·f31cce52b1e407b2b92e1b1881260d3b02baaae41e4647570031e31727cdaa6d·...·]-60">}</span><span·class="w">
629 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-63">(</span><span·class="p"·data-group-id="0933428173-63">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·507815d0056d459744f13b6bb39e159b56f7a4b692aeed876f4f9928164e7f50·...·]-53">]</span><span·class="w">629 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-63">(</span><span·class="p"·data-group-id="1936220007-63">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·59727f2299d3856d21ced688405d4eea13818856a98c9d15658d814fffa27194·...·]-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="0933428173-64">[</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-66"[·...·truncated·by·diffoscope;·len:·104,·SHA:·41d01f7b726bb279bf69f1784c4587f694d5c17c6dfe42cba20b463d1d7d0b68·...·]-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="1936220007-64">[</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-66"[·...·truncated·by·diffoscope;·len:·104,·SHA:·fe694e8a939923671f0c9608b054de2bc759b2c2007380e431ebf89a0b148963·...·]-65">}</span><span·class="w">
631 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-67">}</span><span·class="w">631 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-67">}</span><span·class="w">
632 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-69">(</span><span·class="p"·data-group-id="0933428173-69">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·44110e15a22da537e5581b20ab5dff1cb1ab5948c1cebe70a218f566102c34b1·...·]-68">}</span><span·class="w">632 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-69">(</span><span·class="p"·data-group-id="1936220007-69">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·6ff6fb4de73893789bc7af37d5ea9fe720e044e0e3d09a6efea2e5b21667c7ae·...·]-68">}</span><span·class="w">
633 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-71">(</span><span·class="p"·data-group-id="0933428173-71">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·88efdb4f8c10f8056592e956ff24579555aae36663c6236ef6e59d284bacd36b·...·]-70">}</span><span·class="w">633 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-71">(</span><span·class="p"·data-group-id="1936220007-71">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·7f5c80490ad143bb4673e033752257699df3172e48b22d963cb645c2cec62579·...·]-70">}</span><span·class="w">
634 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-73">(</span><span·class="p"·data-group-id="0933428173-73">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·044d0f8f98eb2d58ba9d884d7b975bb2a1665762739fec8d3059df025a86f27e·...·]-72">}</span><span·class="w">634 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-73">(</span><span·class="p"·data-group-id="1936220007-73">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·10c0848da5accb13a2dbcd4c37893bf3ec937c8527be0ede5780496be17a24fd·...·]-72">}</span><span·class="w">
635 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-75">(</span><span·class="p"·data-group-id="0933428173-75">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·f516716c0440d4da36f4d1c8d8872634858c27c938299525fe61a1e9e8d2e329·...·]-74">}</span><span·class="w">635 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-75">(</span><span·class="p"·data-group-id="1936220007-75">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·adb822b913f3988cbfa743aac04539f6f36890dc0814b831515168e10c97b747·...·]-74">}</span><span·class="w">
636 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0933428173-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="0933428173-77">(</span><span·class="p"·data-group-id="0933428173-77">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·b5710ed8cb6845014b85a4ec6bdecea76daa2a8915429a3131a90d6cf68fe287·...·]-64">]</span><span·class="w">636 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1936220007-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="1936220007-77">(</span><span·class="p"·data-group-id="1936220007-77">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·691840017c576d2135c91947ddd94ae64e505801aa1630e16c07cf543656b14e·...·]-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="0933428173-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="0933428173-78">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·472,·SHA:·de4de48d0e126944c90541d2d1753960184351abf571252032d063bdc2d4f826·...·]-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="1936220007-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="1936220007-78">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·472,·SHA:·4c2d0b64ae9a6de520b3d063ea95824e0213a83e4531b3bedb4a3e3cebaa847d·...·]-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="1617414078-3">(</span><span·class="nf">dns_header</span><span·class="p"·data-group-id="1617414078-4">(</span><span·class="p"·data-group-id="1617414078-4">)</span><span·class="p"·data-group-id="1617414078-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="6756330720-3">(</span><span·class="nf">dns_header</span><span·class="p"·data-group-id="6756330720-4">(</span><span·class="p"·data-group-id="6756330720-4">)</span><span·class="p"·data-group-id="6756330720-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="1617414078-5">(</span><span·class="nf">dns_query</span><span·class="p"·data-group-id="1617414078-6">(</span><span·class="p"·data-group-id="1617414078-6">)</span><span·class="p"·data-group-id="1617414078-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="6756330720-5">(</span><span·class="nf">dns_query</span><span·class="p"·data-group-id="6756330720-6">(</span><span·class="p"·data-group-id="6756330720-6">)</span><span·class="p"·data-group-id="6756330720-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="1617414078-7">(</span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="1617414078-8">(</span><span·class="p"·data-group-id="1617414078-8">)</span><span·class="p"·data-group-id="1617414078-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="6756330720-7">(</span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="6756330720-8">(</span><span·class="p"·data-group-id="6756330720-8">)</span><span·class="p"·data-group-id="6756330720-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="1617414078-9">(</span><span·class="p">_</span><span·class="p"·data-group-id="1617414078-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="6756330720-9">(</span><span·class="p">_</span><span·class="p"·data-group-id="6756330720-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1513 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>192 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>427 <p>Copyright·©·1996-2024·<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="9233879290-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="9233879290-2">[</span><span·class="n">Reason</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·3d5a4bfeed1220171adba66aea55233a5a924cde8a8c44b5552203cd3ef54f1d·...·]-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="2427291685-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="2427291685-2">[</span><span·class="n">Reason</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·55e3733c3f3b41177a7df5d24693acf227fe1d64ae08ebeaec7daa446d3ee0d5·...·]-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="9233879290-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="9233879290-4">[</span><span·class="n">Reason</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·78cbb6a04ff34c24e13ec32ba633326e6c608c690e36ee4cc7badaf7ec8e20ae·...·]-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="2427291685-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="2427291685-4">[</span><span·class="n">Reason</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·ffd836a377ebdd4abb80f7d3bc8d755b117329c71ac1097a053e62404f06d646·...·]-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="8495066959-1">[</span><span·class="p"·data-group-id="8495066959-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="8108051150-1">[</span><span·class="p"·data-group-id="8108051150-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
139 ··</span><span·class="p"·data-group-id="8495066959-3">[</span><span·class="p"·data-group-id="8495066959-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">139 ··</span><span·class="p"·data-group-id="8108051150-3">[</span><span·class="p"·data-group-id="8108051150-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
140 ····</span><span·class="p"·data-group-id="8495066959-5">[</span><span·class="p"·data-group-id="8495066959-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="8108051150-5">[</span><span·class="p"·data-group-id="8108051150-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="8495066959-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="8495066959-8">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;<[·...·truncated·by·diffoscope;·len:·493,·SHA:·bc3c39978b0a053d0f68e2f591852b522619238769313991307342c67e206d4c·...·]-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="8108051150-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="8108051150-8">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;<[·...·truncated·by·diffoscope;·len:·493,·SHA:·f7a34861f4f9d8153d43440be0b420f1d47959200a88bf3a638f3c6e58585c3f·...·]-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="3666019657-1">(</span><span·class="s">&quot;kernel/include/logger.hrl&quot;</span><span·class="p"·data-group-id="3666019657-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="3095164781-1">(</span><span·class="s">&quot;kernel/include/logger.hrl&quot;</span><span·class="p"·data-group-id="3095164781-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="3895163028-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="3895163028-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="5821896937-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="5821896937-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="3895163028-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="3895163028-3">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·265,·SHA:·6f89c880465984756229061ca192fc5d2d56d587c43f3806f837c9f98e0cca5a·...·]-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="5821896937-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="5821896937-3">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·265,·SHA:·cd0dde73fcc41216d9e357b02abc2f8759bbd8704f6b19d9d4973a477e5f413e·...·]-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="3895163028-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="3895163028-5">[</span><span·class="n">Cause</sp[·...·truncated·by·diffoscope;·len:·97,·SHA:·51382678f1c058f642dae26a499386ae5d1c1c4895b3a7e2b6ec96ac4e864036·...·]-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="5821896937-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="5821896937-5">[</span><span·class="n">Cause</sp[·...·truncated·by·diffoscope;·len:·97,·SHA:·5ad0a6d8d3b2803b0f893d490ffcc6f890657718012de3164fd60fc8b335053d·...·]-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="3895163028-6">(</span><span·class="ss">warning</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3895163028-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:·6a55995504d15194cf854c6d0c6503aff405145baa969aee56d5db1963e290d0·...·]-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="5821896937-6">(</span><span·class="ss">warning</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5821896937-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:·92d7af855201bb15b6500cace643f40f5e4f495f9c649b3f7a694f837177f807·...·]-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="1554306527-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1554306527-2">(</span><span·class="p"·data-group-id="1554306527-3">[</span><span·class="p"·data-group-id="1554306527-3">]</span><span·class="p"·data-group-id="1554306527-2">)</[·...·truncated·by·diffoscope;·len:·900,·SHA:·512347395614a0ef56fe0494cd481e52dfc8e7a2aed7b95fc141feb7c0efe767·...·]-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="0765759465-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0765759465-2">(</span><span·class="p"·data-group-id="0765759465-3">[</span><span·class="p"·data-group-id="0765759465-3">]</span><span·class="p"·data-group-id="0765759465-2">)</[·...·truncated·by·diffoscope;·len:·900,·SHA:·7319473091654940be63211520ef71a08fcfa4e67cd87220800b2e77a4203f93·...·]-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="1554306527-8">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1554306527-9">(</span><span·class="n">What</span><span·class="p"·data-group-id="1554306527-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·727,·SHA:·de1ce605488cbb2bc18a292aaa7de1fe79edc4df857323c71b43ec99d81e1a37·...·]-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="0765759465-8">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0765759465-9">(</span><span·class="n">What</span><span·class="p"·data-group-id="0765759465-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·727,·SHA:·4900e71ca47bf602139474cc8ab16729fa3fd57b22e538e263914695687a54bb·...·]-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="1554306527-12">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1554306527-13">(</span><span·class="p"·data-group-id="1554306527-14">[</span><span·class="p"·data-group-id="1554306527-14">]</span><span·class="p"·data-group-id="1554306527-13[·...·truncated·by·diffoscope;·len:·859,·SHA:·c34af094fcb8eda9bd17b335246ee7f6c12174a937fbf5a3b5e9012ea2be4b83·...·]-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="0765759465-12">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0765759465-13">(</span><span·class="p"·data-group-id="0765759465-14">[</span><span·class="p"·data-group-id="0765759465-14">]</span><span·class="p"·data-group-id="0765759465-13[·...·truncated·by·diffoscope;·len:·859,·SHA:·c4bf1021756a0f6a358c19d5aa00b52b9bb8e0ba3b75cdfb92f2220279db9f6b·...·]-18">]</span><span·class="p">,</span><span·class="w">
2439 ···············</span><span·class="p"·data-group-id="1554306527-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="1554306527-19">}</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·011f6dc787a69bf8fede0d03bed41fd1c4de7fe9d70770efb86af52f920eb797·...·]-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="0765759465-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="0765759465-19">}</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·312bbcf61b7df897aceb96d6ea1ab2185002983cbe6c636ae0c999ff510a0e4e·...·]-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="7830231452-1">(</span><span·class="ss">application</span><span·class="p"·data-group-id="7830231452-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="1418542875-1">(</span><span·class="ss">application</span><span·class="p"·data-group-id="1418542875-1">)</span><span·class="p">.</span><span·class="w">
2762 </span><span·class="nf">start</span><span·class="p"·data-group-id="7830231452-2">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7830231452-3">[</span><span·class="p"·data-group-id="7830231452-3">]</span><span·class="p"·data-group-id="7830231452-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="1418542875-2">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1418542875-3">[</span><span·class="p"·data-group-id="1418542875-3">]</span><span·class="p"·data-group-id="1418542875-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="7830231452-4">(</span><span·class="p"·data-group-id="7830231452-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="7830231452-5">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·252,·SHA:·e7dd1068de9b686fb26643eaf0faddb02f0f86b5ba7b3ab07229fbd31464ec38·...·]-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="1418542875-4">(</span><span·class="p"·data-group-id="1418542875-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="1418542875-5">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·252,·SHA:·50822988ed7cd59b82b282117ed8abf8ec154364726e85e2d3cbdd5dec768f41·...·]-4">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
2764 ········</span><span·class="p"·data-group-id="7830231452-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="7830231452-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">2764 ········</span><span·class="p"·data-group-id="1418542875-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="1418542875-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="7830231452-8">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="7830231452-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="1418542875-8">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="1418542875-8">)</span><span·class="p">,</span><span·class="w">
2766 ············</span><span·class="p"·data-group-id="7830231452-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="7830231452-10">[</span><span·class="p"·data-group-id="7[·...·truncated·by·diffoscope;·len:·63,·SHA:·28480214d2586dde0a94be3a08235aaf5aaf9d819de0d3fe8c58a3ff6d75998f·...·]-9">}</span><span·class="p">;</span><span·class="w">2766 ············</span><span·class="p"·data-group-id="1418542875-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="1418542875-10">[</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·63,·SHA:·7793407b8b1e101b7e2648a0274a69ad54604d1399a2cd36b58ab869e0f071be·...·]-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="5059454389-1">[</span><span·class="p"·data-group-id="5059454389-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="9954477360-1">[</span><span·class="p"·data-group-id="9954477360-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
2774 ··</span><span·class="p"·data-group-id="5059454389-3">[</span><span·class="p"·data-group-id="5059454389-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">2774 ··</span><span·class="p"·data-group-id="9954477360-3">[</span><span·class="p"·data-group-id="9954477360-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="5059454389-5">[</span><span·class="p"·data-group-id="5059454389-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:·f3c9a0fa9dab81f610c00cbd230ae8d75646ca06095893d574acb0ad1d63ae2d·...·]-2">}</span><span·class="p">,</span><span·class="w">2776 ····</span><span·class="p"·data-group-id="9954477360-5">[</span><span·class="p"·data-group-id="9954477360-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:·d07b473ffe226123617abcd84b53f1fdaadc3acc516a84b2b723d5de0e7955c8·...·]-2">}</span><span·class="p">,</span><span·class="w">
2777 ·</span><span·class="p"·data-group-id="5059454389-7">{</span><span·class="ss">my_app</span><span·class="p">,</span><span·class="w">2777 ·</span><span·class="p"·data-group-id="9954477360-7">{</span><span·class="ss">my_app</span><span·class="p">,</span><span·class="w">
2778 ··</span><span·class="p"·data-group-id="5059454389-8">[</span><span·class="p"·data-group-id="5059454389-9">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">2778 ··</span><span·class="p"·data-group-id="9954477360-8">[</span><span·class="p"·data-group-id="9954477360-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="5059454389-10">[</span><span·class="p"·data-group-id="5059454389-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:·9456eaba36abcf27062a961f116ec44191a154d54d443038f32a10a4a0e55e86·...·]-1">]</span><span·class="p">.</span></code></pre>2780 ····</span><span·class="p"·data-group-id="9954477360-10">[</span><span·class="p"·data-group-id="9954477360-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:·6757d544e718e091d0270f05ba2ad18857096444e58027443a058bee3c884957·...·]-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="3876114000-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="4149452799-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="3876114000-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="3876114000-2">}</span><span·class="p"·data-group-id="3876114000-1">)</span><span·class="p">.</span></code></pre>3735 »       ······</span><span·class="p"·data-group-id="4149452799-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="4149452799-2">}</span><span·class="p"·data-group-id="4149452799-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="4046992866-1">(</span><span·class="s">&quot;kernel/include/logger.hrl&quot;</span><span·class="p"·data-group-id="4046992866-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="7318933444-1">(</span><span·class="s">&quot;kernel/include/logger.hrl&quot;</span><span·class="p"·data-group-id="7318933444-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="5417631334-1">(</span><span·class="s">&quot;The·file·does·not·exist:·~ts&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="5417631334-2">[</span><span·class="n">Filename</span><span·class="p"·data-group-id="5417631334-2">]</span><span·clas[·...·truncated·by·diffoscope;·len:·367,·SHA:·42e4d6b0903d1938031bccaa1bd077c232ee07f4a3a0a46735ca9ce5bd4579ae·...·]-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="3145909907-1">(</span><span·class="s">&quot;The·file·does·not·exist:·~ts&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="3145909907-2">[</span><span·class="n">Filename</span><span·class="p"·data-group-id="3145909907-2">]</span><span·clas[·...·truncated·by·diffoscope;·len:·367,·SHA:·2a700297dbe545f5da29e773057076f27181699e3c605057c3919f55fffe836c·...·]-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="2479880818-1">(</span><span·class="p"·data-group-id="2479880818-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:·fef9574a678913b76f36e9252cd95f5ec9cedea223b73ac278c3972a20329fa5·...·]-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="1585005007-1">(</span><span·class="p"·data-group-id="1585005007-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:·5ad37222b99c2b1b5d81f5c5ac04146aedc6d4314ba61c34b0effd5a092e8d6f·...·]-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="0205758708-1">(</span><span·class="p"·data-group-id="0205758708-2">(</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">report</span><span·class="p"·data-group-id="0205758708-3">(</span><span·class="p"·data-group-id="0205758708-3"[·...·truncated·by·diffoscope;·len:·735,·SHA:·33dc8a6ace54250851b62a2d76a4f5bbf7374c0341816e10903772044f916884·...·]-1">)</span></code></pre><p>If·it·takes·two·arguments,·the·first·is·the·report,·and·the·second·is·a·map224 arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="5841753112-1">(</span><span·class="p"·data-group-id="5841753112-2">(</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">report</span><span·class="p"·data-group-id="5841753112-3">(</span><span·class="p"·data-group-id="5841753112-3"[·...·truncated·by·diffoscope;·len:·735,·SHA:·81531bc694890154c3bd216cc5207bf9c3fc550ce4ad59661c2de758eaa0e573·...·]-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="4192471660-1">(</span><span·class="p"·data-group-id="4192471660-2">(</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">report</span><span·class="p"·data-group-id="4192471660-3">(</span><span·class="p"·data-group-id="4192471660-3"[·...·truncated·by·diffoscope;·len:·596,·SHA:·438cfdb6c9396e940318aea6575bad69d0537b01210127cd8eed417f1e8b6fca·...·]-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·the225 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="1666074193-1">(</span><span·class="p"·data-group-id="1666074193-2">(</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">report</span><span·class="p"·data-group-id="1666074193-3">(</span><span·class="p"·data-group-id="1666074193-3"[·...·truncated·by·diffoscope;·len:·596,·SHA:·6e0c7e762bef6d9dc3d9814559097e2886c5875ba02e779749e8c20dffae32df·...·]-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="1588190419-1">(</span><span·class="p"·data-group-id="1588190419-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:·362,·SHA:·96a5050285dff72a6806c45e588490984c2dcd0ee28ebc18cf7d449e055d32ff·...·]-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="9456699047-1">(</span><span·class="p"·data-group-id="9456699047-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:·362,·SHA:·d1bdb7ba48dcef48c647b791de4e118f062a89cadfcbbb94c994b99a917b75b1·...·]-2">}</span><span·class="p">,</span><span·class="w">
231 ·············</span><span·class="p"·data-group-id="1588190419-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="1588190419-4">(</span><span·class="n">R</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·597,·SHA:·37fd2f231ca4341d25c73ae1f20583e5f4e783a68448417034e17e30eb28d27c·...·]-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="9456699047-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="9456699047-4">(</span><span·class="n">R</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·597,·SHA:·02888585e2815269b39ee2777e6a16a8239f0b05bd8bf8127a3f038931a81aaf·...·]-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="6381430559-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="6381430559-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="0986827469-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="0986827469-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="9372194187-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="9372194187-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="2480361518-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="2480361518-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="6748352819-1">(</span><span·class="n">FilterId</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6748352819-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:·15939b091db6baaac3e66d0d48bb530dc280263f14241482ded1b1d4aeffb22a·...·]-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="7465040476-1">(</span><span·class="n">FilterId</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7465040476-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:·ca7ec68acc1c0e1fd3c2b983715368f02e69d797fc33fcffde3dbe430f8db493·...·]-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="9516472618-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="9516472618-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="3026791613-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="3026791613-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="4095723838-1">[</span><span·class="p"·data-group-id="4095723838-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="9183269184-1">[</span><span·class="p"·data-group-id="9183269184-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
450 ··</span><span·class="p"·data-group-id="4095723838-3">[</span><span·class="p"·data-group-id="4095723838-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">450 ··</span><span·class="p"·data-group-id="9183269184-3">[</span><span·class="p"·data-group-id="9183269184-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
451 ····</span><span·class="p"·data-group-id="4095723838-5">[</span><span·class="p"·data-group-id="4095723838-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="9183269184-5">[</span><span·class="p"·data-group-id="9183269184-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="4095723838-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="4095723838-8">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;[·...·truncated·by·diffoscope;·len:·227,·SHA:·7291c5498c2d4d58ca11ce5f543718263cdc9bfdad67b0cec7c8b263dbab04d5·...·]-6">}</span><span·class="w">··</span><span·class="c1">%·Config}</span><span·class="w">452 ······</span><span·class="p"·data-group-id="9183269184-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="9183269184-8">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;[·...·truncated·by·diffoscope;·len:·227,·SHA:·868456282785ed18c02cb759f85e1673199472a1aa75fbbed1da7596cf3ca7ef·...·]-6">}</span><span·class="w">··</span><span·class="c1">%·Config}</span><span·class="w">
453 ····</span><span·class="p"·data-group-id="4095723838-5">]</span><span·class="p"·data-group-id="4095723838-4">}</span><span·class="p"·data-group-id="4095723838-3">]</span><span·class="p"·data-group-id="4095723838-2">}</span><span·class="p"·data-group-id="4095723838-1">]</span><span·class="p">.</spa[·...·truncated·by·diffoscope;·len:·232,·SHA:·60842eecfb64c71352a62f467f01573a1cafae5a0e1d9f56b06164df39716fa6·...·]-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">453 ····</span><span·class="p"·data-group-id="9183269184-5">]</span><span·class="p"·data-group-id="9183269184-4">}</span><span·class="p"·data-group-id="9183269184-3">]</span><span·class="p"·data-group-id="9183269184-2">}</span><span·class="p"·data-group-id="9183269184-1">]</span><span·class="p">.</spa[·...·truncated·by·diffoscope;·len:·232,·SHA:·92697c4dbfaab2e222bdc28d1d1939a6ca9e621cb35bbc0c21ab0e74a4d91a91·...·]-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
454 ··</span><span·class="p"·data-group-id="3193692639-3">[</span><span·class="p"·data-group-id="3193692639-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">454 ··</span><span·class="p"·data-group-id="2361242466-3">[</span><span·class="p"·data-group-id="2361242466-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
455 ····</span><span·class="p"·data-group-id="3193692639-5">[</span><span·class="p"·data-group-id="3193692639-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="3193692639-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="3193692639-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3193692639-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="3193692639-9">}</span><span·class="p"·data-group-id="3193692639-8">}</span><span·class="p"·data-group-id="3193692639-7">}</span><span·class="p"·data-group-id="3193692639-6">}</span><span·class="w"> 
457 ····</span><span·class="p"·data-group-id="3193692639-5">]</span><span·class="p"·data-group-id="3193692639-4">}</span><span·class="p"·data-group-id="3193692639-3">]</span><span·class="p"·data-group-id="3193692639-2">}</span><span·class="p"·data-group-id="3193692639-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="6172956440-1">[</span><span·class="p"·data-group-id="6172956440-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w"> 
459 ··</span><span·class="p"·data-group-id="6172956440-3">[</span><span·class="p"·data-group-id="6172956440-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w"> 
460 ····</span><span·class="p"·data-group-id="6172956440-5">[</span><span·class="p"·data-group-id="6172956440-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="2361242466-5">[</span><span·class="p"·data-group-id="2361242466-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="2361242466-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="2361242466-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2361242466-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="2361242466-9">}</span><span·class="p"·data-group-id="2361242466-8">}</span><span·class="p"·data-group-id="2361242466-7">}</span><span·class="p"·data-group-id="2361242466-6">}</span><span·class="w">
 457 ····</span><span·class="p"·data-group-id="2361242466-5">]</span><span·class="p"·data-group-id="2361242466-4">}</span><span·class="p"·data-group-id="2361242466-3">]</span><span·class="p"·data-group-id="2361242466-2">}</span><span·class="p"·data-group-id="2361242466-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="8551555921-1">[</span><span·class="p"·data-group-id="8551555921-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
 459 ··</span><span·class="p"·data-group-id="8551555921-3">[</span><span·class="p"·data-group-id="8551555921-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
 460 ····</span><span·class="p"·data-group-id="8551555921-5">[</span><span·class="p"·data-group-id="8551555921-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="6172956440-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="6172956440-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">461 ······</span><span·class="p"·data-group-id="8551555921-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="8551555921-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">
462 ························</span><span·class="p"·data-group-id="6172956440-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="6172956440-10">[</span><span·class="ss">time</span><span·class="p">,</span><span·class="s">&qu[·...·truncated·by·diffoscope;·len:·494,·SHA:·5188566298afaa63e3a40c563804f7445ada002e67f5a2d5ee57a567f58d29c5·...·]-6">}</span><span·class="w">462 ························</span><span·class="p"·data-group-id="8551555921-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="8551555921-10">[</span><span·class="ss">time</span><span·class="p">,</span><span·class="s">&qu[·...·truncated·by·diffoscope;·len:·494,·SHA:·45bd9eff0f70b72e3991d8388c0aebca26ad3c084192f4b5817dbe0e3c6b0249·...·]-6">}</span><span·class="w">
463 ····</span><span·class="p"·data-group-id="6172956440-5">]</span><span·class="p"·data-group-id="6172956440-4">}</span><span·class="p"·data-group-id="6172956440-3">]</span><span·class="p"·data-group-id="6172956440-2">}</span><span·class="p"·data-group-id="6172956440-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="8551555921-5">]</span><span·class="p"·data-group-id="8551555921-4">}</span><span·class="p"·data-group-id="8551555921-3">]</span><span·class="p"·data-group-id="8551555921-2">}</span><span·class="p"·data-group-id="8551555921-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="5406489615-1">[</span><span·class="p"·data-group-id="5406489615-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="5507711858-1">[</span><span·class="p"·data-group-id="5507711858-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
466 ··</span><span·class="p"·data-group-id="5406489615-3">[</span><span·class="p"·data-group-id="5406489615-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">466 ··</span><span·class="p"·data-group-id="5507711858-3">[</span><span·class="p"·data-group-id="5507711858-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
467 ····</span><span·class="p"·data-group-id="5406489615-5">[</span><span·class="p"·data-group-id="5406489615-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="5507711858-5">[</span><span·class="p"·data-group-id="5507711858-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="5406489615-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="5507711858-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="5406489615-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="5406489615-8">}</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·66,·SHA:·2dd48da6de04f5693dd8c1010391dc65d875b373415edea4229b6438828d28d5·...·]-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="5507711858-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="5507711858-8">}</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·66,·SHA:·f4f526e06d1edf731261c7c763e3b54b30505f299c92fe601cbb5c7a7eb35be4·...·]-6">}</span><span·class="p">,</span><span·class="w">
470 ·····</span><span·class="p"·data-group-id="5406489615-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="5507711858-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="5406489615-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="5507711858-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="5406489615-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="5406489615-11">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·68,·SHA:·28302acea86d39dec533feee7afa64eb4186ac568ae1d8e6c5ea94587b526591·...·]-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="5507711858-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="5507711858-11">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·68,·SHA:·f2ebcef2fe5946fa43b1df4ed086449e35d765050f89d3be7258cfdb552f83e6·...·]-9">}</span><span·class="w">
473 ····</span><span·class="p"·data-group-id="5406489615-5">]</span><span·class="p"·data-group-id="5406489615-4">}</span><span·class="p"·data-group-id="5406489615-3">]</span><span·class="p"·data-group-id="5406489615-2">}</span><span·class="p"·data-group-id="5406489615-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="5507711858-5">]</span><span·class="p"·data-group-id="5507711858-4">}</span><span·class="p"·data-group-id="5507711858-3">]</span><span·class="p"·data-group-id="5507711858-2">}</span><span·class="p"·data-group-id="5507711858-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="5789066179-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="4580546012-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">
516 ··</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="5789066179-2">[</span><span·class="p"·data-group-id="5789066179-2">]</span><span·class="p"·data-group-id="5789066179-1">}</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·handler·ignores·events·that·do·not·originate·from·the·<code·class="inline">error_logger</code>516 ··</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="4580546012-2">[</span><span·class="p"·data-group-id="4580546012-2">]</span><span·class="p"·data-group-id="4580546012-1">}</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·handler·ignores·events·that·do·not·originate·from·the·<code·class="inline">error_logger</code>
517 API,·or·from·within·OTP.·This·means·that·if·your·code·uses·the·Logger·API517 API,·or·from·within·OTP.·This·means·that·if·your·code·uses·the·Logger·API
Max diff block lines reached; 57420/104108 bytes (55.15%) 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="2803497239-1">(</span><span·class="ss">primary</span><span·class="p"·data-group-id="2803497239-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="7029093099-1">(</span><span·class="ss">primary</span><span·class="p"·data-group-id="7029093099-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="2803497239-2">(</span><span·class="ss">none</span><span·class="p"·data-group-id="2803497239-2">)</span></code></pre><p>It·is·also·possible·to·fetch·the·configuration·using152 ········</span><span·class="p"·data-group-id="7029093099-2">(</span><span·class="ss">none</span><span·class="p"·data-group-id="7029093099-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="7766180384-1">(</span><span·class="ss">handlers</span><span·class="p"·data-group-id="7766180384-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="4522767021-1">(</span><span·class="ss">handlers</span><span·class="p"·data-group-id="4522767021-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="7766180384-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="7766180384-3">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="ss">sasl</spa[·...·truncated·by·diffoscope;·len:·96,·SHA:·419786e81de2c63895f146c9ee59437a894efe0577ddbd0961da8d0cd139eee6·...·]-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="4522767021-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="4522767021-3">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="ss">sasl</spa[·...·truncated·by·diffoscope;·len:·96,·SHA:·43a3527f04cefe755eaae771d3065d86119b7038b3151e56100cdb80d8395ef0·...·]-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="7766180384-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="7766180384-5">[</span><span·class="p"·data-group-id="7766180384-5">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·4bbea9bec541e5e784ead9cdaffefb2c8da686e14e7fc45ff739c378d77f3b8e·...·]-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="4522767021-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="4522767021-5">[</span><span·class="p"·data-group-id="4522767021-5">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·7e5cc5d7a020b7e43a223cd39b9ba7bd40e565dfabaf15cc6957be1e5ddaced0·...·]-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="7736818665-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="7736818665-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="6270042896-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="6270042896-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="5186355314-1">[</span><span·class="p"·data-group-id="5186355314-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">236 </span><span·class="p"·data-group-id="4996630211-1">[</span><span·class="p"·data-group-id="4996630211-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
237 ··</span><span·class="p"·data-group-id="5186355314-3">[</span><span·class="p"·data-group-id="5186355314-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">237 ··</span><span·class="p"·data-group-id="4996630211-3">[</span><span·class="p"·data-group-id="4996630211-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
238 ····</span><span·class="p"·data-group-id="5186355314-5">[</span><span·class="p"·data-group-id="5186355314-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="4996630211-5">[</span><span·class="p"·data-group-id="4996630211-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="5186355314-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="5186355314-8">{</span><span·class="ss">logger_formatter</span><span·c[·...·truncated·by·diffoscope;·len:·584,·SHA:·54672c594a5160c538cb7198cd74c6e35d088045844caee18e52d1377d594fbf·...·]-1">]</span><span·class="p">.</span><span·class="w">239 ······</span><span·class="p"·data-group-id="4996630211-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="4996630211-8">{</span><span·class="ss">logger_formatter</span><span·c[·...·truncated·by·diffoscope;·len:·584,·SHA:·bd82f2c55b4217865f1cf0dc806e12ad1bcc2e5c9cdf40270ecb9e0d761f3930·...·]-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="5186355314-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="5186355314-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="4996630211-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="4996630211-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="5186355314-11">(</span><span·class="s">&quot;Oh·noes,·an·error&quot;</span><span·class="p"·data-group-id="5186355314-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="4996630211-11">(</span><span·class="s">&quot;Oh·noes,·an·error&quot;</span><span·class="p"·data-group-id="4996630211-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="9409702773-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="9409702773-2">{</span><span·class="ss">logg[·...·truncated·by·diffoscope;·len:·268,·SHA:·3580d71039d186526c5ba64b38bc2e88c0d4a3f212b13ceca13964b51e992f91·...·]-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="1410387548-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="1410387548-2">{</span><span·class="ss">logg[·...·truncated·by·diffoscope;·len:·268,·SHA:·65f020018144c66627d990138025916a95615084305b6dbccb4fa0e34d960170·...·]-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="9409702773-4">(</span><span·class="s">&quot;Oh·noes,·another·error&quot;</span><span·class="p"·data-group-id="9409702773-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="1410387548-4">(</span><span·class="s">&quot;Oh·noes,·another·error&quot;</span><span·class="p"·data-group-id="1410387548-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="6842103727-1">[</span><span·class="p"·data-group-id="6842103727-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">254 </span><span·class="p"·data-group-id="1740914786-1">[</span><span·class="p"·data-group-id="1740914786-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
255 ··</span><span·class="p"·data-group-id="6842103727-3">[</span><span·class="p"·data-group-id="6842103727-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">255 ··</span><span·class="p"·data-group-id="1740914786-3">[</span><span·class="p"·data-group-id="1740914786-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
256 ····</span><span·class="p"·data-group-id="6842103727-5">[</span><span·class="p"·data-group-id="6842103727-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="1740914786-5">[</span><span·class="p"·data-group-id="1740914786-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="6842103727-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="6842103727-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">257 ······</span><span·class="p"·data-group-id="1740914786-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="1740914786-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">
258 ········</span><span·class="p"·data-group-id="6842103727-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="6842103727-10">[</span><span·class="ss">time</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·1058,·SHA:·47c4a849b00dc4c81514df9f1c1d37482272fdf85b929f14a1a8808a3b8ccc73·...·]-1">]</span><span·class="p">.</span><span·class="w">258 ········</span><span·class="p"·data-group-id="1740914786-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="1740914786-10">[</span><span·class="ss">time</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·1058,·SHA:·b1ce5741c295c9242f16591e177b879cde040ce8f1a128ffd234fbe73cfef30a·...·]-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="6842103727-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="6842103727-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="1740914786-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="1740914786-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="6842103727-12">(</span><span·class="s">&quot;Oh·noes,·more·errors&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="6842103727-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:·0a4c6cd40a1f36970bad5ebf2e48d476777a90aad57ea7c5f4226cb2bfcc98bd·...·]-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="1740914786-12">(</span><span·class="s">&quot;Oh·noes,·more·errors&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="1740914786-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:·a4b7575c5c912f25d5ab6218ee67e7d23fae45d69a63e4558023d6970065d047·...·]-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="0539109527-1">[</span><span·class="p"·data-group-id="0539109527-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">278 </span><span·class="p"·data-group-id="7374281527-1">[</span><span·class="p"·data-group-id="7374281527-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
279 ··</span><span·class="p"·data-group-id="0539109527-3">[</span><span·class="p"·data-group-id="0539109527-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">279 ··</span><span·class="p"·data-group-id="7374281527-3">[</span><span·class="p"·data-group-id="7374281527-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
280 ····</span><span·class="p"·data-group-id="0539109527-5">[</span><span·class="p"·data-group-id="0539109527-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="7374281527-5">[</span><span·class="p"·data-group-id="7374281527-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="0539109527-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="0539109527-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="7374281527-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="7374281527-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="0539109527-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="7374281527-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="0539109527-9">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0539109527-10">#{</span><span·class="p"·data-group-id="0539109527-10">}</span><span·class="p"·data-group-id="053910[·...·truncated·by·diffoscope;·len:·372,·SHA:·363d6a07d644276130e8dd1115516db4be6895dea8c1b6468e51fe7f3dbcb739·...·]527-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="7374281527-9">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7374281527-10">#{</span><span·class="p"·data-group-id="7374281527-10">}</span><span·class="p"·data-group-id="737428[·...·truncated·by·diffoscope;·len:·372,·SHA:·0db02b2869cb032f90cfc9f092c3f9ebe66f2f560cc50cd65af6dda1cd144cac·...·]527-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="0539109527-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="0539109527-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="7374281527-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="7374281527-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="0539109527-12">(</span><span·class="s">&quot;Oh·noes,·even·more·errors&quot;</span><span·class="p"·data-group-id="0539109527-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="7374281527-12">(</span><span·class="s">&quot;Oh·noes,·even·more·errors&quot;</span><span·class="p"·data-group-id="7374281527-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="0539109527-13">(</span><span·class="p"·data-group-id="0539109527-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="7374281527-13">(</span><span·class="p"·data-group-id="7374281527-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="7260846458-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="6949547590-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="7260846458-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="7260846458-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="6949547590-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="6949547590-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="7260846458-3">}</span><span·class="p"·data-group-id="7260846458-2">}</span><span·class="p"·data-group-id="7260846458-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="6949547590-3">}</span><span·class="p"·data-group-id="6949547590-2">}</span><span·class="p"·data-group-id="6949547590-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>276 <p>Copyright·©·1996-2024·<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="7026004693-1">[</span><span·class="ss">otp</span><span·class="p"·data-group-id="7026004693-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="4759885887-1">[</span><span·class="ss">otp</span><span·class="p"·data-group-id="4759885887-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="7026004693-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="7026004693-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="4759885887-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="4759885887-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="9825383007-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="9825383007-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="9773654758-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="9773654758-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="9825383007-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">·</s[·...·truncated·by·diffoscope;·len:·511,·SHA:·d1fe939da43a23ec3fc1ad9f3ad735de3a4dc9a25685f894c68e6e682a26d9a7·...·]-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="9773654758-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">·</s[·...·truncated·by·diffoscope;·len:·511,·SHA:·ab8d2f8bf3ea0a55631e472c0c88c6ff5b8779a7d0df41076d3c072644b3b546·...·]-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="9825383007-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="9825383007-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="9773654758-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="9773654758-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="9959108173-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="9959108173-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="6376193190-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="6376193190-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="9959108173-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:·864e141f81ac1b336a347cd34e423aa5bbe965978c3f6ff5cd5c368badb51c94·...·]-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="6376193190-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:·746812eb01de08541aa69e53e44d27e8624ba111740178f915b6918216369f64·...·]-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="9959108173-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="9959108173-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="6376193190-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="6376193190-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>415 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>626 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>601 <p>Copyright·©·1996-2024·<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="0042493066-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="0913545435-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="0042493066-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="0042493066-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="0913545435-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="0913545435-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="0042493066-3">}</span><span·class="p"·data-group-id="0042493066-2">}</span><span·class="p"·data-group-id="0042493066-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="0913545435-3">}</span><span·class="p"·data-group-id="0913545435-2">}</span><span·class="p"·data-group-id="0913545435-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>295 <p>Copyright·©·1996-2024·<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="7540781384-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="0478112454-1">(</span><span·class="w">
524 ····</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7540781384-2">(</span><span·class="p"·data-group-id="7540781384-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="7540781384-4">#{</span>[·...·truncated·by·diffoscope;·len:·171,·SHA:·227703c9e33d4656a3e1ba775239250ed4dd8d39c1f15a0ed50a595bda2d0daf·...·]4-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="0478112454-2">(</span><span·class="p"·data-group-id="0478112454-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="0478112454-4">#{</span>[·...·truncated·by·diffoscope;·len:·171,·SHA:·2b04256f47d904310d92533f83542324c26e2f41d8037cd87f9c3a53e2960d67·...·]4-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="7540781384-3">}</span><span·class="p"·data-group-id="7540781384-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="0478112454-3">}</span><span·class="p"·data-group-id="0478112454-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="7540781384-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="7540781384-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="0478112454-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="0478112454-5">)</span><span·class="p">;</span><span·class="w">
527 ········</span><span·class="p"·data-group-id="7540781384-6">(</span><span·class="p">_</span><span·class="p"·data-group-id="7540781384-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">527 ········</span><span·class="p"·data-group-id="0478112454-6">(</span><span·class="p">_</span><span·class="p"·data-group-id="0478112454-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="7540781384-1">)</span><span·class="p">.</span></code></pre>529 ····</span><span·class="k">end</span><span·class="p"·data-group-id="0478112454-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1222 <p>Copyright·©·1996-2024·<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="2980559340-1">(</span><span·class="p"·data-group-id="2980559340-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="6271154176-1">(</span><span·class="p"·data-group-id="6271154176-1">)</span><span·class="p">.</span><span·class="w">
493 </span><span·class="p"·data-group-id="2980559340-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2980559340-3">[</span><span·class="p"·data-group-id="2980559340-4">{</span><span·class="s">&quot;arne&quot;</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·161,·SHA:·a2e0a4f9274a3fca718893ab6032dbb209a356930e5146ac07a674fc1b459bf5·...·]-2">}</span></code></pre>493 </span><span·class="p"·data-group-id="6271154176-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6271154176-3">[</span><span·class="p"·data-group-id="6271154176-4">{</span><span·class="s">&quot;arne&quot;</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·161,·SHA:·cde40ce0e87fdf8e1f92ae539cd6b3166249bd4ac8cebd39b463dd8b7be450b5·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>669 <p>Copyright·©·1996-2024·<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="6233493328-1">(</span><span·class="ss">foobar</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6233493328-2">#{</span><span·class="ss">name_domain</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w"[·...·truncated·by·diffoscope;·len:·137,·SHA:·2968600fe060fc1bae8a9f1a616b348e0630664ce54d53cbc18c011cbadf1a89·...·]-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="2741820961-1">(</span><span·class="ss">foobar</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2741820961-2">#{</span><span·class="ss">name_domain</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w"[·...·truncated·by·diffoscope;·len:·137,·SHA:·9f2bf0ce22635c2699b8de5e86a8fa7a925349b03f685bc31cc172491130f455·...·]-1">)</span><span·class="p">.</span><span·class="w">
134 </span><span·class="p"·data-group-id="6233493328-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="6233493328-3">}</span><span·class="w">134 </span><span·class="p"·data-group-id="2741820961-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="2741820961-3">}</span><span·class="w">
135 </span><span·class="p"·data-group-id="6233493328-4">(</span><span·class="ss">foobar@gringotts</span><span·class="p"·data-group-id="6233493328-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="2741820961-4">(</span><span·class="ss">foobar@gringotts</span><span·class="p"·data-group-id="2741820961-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="8995415136-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="8995415136-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·196,·SHA:·adea7706fa907926bb36a93489b9e2142b88a15237757abf576e97a46837757e·...·]-2">}</span><span·class="w">671 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8067725887-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="8067725887-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·196,·SHA:·71294d514519e686c3f145b80a6aadfd22e5434671b5afa967bbbdc4b8013518·...·]-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="8995415136-3">(</span><span·class="p"·data-group-id="8995415136-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="8067725887-3">(</span><span·class="p"·data-group-id="8067725887-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="5892038017-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="5892038017-1">}</span><[·...·truncated·by·diffoscope;·len:·347,·SHA:·799f46f82fc3c4d2f691053ade6690bb246b392f49dea1fb1a8c445aad5e8704·...·]-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="6294154009-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="6294154009-1">}</span><[·...·truncated·by·diffoscope;·len:·347,·SHA:·36359870dc883f1a28fb25987fc53a3e55d7652dde636976fdc479590f493720·...·]-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="5892038017-3">(</span><span·class="p"·data-group-id="5892038017-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="6294154009-3">(</span><span·class="p"·data-group-id="6294154009-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="5892038017-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="5892038017-4">}</span><span·class="w">·</span><span·class="p">|</span><spa[·...·truncated·by·diffoscope;·len:·320,·SHA:·88cc1c7a060dbbbf3952d6b1025057f3448ee2611b2f6fd19e53f4f8f7a04dbf·...·]-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="6294154009-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="6294154009-4">}</span><span·class="w">·</span><span·class="p">|</span><spa[·...·truncated·by·diffoscope;·len:·320,·SHA:·7e2f8b444283c23b8f52eebbc73e70a314f2899713980dd1cd3dfaad633fca74·...·]-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="0533180365-1">(</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0533180365-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:·f3c290a84c8c99979f29ec5f0f0936cd3228d203e3a6c752e26467423d60b113·...·]-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="4346889830-1">(</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4346889830-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:·6777eff9304f84ee440c9c53da23b96929446e6b2ea29c5ea85cd8c846a581da·...·]-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="0533180365-3">(</span><span·class="ss">a@localhost</span><span·class="p"·data-group-id="0533180365-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="0533180365[·...·truncated·by·diffoscope;·len:·53,·SHA:·6f889c14da1ef6439b0b15cbfa4f59969e6b980390ea2165fc9488fa08fc9187·...·]-4">)</span><span·class="p">.</span><span·class="w">713 </span><span·class="p"·data-group-id="4346889830-3">(</span><span·class="ss">a@localhost</span><span·class="p"·data-group-id="4346889830-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="4346889830[·...·truncated·by·diffoscope;·len:·53,·SHA:·c0467f922095bbaf2feaab8b104eebf9d396dd1defd2c22673dca8ecb86bc04d·...·]-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="0533180365-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="4346889830-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="0533180365-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:·eb13766e8b675e60b9efa98d4054e19dd3abae6148e920245fbbd8c876a0b5b3·...·]-5">}</span><span·class="w">715 ··················</span><span·class="p"·data-group-id="4346889830-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:·0a56f112934ce31c1c4908aa4f53f0578d54096373280a551cf945a60df0ffa1·...·]-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="0533180365-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="4346889830-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="0533180365-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:·a7ecb577bb842d021030213881021bd62b31719c17d484a2c0d2b8a20b3937ed·...·]-7">}</span><span·class="w">717 ··················</span><span·class="p"·data-group-id="4346889830-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:·d7faa2158932061ca86e809fd63b07d0238af47481d3b4dfa420c5c5949deaa0·...·]-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="0533180365-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="4346889830-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="0533180365-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="4346889830-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="0533180365-10">}</span><span·class="p"·data-group-id="0533180365-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="4346889830-10">}</span><span·class="p"·data-group-id="4346889830-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="0533180365-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="4346889830-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="0533180365-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="4346889830-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="0533180365-12">}</span><span·class="p"·data-group-id="0533180365-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="4346889830-12">}</span><span·class="p"·data-group-id="4346889830-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="0533180365-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="4346889830-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="0533180365-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:·eb1b158591c863ae5491639e20c81b1143a9aeedd87215bda91c4a1aa6d7ec62·...·]-13">}</span><span·class="w">725 ··················</span><span·class="p"·data-group-id="4346889830-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:·30bad146c86f467b0e35ebb83943be559e1891c821a98e468d706e0de8127616·...·]-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="0533180365-15">(</span><span·class="ss">a@localhost</span><span·class="p"·data-group-id="0533180365-15">)</span><span·class="mi">3</span><span·class="o">&gt;</span></code></pre>727 </span><span·class="p"·data-group-id="4346889830-15">(</span><span·class="ss">a@localhost</span><span·class="p"·data-group-id="4346889830-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1015 <p>Copyright·©·1996-2024·<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="0750212516-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="0750212516-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="5624121804-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="5624121804-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="0750212516-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="0750212516-2">)</span><span·class="p">,</span><span·class="w">3900 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="5624121804-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="5624121804-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="0750212516-3">(</span><span·class="n">Mon</span><span·class="p"·data-group-id="0750212516-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="5624121804-3">(</span><span·class="n">Mon</span><span·class="p"·data-group-id="5624121804-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="0750212516-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:·247a7c552565e7e66960c6bbf728ac1fdcf6c891bce624e143ebb5bca69cf324·...·]-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="5624121804-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:·13fbbf9f1b6b7fb583a46602255ba20a6a7473ce8eaeb12ef311992857abfde2·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4328 <p>Copyright·©·1996-2024·<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="5778171623-1">(</span><span·class="s">&quot;ls&quot;</span><span·class="p"·data-group-id="5778171623-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="0427827257-1">(</span><span·class="s">&quot;ls&quot;</span><span·class="p"·data-group-id="0427827257-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="5778171623-2">(</span><span·class="s">&quot;dir&quot;</span><span·class="p"·data-group-id="5778171623-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="0427827257-2">(</span><span·class="s">&quot;dir&quot;</span><span·class="p"·data-group-id="0427827257-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="6885731922-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="6885731922-2">#{</span><span·class="w">·</span><span·class="ss">max_size</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·191,·SHA:·e2b340cb8632d0323698131764d034b56dfad0d883e1faa62737511b3dda6488·...·]-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="6332468689-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="6332468689-2">#{</span><span·class="w">·</span><span·class="ss">max_size</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·191,·SHA:·e36dc5f9d0387f4b1835a22a8a6f78aad7f605ec02c4ae500b6c888059363e6d·...·]-1">)</span><span·class="p">.</span><span·class="w">
662 </span><span·class="p"·data-group-id="6885731922-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="p[·...·truncated·by·diffoscope;·len:·762,·SHA:·6d42a91cb66707e6f49e491831fdc4cdc3b89681ba232d458706dbce46e4d151·...·]-3">]</span></code></pre></li></ul>662 </span><span·class="p"·data-group-id="6332468689-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="p[·...·truncated·by·diffoscope;·len:·762,·SHA:·e32e35da386516f82525ca5025d3c9c764b91107aede98c1abaa87f24f4fd4f6·...·]-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="4435563997-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="4435563997-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:·487,·SHA:·ead757bba085713059dfa10716760e8ee7905c8cc1f3b254cb1b4f48beae5666·...·]-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="2273786938-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="2273786938-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:·487,·SHA:·cd3352ae1a21ae2999feab9c4bcbf1ed007339b9a9e1ce5d238da710788293c5·...·]-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="1770252262-1">(</span><span·class="ss">print_time</span><span·class="p"·data-group-id="1770252262-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="1770252262-2">(</span><span·class="p"·data-group-id="1770252262-3">[</span><span·class="ss">format_utc_timestamp</span><span·class="p">/</span><span·class="mi">0</s[·...·truncated·by·diffoscope;·len:·100,·SHA:·5572fb908670983985c2f71d5ce51ce2c4d65072505be2ea1abc33b2016de81e·...·]">)</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="7854668303-1">(</span><span·class="ss">print_time[·...·truncated·by·diffoscope;·len:·50,·SHA:·3c59cd89ed259deb79117de6b423754a1b34a64503e9b626108a8b41d28c0860·...·]">)</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="7854668303-2">(</span><span·class="p"·data-group-id="7854668303-3">[</span><span·class="ss">format_utc_timestamp</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7854668303-3">]</span><span·class="p"·data-group-id="7854668303-2">)</span><span·class="p">.</span><span·class="w">
1128 </span><span·class="nf">format_utc_timestamp</span><span·class="p"·data-group-id="1770252262-4">(</span><span·class="p"·data-group-id="1770252262-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="7854668303-4">(</span><span·class="p"·data-group-id="7854668303-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="1770252262-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="1770252262-5">}</span><span·class="w">·</span><span·class="o">=</span><span·cla[·...·truncated·by·diffoscope;·len:·192,·SHA:·1683d2d82bc7034d60725ab7792efa812764135ba2358229c6f8eee006725d39·...·]-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="7854668303-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="7854668303-5">}</span><span·class="w">·</span><span·class="o">=</span><span·cla[·...·truncated·by·diffoscope;·len:·192,·SHA:·e9922615ae49adfe75b72c285b843e5fc18898650aee28e940bbbcecd7b05a1d·...·]-6">)</span><span·class="p">,</span><span·class="w">
1130 ····</span><span·class="p"·data-group-id="1770252262-7">{</span><span·class="p"·data-group-id="1770252262-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="1770252262-8">}</span[·...·truncated·by·diffoscope;·len:·305,·SHA:·cdf4ae68746f8c2cfea61bee9ff2769d7329e23d65dcfb9c4fb87a2af7c1df41·...·]-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">1130 ····</span><span·class="p"·data-group-id="7854668303-7">{</span><span·class="p"·data-group-id="7854668303-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="7854668303-8">}</span[·...·truncated·by·diffoscope;·len:·305,·SHA:·a11298c704caaf4a729b67e659f2fb661944f3369759c1ba3a4de956d5e551fb·...·]-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="1770252262-10">(</span><span·class="n">TS</span><span·class="p"·data-group-id="1770252262-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="7854668303-10">(</span><span·class="n">TS</span><span·class="p"·data-group-id="7854668303-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="1770252262-11">(</span><span·class="n">Month</span><span·class="p">,</span><span·class="p"·data-group-id="1770252262-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="7854668303-11">(</span><span·class="n">Month</span><span·class="p">,</span><span·class="p"·data-group-id="7854668303-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="1770252262-12">}</span><span·class="p"·data-group-id="1770252262-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="7854668303-12">}</span><span·class="p"·data-group-id="7854668303-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="1770252262-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="7854668303-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="1770252262-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:·b40ae529b140306d4b808855acd20d8d3c0afadc5f0f185ab4bc615f39248837·...·]-1">)</span><span·class="p">.</span><span·class="w">1135 ····</span><span·class="p"·data-group-id="7854668303-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:·de2c097a68695cebbbe9b3a8b88d40d5030aa1b5f21dc0448e534db567f295ee·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1261 <p>Copyright·©·1996-2024·<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="3568087729-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·cla[·...·truncated·by·diffoscope;·len:·780,·SHA:·9272ca6a356c7590254b461137331e532a53e522de669c9525ed96fc60de93f2·...·]-1">}</span></code></pre>870 subscriber:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3388952843-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·cla[·...·truncated·by·diffoscope;·len:·780,·SHA:·0c20004a9a8d65aa13607479c211819d2457c5fb638e25695a051a179117a0de·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1052 <p>Copyright·©·1996-2024·<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="3453571476-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="3453571476-1">}</span><span·[·...·truncated·by·diffoscope;·len:·277,·SHA:·960483e031bfc875fe6b009ded92918b5919d908624fc19042db6d33a4c1bad6·...·]-2">)</span><span·class="p">,</span><span·class="w">1082 </span><span·class="p"·data-group-id="6176117193-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="6176117193-1">}</span><span·[·...·truncated·by·diffoscope;·len:·277,·SHA:·043a33335bd71a6644b74eb439ef8b2bbc20ef49214f629f9ea5e4c30981cbb7·...·]-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="3453571476-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="3453571476-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·608,·SHA:·61d9fac08c33a37810ad9d847e7dc9d2702c2c8a1c0b993e0f6575386cf3cfed·...·]-4">)</span><span·class="p">,</span><span·class="w">1084 </span><span·class="p"·data-group-id="6176117193-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="6176117193-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·608,·SHA:·f12d48f23cac28fc86b35aabfe99413cbe85e6b35eb06348aaf2de9b6b18be9d·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1453 <p>Copyright·©·1996-2024·<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.76 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.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-19AC09E1.js"></script>124 <script·src="dist/search_data-69618D8B.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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="9667556678-1">(</span><span·class="p"·data-group-id="9667556678-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="8375703672-1">(</span><span·class="p"·data-group-id="8375703672-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="9667556678-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="9667556[·...·truncated·by·diffoscope;·len:·3,·SHA:·cebe3d9d614ba5c19f633566104315854a11353a333bf96f16b5afa0e90abdc4·...·]-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="8375703672-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="8375703[·...·truncated·by·diffoscope;·len:·3,·SHA:·12f26af0dcdfae8fe4331d6a4c369edd549220cdeb119b3b1831b2a2cf77f281·...·]-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="9667556678-3">(</span><span·class="p"·data-group-id="9667556678-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="8375703672-3">(</span><span·class="p"·data-group-id="8375703672-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="8990149620-1">(</span><span·class="ss">seqex</span><span·class="p"·data-group-id="8990149620-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="6914731391-1">(</span><span·class="ss">seqex</span><span·class="p"·data-group-id="6914731391-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="8990149620-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="8990149620-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="6914731391-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="6914731391-2">)</span><span·class="p">.</span><span·class="w">
  
292 </span><span·class="nf">loop</span><span·class="p"·data-group-id="8990149620-3">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8990149620-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="6914731391-3">(</span><span·class="n">Port</span><span·class="p"·data-group-id="6914731391-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="8990149620-4">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="8990149620-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">294 ········</span><span·class="p"·data-group-id="6914731391-4">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="6914731391-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="8990149620-5">(</span><span·class="ss">label</span><span·class="p">,</span><span·class="mi">17</span><span·class="p"·data-group-id="8990149620-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="6914731391-5">(</span><span·class="ss">label</span><span·class="p">,</span><span·class="mi">17</span><span·class="p"·data-group-id="6914731391-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="8990149620-6">(</span><span·class="ss">&#39;receive&#39;</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="8990149620-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="6914731391-6">(</span><span·class="ss">&#39;receive&#39;</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="6914731391-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="8990149620-7">(</span><span·class="ss">print</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="8990149620-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="6914731391-7">(</span><span·class="ss">print</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="6914731391-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="8990149620-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="8990149620-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="6914731391-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="6914731391-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="8990149620-9">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8990149620-10">(</span><span·class="p"·data-group-id="8990149620-10">)</span><span·class="p">,</span><span·class="ss">the_message</span><span·class="p"·data-group-id="89901496[·...·truncated·by·diffoscope;·len:·2,·SHA:·f5ca38f748a1d6eaf726b8a42fb575c3c71f1864a8143301782de13da2d9202b·...·]-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="6914731391-9">{</span><span·class="nf">self</span><span·class="p"·data-group-id="6914731391-10">(</span><span·class="p"·data-group-id="6914731391-10">)</span><span·class="p">,</span><span·class="ss">the_message</span><span·class="p"·data-group-id="69147313[·...·truncated·by·diffoscope;·len:·2,·SHA:·1da51b8d8ff98f6a48f80ae79fe3ca6c26e1abb7b7d125259255d6d2b875ea08·...·]-9">}</span><span·class="p">;</span><span·class="w">
300 ········</span><span·class="p"·data-group-id="8990149620-11">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="n">Ack</span><span·class="p"·data-group-id="8990149620-11">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">300 ········</span><span·class="p"·data-group-id="6914731391-11">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="n">Ack</span><span·class="p"·data-group-id="6914731391-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="8990149620-12">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8990149620-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:·192,·SHA:·f9926348c0b1a9316751296cf49b93242f28755b25dc2b191c5a7bb99a877836·...·]-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="6914731391-12">(</span><span·class="n">Port</span><span·class="p"·data-group-id="6914731391-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:·192,·SHA:·10362f103968b8d1c422793ec73cff5c18799332d1ce91aefa52de9076c1308b·...·]-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="0741335121-2">{</span><span·class="n">PortController</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="0741335121-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">305 ········</span><span·class="p"·data-group-id="6686680028-2">{</span><span·class="n">PortController</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="6686680028-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="0741335121-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="0741335121-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="6686680028-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="6686680028-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="0741335121-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="0741335121-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="6686680028-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="6686680028-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="0741335121-5">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="n">Ack</span><span·class="p"·data-group-id="0741335121-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="6686680028-5">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="n">Ack</span><span·class="p"·data-group-id="6686680028-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="0741335121-6">(</span><span·class="p"·data-group-id="0741335121-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:·8d4a93de5128adb53bfddf4c2d6eefa8b4f1d98c0d5f479706a7ea1c9b888ba9·...·]-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="6686680028-6">(</span><span·class="p"·data-group-id="6686680028-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:·cffc6ad6988cb4dea3ede1df38ebafd287b328bdfafe8a6fa3da432991964bf3·...·]-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="1864558568-2">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="1864558568-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="8263374222-2">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="8263374222-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="1864558568-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="1864558568-3">}</span><span·class="w">313 </span><span·class="p"·data-group-id="8263374222-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="8263374222-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="1864558568-4">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="1864558568-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="8263374222-4">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="8263374222-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="1864558568-5">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="1864558568-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="8263374222-5">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="8263374222-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="1864558568-6">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="p"·data-group-id="1864558568-7">{</span><span·class="ss">received</span><span·class="p">,</span><span·class="ss">the_message</span><span·class="p"·data-group-id="18645585[·...·truncated·by·diffoscope;·len:·55,·SHA:·ab71e57872a14d725f4c8c5afee2c2e5bc867749431ec1b9ac52b1b5668ea89f·...·]-6">}</span></code></pre><p>The·implementation·of·a·system·tracer·process·that·produces·this·printout·can317 </span><span·class="p"·data-group-id="8263374222-6">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="p"·data-group-id="8263374222-7">{</span><span·class="ss">received</span><span·class="p">,</span><span·class="ss">the_message</span><span·class="p"·data-group-id="82633742[·...·truncated·by·diffoscope;·len:·55,·SHA:·1bbf2a08956ff273e492a2e27727a204c50a206ef00ceb0ab39ee17a01c28692·...·]-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="9234293003-1">(</span><span·class="p"·data-group-id="9234293003-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="0735473177-1">(</span><span·class="p"·data-group-id="0735473177-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="9234293003-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="9234293003-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">320 ········</span><span·class="p"·data-group-id="0735473177-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="0735473177-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="9234293003-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="9234293003-3">)</span><span·class="p">;</span><span·class="w">321 ···········</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="0735473177-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="0735473177-3">)</span><span·class="p">;</span><span·class="w">
322 ········</span><span·class="p"·data-group-id="9234293003-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="9234293003-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">322 ········</span><span·class="p"·data-group-id="0735473177-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="0735473177-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="9234293003-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="9234293003-5">)</span><span·class="p">;</span><span·class="w">323 ···········</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="0735473177-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="0735473177-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="9234293003-6">(</span><span·class="p"·data-group-id="9234293003-6">)</span><span·class="p">.</span><span·class="w">326 ····</span><span·class="nf">tracer</span><span·class="p"·data-group-id="0735473177-6">(</span><span·class="p"·data-group-id="0735473177-6">)</span><span·class="p">.</span><span·class="w">
  
327 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="9234293003-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="9234293003-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="0735473177-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="0735473177-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="9234293003-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="9234293003-9">[</span><span·class="n">Label</span><span·class="p"·data-group-id="9234293003-9"[·...·truncated·by·diffoscope;·len:·50,·SHA:·2ea1510a4cb2cb4c2c9f736df23f1ca2cd0c065efc89d05a6a2879b23c32dc1c·...·]-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="0735473177-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="0735473177-9">[</span><span·class="n">Label</span><span·class="p"·data-group-id="0735473177-9"[·...·truncated·by·diffoscope;·len:·50,·SHA:·8a1782ca8249c3dd8fac8b6c3e81f854b93be317e55e94fdccd0a00d10db65ce·...·]-8">)</span><span·class="p">,</span><span·class="w">
329 ····</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="9234293003-10">(</span><span·class="n">TraceInfo</span><span·class="p"·data-group-id="9234293003-10">)</span><span·class="p">;</span><span·class="w">329 ····</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="0735473177-10">(</span><span·class="n">TraceInfo</span><span·class="p"·data-group-id="0735473177-10">)</span><span·class="p">;</span><span·class="w">
330 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="9234293003-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="9234293003-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="0735473177-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="0735473177-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="9234293003-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="9234293003-13">[</span><span·class="n">Labe[·...·truncated·by·diffoscope;·len:·152,·SHA:·e1527d7f0150a0483f42f5c2e6c2d174d4e862586c2d656479714ba062b30cb3·...·]-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="0735473177-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="0735473177-13">[</span><span·class="n">Labe[·...·truncated·by·diffoscope;·len:·152,·SHA:·61869747ceb1b2efc2e5aae9563bfa82e78e42d50dd6d02e25e70accc6a2ca44·...·]-12">)</span><span·class="p">,</span><span·class="w">
332 ····</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="9234293003-14">(</span><span·class="n">TraceInfo</span><span·class="p"·data-group-id="9234293003-14">)</span><span·class="p">.</span><span·class="w">332 ····</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="0735473177-14">(</span><span·class="n">TraceInfo</span><span·class="p"·data-group-id="0735473177-14">)</span><span·class="p">.</span><span·class="w">
  
333 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="9234293003-15">(</span><span·class="p"·data-group-id="9234293003-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:·d7fcf5e5628899b7a75cfef7c334bdd9f6ad4448f897b7d4e21e16fd8344ca71·...·]-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="0735473177-15">(</span><span·class="p"·data-group-id="0735473177-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:·a5827e873afc8c174df234250747d584e8288ddcf86977f261ec956e39db496f·...·]-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="9234293003-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:·cff41b59d214cdfbbd2d84f11edc8579271b61dce4217df5d711c6bf3e988a98·...·]-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="0735473177-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:·fd1fb91072c5033c33e401203ad124171197b0050476a042d7ef78d962f885ad·...·]-17">)</span><span·class="p">;</span><span·class="w">
335 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="9234293003-19">(</span><span·class="p"·data-group-id="9234293003-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:·cb65b76a072137cc6fa013206fb3158a9059e2bfd01872f671f9f086f595c8b2·...·]-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="0735473177-19">(</span><span·class="p"·data-group-id="0735473177-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:·b837a281ed45a049b1771f82656075a6109a98485cc69b56211371566f173bde·...·]-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="9234293003-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="0735473177-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="9234293003-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="9234293003-22">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·699789af0eba0e8e092b14fb3845367fe3efa94a55cae5b45fb2041bbbe55cf8·...·]-21">)</span><span·class="p">;</span><span·class="w">337 ··············</span><span·class="p"·data-group-id="0735473177-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="0735473177-22">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·a1923b3de0d9dc47772bb7ba30c2260b0be78855ad95c3aa69832d809738b5be·...·]-21">)</span><span·class="p">;</span><span·class="w">
338 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="9234293003-23">(</span><span·class="p"·data-group-id="9234293003-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:·9efbeab115199d86ce0b6381dd396e2f5844db836511e70890710d84d0ae4747·...·]-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="0735473177-23">(</span><span·class="p"·data-group-id="0735473177-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:·3af322371e06d5616f2ee296733bcbdf96673689b1dff97707abbfae424ba0cc·...·]-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="9234293003-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="0735473177-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="9234293003-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="9234293003-26">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·699789af0eba0e8e092b14fb3845367fe3efa94a55cae5b45fb2041bbbe55cf8·...·]-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="0735473177-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="0735473177-26">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·a1923b3de0d9dc47772bb7ba30c2260b0be78855ad95c3aa69832d809738b5be·...·]-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="3920952642-1">(</span><span·class="p"·data-group-id="3920952642-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="8655396604-1">(</span><span·class="p"·data-group-id="8655396604-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="3920952642-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="3920952642-3">[</span><span·class="p"·data-group-id="3920952642-3">]</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·554dcbc267b10627e3cc55b95ae795b90b4fcaab5f20a94b5b734ddf66ae2c72·...·]-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="8655396604-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="8655396604-3">[</span><span·class="p"·data-group-id="8655396604-3">]</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·1e52f86d5f86b156a086d28802c9b8bb28c9d58f55544565a03ec71332c73c37·...·]-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="3920952642-4">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="3920952642-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="8655396604-4">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="8655396604-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="5601491396-1">(</span><span·class="p"·data-group-id="5601491396-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="7124927386-1">(</span><span·class="p"·data-group-id="7124927386-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="5601491396-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="5601491396-3">[</span><spa[·...·truncated·by·diffoscope;·len:·117,·SHA:·ad844f7446e3e650a8a36b1e75ee5988f039b61541218ad262fa23fa012233d7·...·]6-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="7124927386-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="7124927386-3">[</span><spa[·...·truncated·by·diffoscope;·len:·117,·SHA:·5363495f340a23a9189b0a2268fa20709d9e89efea4314bfd5c81c654daf6ce7·...·]6-2">)</span><span·class="p">,</span><span·class="w">
346 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="5601491396-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="5601491396-5">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">[·...·truncated·by·diffoscope;·len:·307,·SHA:·1d1b7d2743349d366e2fa19e011691ce17314ab4d6474a728eaf8789dced8d09·...·]6-4">)</span><span·class="p">,</span><span·class="w">346 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="7124927386-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="7124927386-5">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">[·...·truncated·by·diffoscope;·len:·307,·SHA:·ed799dfa0297c2aa27672d97f284c39a61e0ded042b0c82f1153eb21149af81c·...·]6-4">)</span><span·class="p">,</span><span·class="w">
347 ····</span><span·class="nf">start</span><span·class="p"·data-group-id="5601491396-7">(</span><span·class="p"·data-group-id="5601491396-7">)</span><span·class="p">,</span><span·class="w">347 ····</span><span·class="nf">start</span><span·class="p"·data-group-id="7124927386-7">(</span><span·class="p"·data-group-id="7124927386-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="5601491396-8">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="ss">message</span><span·class="p"·data-group-id="5601491396-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="7124927386-8">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="ss">message</span><span·class="p"·data-group-id="7124927386-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="7226858658-1">(</span><span·class="p"·data-group-id="7226858658-2">[</span><span·class="p"·data-group-id="7226858658-2">]</span><span·class="p"·data-group-id="7226858658-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="2804540679-1">(</span><span·class="p"·data-group-id="2804540679-2">[</span><span·class="p"·data-group-id="2804540679-2">]</span><span·class="p"·data-group-id="2804540679-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="7226858658-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="7226858658-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="2804540679-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="2804540679-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="7226858658-4">(</span><span·class="n">OldToken</span><span·class="p"·data-group-id="7226858658-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="2804540679-4">(</span><span·class="n">OldToken</span><span·class="p"·data-group-id="2804540679-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1034 <p>Copyright·©·1996-2024·<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="7641567629-1">{</span><span·class="ss">select</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7641567629-2">{</span><span·class="ss">select_info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Hand[·...·truncated·by·diffoscope;·len:·471,·SHA:·6e6b2a66cb38736fd2197df29b5a8ce99f27ffd7cd418d7d2bdcb0a27cb50df9·...·]-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="8827304373-1">{</span><span·class="ss">select</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8827304373-2">{</span><span·class="ss">select_info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Hand[·...·truncated·by·diffoscope;·len:·471,·SHA:·665b9c85c52795afe02e22fe9420d4b64aa30b2f75e64e4a1444b1d80ac8d9c2·...·]-3">)</span><span·class="p">,</span><span·class="w">
176 ····</span><span·class="p"·data-group-id="7641567629-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="7641567629-4">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·280,·SHA:·20f328852642024a4dae933c7a25892a3f03fdf389dc5e69737b43c4878f8355·...·]-5">)</span><span·class="p">,</span><span·class="w">176 ····</span><span·class="p"·data-group-id="8827304373-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="8827304373-4">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·280,·SHA:·faa2fad855af47304172ee2f26ffb09b36f9a7fc55c18ef8be8cda59abc76657·...·]-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="7044163181-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="7044163181-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="5836584421-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="5836584421-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
210 ···</span><span·class="p"·data-group-id="7044163181-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="7044163181-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·348,·SHA:·b8d0d3d6bcf57af85be3fda892972a1a26a37a965ff637194b62dc1cccc4bde9·...·]1-3">)</span><span·class="p">,</span><span·class="w">210 ···</span><span·class="p"·data-group-id="5836584421-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="5836584421-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·348,·SHA:·e3e5afab05c19f3cb0c990c2db34f39eb9d3979be5cfe1a613c3e3a674dce09e·...·]1-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="7044163181-4">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7044163181-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="5836584421-4">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5836584421-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="7044163181-5">}</span><span·class="p"·data-group-id="7044163181-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="5836584421-5">}</span><span·class="p"·data-group-id="5836584421-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="7044163181-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="7044163181-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="5836584421-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="5836584421-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="7044163181-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="7044163181-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="5836584421-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="5836584421-7">)</span><span·class="p">,</span><span·class="w">
217 ···</span><span·class="p"·data-group-id="7044163181-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="7044163181-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·193,·SHA:·270123e31ae37689eaf66432248c9d23dbce69a9d2fedabfe4f90c742449dfb7·...·]1-9">)</span><span·class="p">,</span><span·class="w">217 ···</span><span·class="p"·data-group-id="5836584421-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="5836584421-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·193,·SHA:·165f7e68e7ca9250cd30d90dd51278e83c7431a0091913dbaa897f5fa3c1c2b2·...·]1-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="7044163181-10">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="7044163181-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="5836584421-10">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="5836584421-10">)</span><span·class="p">.</span><span·class="w">
  
219 </span><span·class="nf">server</span><span·class="p"·data-group-id="7044163181-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="7044163181-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="5836584421-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="5836584421-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 ···</span><span·class="p"·data-group-id="7044163181-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="7044163181-12">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·352,·SHA:·41427aa2496bc70db06a34f72aee20bd14496878ee1f79c31a026f1e57a634d0·...·]1-13">)</span><span·class="p">,</span><span·class="w">220 ···</span><span·class="p"·data-group-id="5836584421-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="5836584421-12">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·352,·SHA:·5cdbc5c98162c714b0d696fa822117e3176ca6294dd3ebe0a8552ec0958dbf16·...·]1-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="7044163181-14">(</span><span·class="n">LSock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7044163181-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="5836584421-14">(</span><span·class="n">LSock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5836584421-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="7044163181-15">}</span><span·class="p"·data-group-id="7044163181-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="5836584421-15">}</span><span·class="p"·data-group-id="5836584421-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="7044163181-16">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="7044163181-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="5836584421-16">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="5836584421-16">)</span><span·class="p">,</span><span·class="w">
225 ···</span><span·class="p"·data-group-id="7044163181-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="7044163181-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·200,·SHA:·b9692d68bfefc6252991cccd759b1a682156aff0d21a8857db5537cffc4c9c0c·...·]1-18">)</span><span·class="p">,</span><span·class="w">225 ···</span><span·class="p"·data-group-id="5836584421-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="5836584421-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·200,·SHA:·f0e2cf78870f6619ac7def3b5573f901cf98428a1bc0450c16193edeeb3f1cb8·...·]1-18">)</span><span·class="p">,</span><span·class="w">
226 ···</span><span·class="p"·data-group-id="7044163181-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="7044163181-19">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·196,·SHA:·4a837baf03e955a94a513d1c93e679a3e5e8eabf5c962efbdc25189cd843e4b5·...·]1-20">)</span><span·class="p">,</span><span·class="w">226 ···</span><span·class="p"·data-group-id="5836584421-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="5836584421-19">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·196,·SHA:·eb6483bea1f34a6a3413cebcf38f5e0831cc1f15c305857af9624961495fea51·...·]1-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="7044163181-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="7044163181-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="5836584421-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="5836584421-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="7044163181-22">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="7044163181-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="5836584421-22">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="5836584421-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="7044163181-23">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="7044163181-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="5836584421-23">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="5836584421-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="4550693370-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="4550693370-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·293,·SHA:·4816ba1fe3b1fb2c5526c04b38377afaede69e9054f4e2b635cfb79667aca510·...·]-2">)</span><span·class="p">,</span><span·class="w">4797 ······</span><span·class="p"·data-group-id="9261650941-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="9261650941-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·293,·SHA:·bd2a95de56649c074741e837cfdcc0d3cf4064c81c6444dac45e4dd8812520d6·...·]-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="1230905312-1">(</span><span·class="ss">local</span><span·class="p"·data-group-id="1230905312-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="6243912221-1">(</span><span·class="ss">local</span><span·class="p"·data-group-id="6243912221-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="7236593297-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="7236593297-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="2266277161-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="2266277161-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="6237945038-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:·2cb56174514f0cb234cf76f0299004d1431ea97397173c62e972e457cb3c47d3·...·]-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="2728592631-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:·d851bfa4641588513bbf00e1deabddbd9ed7634066ffd98056524cd1e8c96d87·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>7224 <p>Copyright·©·1996-2024·<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="0327818380-1">(</span><span·class="ss">example</span><span·class="p"·data-group-id="0327818380-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="9004601822-1">(</span><span·class="ss">example</span><span·class="p"·data-group-id="9004601822-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="0327818380-2">(</span><span·class="p"·data-group-id="0327818380-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:·d49c5a890d200fed4a5fcec75da0d01d13e51be5f3bc542b5713c772ab12e600·...·]-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="9004601822-2">(</span><span·class="p"·data-group-id="9004601822-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:·6dc616719e06f8371a596d8438a2545e67834868dc2e027e4eea4e7f7033a5ba·...·]-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="0327818380-4">(</span><span·class="p"·data-group-id="0327818380-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:·bc9eb2081dd08cb47c022f4ee94753d5f00abdf977d4f3fdcdaef0c843d107ec·...·]-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="9004601822-4">(</span><span·class="p"·data-group-id="9004601822-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:·01a4bdd65fcb50ca1e96e2a615189cb817ae1f9382746489934ad577a50bc7d5·...·]-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="0327818380-6">(</span><span·class="p"·data-group-id="0327818380-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="0327818380-7">}</[·...·truncated·by·diffoscope;·len:·229,·SHA:·ace5fcf44a4a2357ed2b0d3686ad496a4daf21a1ffeb22ee5115b1a133199a19·...·]-6">)</span><span·class="w">195 </span><span·class="nf">client</span><span·class="p"·data-group-id="9004601822-6">(</span><span·class="p"·data-group-id="9004601822-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="9004601822-7">}</[·...·truncated·by·diffoscope;·len:·229,·SHA:·e09bbabfee83759011cf68e008d6d97dca21663a52aad521cd4883da7d72cee9·...·]-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="0327818380-8">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="0327818380-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="0327818380-9"[·...·truncated·by·diffoscope;·len:·76,·SHA:·13a0788cac281b1640851b59210f0bc754aa26432621087a834208b2dca266b9·...·]-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="9004601822-8">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="9004601822-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="9004601822-9"[·...·truncated·by·diffoscope;·len:·76,·SHA:·642d98f2d5220f2f4ea910cefa3849c607405971862d6c00a0363f4b45bbafe1·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
197 ····</span><span·class="p"·data-group-id="0327818380-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="0327818380-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·357,·SHA:·2a0e36f677b43e86ac22555f7810d526e228fbd7cf6b5b809668b456ef39e5ce·...·]-11">)</span><span·class="p">,</span><span·class="w">197 ····</span><span·class="p"·data-group-id="9004601822-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="9004601822-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·357,·SHA:·ab73c503741bb6ccd7d871336c821536733b619d8f954a6af0bace379405d4d8·...·]-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="0327818380-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="0327818380-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="9004601822-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="9004601822-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="0327818380-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="0327818380-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="9004601822-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="9004601822-13">)</span><span·class="p">,</span><span·class="w">
200 ····</span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="0327818380-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="0327818380-14">)</span><span·class="p">;</span><span·class="w">200 ····</span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="9004601822-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="9004601822-14">)</span><span·class="p">;</span><span·class="w">
  
201 </span><span·class="nf">client</span><span·class="p"·data-group-id="0327818380-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="0327818380-15">)</span><span·class="w">201 </span><span·class="nf">client</span><span·class="p"·data-group-id="9004601822-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="9004601822-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="0327818380-16">(</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="0327818380-16">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="0327818380-17">(</span><span·class="[·...·truncated·by·diffoscope;·len:·161,·SHA:·58387fe71494813c3360c2f016f663bf2be11577c793ca4f63ef6a7b81780185·...·]-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="9004601822-16">(</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="9004601822-16">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="9004601822-17">(</span><span·class="[·...·truncated·by·diffoscope;·len:·161,·SHA:·3dfe192c1814801f93101a69cfb78cb9579a99846f75ef024b1d45ec46ca66dd·...·]-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="0327818380-18">(</span><span·class="n">Family</span><span·class="p"·data-group-id="0327818380-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="9004601822-18">(</span><span·class="n">Family</span><span·class="p"·data-group-id="9004601822-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="0327818380-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="9004601822-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="0327818380-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="9004601822-19">}</span><span·class="p">,</span><span·class="w">
208 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="0327818380-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="0327818380-20">)</span><span·class="p">.</span><span·class="w">208 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="9004601822-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="9004601822-20">)</span><span·class="p">.</span><span·class="w">
  
209 </span><span·class="nf">client</span><span·class="p"·data-group-id="0327818380-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="0327818380-21">)</span><span·class="w">209 </span><span·class="nf">client</span><span·class="p"·data-group-id="9004601822-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="9004601822-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="0327818380-22">(</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="0327818380-22">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="0327818380-23">(</span><span·class="[·...·truncated·by·diffoscope;·len:·161,·SHA:·58387fe71494813c3360c2f016f663bf2be11577c793ca4f63ef6a7b81780185·...·]-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="9004601822-22">(</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="9004601822-22">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="9004601822-23">(</span><span·class="[·...·truncated·by·diffoscope;·len:·161,·SHA:·3dfe192c1814801f93101a69cfb78cb9579a99846f75ef024b1d45ec46ca66dd·...·]-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="0327818380-24">(</span><span·class="n">ServerAddr</span><span·class="p"·data-group-id="0327818380-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="9004601822-24">(</span><span·class="n">ServerAddr</span><span·class="p"·data-group-id="9004601822-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="0327818380-25">(</span><span·class="n">ServerAddr</span><span·class="p"·data-group-id="0327818380-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="9004601822-25">(</span><span·class="n">ServerAddr</span><span·class="p"·data-group-id="9004601822-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="0327818380-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="9004601822-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="0327818380-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="9004601822-26">}</span><span·class="p">,</span><span·class="w">
216 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="0327818380-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="0327818380-27">)</span><span·class="p">.</span><span·class="w">216 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="9004601822-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="9004601822-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="0327818380-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="0327818380-28">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·149,·SHA:·c3a10a58e85eadd0aaa6bb733bb62f2c5a51cf4f4dba96d93548d52f271da19a·...·]-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="9004601822-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="9004601822-28">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·149,·SHA:·437490e93a216fe0f7e8a653b9a494b4ce093f350e69e7569059c04cfbf06c59·...·]-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="0327818380-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="0327818380-31">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="032781838[·...·truncated·by·diffoscope;·len:·55,·SHA:·46c7e4dc675bbbd81095ef63c6f57fa383a8265b858a9701073864fb6d33053e·...·]-30">)</span><span·class="p">;</span><span·class="w">219 ····</span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="9004601822-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="9004601822-31">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="900460182[·...·truncated·by·diffoscope;·len:·55,·SHA:·33b03544fec93d2f8de5b3233f2abb84fdd53a2aa292fb9ba226b4de1650ec03·...·]-30">)</span><span·class="p">;</span><span·class="w">
220 </span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="0327818380-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="0327818380-32">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·151,·SHA:·829541d0b61dd384dc7c82d0aaedccaea76f4f7fe2f93e5361084df246d66c53·...·]-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="9004601822-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="9004601822-32">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·151,·SHA:·c84d2cebf3d0745fa6e3516120654ae08e10bbc51fdbe58e11ef3a0eb89ffea2·...·]-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="0327818380-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="0327818380-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="9004601822-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="9004601822-34">)</span><span·class="p">,</span><span·class="w">
222 ····</span><span·class="p"·data-group-id="0327818380-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="0327818380-35">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·492,·SHA:·36e174b654391b7db8296529dbbf1310eb2c4b3f00bb826cf93a4564ec9288e7·...·]-36">)</span><span·class="p">,</span><span·class="w">222 ····</span><span·class="p"·data-group-id="9004601822-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="9004601822-35">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·492,·SHA:·e49c85463b440dea21562c8af9716524856952c29c3f8a0eea731ec603904e87·...·]-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="0327818380-38">(</span><span·class="p"·data-group-id="0327818380-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="9004601822-38">(</span><span·class="p"·data-group-id="9004601822-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="0327818380-39">(</span><span·class="mi">0</span><span·class="p"·data-group-id="0327818380-39">)</span><span·class="p">.</span><span·class="w">228 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="9004601822-39">(</span><span·class="mi">0</span><span·class="p"·data-group-id="9004601822-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="0327818380-40">(</span><span·class="p"·data-group-id="0327818380-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:·3f1b7f540c3ae0691f3da6bae902d47624234e303a7d29038e7a381664317fbb·...·]-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="9004601822-40">(</span><span·class="p"·data-group-id="9004601822-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:·55c0abf3d32a4c1393cc6a0dc65d3b4d841cc47b969a2d842b85019066c7f411·...·]-40">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 ····</span><span·class="p"·data-group-id="0327818380-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="0327818380-42">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·353,·SHA:·23c0dc10bbf1b36e0a42eb872a237b369757bb6013ba00e020be9e8877c350fb·...·]-43">)</span><span·class="p">,</span><span·class="w">232 ····</span><span·class="p"·data-group-id="9004601822-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="9004601822-42">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·353,·SHA:·5ded4876fee68cc63f4082f669ef800e44c23fd963c816c47d2d0d4be6f29f35·...·]-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="0327818380-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="0327818380-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="9004601822-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="9004601822-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="0327818380-45">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0327818380-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="9004601822-45">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="9004601822-45">)</span><span·class="p">,</span><span·class="w">
235 ····</span><span·class="p"·data-group-id="0327818380-46">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0327818380-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:·47daf659c6b33e2ef8292d623dc29c1629cbc323fa6203a2e4fc3580f3ccc236·...·]-48">)</span><span·class="p">,</span><span·class="w">235 ····</span><span·class="p"·data-group-id="9004601822-46">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9004601822-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:·5052e891cfdc925dfc8741a8af1a473d0cd9f53f79481e4d37c64a1cc5759765·...·]-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="0327818380-49">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0327818380-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="9004601822-49">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="9004601822-49">)</span><span·class="p">,</span><span·class="w">
237 ····</span><span·class="p"·data-group-id="0327818380-50">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0327818380-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:·1c9a7e1fe4e42db3638d839d6cb168ab60e944c56fbd18842ef68feeb3ca0879·...·]-50">}</span><span·class="p">;</span><span·class="w">237 ····</span><span·class="p"·data-group-id="9004601822-50">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9004601822-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:·3b94378566b39132d532ecbacfae116a2ae06630a9d98e8f74e2f2122f27af28·...·]-50">}</span><span·class="p">;</span><span·class="w">
  
238 </span><span·class="nf">server</span><span·class="p"·data-group-id="0327818380-52">(</span><span·class="n">Port</span><span·class="p"·data-group-id="0327818380-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="0327818380-5[·...·truncated·by·diffoscope;·len:·79,·SHA:·81c78d830645a605eff562150b45c48037a9943a4d9b1fc1b4768751350b8a86·...·]-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="9004601822-52">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9004601822-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="9004601822-5[·...·truncated·by·diffoscope;·len:·79,·SHA:·83ccfc409f3cc8a4bcf9b13eb94f17a4de0904130090717463bd338854510cf3·...·]-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="0327818380-54">(</span><span·class="n">Family</span><span·class="p"·data-group-id="0327818380-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="9004601822-54">(</span><span·class="n">Family</span><span·class="p"·data-group-id="9004601822-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="0327818380-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="9004601822-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="0327818380-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="9004601822-55">}</span><span·class="p">,</span><span·class="w">
244 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="0327818380-56">(</span><span·class="n">SockAddr</span><span·class="p"·data-group-id="0327818380-56">)</span><span·class="p">.</span><span·class="w">244 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="9004601822-56">(</span><span·class="n">SockAddr</span><span·class="p"·data-group-id="9004601822-56">)</span><span·class="p">.</span><span·class="w">
  
245 </span><span·class="nf">server</span><span·class="p"·data-group-id="0327818380-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="0327818380-57">)</span><span·class="w">245 </span><span·class="nf">server</span><span·class="p"·data-group-id="9004601822-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="9004601822-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="0327818380-58">(</span><span·class="n">Port</span><span·class="p"·data-group-id="0327818380-58">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="0327818380-59">(</span><span·class="n">Por[·...·truncated·by·diffoscope;·len:·150,·SHA:·73b2c18423360d615c1aab9d5da706cc25262a0e404ca0241e4ecef2f02386ab·...·]-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="9004601822-58">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9004601822-58">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="9004601822-59">(</span><span·class="n">Por[·...·truncated·by·diffoscope;·len:·150,·SHA:·8755386b43701a240e2f8b45c5ea4d5a6314380f0fdd699981c17cc40808dc10·...·]-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="0327818380-60">(</span><span·class="n">Addr</span><span·class="p"·data-group-id="0327818380-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="9004601822-60">(</span><span·class="n">Addr</span><span·class="p"·data-group-id="9004601822-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="0327818380-61">(</span><span·class="n">Addr</span><span·class="p"·data-group-id="0327818380-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="9004601822-61">(</span><span·class="n">Addr</span><span·class="p"·data-group-id="9004601822-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="0327818380-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="9004601822-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="0327818380-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="9004601822-62">}</span><span·class="p">,</span><span·class="w">
252 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="0327818380-63">(</span><span·class="n">SockAddr</span><span·class="p"·data-group-id="0327818380-63">)</span><span·class="p">.</span><span·class="w">252 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="9004601822-63">(</span><span·class="n">SockAddr</span><span·class="p"·data-group-id="9004601822-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="0327818380-64">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="0327818380-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="9004601822-64">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="9004601822-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="0327818380-65">(</span><span·class="p"·data-group-id="0327818380-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="9004601822-65">(</span><span·class="p"·data-group-id="9004601822-65">)</span><span·class="p">,</span><span·class="w">
256 ····</span><span·class="p"·data-group-id="0327818380-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="0327818380-66">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·635,·SHA:·c05bbcb2ae1a2fa0d3ce9bcba5c923840b2ed95eb21d0447f211f2626c2ebfb7·...·]-67">)</span><span·class="p">,</span><span·class="w">256 ····</span><span·class="p"·data-group-id="9004601822-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="9004601822-66">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·635,·SHA:·e2bf30fd44bcf41bda55fee64746605bdaa38a8ce87eb07464d0d1fb5a4c7900·...·]-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="0327818380-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:·d161e5e2e4aa3dcb71067e284fc34a899eb5aa372d4358d03d1f428299c585b9·...·]-70">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">258 »       </span><span·class="p"·data-group-id="9004601822-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:·d3cf76caffd9476c724366518b4827f9fcac472dc68134547e6bc658d926c5c4·...·]-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="0327818380-71">(</span><span·class="p"·data-group-id="0327818380-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="0327818380-72">}</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·c8d4f388b39b1ef14019312fd2539f877f92ae3f103b32f94f096f40d8589aed·...·]-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="9004601822-71">(</span><span·class="p"·data-group-id="9004601822-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="9004601822-72">}</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·6f1dd7600f2cce6852918613cc3ef1673d5f643a5915c924009ef193f36727a2·...·]-71">)</span><span·class="p">;</span><span·class="w">
260 »       </span><span·class="p"·data-group-id="0327818380-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="0327818380-73">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">260 »       </span><span·class="p"·data-group-id="9004601822-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="9004601822-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="0327818380-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:·faf0da31aff15602d9e75073cd4a5b4890ecb97972dfe33249cd7ea5514231ed·...·]-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="9004601822-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:·bdad459af60e6dbf3b19962f51c5c75aa4cd4bfb4af508f52d390f125b89aa35·...·]-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="0327818380-75">{</span><span·class="nf">self</span><span·class="p"·data-group-id="0327818380-76">(</span><span·class="p"·data-group-id="0327818380-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:·aca674a58aae5cc691437a35e5aa7cd5e622672b8a7d5a77789422ae9ab07d2b·...·]-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="9004601822-75">{</span><span·class="nf">self</span><span·class="p"·data-group-id="9004601822-76">(</span><span·class="p"·data-group-id="9004601822-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:·c384a29ef4ff40c8a1c84cb4ee405a7ddbe6ed538ad61da586eb2f1665710e24·...·]-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="0327818380-77">(</span><span·class="n">MRef</span><span·class="p"·data-group-id="0327818380-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="9004601822-77">(</span><span·class="n">MRef</span><span·class="p"·data-group-id="9004601822-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="0327818380-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="0327818380-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="9004601822-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="9004601822-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="0327818380-79">{</span><span·class="nf">self</span><span·class="p"·data-group-id="0327818380-80">(</span><span·class="p"·data-group-id="0327818380-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:·1b4413d58d4c4862eaff6ac1dbe637bcd350f230b3ebf03dcce57452001d3f34·...·]-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="9004601822-79">{</span><span·class="nf">self</span><span·class="p"·data-group-id="9004601822-80">(</span><span·class="p"·data-group-id="9004601822-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:·8894c1b9e8ca5862d5be13771a7296dde65e34fd80a3bfeda8e4745f3f658465·...·]-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="0327818380-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="0327818380-81">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">271 »       </span><span·class="p"·data-group-id="9004601822-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="9004601822-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="0327818380-82">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="0327818380-82">)</span><span·class="p">.</span><span·class="w">274 ····</span><span·class="nf">acceptor_loop</span><span·class="p"·data-group-id="9004601822-82">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="9004601822-82">)</span><span·class="p">.</span><span·class="w">
  
275 </span><span·class="nf">acceptor_loop</span><span·class="p"·data-group-id="0327818380-83">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="0327818380-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="9004601822-83">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="9004601822-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="0327818380-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="0327818380-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="9004601822-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="9004601822-84">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
277 »       </span><span·class="p"·data-group-id="0327818380-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="0327818380-85">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">277 »       </span><span·class="p"·data-group-id="9004601822-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="9004601822-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="0327818380-86">(</span><span·class="n">ASock</span><span·class="p"·data-group-id="0327818380-86">)</span><span·class="p">,</span><span·class="w">278 »       ····</span><span·class="nf">start_handler</span><span·class="p"·data-group-id="9004601822-86">(</span><span·class="n">ASock</span><span·class="p"·data-group-id="9004601822-86">)</span><span·class="p">,</span><span·class="w">
279 »       ····</span><span·class="nf">acceptor_loop</span><span·class="p"·data-group-id="0327818380-87">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="0327818380-87">)</span><span·class="p">;</span><span·class="w">279 »       ····</span><span·class="nf">acceptor_loop</span><span·class="p"·data-group-id="9004601822-87">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="9004601822-87">)</span><span·class="p">;</span><span·class="w">
280 »       </span><span·class="p"·data-group-id="0327818380-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="0327818380-88">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">280 »       </span><span·class="p"·data-group-id="9004601822-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="9004601822-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="0327818380-89">(</span><span·class="p"·data-group-id="0327818380-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="0327818380-90">}</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·bf61355aa4120de1691e54c474cf2d978e7d7f4b94ee8de0c781122d3a9b1409·...·]-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="9004601822-89">(</span><span·class="p"·data-group-id="9004601822-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="9004601822-90">}</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·35c8d697ac0fe5a8e2a4b57d14c15d0348999ae2298babcb587de42c2242e596·...·]-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="0327818380-91">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0327818380-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="9004601822-91">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="9004601822-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="0327818380-92">(</span><span·class="p"·data-group-id="0327818380-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="9004601822-92">(</span><span·class="p"·data-group-id="9004601822-92">)</span><span·class="p">,</span><span·class="w">
286 ····</span><span·class="p"·data-group-id="0327818380-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="0327818380-93">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·633,·SHA:·84dde10061efc9ea66b69f245fc6cac00b1c8eb4dca2d348ed267441fdfee4a0·...·]-94">)</span><span·class="p">,</span><span·class="w">286 ····</span><span·class="p"·data-group-id="9004601822-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="9004601822-93">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·633,·SHA:·72fb659d55801935829295d7201514603b3c433a22cc145d8443099133ca25dd·...·]-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="6533614902-1">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="6533614902-2">(</span><span·class="p"·data-group-id="6533614902-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><sp[·...·truncated·by·diffoscope;·len:·944,·SHA:·9065bb3eaa47b8e5e0ed1806ea2c42ed9c9a70405ba80854a6a6fd4ad4c32b63·...·]-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="6481880759-1">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="6481880759-2">(</span><span·class="p"·data-group-id="6481880759-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><sp[·...·truncated·by·diffoscope;·len:·944,·SHA:·a29919552a9f69d40660fc9f0842ffd54bff0a72bd9a4dcad36337fee987c235·...·]-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="6533614902-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="6533614902-7">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·71,·SHA:·8c1c640f306c9bf81b4de9b0e21c1f81016f404952fa4cd04877a6932f57e1f2·...·]-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="6481880759-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="6481880759-7">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·71,·SHA:·72dcb23fbc47f1948690a5a36ff14ed22899a327bd471f9f70924d0182e13f8b·...·]-6">)</span><span·class="p">.</span><span·class="w">
153 </span><span·class="p"·data-group-id="6533614902-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:·3f0a65898fca95e7a25053794714e28f4b0759fb49e3677925e17138e1f43160·...·]-8">}</span><span·class="w">153 </span><span·class="p"·data-group-id="6481880759-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:·f95d91526b4ec23e9b43dffc65d13a7df2ef4a8e58fe255725d1351da410b760·...·]-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="6533614902-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="6533614902-11">(</span><span·class="p"·data-group-id="6533614902-11">)</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·281,·SHA:·2c973ed5b71e104a6ebb0b1e051f9e0ddb61a83d26ec9174a8a5bfd4c7435a15·...·]-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="6481880759-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="6481880759-11">(</span><span·class="p"·data-group-id="6481880759-11">)</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·281,·SHA:·60aaa4692b3a9a1c6c7ae2c73291580ae2737b9446c0cb328757a02790dbb415·...·]-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="6533614902-13">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6533614902-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:·74dcde919e812cda5f8ee4f894376d7ad9c06609e15bbc00f1eed6d53612f569·...·]-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="6481880759-13">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6481880759-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:·969bbfe59cc60e05fa399b38889423b919fe4f85c3e6e532c7ca7af35386616b·...·]-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="6533614902-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="6533614902-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="6481880759-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="6481880759-17">)</span><span·class="p">.</span><span·class="w">
162 </span><span·class="p"·data-group-id="6533614902-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:·78ef88b7adb2fba17308fc5f572c9d8de364dce874fdef6bd0e1536702e320b7·...·]-18">}</span><span·class="w">·</span><span·class="c1">%·The·trace·message</span><span·class="w">162 </span><span·class="p"·data-group-id="6481880759-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:·080b68bdad17f137b282e893d243c6ad2c7138107a61f560bb9ec6e43fee9ae2·...·]-18">}</span><span·class="w">·</span><span·class="c1">%·The·trace·message</span><span·class="w">
163 </span><span·class="p"·data-group-id="6533614902-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:·f9ee3dddcf964c97f8264e5c20e65c94893696743370b29998d6d02eeef094ab·...·]-21">]</span><span·class="w">·</span><span·class="c1">%·The·return·value</span><span·class="w">163 </span><span·class="p"·data-group-id="6481880759-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:·ca12a7803f3dc53c5ccc01890a8a1dfc2d817765c95ac0f687fb9fc1dc8baef1·...·]-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="6533614902-22">(</span><span·class="n">Session</span><span·class="p"·data-group-id="6533614902-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="6481880759-22">(</span><span·class="n">Session</span><span·class="p"·data-group-id="6481880759-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="8104752677-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8104752677-2">[</span><span·class="p"·data-group-id="8104752677-3">{</span><span·class="p"·data-group-id="8104752677-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="8104752677-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="8104752677-5">[</span><span·class="p"·data-group-id="8104752677-5">]</span><span·class="p">,</span><span·class="p"·data-group-id="8104752677-6">[</span><span·class="p"·data-group-id="8104752677-6">]</span><span·class="p"·data-group-id="8104752677-3">}</span><span·class="p"·data-group-id="8104752677-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8104752677-7">[</span><span·class="p"·data-group-id="8104752677-7">]</span><span·class="p"·data-group-id="8104752677-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="4192052840-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4192052840-2">[</span><span·class="p"·data-group-id="4192052840-3">{</span><span·class="p"·data-group-id="4192052840-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="4192052840-5">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="4192052840-5">}</span><span·class="p"·data-group-id="4192052840-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="4192052840-6">[</span><span·class="p"·data-group-id="4192052840-6">]</span><span·class="p">,</span><span·class="p"·data-group-id="4192052840-7">[</span><span·class="p"·data-group-id="4192052840-7">]</span><span·class="p"·data-group-id="4192052840-3">}</span><span·class="p"·data-group-id="4192052840-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4192052840-8">[</span><span·class="p"·data-group-id="4192052840-8">]</span><span·class="p"·data-group-id="4192052840-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:·1471,·SHA:·57e188a3cdb537d125fdb9efee116a35a7a6eec0178e864bcc92f3de581be767·...·]-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:·1310,·SHA:·b60bd69e984bd959b5d036c9d6bc04d2728f052275d65562336ce4806f0ef25c·...·]-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="3193210931-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3193210931-2">[</span><span·class="p"·data-group-id="3193210931-3">{</span><span·class="p"·data-group-id="3193210931-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="3193210931-5">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="3193210931-5">}</span><span·class="p"·data-group-id="3193210931-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="3193210931-6">[</span><span·class="p"·data-group-id="3193210931-6">]</span><span·class="p">,</span><span·class="p"·data-group-id="3193210931-7">[</span><span·class="p"·data-group-id="3193210931-7">]</span><span·class="p"·data-group-id="3193210931-3">}</span><span·class="p"·data-group-id="3193210931-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3193210931-8">[</span><span·class="p"·data-group-id="3193210931-8">]</span><span·class="p"·data-group-id="3193210931-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="6309024725-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6309024725-2">[</span><span·class="p"·data-group-id="6309024725-3">{</span><span·class="p"·data-group-id="6309024725-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="6309024725-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="6309024725-5">[</span><span·class="p"·data-group-id="6309024725-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="6309024725-7">{</span><span·class="nb">node</span><span·class="p"·data-group-id="6309024725-7">}</span><span·class="p"·data-group-id="6309024725-6">}</span><span·class="p"·data-group-id="6309024725-5">]</span><span·class="p">,</span><span·class="p"·data-group-id="6309024725-8">[</span><span·class="p"·data-group-id="6309024725-8">]</span><span·class="p"·data-group-id="6309024725-3">}</span><span·class="p"·data-group-id="6309024725-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6309024725-9">[</span><span·class="p"·data-group-id="6309024725-9">]</span><span·class="p"·data-group-id="6309024725-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="2833303977-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2833303977-2">[</span><span·class="p"·data-group-id="2833303977-3">{</span><span·class="p"·data-group-id="2833303977-4">[</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="2833303977-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="2833303977-5">[</span><span·class="p"·data-group-id="2833303977-5">]</span><span·class="p">,</span><span·class="p"·data-group-id="2833303977-6">[</span><span·class="p"·data-group-id="2833303977-6">]</span><span·class="p"·data-group-id="2833303977-3">}</span><span·class="p"·data-group-id="2833303977-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2833303977-7">[</span><span·class="p"·data-group-id="2833303977-7">]</span><span·class="p"·data-group-id="2833303977-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="8038401566-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8038401566-2">[</span><span·class="p"·data-group-id="8038401566-3">{</span><span·class="p"·data-group-id="8038401566-4">[</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8038401566-5">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="8038401566-5">}</span><span·class="p"·data-group-id="8038401566-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="8038401566-6">[</span><span·class="p"·data-group-id="8038401566-6">]</span><span·class="p">,</span><span·class="p"·data-group-id="8038401566-7">[</span><span·class="p"·data-group-id="8038401566-7">]</span><span·class="p"·data-group-id="8038401566-3">}</span><span·class="p"·data-group-id="8038401566-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8038401566-8">[</span><span·class="p"·data-group-id="8038401566-8">]</span><span·class="p"·data-group-id="8038401566-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="2577272662-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2577272662-2">[</span><span·class="p"·data-group-id="2577272662-3">{</span><span·class="p"·data-group-id="2577272662-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="2577272662-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="2577272662-5">[</span><span·class="p"·data-group-id="2577272662-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="2577272662-7">{</span><span·class="ss">self</span><span·class="p"·data-group-id="2577272662-7">}</span><span·class="p"·data-group-id="2577272662-6">}</span><span·class="p"·data-group-id="2577272662-5">]</span><span·class="p">,</span><span·class="p"·data-group-id="2577272662-8">[</span><span·class="p"·data-group-id="2577272662-8">]</span><span·class="p"·data-group-id="2577272662-3">}</span><span·class="p"·data-group-id="2577272662-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2577272662-9">[</span><span·class="p"·data-group-id="2577272662-9">]</span><span·class="p"·data-group-id="2577272662-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[·...·truncated·by·diffoscope;·len:·1551,·SHA:·23c8a9c3b889c2fba93838ac3583abd4cac04a0ed2cba721fe6d9de4f6ceed4f·...·]-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[·...·truncated·by·diffoscope;·len:·1215,·SHA:·68144ca2f6f952bd54565375cf5465ef09d9878986f1b30399453fb2caa44df0·...·]-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="3291239311-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3291239311-2">[</span><span·class="p"·data-group-id="3291239311-3">{</span><span·class="p"·data-group-id="3291239311-4">[</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3291239311-5">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="3291239311-5">}</span><span·class="p"·data-group-id="3291239311-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="3291239311-6">[</span><span·class="p"·data-group-id="3291239311-6">]</span><span·class="p">,</span><span·class="p"·data-group-id="3291239311-7">[</span><span·class="p"·data-group-id="3291239311-7">]</span><span·class="p"·data-group-id="3291239311-3">}</span><span·class="p"·data-group-id="3291239311-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3291239311-8">[</span><span·class="p"·data-group-id="3291239311-8">]</span><span·class="p"·data-group-id="3291239311-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="0518433863-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0518433863-2">[</span><span·class="p"·data-group-id="0518433863-3">{</span><span·class="p"·data-group-id="0518433863-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="0518433863-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="0518433863-5">[</span><span·class="p"·data-group-id="0518433863-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="0518433863-7">{</span><span·class="ss">self</span><span·class="p"·data-group-id="0518433863-7">}</span><span·class="p"·data-group-id="0518433863-6">}</span><span·class="p"·data-group-id="0518433863-5">]</span><span·class="p">,</span><span·class="p"·data-group-id="0518433863-8">[</span><span·class="p"·data-group-id="0518433863-8">]</span><span·class="p"·data-group-id="0518433863-3">}</span><span·class="p"·data-group-id="0518433863-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0518433863-9">[</span><span·class="p"·data-group-id="0518433863-9">]</span><span·class="p"·data-group-id="0518433863-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="8072931095-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8072931095-2">[</span><span·class="p"·data-group-id="8072931095-3">{</span><span·class="p"·data-group-id="8072931095-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="8072931095-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="8072931095-5">[</span><span·class="p"·data-group-id="8072931095-6">{</span><span·class="ss">&#39;=/=&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="8072931095-7">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="8072931095-7">}</span><span·class="p">,</span><span·class="p"·data-group-id="8072931095-8">{</span><span·class="nb">node</span><span·class="p"·data-group-id="8072931095-8">}</span><span·class="p"·data-group-id="8072931095-6">}</span><span·class="p"·data-group-id="8072931095-5">]</span><span·class="p">,</span><span·class="p"·data-group-id="8072931095-9">[</span><span·class="p"·data-group-id="8072931095-9">]</span><span·class="p"·data-group-id="8072931095-3">}</span><span·class="p"·data-group-id="8072931095-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8072931095-10">[</span><span·class="p"·data-group-id="8072931095-10">]</span><span·class="p"·data-group-id="8072931095-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1523 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>551 <p>Copyright·©·1996-2024·<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
666 B
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/.build
    
Offset 23, 15 lines modifiedOffset 23, 15 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-45F0B0B3.js30 dist/search_data-98BCB65F.js
31 dist/sidebar_items-50746EC9.js31 dist/sidebar_items-50746EC9.js
32 index.html32 index.html
33 megaco.html33 megaco.html
34 megaco_architecture.html34 megaco_architecture.html
35 megaco_codec_meas.html35 megaco_codec_meas.html
36 megaco_codec_mstone1.html36 megaco_codec_mstone1.html
37 megaco_codec_mstone2.html37 megaco_codec_mstone2.html
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>303 <p>Copyright·©·1996-2024·<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
150 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco.epub
6.75 KB
zipinfo {}
Max HTML report size reached
89.7 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
3.47 KB
OEBPS/content.opf
3.44 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="5594343077-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="5594343077-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·441,·SHA:·1024635860dbf514dad14df0ca66cb4bcea932e730658cdfcdbf85fea40597a6·...·]-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="0666588862-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="0666588862-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·441,·SHA:·37000c11cfe8fcd8b54f493abf13b4e38e510e73802b7d9e4b519ef0c8a5d7af·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4108 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>260 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>251 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>588 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>255 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>255 <p>Copyright·©·1996-2024·<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="4429261058-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="4429261058-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:·153,·SHA:·2d677a5f4546c3c9cc9675df42ac633ca63c7c59a8d83863beecb75419b09b18·...·]-2">]</span><span·class="w">175 ········</span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="4422132789-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="4422132789-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:·153,·SHA:·303099d45c9b763ecb3358ac51836a7fe6d107bdcf8e5fbe6bf7df4a0cb7f138·...·]-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="4429261058-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="4429261058-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="4422132789-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="4422132789-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="4429261058-4">(</span><span·class="p"·data-group-id="4429261058-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="4422132789-4">(</span><span·class="p"·data-group-id="4422132789-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="4429261058-5">(</span><span·class="p"·data-group-id="4429261058-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="4422132789-5">(</span><span·class="p"·data-group-id="4422132789-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="5476386302-1">(</span><span·class="p"·data-group-id="5476386302-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:·686,·SHA:·cf5d631d8b48e2adf252d630d3b798d9e4cc7df958e448709eaf84b0cc863c17·...·]2-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="2175691932-1">(</span><span·class="p"·data-group-id="2175691932-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:·686,·SHA:·be99ce6bd5c61b3b87fe882e7c9b7fa9e0b2c480581efac95588a895cb3f5420·...·]2-2">)</span><span·class="w">
203 </span><span·class="nf">messages_list</span><span·class="p"·data-group-id="5476386302-3">(</span><span·class="p"·data-group-id="5476386302-3">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5476386302-4">[</span><span·class="p"·data-group-id="5476386302-5">{</span><span·class="nf">message_name</span><span·class="p"·data-group-id="5476386302-6">(</span><span·class="p"·data-group-id="5476386302-6">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">message</span><span·class="p"·data-group-id="5476386302-7">(</span><span·class="p"·data-group-id="5476386302-7">)</span><span·class="p"·data-group-id="5476386302-5">}</span><span·class="p"·data-group-id="5476386302-4">]</span><span·class="w"> 
204 </span><span·class="nf">message_name</span><span·class="p"·data-group-id="5476386302-8">(</span><span·class="p"·data-group-id="5476386302-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="5476386302-9">(</span><span·class="p"·data-group-id="5476386302-9">)</span><span·class="w"> 
205 </span><span·class="nf">message</span><span·class="p"·data-group-id="5476386302-10">(</span><span·class="p"·data-group-id="5476386302-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="54763863[·...·truncated·by·diffoscope;·len:·155,·SHA:·15736c163d933a3097ed78f9683ce042da0f11f0fbb1b5b81630861bf5d66e5a·...·]203 </span><span·class="nf">messages_list</span><span·class="p"·data-group-id="2175691932-3">(</span><span·class="p"·data-group-id="2175691932-3">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2175691932-4">[</span><span·class=[·...·truncated·by·diffoscope;·len:·490,·SHA:·28fb9c23d8a9bb4f2274a6ccabdadb9670cc01c54e621e1763449de283ff01be·...·]
 204 </span><span·class="nf">message_name</span><span·class="p"·data-group-id="2175691932-8">(</span><span·class="p"·data-group-id="2175691932-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="2175691932-9">(</span><span·class="p"·data-group-id="2175691932-9">)</span><span·class="w">
 205 </span><span·class="nf">message</span><span·class="p"·data-group-id="2175691932-10">(</span><span·class="p"·data-group-id="2175691932-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="2175691932-11">(</span><span·class="p"·data-group-id="2175691932-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>267 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>509 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>282 <p>Copyright·©·1996-2024·<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="8823611958-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·cl[·...·truncated·by·diffoscope;·len:·130,·SHA:·1df9a3ac3645a56a6bab1d66e05bb05aa6cd01973d6d9f1989594c7a2a638e3a·...·]-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="7353923256-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·cl[·...·truncated·by·diffoscope;·len:·130,·SHA:·7517ff0881680e9246895d4e33dc2803a7e1de3448126027712b1e0b5c964438·...·]-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="8823611958-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="7353923256-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="8823611958-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="8823611958-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="7353923256-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="7353923256-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="8823611958-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="7353923256-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="8823611958-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="8823611958-5">[</span><span·class="o">?</span><span·class="ss">megaco_root_termination_id</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·9abec1e5b5e8af63752777760cb33056d00a9681875c2d0fce473ab568cf299f·...·]-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="7353923256-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="7353923256-5">[</span><span·class="o">?</span><span·class="ss">megaco_root_termination_id</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·5ea39d8fa5651c9a3ae22588932eabdcd04b03e4511018d144f06d7b893103d4·...·]-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="8823611958-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="7353923256-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="8823611958-6">[</span><span·class="o">#</span><span·class="ss">&#39;ActionRequest&#39;</span><span·class="p"·data-group-id="8823611958-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="7353923256-6">[</span><span·class="o">#</span><span·class="ss">&#39;ActionRequest&#39;</span><span·class="p"·data-group-id="7353923256-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="8823611958-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="8823611958-8">}</span><span·class="p"·data-group-id="8823611958-7">}</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·d7548fb7e76d17dfdc2ab7cb08bdebbe22cd9c46bfa4cbb6ab1f6b240c2ac1bb·...·]-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="7353923256-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="7353923256-8">}</span><span·class="p"·data-group-id="7353923256-7">}</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·956a23f7cd0b94dddb0169c0be7f628687352eaf74b1b1d97df19d8e092b7d16·...·]-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="8823611958-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="8823611958-9">)[·...·truncated·by·diffoscope;·len:·217,·SHA:·da9eef7b5b99cb30615e28b3e884d46c58695f9e553ce27cd4d56b53104e695d·...·]-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="7353923256-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="7353923256-9">)[·...·truncated·by·diffoscope;·len:·217,·SHA:·2859ff37685009dc485739b03fa89048f8c00e7d835020640f62b11351b35baf·...·]-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="3232729721-2">{</span><span·class="ss">&#39;Message&#39;</span><span·class="p">,</span><span·class="w">188 ···</span><span·class="p"·data-group-id="8812447190-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="3232729721-3">{</span><span·class="ss">ip4Address</span><span·class="p">,</span><span·class="p"·data-group-id="3232729721-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:·9e6c0a9bc32d654afa6a45e39ddec3a0a7c1297f08f19bb62d4318e6cadcbc6c·...·]-3">}</span><span·class="p">,</span><span·class="w">190 ····</span><span·class="p"·data-group-id="8812447190-3">{</span><span·class="ss">ip4Address</span><span·class="p">,</span><span·class="p"·data-group-id="8812447190-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:·272771fa8590b19353b1b290c5347eacef59455b64690d60d4746e6156982457·...·]-3">}</span><span·class="p">,</span><span·class="w">
191 ····</span><span·class="p"·data-group-id="3232729721-6">{</span><span·class="ss">transactions</span><span·class="p">,</span><span·class="w">191 ····</span><span·class="p"·data-group-id="8812447190-6">{</span><span·class="ss">transactions</span><span·class="p">,</span><span·class="w">
192 ·····</span><span·class="p"·data-group-id="3232729721-7">[</span><span·class="w">192 ·····</span><span·class="p"·data-group-id="8812447190-7">[</span><span·class="w">
193 ······</span><span·class="p"·data-group-id="3232729721-8">{</span><span·class="ss">transactionRequest</span><span·class="p">,</span><span·class="w">193 ······</span><span·class="p"·data-group-id="8812447190-8">{</span><span·class="ss">transactionRequest</span><span·class="p">,</span><span·class="w">
194 ·······</span><span·class="p"·data-group-id="3232729721-9">{</span><span·class="ss">&#39;TransactionRequest&#39;</span><span·class="p">,</span><span·class="w">194 ·······</span><span·class="p"·data-group-id="8812447190-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="3232729721-10">[</span><span·class="p"·data-group-id="3232729721-11">{</span><span·class="ss">&#39;ActionRequest&#39;</span><span·class="p">,</span><span·class="w">196 ·········</span><span·class="p"·data-group-id="8812447190-10">[</span><span·class="p"·data-group-id="8812447190-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="3232729721-12">[</span><span·class="w">200 ···········</span><span·class="p"·data-group-id="8812447190-12">[</span><span·class="w">
201 ············</span><span·class="p"·data-group-id="3232729721-13">{</span><span·class="ss">&#39;CommandRequest&#39;</span><span·class="p">,</span><span·class="w">201 ············</span><span·class="p"·data-group-id="8812447190-13">{</span><span·class="ss">&#39;CommandRequest&#39;</span><span·class="p">,</span><span·class="w">
202 ·············</span><span·class="p"·data-group-id="3232729721-14">{</span><span·class="ss">serviceChangeReq</span><span·class="p">,</span><span·class="w">202 ·············</span><span·class="p"·data-group-id="8812447190-14">{</span><span·class="ss">serviceChangeReq</span><span·class="p">,</span><span·class="w">
203 ··············</span><span·class="p"·data-group-id="3232729721-15">{</span><span·class="ss">&#39;ServiceChangeRequest&#39;</span><span·class="p">,</span><span·class="w">203 ··············</span><span·class="p"·data-group-id="8812447190-15">{</span><span·class="ss">&#39;ServiceChangeRequest&#39;</span><span·class="p">,</span><span·class="w">
204 ···············</span><span·class="p"·data-group-id="3232729721-16">[</span><span·class="w">204 ···············</span><span·class="p"·data-group-id="8812447190-16">[</span><span·class="w">
205 ················</span><span·class="p"·data-group-id="3232729721-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="3232729721-18">[</span><span·class="s">[·...·truncated·by·diffoscope;·len:·172,·SHA:·af214e53bd6cf2ce61abb8b917d751afec13bb914779f286ed0dd8f762d70749·...·]-16">]</span><span·class="p">,</span><span·class="w">205 ················</span><span·class="p"·data-group-id="8812447190-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="8812447190-18">[</span><span·class="s">[·...·truncated·by·diffoscope;·len:·172,·SHA:·1b9a3bfdb26314e7839d39287c07872d970051c73b2d4636e856ac51836f7fe5·...·]-16">]</span><span·class="p">,</span><span·class="w">
206 ················</span><span·class="p"·data-group-id="3232729721-19">{</span><span·class="ss">&#39;ServiceChangeParm&#39;</span><span·class="p">,</span><span·class="w">206 ················</span><span·class="p"·data-group-id="8812447190-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="3232729721-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="3232729721-20">}</span><span·class="p">,</span><span·class="w">208 ·················</span><span·class="p"·data-group-id="8812447190-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="8812447190-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="3232729721-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:·5fbba1dd101f58d5aab74af2766f7fc375f02b00348afcab4d20a3fdde5c25a2·...·]-21">}</span><span·class="p">,</span><span·class="w">210 ·················</span><span·class="p"·data-group-id="8812447190-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:·00f8c777d4a74164516f7c729b041f7e02aa9dc16d29f197e6eef363ce8362e5·...·]-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="3232729721-19">}</span><span·class="w">215 ················</span><span·class="p"·data-group-id="8812447190-19">}</span><span·class="w">
216 ··············</span><span·class="p"·data-group-id="3232729721-15">}</span><span·class="w">216 ··············</span><span·class="p"·data-group-id="8812447190-15">}</span><span·class="w">
217 ·············</span><span·class="p"·data-group-id="3232729721-14">}</span><span·class="p">,</span><span·class="w">217 ·············</span><span·class="p"·data-group-id="8812447190-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="3232729721-13">}</span><span·class="w">220 ············</span><span·class="p"·data-group-id="8812447190-13">}</span><span·class="w">
221 ···········</span><span·class="p"·data-group-id="3232729721-12">]</span><span·class="w">221 ···········</span><span·class="p"·data-group-id="8812447190-12">]</span><span·class="w">
222 ··········</span><span·class="p"·data-group-id="3232729721-11">}</span><span·class="w">222 ··········</span><span·class="p"·data-group-id="8812447190-11">}</span><span·class="w">
223 ·········</span><span·class="p"·data-group-id="3232729721-10">]</span><span·class="w">223 ·········</span><span·class="p"·data-group-id="8812447190-10">]</span><span·class="w">
224 ·······</span><span·class="p"·data-group-id="3232729721-9">}</span><span·class="w">224 ·······</span><span·class="p"·data-group-id="8812447190-9">}</span><span·class="w">
225 ······</span><span·class="p"·data-group-id="3232729721-8">}</span><span·class="w">225 ······</span><span·class="p"·data-group-id="8812447190-8">}</span><span·class="w">
226 ·····</span><span·class="p"·data-group-id="3232729721-7">]</span><span·class="w">226 ·····</span><span·class="p"·data-group-id="8812447190-7">]</span><span·class="w">
227 ····</span><span·class="p"·data-group-id="3232729721-6">}</span><span·class="w">227 ····</span><span·class="p"·data-group-id="8812447190-6">}</span><span·class="w">
228 ···</span><span·class="p"·data-group-id="3232729721-2">}</span><span·class="w">228 ···</span><span·class="p"·data-group-id="8812447190-2">}</span><span·class="w">
229 ··</span><span·class="p"·data-group-id="3232729721-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="8812447190-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>358 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1405 <p>Copyright·©·1996-2024·<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="3640228514-1">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3640228514-2">[</span><span·class="p"·data-group-id="3640228514-2">]</span><span·class="p"·data-group-id="364022[·...·truncated·by·diffoscope;·len:·4,·SHA:·6bf76be895daa81eecd02713d3fb73d1f5215d48720a139479234c293e88d26a·...·]-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="6524767839-1">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6524767839-2">[</span><span·class="p"·data-group-id="6524767839-2">]</span><span·class="p"·data-group-id="652476[·...·truncated·by·diffoscope;·len:·4,·SHA:·cc87d27285025584dc9cf888e8b1f415eca13f64bc04b9acbdc04259e9f27864·...·]-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="3640228514-3">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3640228514-4">[</span><span·class="p"·data-group-id="3640228514-4">]</span><span·class="p"·data-group-id="3640228514-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="3640228514-5">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3640228514-6">[</span><span·class="p"·data-group-id="3640228514-6"[·...·truncated·by·diffoscope;·len:·52,·SHA:·cf50dad8824cc5a7b0af683f64671e6caaf0bbe9b3c47153afa96a9c652ce316·...·]">)</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="6524767839-3">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6524767839-4">[</span><span·class="p"·data-group-id="6524767839-[·...·truncated·by·diffoscope;·len:·54,·SHA:·a3eab096fc58bb3c416e403d8109a52b35182972de9b6321f230730e02c71e9c·...·]">)</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="6524767839-5">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6524767839-6">[</span><span·class="p"·data-group-id="6524767839-6">]</span><span·class="p"·data-group-id="6524767839-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="3640228514-7">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3640228514-8">[</span><span·class="p"·data-group-id="3640228514-8">]</span><span·class="p"·data-group-id="364022[·...·truncated·by·diffoscope;·len:·4,·SHA:·6bf76be895daa81eecd02713d3fb73d1f5215d48720a139479234c293e88d26a·...·]-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="6524767839-7">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6524767839-8">[</span><span·class="p"·data-group-id="6524767839-8">]</span><span·class="p"·data-group-id="652476[·...·truncated·by·diffoscope;·len:·4,·SHA:·cc87d27285025584dc9cf888e8b1f415eca13f64bc04b9acbdc04259e9f27864·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>219 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>452 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>215 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>207 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>258 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>336 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1241 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>862 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>341 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>192 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>892 <p>Copyright·©·1996-2024·<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="3050316402-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:·2870aea00666abd97e949bc8aa7116706cbacccbe26083cb85e5c35f26199680·...·]-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="6195481486-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:·be4df35ee09bc5eeb95583a520d556c89d97c17efb8201401a0aaea1c2e14b9e·...·]-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="1911541480-1">(</span><span·class="p"·data-group-id="1911541480-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="1911541[·...·truncated·by·diffoscope;·len:·56,·SHA:·d029c9ba1b26f19da805712b899af27706b9c264d46123e462fb1e528b300ce2·...·]-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="5551340473-1">(</span><span·class="p"·data-group-id="5551340473-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="5551340[·...·truncated·by·diffoscope;·len:·56,·SHA:·37f25aa8258c2278cfe18ef44ef00772b22b02b15ad401e5de68d893f301f078·...·]-2">}</span><span·class="w">
147 </span><span·class="nf">action_reply</span><span·class="p"·data-group-id="1911541480-3">(</span><span·class="p"·data-group-id="1911541480-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="191154148[·...·truncated·by·diffoscope;·len:·54,·SHA:·a6672a2998dc41be6ab335c1d085c3820f3a5c1d8af2f7c6ad95cac108d8a570·...·]-4">}</span><span·class="w">147 </span><span·class="nf">action_reply</span><span·class="p"·data-group-id="5551340473-3">(</span><span·class="p"·data-group-id="5551340473-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="555134047[·...·truncated·by·diffoscope;·len:·54,·SHA:·774510e46315fd14312579dfc765d0c4108886bf2be9e084faede4e2106f2592·...·]-4">}</span><span·class="w">
148 </span><span·class="nf">error_desc</span><span·class="p"·data-group-id="1911541480-5">(</span><span·class="p"·data-group-id="1911541480-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="1911541480-6">{</span><span·class="p"·data-group-id="1911541480-6">}</span><span·class="w"> 
149 </span><span·class="nf">segment_no</span><span·class="p"·data-group-id="1911541480-7">(</span><span·class="p"·data-group-id="1911541480-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:·ae3e8424407f06ddb04ea3ce60cab3de838d5fee8bbdc7cacd873f1c8f1b1a0b·...·]148 </span><span·class="nf">error_desc</span><span·class="p"·data-group-id="5551340473-5">(</span><span·class="p"·data-group-id="5551340473-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:·9fd41a84398a4b3f0dc041a579d3259cc9df3ca03ff716e80082af6b9d00c3ae·...·]
 149 </span><span·class="nf">segment_no</span><span·class="p"·data-group-id="5551340473-7">(</span><span·class="p"·data-group-id="5551340473-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="5551340473-8">(</span><span·class="p"·data-group-id="5551340473-8">)</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">conn_handle</span><span·class="p"·data-group-id="3149437028-1">(</span><span·class="p"·data-group-id="3149437028-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="3149437028-2">{</span><span·class="p"·data-group-id="3149437028-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1556 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>985 <p>Copyright·©·1996-2024·<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.75 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.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-45F0B0B3.js"></script>124 <script·src="dist/search_data-98BCB65F.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v4.63 v4.6
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·megaco[q···················]6 Search·documentation·of·megaco[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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-69A0CECD.js21 dist/search_data-9BFFF869.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>204 <p>Copyright·©·1996-2024·<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
948 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
76.7 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="3210569886-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3210569886-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="8333168829-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8333168829-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="3210569886-3">[</span><span·class="p"·data-group-id="3210569886-3">]</span><span·class="p"·data-group-id="3210569886-2">}</span><span·class="p"·data-group-id="3210569886-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="8333168829-3">[</span><span·class="p"·data-group-id="8333168829-3">]</span><span·class="p"·data-group-id="8333168829-2">}</span><span·class="p"·data-group-id="8333168829-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="6603464374-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="6603464374-2">(</span><span·class="p"·data-group-id="6603464374-2">)</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·102,·SHA:·624532d6fa777939eb2fdfab4b2ec0ebee54fc9b337445c8f801cb1ccb0a34e1·...·]-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="9754407302-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="9754407302-2">(</span><span·class="p"·data-group-id="9754407302-2">)</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·102,·SHA:·a9911ae5edcaf1e0d177c7640df10457477b49fcf9572aa56253245ed048f07f·...·]-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="4628179198-1">(</span><span·class="ss">table</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4628179198-2">[</span><span·class="p"·data-group-id="4628179198-3">{</span><span·class="ss">ram_copies</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·687,·SHA:·e96629eb65a15f1e863a0c3d7951b0de70ad950415781e2734eb74069dd43637·...·]8-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="4102566528-1">(</span><span·class="ss">table</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4102566528-2">[</span><span·class="p"·data-group-id="4102566528-3">{</span><span·class="ss">ram_copies</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·687,·SHA:·5524f30d59f38fc4909350901756805237c7965ad49b38532edde2b59a82ebda·...·]8-6">}</span><span·class="p">,</span><span·class="w">
3120 ·······</span><span·class="p"·data-group-id="4628179198-8">{</span><span·class="ss">storage_properties</span><span·class="p">,</span><span·class="w">3120 ·······</span><span·class="p"·data-group-id="4102566528-8">{</span><span·class="ss">storage_properties</span><span·class="p">,</span><span·class="w">
3121 ········</span><span·class="p"·data-group-id="4628179198-9">[</span><span·class="p"·data-group-id="4628179198-10">{</span><span·class="ss">ets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4628179198-11">[</span><span·class="ss">compressed</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·870,·SHA:·474c355d7cb370f31c1570955f84571d8a73ba623734ad9afb42c3fb5f094e71·...·]8-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="4102566528-9">[</span><span·class="p"·data-group-id="4102566528-10">{</span><span·class="ss">ets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4102566528-11">[</span><span·class="ss">compressed</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·870,·SHA:·5168c33b71be52a895b7b5758d0f2af472dd6d507d6d5d7babf7aec064ece3e7·...·]8-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="2521435211-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="3921527784-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">
3128 ····</span><span·class="p"·data-group-id="2521435211-2">[</span><span·class="p"·data-group-id="2521435211-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2521435211-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="2521435211-4">]</span><span·class="p"·data-group-id="2521435211-3">}</span><span·class="p">,</span><span·class="w"> 
3129 ·····</span><span·class="p"·data-group-id="2521435211-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="2521435211-6">(</span><span·class="ss">fields</[·...·truncated·by·diffoscope;·len:·412,·SHA:·52ac667cef318dfbe94bab25e71ad617a5dea9077afc0030a7ead837c3d5e1cd·...·]3128 ····</span><span·class="p"·data-group-id="3921527784-2">[</span><span·class="p"·data-group-id="3921527784-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3921527784-4">[</span><span·cl[·...·truncated·by·diffoscope;·len:·236,·SHA:·9f55d4d880e7086ec6e83ac0f843ab00ecf83414aa172a213f1fb77afb79921c·...·]
 3129 ·····</span><span·class="p"·data-group-id="3921527784-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="3921527784-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="3921527784-6">)</span><span·class="p"·data-group-id="3921527784-5">}</span><span·class="p"·data-group-id="3921527784-2">]</span><span·class="p"·data-group-id="3921527784-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="2535910544-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="3034974160-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">
3132 ····</span><span·class="p"·data-group-id="2535910544-2">[</span><span·class="p"·data-group-id="2535910544-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2535910544-4">[</span><span·class="n">N1</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·146,·SHA:·15bd1e09e73bd1936636e9d42f7311236e70d15bd0fd419b263d9f213dd01cb8·...·]-3">}</span><span·class="p">,</span><span·class="w">3132 ····</span><span·class="p"·data-group-id="3034974160-2">[</span><span·class="p"·data-group-id="3034974160-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3034974160-4">[</span><span·class="n">N1</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·146,·SHA:·751440cfe48a295d0fd5f74ca735122b72b72d961c4fc22120b75c88e1de56f5·...·]-3">}</span><span·class="p">,</span><span·class="w">
3133 ·····</span><span·class="p"·data-group-id="2535910544-5">{</span><span·class="ss">index</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2535910544-6">[</span><span·class="ss">address</span><span·class="p"·data-group-id="2535910544-6">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·fb089f968479be1a2a0641e55108c3b4ecd05439f420da8b16afb059ee8e74ac·...·]-5">}</span><span·class="p">,</span><span·class="w">3133 ·····</span><span·class="p"·data-group-id="3034974160-5">{</span><span·class="ss">index</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3034974160-6">[</span><span·class="ss">address</span><span·class="p"·data-group-id="3034974160-6">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·02caaf1dbec584bb4fed668eeb910582ff750c396e0a422a454ad11b3e8e1d0f·...·]-5">}</span><span·class="p">,</span><span·class="w">
3134 ·····</span><span·class="p"·data-group-id="2535910544-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="2535910544-8">(</span><span·class="ss">fields</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·244,·SHA:·60c6a2c12f598ad5d13b9f70ad7894a9981f596c5f8c3c7e904023c8fe6e7b87·...·]-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="3034974160-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="3034974160-8">(</span><span·class="ss">fields</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·244,·SHA:·74229eb8c296675fbb489c4a313d09bee0a174423c10b191c68cca84670a6d97·...·]-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="7231136870-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:·0dd7adae9ae15ab4c6c01ef168d37caec8ac264c01ae00724e3c1e767496a79e·...·]-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="8339265844-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:·e5c8151e8805a8bb45fd6c6511d7edabaa5042f77642bcfaaf0357dc2fa4a1db·...·]-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="7231136870-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="7231136[·...·truncated·by·diffoscope;·len:·3,·SHA:·8a9a02d73aeefd97306a08c30969a9e8d5ef03960978a1c5db4447558d40f689·...·]-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="8339265844-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="8339265[·...·truncated·by·diffoscope;·len:·3,·SHA:·db9351a297a7362b3c913ac8de77bd9a1ccc0d61bada939db15a315f5e8113fc·...·]-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="7231136870-3">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="p"·data-group-id="7231136870-4">[</span><span·class="p"·data-group-id="7231136870-5">{</span><span·class="n">MatchHead</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·466,·SHA:·686bd15c0bbadf89c9642f9bb18bc9b8e75ced2546c24fb4cdf14240570ba42b·...·]-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="8339265844-3">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="p"·data-group-id="8339265844-4">[</span><span·class="p"·data-group-id="8339265844-5">{</span><span·class="n">MatchHead</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·466,·SHA:·3e7d50112b9acdfdff3b9cd8970d12443331fe994722d1126297ebf8978d4deb·...·]-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="9733705753-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="5546177412-1">(</span><span·class="ss">employee</span><span·class="p">,</span><span·class="w">
5683 ····</span><span·class="p"·data-group-id="9733705753-2">[</span><span·class="p"·data-group-id="9733705753-3">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9733705753-4">[</span><span·class="p"·data-group-id="9733705753-5">{</span[·...·truncated·by·diffoscope;·len:·438,·SHA:·6aa3dc9d657756a05086606ba2664fd8637f2c4ed4c8abb2d42d0a2fe4efeab7·...·]-3">}</span><span·class="p">,</span><span·class="w">5683 ····</span><span·class="p"·data-group-id="5546177412-2">[</span><span·class="p"·data-group-id="5546177412-3">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5546177412-4">[</span><span·class="p"·data-group-id="5546177412-5">{</span[·...·truncated·by·diffoscope;·len:·438,·SHA:·e0c8ac2697f6ea3f9dff854f6ee7dffd58f81c57433873100b8887dccc2ea444·...·]-3">}</span><span·class="p">,</span><span·class="w">
5684 ·····</span><span·class="p"·data-group-id="9733705753-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="9733705753-8">(</span><span·class="ss">fields</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·247,·SHA:·7c4efdb287330bb197be012e39b258fcd5756ed89e8c85319651656ff48812ae·...·]-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>,·and5684 ·····</span><span·class="p"·data-group-id="5546177412-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="5546177412-8">(</span><span·class="ss">fields</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·247,·SHA:·a6a7d7568f91937306f3721e20899e61da4ba6e2b0376ebb63fee59d9f279420·...·]-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="5347407260-1">(</span><span·class="p"·data-group-id="5347407260-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:·e61fa20f02a87339e7f8ce4e5af201c617c4f56bd146be78aa0626c665651734·...·]-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="9542238104-1">(</span><span·class="p"·data-group-id="9542238104-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:·eda65e890ed969ad51345cb864760e662f49e127fd9ef4639cec5804a681a857·...·]-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="5347407260-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:·89c4d3c147c8d3f085ad568b49f8a2de5e30078f15e3bd66c38d86c2d65392be·...·]-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="9542238104-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:·5aa1efe687891cb4b3ac7818d8b3b3854826d2044b302699773219091697eded·...·]-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="5347407260-4">(</span><span·class="p"·data-group-id="5347407260-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="9542238104-4">(</span><span·class="p"·data-group-id="9542238104-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="5347407260-5">(</span><span·class="n">F</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="5347407260-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="5347407260-6">}</span><span·class="p"·data-group-id="5347407260-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="5347407260-7">(</span><span·class="n">M</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="5347407260-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:·0b566beface58cb671f3670016808f6e4ece01cdb186d2246b7a8484e7bc839f·...·]">)</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="9542238104-5">(</span><span·class="n">F</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9542238104-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:·8dc2fb67e85e18e8fa81827dd2eaac7e186d259bc4b52160383267cdf4892c72·...·]">)</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="9542238104-7">(</span><span·class="n">M</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9542238104-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="9542238104-8">}</span><span·class="p"·data-group-id="9542238104-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="5347407260-9">(</span><span·class="n">Child</span><span·class="p"·data-group-id="5347407260-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:·cb5802d877f7f7e19337e9595eb628818a998c64fb28f4444787fefb11ae95c4·...·]-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="9542238104-9">(</span><span·class="n">Child</span><span·class="p"·data-group-id="9542238104-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:·e5ef41411e066960c7e92e2b090b8358228ee946e9d1dd3eac077ecdc03a25c0·...·]-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="5347407260-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="5347407260-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="9542238104-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="9542238104-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="5347407260-12">(</span><span·class="n">Trans</span><span·class="p"·data-group-id="5347407260-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="9542238104-12">(</span><span·class="n">Trans</span><span·class="p"·data-group-id="9542238104-12">)</span><span·class="p">.</span><span·class="w">
  
6295 </span><span·class="nf">oid</span><span·class="p"·data-group-id="5347407260-13">(</span><span·class="n">Rec</span><span·class="p"·data-group-id="5347407260-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5347407260-14">{</span><span·class="nf">elemen[·...·truncated·by·diffoscope;·len:·542,·SHA:·d8912c09a2a6f4012895923cd67b666eed5ce95189d372d3b5504c061be2980e·...·]-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="9542238104-13">(</span><span·class="n">Rec</span><span·class="p"·data-group-id="9542238104-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9542238104-14">{</span><span·class="nf">elemen[·...·truncated·by·diffoscope;·len:·542,·SHA:·845231432601f3c42158e134fd2c9fb5088bc64437e54ede0e0852dacbe594e9·...·]-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
6298 formatted,·or·the·executing·process·terminates·because·of·an·<code·class="inline">'EXIT'</code>·signal6298 formatted,·or·the·executing·process·terminates·because·of·an·<code·class="inline">'EXIT'</code>·signal
Max diff block lines reached; 7902/52529 bytes (15.04%) 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="2704100472-1">(</span><span·class="ss">mnesia_backup</span><span·class="p"·data-group-id="2704100472-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="4653678189-1">(</span><span·class="ss">mnesia_backup</span><span·class="p"·data-group-id="4653678189-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="2704100472-2">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="2704100472-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="4653678189-2">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="4653678189-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="2704100472-3">(</span><span·class="p"·data-group-id="2704100472-4">[</span><span·class="w">166 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4653678189-3">(</span><span·class="p"·data-group-id="4653678189-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="2704100472-4">]</span><span·class="p"·data-group-id="2704100472-3">)</span><span·class="p">.</span><span·class="w">176 ········</span><span·class="p"·data-group-id="4653678189-4">]</span><span·class="p"·data-group-id="4653678189-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="2704100472-5">(</span><span·class="ss">backup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2704100472-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:·65e6127a5d9a226ed55325516cfe1befadd2331c4c412f2eb49ea784a83cc6ed·...·]-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="4653678189-5">(</span><span·class="ss">backup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4653678189-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:·251c512da6ccf87d4bd805811daa9b0efa2cfa8bd29ebdb016f5b1902239e5b5·...·]-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="2704100472-7">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="2704100472-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="4653678189-7">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="4653678189-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="2704100472-8">(</span><span·class="p"·data-group-id="2704100472-9">[</span><span·class="n">File</span><span·class="p">,</span><span·class="s">&quot;.BUPTMP&quot;</span><span·class="p"·data-group-id="2704100472-9">]</span><span·class="p"·data-group-id="2704[·...·truncated·by·diffoscope;·len:·6,·SHA:·bbc288fbb7b18073d9f284f963a8f3b9c1a92aa399e760106488b245e8af45d9·...·]-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="4653678189-8">(</span><span·class="p"·data-group-id="4653678189-9">[</span><span·class="n">File</span><span·class="p">,</span><span·class="s">&quot;.BUPTMP&quot;</span><span·class="p"·data-group-id="4653678189-9">]</span><span·class="p"·data-group-id="4653[·...·truncated·by·diffoscope;·len:·6,·SHA:·28a43ca91fa851b28f5c93a463071cba2bb6d3f353e45d0e2c4d500ebeec365d·...·]-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="2704100472-10">(</span><span·class="n">Tmp</span><span·class="p"·data-group-id="2704100472-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="4653678189-10">(</span><span·class="n">Tmp</span><span·class="p"·data-group-id="4653678189-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="2704100472-11">(</span><span·class="p"·data-group-id="2704100472-12">[</span><span·class="p"·data-group-id="2704100472-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:·3a2683d1e5aa9719c7cc4ad71ec501258edab7ad07322e8ac8b6b63024b5325c·...·]-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="4653678189-11">(</span><span·class="p"·data-group-id="4653678189-12">[</span><span·class="p"·data-group-id="4653678189-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:·653d7164b774d1fad6c0adb075afcf76af218c9b5b9398ca95313b10c25b1d19·...·]-13">}</span><span·class="p">,</span><span·class="w">
188 »       »       »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-15">}</span><span·class="p">,</span><span·class="w">188 »       »       »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-15">}</span><span·class="p">,</span><span·class="w">
189 »       »       »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-16">}</span><span·class="p">,</span><span·class="w">189 »       »       »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-16">}</span><span·class="p">,</span><span·class="w">
190 »       »       »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-18">(</span><span·class="p"·data-group-id="2704100472-18">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·e18d7ed3adeeb85630251ed1673a314966f5ee97f12293feee3a922977b0b984·...·]-11">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">190 »       »       »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-18">(</span><span·class="p"·data-group-id="4653678189-18">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·10e22f5a23dde9b6980a31dde6cc0b74317538f4f927eca0b4ed8644e5844305·...·]-11">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
191 »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">191 »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
192 »       ····</span><span·class="p"·data-group-id="2704100472-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="2704100472-21">{</span><span·class="ss">tmp_file</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·527,·SHA:·695f948dae378f92b489030b6c04ab7a0fe72ac3188929591bd68d47896b31cc·...·]-20">}</span><span·class="p">;</span><span·class="w">192 »       ····</span><span·class="p"·data-group-id="4653678189-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="4653678189-21">{</span><span·class="ss">tmp_file</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·527,·SHA:·518acca02a5f3744eddbfa42d5fcc8a26907ab594ea9e555034a693a3222a4ee·...·]-20">}</span><span·class="p">;</span><span·class="w">
193 »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-22">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-22">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 »       ····</span><span·class="p"·data-group-id="2704100472-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="2704100472-23">}</span><span·class="w">194 »       ····</span><span·class="p"·data-group-id="4653678189-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="4653678189-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="2704100472-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="2704100472-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="4653678189-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="4653678189-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="2704100472-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:·62fc97f612c6d544c406fa9ac478049f5c89b9c843b7e060cc99ae776b47e82a·...·]-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="4653678189-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:·b5e6e8d6842b4de76e03167aaa719a6d2688227dc635f9022db38d419e98f6db·...·]-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="2704100472-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="2704100472-26">}</span><span·class="p">;</span><span·class="w">203 ············</span><span·class="p"·data-group-id="4653678189-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="4653678189-26">}</span><span·class="p">;</span><span·class="w">
204 ········</span><span·class="p"·data-group-id="2704100472-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="2704100472-27">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">204 ········</span><span·class="p"·data-group-id="4653678189-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="4653678189-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="2704100472-28">(</span><span·class="n">B</span><span·class="p"·data-group-id="2704100472-28">)</span><span·class="p">,</span><span·class="w">205 ············</span><span·class="nf">abort_write</span><span·class="p"·data-group-id="4653678189-28">(</span><span·class="n">B</span><span·class="p"·data-group-id="4653678189-28">)</span><span·class="p">,</span><span·class="w">
206 ············</span><span·class="p"·data-group-id="2704100472-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="2704100472-29">}</span><span·class="w">206 ············</span><span·class="p"·data-group-id="4653678189-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="4653678189-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="2704100472-30">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="2704100472-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="4653678189-30">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="4653678189-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="2704100472-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="2704100472-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="4653678189-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="4653678189-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="2704100472-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="2704100472-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="4653678189-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="4653678189-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="2704100472-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="2704100472-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="4653678189-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="4653678189-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="2704100472-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:·d45bb9bffa91b42fe09050f9403c0781a023584cdaf44c77b9062eeb8f6fb8fe·...·]-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="4653678189-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:·bb3e07d394867c5be6d4c5d9d8ba25a4d247752983e003c101d8fa13715da740·...·]-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="2704100472-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:·58972f997bfb8b99121f0998c81c73c26465557723e903b39e94e3fee1e26e0f·...·]-35">}</span><span·class="p">;</span><span·class="w">220 »       »       »       ····</span><span·class="p"·data-group-id="4653678189-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:·6cb851c49caae2784f272fda6381aa0e576171861ecf95d155077109e485760c·...·]-35">}</span><span·class="p">;</span><span·class="w">
221 »       »       ·······</span><span·class="p"·data-group-id="2704100472-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="2704100472-36">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">221 »       »       ·······</span><span·class="p"·data-group-id="4653678189-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="4653678189-36">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
222 »       »       »       ····</span><span·class="p"·data-group-id="2704100472-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="2704100472-37">}</span><span·class="w">222 »       »       »       ····</span><span·class="p"·data-group-id="4653678189-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="4653678189-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="2704100472-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="2704100472-38">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 ················</span><span·class="p"·data-group-id="4653678189-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="4653678189-38">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 »       »       ····</span><span·class="p"·data-group-id="2704100472-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="2704100472-39">}</span><span·class="w">225 »       »       ····</span><span·class="p"·data-group-id="4653678189-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="4653678189-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="2704100472-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="2704100472-40">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 ········</span><span·class="p"·data-group-id="4653678189-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="4653678189-40">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 ············</span><span·class="p"·data-group-id="2704100472-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="2704100472-41">}</span><span·class="w">228 ············</span><span·class="p"·data-group-id="4653678189-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="4653678189-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="2704100472-42">(</span><span·class="n">BackupRef</span><span·class="p"·data-group-id="2704100472-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="4653678189-42">(</span><span·class="n">BackupRef</span><span·class="p"·data-group-id="4653678189-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="2704100472-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="2704100472-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="4653678189-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="4653678189-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="2704100472-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="2704100472-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="4653678189-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="4653678189-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="2704100472-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:·fbc25735a0e695acf44f0e04b46df50a8e4bdd1d2be0850fa4cd64c60ba13114·...·]-45">}</span><span·class="p">;</span><span·class="w">238 ············</span><span·class="p"·data-group-id="4653678189-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:·1aa3cbc9425b423e93183311ec128aa6ee740ff40f938786c6b0bbba22abb111·...·]-45">}</span><span·class="p">;</span><span·class="w">
239 ········</span><span·class="p"·data-group-id="2704100472-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="2704100472-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">239 ········</span><span·class="p"·data-group-id="4653678189-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="4653678189-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
240 ············</span><span·class="p"·data-group-id="2704100472-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="2704100472-47">}</span><span·class="w">240 ············</span><span·class="p"·data-group-id="4653678189-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="4653678189-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="2704100472-48">(</span><span·class="ss">restore</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2704100472-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:·c2124a10e056b442423e7c1e7a8d8d60ac55fa8d691fddb25ea0eeed448c2d9f·...·]-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="4653678189-48">(</span><span·class="ss">restore</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4653678189-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:·258046415e12bb1a1621f9af56147c247712beb662d772ccb4e2a070127ef2e8·...·]-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="2704100472-50">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="2704100472-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="4653678189-50">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="4653678189-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="2704100472-51">(</span><span·class="n">File</span><span·class="p"·data-group-id="2704100472-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="4653678189-51">(</span><span·class="n">File</span><span·class="p"·data-group-id="4653678189-51">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
252 »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-52">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">252 »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-52">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
253 »       ····</span><span·class="p"·data-group-id="2704100472-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="2704100472-53">}</span><span·class="p">;</span><span·class="w">253 »       ····</span><span·class="p"·data-group-id="4653678189-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="4653678189-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="2704100472-54">(</span><span·class="p"·data-group-id="2704100472-55">[</span><span·class="p"·data-group-id="2704100472-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:·a828057c2dd8b8b6df0c403d91d1597e0dd75df9b30306ff41dc66695023645d·...·]-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="4653678189-54">(</span><span·class="p"·data-group-id="4653678189-55">[</span><span·class="p"·data-group-id="4653678189-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:·002c5f83c18602d5ad963787333e6cfbbeb4af7ae59cb3c362851caffa47fddb·...·]-56">}</span><span·class="p">,</span><span·class="w">
256 »       »       »       »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-58">(</span><span·class="p"·data-group-id="2704100472-58">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·4ff67a027318ecb1db7228a1ab8f72f983479076911d605f677b5bf663676cac·...·]-57">}</span><span·class="p">,</span><span·class="w">256 »       »       »       »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-58">(</span><span·class="p"·data-group-id="4653678189-58">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·0bfd8a6e68e5288bb7cb8d2326dfdb2901a1b26113eda23b82680d35bb50a931·...·]-57">}</span><span·class="p">,</span><span·class="w">
257 »       »       »       »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-59">}</span><span·class="p">,</span><span·class="w">257 »       »       »       »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-59">}</span><span·class="p">,</span><span·class="w">
258 »       »       »       »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-60">}</span><span·class="p">,</span><span·class="w">258 »       »       »       »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-60">}</span><span·class="p">,</span><span·class="w">
259 »       »       »       »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-62">(</span><span·class="p"·data-group-id="2704100472-62">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·f0ade01f6e08abb6a2bd4223295d4f2e5a20eee00e158248b2bfaf5ae134facd·...·]-54">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">259 »       »       »       »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-62">(</span><span·class="p"·data-group-id="4653678189-62">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·741e50089a75fc37a00ce9c463e9153f54ab8a66ba2eae5f1a7e032ee48eab5c·...·]-54">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
260 »       »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-63">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">260 »       »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-63">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
261 »       »       ····</span><span·class="p"·data-group-id="2704100472-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="2704100472-65">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·2b92976b35cc5dc8e72b04a14586a1525b7bcbbcfbf9685dccc08b6456357a38·...·]-64">}</span><span·class="p">;</span><span·class="w">261 »       »       ····</span><span·class="p"·data-group-id="4653678189-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="4653678189-65">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·c1f160883a1258db2de45ce4c4edb2666ba094c0cf9feef8dffa07d703706de3·...·]-64">}</span><span·class="p">;</span><span·class="w">
262 »       »       </span><span·class="p"·data-group-id="2704100472-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:·1103d3426d1774be10e22b25534b05ae5e1b2d6c00651e2fe5c418cab91a7ce4·...·]-66">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">262 »       »       </span><span·class="p"·data-group-id="4653678189-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:·118ada8974fa7e0b7040a1ae5f0d9956b4243d75d8d73c0dccc4b35813a5e893·...·]-66">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
263 »       »       ····</span><span·class="p"·data-group-id="2704100472-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="2704100472-69">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·7df2e586b000f5c5760932860cadd0ca1ba34850db48428eb9efd5b636f73c4b·...·]-68">}</span><span·class="p">;</span><span·class="w">263 »       »       ····</span><span·class="p"·data-group-id="4653678189-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="4653678189-69">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·3518bdfe5977c6477a6a2fce6459ecb8f3277100c1e104b85bed93296f683560·...·]-68">}</span><span·class="p">;</span><span·class="w">
264 »       »       </span><span·class="p"·data-group-id="2704100472-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:·6eef52ade3377dd5cb3a61053d69c5baf7bc4d21254e8025d3e3f07fe908fff0·...·]-70">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">264 »       »       </span><span·class="p"·data-group-id="4653678189-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:·0a9452c42a954eba2514f8085a279bd81a6ed2597ede55370394dac17e6257b3·...·]-70">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
265 »       »       ····</span><span·class="p"·data-group-id="2704100472-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="2704100472-72">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·ca8cda0f19600855d28b40c1f4b48ad3fde31e9049549e8b76013d4bc118d55c·...·]-71">}</span><span·class="p">;</span><span·class="w">265 »       »       ····</span><span·class="p"·data-group-id="4653678189-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="4653678189-72">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·4d325b99d5019bd73f74315a0140e998642d3a82fd06d080858e6d0db44fe97c·...·]-71">}</span><span·class="p">;</span><span·class="w">
266 »       »       </span><span·class="p"·data-group-id="2704100472-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="2704100472-73">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">266 »       »       </span><span·class="p"·data-group-id="4653678189-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="4653678189-73">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
267 »       »       ····</span><span·class="p"·data-group-id="2704100472-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="2704100472-74">}</span><span·class="w">267 »       »       ····</span><span·class="p"·data-group-id="4653678189-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="4653678189-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="4707176347-1">(</span><span·class="ss">mnesia_frag</span><span·class="p"·data-group-id="4707176347-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="3199212926-1">(</span><span·class="ss">mnesia_frag</span><span·class="p"·data-group-id="3199212926-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="4707176347-2">(</span><span·class="p"·data-group-id="4707176347-3">[</span><span·class="w">135 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3199212926-2">(</span><span·class="p"·data-group-id="3199212926-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="4707176347-3">]</span><span·class="p"·data-group-id="4707176347-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="3199212926-3">]</span><span·class="p"·data-group-id="3199212926-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="9334886956-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="9334886956-2">{</span><span·class="ss">table<[·...·truncated·by·diffoscope;·len:·277,·SHA:·ad49d808ff4909b7f3feb8f1afb4c1d34ad9408a499013335d0e77ae4667d782·...·]-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="1372030271-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="1372030271-2">{</span><span·class="ss">table<[·...·truncated·by·diffoscope;·len:·277,·SHA:·895175b486654da313dac73e8c9157aa83f20dce41c81b533112322be2e150b7·...·]-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="9334886956-3">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9334886956-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="1372030271-3">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="1372030271-3">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
149 »       </span><span·class="p"·data-group-id="9334886956-4">[</span><span·class="n">Tab</span><span·class="p"·data-group-id="9334886956-4">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">149 »       </span><span·class="p"·data-group-id="1372030271-4">[</span><span·class="n">Tab</span><span·class="p"·data-group-id="1372030271-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="9334886956-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="9334886956-6">{</span><span·class="ss">table<[·...·truncated·by·diffoscope;·len:·253,·SHA:·7704d5ce12ca3b0437a54c62f21593afc8816a1d195382a37b3c58025f986075·...·]-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="1372030271-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="1372030271-6">{</span><span·class="ss">table<[·...·truncated·by·diffoscope;·len:·253,·SHA:·e1feb9e18b86838bf7bf7b8c4576a795d81078fea256d2dddd24b874124dd4e4·...·]-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="9334886956-7">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="9334886956-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:·b8848484cea10468bcdd490d479a76f26e22bf21a36ea396cd557735ce0821ab·...·]-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="1372030271-7">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="1372030271-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:·0e3ec743d4331965bb7d5afef4f98c42bb0054abf087d1d8eb2b60281803a763·...·]-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="9334886956-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="1372030271-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="9334886956-10">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="9334886956-11">(</span><span·class="n">DeepNs</span><span·class="p"·data-group-id="9334886956-11">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·051a65cf6d98895e45b411b5f02f488aa384ec4952873468234b4e20467cef53·...·]-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="1372030271-10">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="1372030271-11">(</span><span·class="n">DeepNs</span><span·class="p"·data-group-id="1372030271-11">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·e02839b4953e5f664c156d176b9ff42e900838af42ac8d584ca33762f1710d55·...·]-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="9334886956-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:·16481dfddd8214cf71b8dc54881ff606fa0e656780a82df393aec7c5b41350e7·...·]-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="1372030271-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:·5290d39ecfb0bc811da93f8b9b04668fb2b10e3ba514eca0168bd2a8efb553ff·...·]-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="9334886956-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:·16481dfddd8214cf71b8dc54881ff606fa0e656780a82df393aec7c5b41350e7·...·]-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="1372030271-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:·5290d39ecfb0bc811da93f8b9b04668fb2b10e3ba514eca0168bd2a8efb553ff·...·]-13">)</span><span·class="p">.</span><span·class="w">
  
158 </span><span·class="nf">write</span><span·class="p"·data-group-id="9334886956-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:·1b4f5e5435497be49c7651fbd1fb3088bea602db85a03f8cee0b5e0bf30a1208·...·]-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="1372030271-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:·470e6dd7c3043f3aa25bccf0bd8dc479ea9edde0f62cab5e01b54ee85cc26ffe·...·]-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="9334886956-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="9334886956-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="1372030271-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="1372030271-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="9334886956-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:·d015b653294a6966fdcc79f9b6dd45bf8eb1e6c64aa924c0719e20863695dfbc·...·]-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="1372030271-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:·d551c03c50d9b53715cbab3f6ab0eb53034315200f554e27afdcbde8a6f0b307·...·]-16">)</span><span·class="p">.</span><span·class="w">
  
161 </span><span·class="nf">delete</span><span·class="p"·data-group-id="9334886956-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:·8c4bb311e61617bf58170ead64fb3b8cf715b3d7c77deb8ba210a2191980ad51·...·]-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="1372030271-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:·c580cb5bbbcca55f50cc1ee0973314eef6a86aa837ae051c1cdef0f2236fa848·...·]-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="9334886956-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="9334886956-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="1372030271-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="1372030271-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="9334886956-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:·f8afeccfb0b3ddb3f5c8f1cb2c3938a648708d2aee1c080e57a9fe38db267ad8·...·]-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="1372030271-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:·196b20dd200650f9a818a2cc82bb77650fac522032a2b184e96b7e60baeafc26·...·]-19">)</span><span·class="p">.</span><span·class="w">
  
164 </span><span·class="nf">delete_object</span><span·class="p"·data-group-id="9334886956-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:·1b4f5e5435497be49c7651fbd1fb3088bea602db85a03f8cee0b5e0bf30a1208·...·]-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="1372030271-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:·470e6dd7c3043f3aa25bccf0bd8dc479ea9edde0f62cab5e01b54ee85cc26ffe·...·]-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="9334886956-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="9334886956-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="1372030271-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="1372030271-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="9334886956-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:·d015b653294a6966fdcc79f9b6dd45bf8eb1e6c64aa924c0719e20863695dfbc·...·]-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="1372030271-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:·d551c03c50d9b53715cbab3f6ab0eb53034315200f554e27afdcbde8a6f0b307·...·]-22">)</span><span·class="p">.</span><span·class="w">
  
167 </span><span·class="nf">read</span><span·class="p"·data-group-id="9334886956-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:·8c4bb311e61617bf58170ead64fb3b8cf715b3d7c77deb8ba210a2191980ad51·...·]-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="1372030271-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:·c580cb5bbbcca55f50cc1ee0973314eef6a86aa837ae051c1cdef0f2236fa848·...·]-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="9334886956-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="9334886956-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="1372030271-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="1372030271-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="9334886956-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:·f8afeccfb0b3ddb3f5c8f1cb2c3938a648708d2aee1c080e57a9fe38db267ad8·...·]-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="1372030271-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:·196b20dd200650f9a818a2cc82bb77650fac522032a2b184e96b7e60baeafc26·...·]-25">)</span><span·class="p">.</span><span·class="w">
  
170 </span><span·class="nf">match_object</span><span·class="p"·data-group-id="9334886956-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:·198ad6a72be45c93409d674bde931a5319edaed77a6420282e6756062ef51099·...·]-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="1372030271-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:·d0316eeafa280bed185ab5a48fd1237c270a0e18c9ee9e67547dc7d07f38b752·...·]-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="9334886956-27">[</span><span·class="p"·data-group-id="9334886956-28">{</span><span·class="n">HeadPat</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9334886956-29">[</span><span·class="p"·data-group-id="9334886956-29">][·...·truncated·by·diffoscope;·len:·294,·SHA:·98e77e25b6af6d292c54ba89ef487103b38eefef8d4875bfe97c6df226d83275·...·]-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="1372030271-27">[</span><span·class="p"·data-group-id="1372030271-28">{</span><span·class="n">HeadPat</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1372030271-29">[</span><span·class="p"·data-group-id="1372030271-29">][·...·truncated·by·diffoscope;·len:·294,·SHA:·52445b3fca59e5d16b81ddfd7125afe8a2db646935e1573bd80a2e345fe7b5f4·...·]-27">]</span><span·class="p">,</span><span·class="w">
172 ····</span><span·class="nf">select</span><span·class="p"·data-group-id="9334886956-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:·75becdc45cc15eb8850f0d9b4e85e86dd05d152aa950de497f7db3423a638204·...·]-31">)</span><span·class="p">.</span><span·class="w">172 ····</span><span·class="nf">select</span><span·class="p"·data-group-id="1372030271-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:·9e49ff96f91b97f2c0bf06d0efbda8cb350c73ef15d2648c6240f0e1d4a60b1c·...·]-31">)</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">select</span><span·class="p"·data-group-id="9334886956-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:·75becdc45cc15eb8850f0d9b4e85e86dd05d152aa950de497f7db3423a638204·...·]-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="1372030271-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:·9e49ff96f91b97f2c0bf06d0efbda8cb350c73ef15d2648c6240f0e1d4a60b1c·...·]-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="9334886956-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:·75becdc45cc15eb8850f0d9b4e85e86dd05d152aa950de497f7db3423a638204·...·]-33">)</span><span·class="p">.</span><span·class="w">174 ····</span><span·class="nf">do_select</span><span·class="p"·data-group-id="1372030271-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:·9e49ff96f91b97f2c0bf06d0efbda8cb350c73ef15d2648c6240f0e1d4a60b1c·...·]-33">)</span><span·class="p">.</span><span·class="w">
  
  
175 </span><span·class="nf">select</span><span·class="p"·data-group-id="9334886956-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:·d5435174aa23e26273942ed0e4afece6b5e79cfbe47975da2412c98c90dc986c·...·]-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="1372030271-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:·2428c73459b3c17cb7bcf134be123c4df8da1e55e8e51736ec153d650e6192f1·...·]-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="9334886956-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:·d5435174aa23e26273942ed0e4afece6b5e79cfbe47975da2412c98c90dc986c·...·]-35">)</span><span·class="p">.</span><span·class="w">176 ····</span><span·class="nf">init_select</span><span·class="p"·data-group-id="1372030271-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:·2428c73459b3c17cb7bcf134be123c4df8da1e55e8e51736ec153d650e6192f1·...·]-35">)</span><span·class="p">.</span><span·class="w">
  
  
177 </span><span·class="nf">all_keys</span><span·class="p"·data-group-id="9334886956-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:·dc78e958d35306c8da4f5f654bd76caec43ebfaefa01fbfb8183c4bef67dfe65·...·]-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="1372030271-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:·9fbeae86a04234bd738412d218a57bb6594132ce6bde91ee33216d5e6e5d9a6e·...·]-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="9334886956-37">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">all_keys</span><span·class="p"·data-group-id="9334886956-38">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·212,·SHA:·07adff703a0230329913c8cdca5de48e5e9f9a18f908cae23f86c745dbba70bb·...·]-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="1372030271-37">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">all_keys</span><span·class="p"·data-group-id="1372030271-38">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·212,·SHA:·7b6331079d047ee9233721fa5312c0643f0875f52791cadd4608e02f5a61c8fc·...·]-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="9334886956-39">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9334886956-39">)</span><span·class="p"·data-group-id="9334886956-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="1372030271-39">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="1372030271-39">)</span><span·class="p"·data-group-id="1372030271-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="9334886956-40">(</span><span·class="n">Match</span><span·class="p"·data-group-id="9334886956-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="1372030271-40">(</span><span·class="n">Match</span><span·class="p"·data-group-id="1372030271-40">)</span><span·class="p">.</span><span·class="w">
  
181 </span><span·class="nf">clear_table</span><span·class="p"·data-group-id="9334886956-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:·e9375212885fd9a404c6b220e2ff559ddcf4eb181bde99eddb084edbf491d11e·...·]-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="1372030271-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:·e6d9b0ce9b711b33edcdc723860acc5482deb214ccb1d031b1a41f9cb3bec924·...·]-41">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
182 ····</span><span·class="p"·data-group-id="9334886956-42">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">clear_table</span><span·class="p"·data-group-id="9334886956-43">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·609,·SHA:·774a5dc9cda47a13f817353ead87321f797a450113c7e1ba6d29367286dc400c·...·]-42">]</span><span·class="p">,</span><span·class="w">182 ····</span><span·class="p"·data-group-id="1372030271-42">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">clear_table</span><span·class="p"·data-group-id="1372030271-43">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·609,·SHA:·f8d140f2238ed85fcff11d9e4f3062a3af97e9d3c4847c25868a345e2c6f8fcc·...·]-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="9334886956-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:·7e4de54626dc32dd15d8681d3aa222d19e3549161cbcdb1253c7279cd370fb3d·...·]-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="1372030271-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:·57ac8acb9a5cd2a0897d987520aaf18a53b311840f2bea5fdadc5f3b6983ead2·...·]-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="9334886956-46">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">index_match_object</span><span·class="p"·data-group-id="9334886956-47">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·371,·SHA:·f70df9db5b78a70bed0198a40953ebef589370557642e7e9f556ff099ab407d2·...·]-47">)</span><span·class="w">186 »       </span><span·class="p"·data-group-id="1372030271-46">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">index_match_object</span><span·class="p"·data-group-id="1372030271-47">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·371,·SHA:·d9f4ada5b2852f496ee70fce77d7ab61cf2b2cdf0f7ae13edb2b5ef78d13757b·...·]-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="9334886956-48">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9334886956-48">)</span><span·class="p"·data-group-id="9334886956-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="1372030271-48">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="1372030271-48">)</span><span·class="p"·data-group-id="1372030271-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="9334886956-49">(</span><span·class="n">Match</span><span·class="p"·data-group-id="9334886956-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="1372030271-49">(</span><span·class="n">Match</span><span·class="p"·data-group-id="1372030271-49">)</span><span·class="p">.</span><span·class="w">
  
189 </span><span·class="nf">index_read</span><span·class="p"·data-group-id="9334886956-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:·19f0019729380869a7e15f76e209c69590caf0830c8780a2e70c773df394db12·...·]-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="1372030271-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:·bfb4baf277f37049974a0d5b57a4da84249e8bbc2cf6da13662bf769cc21307f·...·]-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="9334886956-51">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">index_read</span><span·class="p"·data-group-id="9334886956-52">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·363,·SHA:·7ad6a28eff6f64d038c2db8922ad6273d8d422c536aeb6927cf594d1dedf1a99·...·]-52">)</span><span·class="w">191 »       </span><span·class="p"·data-group-id="1372030271-51">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">index_read</span><span·class="p"·data-group-id="1372030271-52">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·363,·SHA:·5951b7b113ee6fe0959531e80124d57505aa81260399d217e855faff9422563c·...·]-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="9334886956-53">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9334886956-53">)</span><span·class="p"·data-group-id="9334886956-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="1372030271-53">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="1372030271-53">)</span><span·class="p"·data-group-id="1372030271-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="9334886956-54">(</span><span·class="n">Match</span><span·class="p"·data-group-id="9334886956-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="1372030271-54">(</span><span·class="n">Match</span><span·class="p"·data-group-id="1372030271-54">)</span><span·class="p">.</span><span·class="w">
  
194 </span><span·class="nf">foldl</span><span·class="p"·data-group-id="9334886956-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:·add08e95cde8474aebaa5cfb07f442a8c7d8cca4d23b0b4e83138bf7f3454f5d·...·]-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="1372030271-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:·af17cc9f6fa8adf12589ee94b64db031aa810e079dcf3c92528fef10b9c93e21·...·]-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="9334886956-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="9334886956-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="1372030271-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="1372030271-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="9334886956-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:·26cf2a8e26a7be5d2b2fd4cbd53f9486a9f2daa9474d1931e0a515ae8ad08a95·...·]-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="1372030271-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:·d9550b213610831fddd513a1e22e6bdcaa388e38d9719ef33bf13cf5eec445f0·...·]-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="9334886956-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="9334886956-59">(</s[·...·truncated·by·diffoscope;·len:·125,·SHA:·32f39766b5ee48e145b283a6deb27ce53414b660c77f32db113c8252b8799dbe·...·]-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="1372030271-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="1372030271-59">(</s[·...·truncated·by·diffoscope;·len:·125,·SHA:·ee72b11c417090803b527eb457897303a0e313baa7b3c481b4052eb1cc7b670e·...·]-58">)</span><span·class="p">.</span><span·class="w">
  
199 </span><span·class="nf">foldr</span><span·class="p"·data-group-id="9334886956-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:·add08e95cde8474aebaa5cfb07f442a8c7d8cca4d23b0b4e83138bf7f3454f5d·...·]-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="1372030271-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:·af17cc9f6fa8adf12589ee94b64db031aa810e079dcf3c92528fef10b9c93e21·...·]-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="9334886956-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="9334886956-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="1372030271-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="1372030271-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="9334886956-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:·26cf2a8e26a7be5d2b2fd4cbd53f9486a9f2daa9474d1931e0a515ae8ad08a95·...·]-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="1372030271-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:·d9550b213610831fddd513a1e22e6bdcaa388e38d9719ef33bf13cf5eec445f0·...·]-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="9334886956-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="9334886956-64">(</s[·...·truncated·by·diffoscope;·len:·125,·SHA:·643eed2a3b145b8c1ec22286ba148d260fe6222c18e8ad31eabb86a4b4c3810c·...·]-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="1372030271-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="1372030271-64">(</s[·...·truncated·by·diffoscope;·len:·125,·SHA:·871c1a216203cde773738222fe09d0838e2a4539997ff7cf0bbf6da487d082a6·...·]-63">)</span><span·class="p">.</span><span·class="w">
  
204 </span><span·class="nf">table_info</span><span·class="p"·data-group-id="9334886956-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="9334886956-66">{</span><span·class="n">Tab</[·...·truncated·by·diffoscope;·len:·249,·SHA:·14819b3d95346276a824830ad3334789f793a0bc76a3c52192d0489fe35cd4c2·...·]-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="1372030271-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="1372030271-66">{</span><span·class="n">Tab</[·...·truncated·by·diffoscope;·len:·249,·SHA:·5be7586452d02bc39394786d7a35fb17e236aef34abdc8b7329ec34e80befbf3·...·]-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="9334886956-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="9334886956-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="1372030271-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="1372030271-67">)</span><span·class="p">,</span><span·class="w">
206 ····</span><span·class="nf">table_info2</span><span·class="p"·data-group-id="9334886956-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:·bc81a0ecaa771b71aec69abc81fe7a153d96341b5ffb71f8833408b26ff502e7·...·]-68">)</span><span·class="p">;</span><span·class="w">206 ····</span><span·class="nf">table_info2</span><span·class="p"·data-group-id="1372030271-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:·0c7b08ca80e586e03eb1771aa2c11a41f1fb24ddd75cb4efe8ee3ee43105957e·...·]-68">)</span><span·class="p">;</span><span·class="w">
207 </span><span·class="nf">table_info</span><span·class="p"·data-group-id="9334886956-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:·453cceccf22b0073751b6bd55388d3bf59b1f6c99831098463604e1ed97616a1·...·]-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="1372030271-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:·a6597b7543f0cc6974e2a0966831803043f29d34611be98e61696c47ff298d0a·...·]-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="9334886956-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:·c841709b4b0c918e9258d3078e1ec34ad80a070898de448691b6763ac2951d84·...·]-70">)</span><span·class="p">.</span><span·class="w">208 ····</span><span·class="nf">table_info2</span><span·class="p"·data-group-id="1372030271-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:·47f9df5db4700d6db66c2199898b3c5f535c7cb9e36fe31b247544006fd795b5·...·]-70">)</span><span·class="p">.</span><span·class="w">
  
209 </span><span·class="nf">table_info2</span><span·class="p"·data-group-id="9334886956-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:·bc81a0ecaa771b71aec69abc81fe7a153d96341b5ffb71f8833408b26ff502e7·...·]-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="1372030271-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:·0c7b08ca80e586e03eb1771aa2c11a41f1fb24ddd75cb4efe8ee3ee43105957e·...·]-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="9334886956-72">(</span><span·class="p"·data-group-id="9334886956-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="9334886956-73">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·89,·SHA:·d8590fb5099331e5b31c231b56c11a4dccaadda3b6d56de737ee7ac4e34772af·...·]-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="1372030271-72">(</span><span·class="p"·data-group-id="1372030271-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="1372030271-73">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·89,·SHA:·0905f9cba0a61b201bb669d6ff78014222c9cdf9ebacb442376ec1a8135729c8·...·]-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="9334886956-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="9334886956-75">(</s[·...·truncated·by·diffoscope;·len:·283,·SHA:·f44e041c53a13c6db6c10809745e91344ecea944562a302913cff734089375f6·...·]-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="1372030271-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="1372030271-75">(</s[·...·truncated·by·diffoscope;·len:·283,·SHA:·2cb405d6663b053e73b1b940e2c818459494b50bc7007dbe291aeac03c86e330·...·]-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="9334886956-76">(</span><span·class="p"·data-group-id="9334886956-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="9334886956-77">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·89,·SHA:·d8590fb5099331e5b31c231b56c11a4dccaadda3b6d56de737ee7ac4e34772af·...·]-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="1372030271-76">(</span><span·class="p"·data-group-id="1372030271-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="1372030271-77">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·89,·SHA:·0905f9cba0a61b201bb669d6ff78014222c9cdf9ebacb442376ec1a8135729c8·...·]-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="9334886956-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="9334886956-79">(<[·...·truncated·by·diffoscope;·len:·285,·SHA:·a759e745e28b5c18ccc66274c486c2d195cfbac4d89a7404c78787a8e36bc532·...·]-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="1372030271-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="1372030271-79">(<[·...·truncated·by·diffoscope;·len:·285,·SHA:·f568defc02b6f1be800099cbd4d7b38655ca0e4189ebed675e60a3a584ddda40·...·]-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="9334886956-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="9334886956-80">)</span><span·class="p">;</span><span·class="w">218 »       ····</span><span·class="nf">lookup_prop</span><span·class="p"·data-group-id="1372030271-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="1372030271-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="9334886956-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="9334886956-81">)</span><span·class="p">;</span><span·class="w">220 »       ····</span><span·class="nf">lookup_prop</span><span·class="p"·data-group-id="1372030271-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="1372030271-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="9334886956-82">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9334886956-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="1372030271-82">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="1372030271-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="9334886956-83">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9334886956-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="1372030271-83">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="1372030271-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="9334886956-84">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9334886956-84">)</span><span·class="p">;</span><span·class="w">228 »       ····</span><span·class="nf">lookup_foreigners</span><span·class="p"·data-group-id="1372030271-84">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="1372030271-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="9334886956-85">(</span><span·class="nf">val</span><span·class="p"·data-group-id="9334886956-86">(</span><span·class="p"·data-group-id="9334886956-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:·a63279979ede0a889d34c4675c3bb84e8712240651c4cdb4b7b50522cf8fa122·...·]-85">)</span><span·class="p">;</span><span·class="w">230 »       ····</span><span·class="nf">length</span><span·class="p"·data-group-id="1372030271-85">(</span><span·class="nf">val</span><span·class="p"·data-group-id="1372030271-86">(</span><span·class="p"·data-group-id="1372030271-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:·8ec5d94151a00bae1f1db3b4d02619bdfde4e913712137da10df9a47a8678c29·...·]-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="9334886956-88">(</span><span·class="nf">val</span><span·class="p"·data-group-id="9334886956-89">(</span><span·class="p"·data-group-id="9334886956-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:·00d01a4e043a48bc79a0d2aa38a8e82ac531a53052ff7f94222e11c9f08937c3·...·]-88">)</span><span·class="p">;</span><span·class="w">232 »       ····</span><span·class="nf">length</span><span·class="p"·data-group-id="1372030271-88">(</span><span·class="nf">val</span><span·class="p"·data-group-id="1372030271-89">(</span><span·class="p"·data-group-id="1372030271-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:·29b5eb4dc517dbeca9701cca9112660e66cebe8c50de39a8a00955b3e8c1746b·...·]-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="1984324598-1">(</span><span·class="ss">mnesia_frag_hash</span><span·class="p"·data-group-id="1984324598-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="1956630342-1">(</span><span·class="ss">mnesia_frag_hash</span><span·class="p"·data-group-id="1956630342-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="1984324598-2">(</span><span·class="p"·data-group-id="1984324598-3">[</span><span·class="p"·data-group-id="1984324598-4">{</span><span·class="ss">nowarn_deprecated_function</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·459,·SHA:·32f116dd86a6c94ff101e9a9165ac423ed60e02bcdb1cc829961a1db5f5ed6f1·...·]-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="1956630342-2">(</span><span·class="p"·data-group-id="1956630342-3">[</span><span·class="p"·data-group-id="1956630342-4">{</span><span·class="ss">nowarn_deprecated_function</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·459,·SHA:·51506a0a3da1133c8a69da5a3c74392e5fabb17e81b7549fe368a5177f4b69d9·...·]-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="1984324598-7">(</span><span·class="p"·data-group-id="1984324598-8">[</span><span·class="w">136 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1956630342-7">(</span><span·class="p"·data-group-id="1956630342-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="1984324598-8">]</span><span·class="p"·data-group-id="1984324598-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="9318859374-1">(</span><span·class="ss">hash_state</span><span·class="p">,</span><span·class="w">142 »       </span><span·class="p"·data-group-id="1956630342-8">]</span><span·class="p"·data-group-id="1956630342-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="4273336819-1">(</span><span·class="ss">hash_state</span><span·class="p">,</span><span·class="w">
143 »       </span><span·class="p"·data-group-id="9318859374-2">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="w">143 »       </span><span·class="p"·data-group-id="4273336819-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="9318859374-2">}</span><span·class="p"·data-group-id="9318859374-1">)</span><span·class="p">.</span><span·class="w">146 »       ·</span><span·class="ss">function</span><span·class="p"·data-group-id="4273336819-2">}</span><span·class="p"·data-group-id="4273336819-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="9318859374-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="9318859374-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="4273336819-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="4273336819-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="9318859374-4">(</span><span·class="p"·data-group-id="9318859374-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="4273336819-4">(</span><span·class="p"·data-group-id="4273336819-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="9318859374-5">(</span><span·class="p"·data-group-id="9318859374-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="4273336819-5">(</span><span·class="p"·data-group-id="4273336819-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="9318859374-6">(</span><span·class="p"·data-group-id="9318859374-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="4273336819-6">(</span><span·class="p"·data-group-id="4273336819-6">)</span><span·class="p">.</span><span·class="w">
152 </span><span·class="nf">init_state</span><span·class="p"·data-group-id="9318859374-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="9318859374-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="4273336819-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="4273336819-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="9318859374-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="4273336819-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="9318859374-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="4273336819-8">}</span><span·class="p">.</span><span·class="w">
  
157 </span><span·class="nf">convert_old_state</span><span·class="p"·data-group-id="9318859374-9">(</span><span·class="p"·data-group-id="9318859374-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:·ffecb9494f432f1210c3daddc5712f9cf9e47deb52b09c79e737942b43ea3bb8·...·]-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="4273336819-9">(</span><span·class="p"·data-group-id="4273336819-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:·3ba984e2625691984e2087415a0c5eb9a72101893751f409742b28185cdf3c29·...·]-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="9318859374-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="4273336819-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="9318859374-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="4273336819-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="9318859374-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="9318859374-13">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·453,·SHA:·84e411a5af10cc53527cc1e002d7572bc389abf00cb4b022d5371d752aff707f·...·]-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="4273336819-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="4273336819-13">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·453,·SHA:·99ea0f51c88322393d16505d33a580c5a9fe9aa0ceeb6055a8846bf91cd325e5·...·]-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="9318859374-15">(</span><span·class="p"·data-group-id="9318859374-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="4273336819-15">(</span><span·class="p"·data-group-id="4273336819-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="9318859374-16">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="9318859374-17">(</span><span·class="p"·data-group-id="9318859374-17">)</span><span·class="p"·data-group-id="9318859374-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="4273336819-16">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="4273336819-17">(</span><span·class="p"·data-group-id="4273336819-17">)</span><span·class="p"·data-group-id="4273336819-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="9318859374-18">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="9318859374-19">(</span><span·class="p"·data-group-id="9318859374-19">)</span><span·class="p"·data-group-id="9318859374-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="4273336819-18">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="4273336819-19">(</span><span·class="p"·data-group-id="4273336819-19">)</span><span·class="p"·data-group-id="4273336819-18">]</span><span·class="p">.</span><span·class="w">
168 </span><span·class="nf">add_frag</span><span·class="p"·data-group-id="9318859374-20">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="9318859374-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:·29bae501f497655390ff7ff517277728bb2b7d4b3a867b75cafb7c1f23e81ad4·...·]-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="4273336819-20">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="4273336819-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:·38b44cb886784423efa09ec5367f350210e3d476df5e4cd8f011f2f7a135ce21·...·]-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="9318859374-22">(</span><span·class="n">L</span><span·class="p"·data-group-id="9318859374-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="4273336819-22">(</span><span·class="n">L</span><span·class="p"·data-group-id="4273336819-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="9318859374-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="4273336819-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="9318859374-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="4273336819-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="9318859374-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="4273336819-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="9318859374-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="4273336819-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="9318859374-25">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9318859374-26">[</span><span·class="n">SplitN</span><span·class="p"·data-group-id="9318859374-26">]</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·205,·SHA:·a82082865701cf72a6d311fffdb0bc40e55de07876f9226731cd9e491301bf79·...·]-25">}</span><span·class="p">;</span><span·class="w">180 ····</span><span·class="p"·data-group-id="4273336819-25">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4273336819-26">[</span><span·class="n">SplitN</span><span·class="p"·data-group-id="4273336819-26">]</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·205,·SHA:·af628e830d945497be1779455be288d93da07a5624695496fec1d8ff559021c6·...·]-25">}</span><span·class="p">;</span><span·class="w">
181 </span><span·class="nf">add_frag</span><span·class="p"·data-group-id="9318859374-28">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="9318859374-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="4273336819-28">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="4273336819-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="9318859374-29">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="9318859374-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="4273336819-29">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="4273336819-29">)</span><span·class="p">,</span><span·class="w">
183 ····</span><span·class="nf">add_frag</span><span·class="p"·data-group-id="9318859374-30">(</span><span·class="n">State</span><span·class="p"·data-group-id="9318859374-30">)</span><span·class="p">.</span><span·class="w">183 ····</span><span·class="nf">add_frag</span><span·class="p"·data-group-id="4273336819-30">(</span><span·class="n">State</span><span·class="p"·data-group-id="4273336819-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="9318859374-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="9318859374-32">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·453,·SHA:·b2a24ef2b75c30738bab69add3853acb8bd30d2a3930a546de657f7b40148285·...·]-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="4273336819-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="4273336819-32">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·453,·SHA:·ac7fab46729c7a5cdc51e69a92d89af1a921caf6cc8142e0ec5cd752a29ba939·...·]-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="9318859374-34">(</span><span·class="p"·data-group-id="9318859374-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="4273336819-34">(</span><span·class="p"·data-group-id="4273336819-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="9318859374-35">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="9318859374-36">(</span><span·class="p"·data-group-id="9318859374-36">)</span><span·class="p"·data-group-id="9318859374-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="4273336819-35">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="4273336819-36">(</span><span·class="p"·data-group-id="4273336819-36">)</span><span·class="p"·data-group-id="4273336819-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="9318859374-37">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="9318859374-38">(</span><span·class="p"·data-group-id="9318859374-38">)</span><span·class="p"·data-group-id="9318859374-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="4273336819-37">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="4273336819-38">(</span><span·class="p"·data-group-id="4273336819-38">)</span><span·class="p"·data-group-id="4273336819-37">]</span><span·class="p">.</span><span·class="w">
190 </span><span·class="nf">del_frag</span><span·class="p"·data-group-id="9318859374-39">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="9318859374-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:·164926275d0c646179de77034c398df6d329c2a32b25397e4f06005ab6394a3f·...·]-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="4273336819-39">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="4273336819-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:·a14c918849a74d7de8ddf9a80c079dd7760698cc1be48e7ce4a4ee58993215b7·...·]-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="9318859374-41">(</span><span·class="n">L2</span><span·class="p"·data-group-id="9318859374-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="4273336819-41">(</span><span·class="n">L2</span><span·class="p"·data-group-id="4273336819-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="9318859374-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="4273336819-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="9318859374-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="4273336819-42">}</span><span·class="p">,</span><span·class="w">
199 »       ····</span><span·class="p"·data-group-id="9318859374-43">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9318859374-44">[</span><span·class="n">N</span><span·class="p"·data-group-id="9318859374-44">]</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·202,·SHA:·f93f664c5fa04f191ea9b71eebcb8865357e893ebe69d9f78dc7867e98212fe6·...·]-43">}</span><span·class="p">;</span><span·class="w">199 »       ····</span><span·class="p"·data-group-id="4273336819-43">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4273336819-44">[</span><span·class="n">N</span><span·class="p"·data-group-id="4273336819-44">]</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·202,·SHA:·111a376dee07bfae661ada6ab3b7754bd17a8da1ddf4441ba78b686de4007762·...·]-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="9318859374-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="4273336819-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="9318859374-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="4273336819-46">}</span><span·class="p">,</span><span·class="w">
204 »       ····</span><span·class="p"·data-group-id="9318859374-47">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9318859374-48">[</span><span·class="n">N</span><span·class="p"·data-group-id="9318859374-48">]</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·202,·SHA:·ab46a18eb36bbb61b8e3ed2e715ee59e8c7821c8e589ba58054027d2afd01cb1·...·]-47">}</span><span·class="w">204 »       ····</span><span·class="p"·data-group-id="4273336819-47">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4273336819-48">[</span><span·class="n">N</span><span·class="p"·data-group-id="4273336819-48">]</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·202,·SHA:·8df7e5e307829f1633da316489bc917e2c8fa35e861085730b93dc024715eaa1·...·]-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="9318859374-50">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="9318859374-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="4273336819-50">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="4273336819-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="9318859374-51">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="9318859374-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="4273336819-51">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="4273336819-51">)</span><span·class="p">,</span><span·class="w">
208 ····</span><span·class="nf">del_frag</span><span·class="p"·data-group-id="9318859374-52">(</span><span·class="n">State</span><span·class="p"·data-group-id="9318859374-52">)</span><span·class="p">.</span><span·class="w">208 ····</span><span·class="nf">del_frag</span><span·class="p"·data-group-id="4273336819-52">(</span><span·class="n">State</span><span·class="p"·data-group-id="4273336819-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="9318859374-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="9318859374-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="4273336819-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="4273336819-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="9318859374-54">(</span><span·class="p"·data-group-id="9318859374-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="4273336819-54">(</span><span·class="p"·data-group-id="4273336819-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="9318859374-55">(</span><span·class="p"·data-group-id="9318859374-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="4273336819-55">(</span><span·class="p"·data-group-id="4273336819-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="9318859374-56">(</span><span·class="p"·data-group-id="9318859374-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="4273336819-56">(</span><span·class="p"·data-group-id="4273336819-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="9318859374-57">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="9318859374-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:·975d464fd6e1f98ea9dd0489974e8c542cdc9b99d747920c08d7137769b05ab2·...·]-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="4273336819-57">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="4273336819-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:·6419fccb767bee438ac9c28170fc8106ae24b2f6d87bf8f80dc81f9eb3de7c88·...·]-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="9318859374-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="9318859374-60">(</span><span·class="n">L</span><span·class="w">·</span><span·class="o">+</span><sp[·...·truncated·by·diffoscope;·len:·141,·SHA:·75d109ff30a2ade53fcf59dd5d6538139e5a2fe241657474d1326331e5901c8f·...·]-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="4273336819-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="4273336819-60">(</span><span·class="n">L</span><span·class="w">·</span><span·class="o">+</span><sp[·...·truncated·by·diffoscope;·len:·141,·SHA:·81c63bf2c14f8f8abedeea79d709a4eb53109cb1a06d14f6ffc859b467b43767·...·]-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="9318859374-61">(</span><span·class="n">L</span><span·class="p"·data-group-id="9318859374-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="4273336819-61">(</span><span·class="n">L</span><span·class="p"·data-group-id="4273336819-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="9318859374-62">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="9318859374-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:·4f61b23b1fc8507b5e22376c14f3f32cb1ace97b70d2b5051142d099206483fc·...·]-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="4273336819-62">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="4273336819-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:·565be738caec755fd024c929025d6b0ae02e69d212429185f17aaaf76053a0b2·...·]-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="9318859374-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="9318859374-65">(</span><span·class="n">L</span><span·class="w">·</span><span·class="o">+</span><sp[·...·truncated·by·diffoscope;·len:·141,·SHA:·cc6c9b0e142d708b3025fe5b705f31ec7c0bd3782f0084bcd7e4991d779a7920·...·]-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="4273336819-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="4273336819-65">(</span><span·class="n">L</span><span·class="w">·</span><span·class="o">+</span><sp[·...·truncated·by·diffoscope;·len:·141,·SHA:·a68bf7064f1fefcf14f9dc31ee7cbc103b0e94143407aa4a5a68667324d65f76·...·]-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="9318859374-66">(</span><span·class="n">L</span><span·class="p"·data-group-id="9318859374-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="4273336819-66">(</span><span·class="n">L</span><span·class="p"·data-group-id="4273336819-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="9318859374-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="9318859374-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="4273336819-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="4273336819-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="9318859374-68">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="9318859374-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="4273336819-68">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="4273336819-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="9318859374-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="9318859374-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="4273336819-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="4273336819-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="9318859374-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="9318859374-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="4273336819-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="4273336819-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="9318859374-71">(</span><span·class="p"·data-group-id="9318859374-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="4273336819-71">(</span><span·class="p"·data-group-id="4273336819-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="9318859374-72">(</span><span·class="p"·data-group-id="9318859374-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="4273336819-72">(</span><span·class="p"·data-group-id="4273336819-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="9318859374-73">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="9318859374-74">(</span><span·class="p"·data-group-id="9318859374-74">)</span><span·class="p"·data-group-id="9318859374-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="4273336819-73">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="4273336819-74">(</span><span·class="p"·data-group-id="4273336819-74">)</span><span·class="p"·data-group-id="4273336819-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="9318859374-75">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="9318859374-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:·005571fb064eee0b059a55c1b50a756dd4549102a8fd01ba4551d2e8203f1434·...·]-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="4273336819-75">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="4273336819-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:·4b1c652dcb116f6f3bac0c8d49316fd370167d97234815aebc7c254f322835ae·...·]-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="9318859374-77">[</span><span·class="p"·data-group-id="9318859374-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:·7efe20a9568f0c3f15ca6ccdd04a43e41f709f49082ef9319b36aa5e5d88177e·...·]-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="4273336819-77">[</span><span·class="p"·data-group-id="4273336819-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:·8de1029e8a39ea0d6983c79341b9a28895dcb5616d38d4adb8393033d4f97b41·...·]-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="9318859374-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="9318859374-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="4273336819-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="4273336819-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="9318859374-82">(</span><span·class="n">KeyPat</span><span·class="p"·data-group-id="9318859374-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="4273336819-82">(</span><span·class="n">KeyPat</span><span·class="p"·data-group-id="4273336819-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="9318859374-83">[</span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="9318859374-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="9[·...·truncated·by·diffoscope;·len:·63,·SHA:·109d5efd9cc88d8c7cb56ab34c1fe3e82af6cb6e15337d7cc8e7930e3118c3c0·...·]-83">]</span><span·class="p">;</span><span·class="w">244 »       »       ····</span><span·class="p"·data-group-id="4273336819-83">[</span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="4273336819-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="4[·...·truncated·by·diffoscope;·len:·63,·SHA:·d9e90208ba4aba5675d6bc36d086d40fb8d1260a706cfb9a23701075cf8d60b7·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2024·<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="0370891286-1">(</span><span·class="ss">old</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0370891286-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:·90,·SHA:·3539269bfb1c7e8899ae55bab1f36c86adbdfdee89fd859fef1063cbbfd2536b·...·]-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="1238327707-1">(</span><span·class="ss">old</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1238327707-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:·90,·SHA:·f99910f20869e962d58297fb1017251cbf2a137e12e85b432d4482147f63cdf9·...·]-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="0370891286-3">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0370891286-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:·167,·SHA:·20ffce9f11bf6c337a74bc64bfabd69d9384ebbce3bc9e39aeed19e8e65ebb98·...·]-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="1238327707-3">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1238327707-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:·167,·SHA:·1588f9b7e29667b8e506de4986d12744f14ae250816d4ef8484469d83eae8fb2·...·]-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="0370891286-5">(</span><span·class="n">X</span><span·class="p"·data-group-id="0370891286-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="0370891286-6">(</span[·...·truncated·by·diffoscope;·len:·141,·SHA:·8a69ae1f1130af877f807571b60425f6dd526f1ba150eede213f9069b6b9814c·...·]-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="1238327707-5">(</span><span·class="n">X</span><span·class="p"·data-group-id="1238327707-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="1238327707-6">(</span[·...·truncated·by·diffoscope;·len:·141,·SHA:·0c0abc2da669bd4df0e2b4dac673000bfe6c10c6e03785fb2139c055af3a96fb·...·]-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="0370891286-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="1238327707-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="0370891286-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="1238327707-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="0370891286-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="0370891286-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·129,·SHA:·bc08fcac24f0db227d51e67d421ad6462567bb57793992a02aa6551c46fe9337·...·]-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="1238327707-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="1238327707-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·129,·SHA:·c64ddd857ea3dd0faa8dbaa0827f2b0f9fede8141e78b0a39b9ff40a83627529·...·]-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="0370891286-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="0370891286-10">)</span><span·class="p">,</span><span·class="w">187 ······································</span><span·class="nf">record_info</span><span·class="p"·data-group-id="1238327707-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="1238327707-10">)</span><span·class="p">,</span><span·class="w">
188 ······································</span><span·class="ss">new</span><span·class="p"·data-group-id="0370891286-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="1238327707-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="4168707002-1">(</span><span·class="p"·data-group-id="4168707002-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="4168707002-2">]</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·f3ce324e6459d5489225a783fb14492b0adcaf75ee43253469a2205aa3716d2d·...·]-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="5121633806-1">(</span><span·class="p"·data-group-id="5121633806-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="5121633806-2">]</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·bea02a00124778c7a23f4e8edb88dd043a1ecdd22850c167398c97699bf890db·...·]-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="2916528989-1">(</span><span·class="p"·data-group-id="2916528989-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="2335355228-1">(</span><span·class="p"·data-group-id="2335355228-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="2916528989-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="2335355228-2">(</span><span·class="ss">employee</span><span·class="p">,</span><span·class="w">
244 ·························</span><span·class="p"·data-group-id="2916528989-3">[</span><span·class="p"·data-group-id="2916528989-4">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2916528989-5">[</span><span·class="ss">a@gin</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·157,·SHA:·a80ddae2040ffcabbc53ec2eefa9ce7fc6416767b6f8a25a779bd4e617a6f34f·...·]-4">}</span><span·class="p">,</span><span·class="w">244 ·························</span><span·class="p"·data-group-id="2335355228-3">[</span><span·class="p"·data-group-id="2335355228-4">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2335355228-5">[</span><span·class="ss">a@gin</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·157,·SHA:·d6503db04ef5b4c5ff537a42cabf3701dc133d0b56d9c373a33892b4dcf03a87·...·]-4">}</span><span·class="p">,</span><span·class="w">
245 ··························</span><span·class="p"·data-group-id="2916528989-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="2916528989-7">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">245 ··························</span><span·class="p"·data-group-id="2335355228-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="2335355228-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="2916528989-7">)</span><span·class="p"·data-group-id="2916528989-6">}</span><span·class="p"·data-group-id="2916528989-3">]</span><span·class="p"·data-group-id="2916528989-2">)</span><span·class="p">,</span><span·class="w">246 »       »       »       »       »       »       ···</span><span·class="ss">employee</span><span·class="p"·data-group-id="2335355228-7">)</span><span·class="p"·data-group-id="2335355228-6">}</span><span·class="p"·data-group-id="2335355228-3">]</span><span·class="p"·data-group-id="2335355228-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="2916528989-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="2335355228-8">(</span><span·class="ss">dept</span><span·class="p">,</span><span·class="w">
248 ·························</span><span·class="p"·data-group-id="2916528989-9">[</span><span·class="p"·data-group-id="2916528989-10">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2916528989-11">[</span><span·class="ss">a@gin</span><span·class="p">[·...·truncated·by·diffoscope;·len:·160,·SHA:·91c00e1205e01ba90db94ac21bb904303e73241e8dd035629f299f6d77b835b2·...·]-10">}</span><span·class="p">,</span><span·class="w">248 ·························</span><span·class="p"·data-group-id="2335355228-9">[</span><span·class="p"·data-group-id="2335355228-10">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2335355228-11">[</span><span·class="ss">a@gin</span><span·class="p">[·...·truncated·by·diffoscope;·len:·160,·SHA:·f776cf95b81f95acc1d2c01397dc7f48a4ea309d342fa76517ca5086ead427e0·...·]-10">}</span><span·class="p">,</span><span·class="w">
249 ··························</span><span·class="p"·data-group-id="2916528989-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="2916528989-13">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·245,·SHA:·19e8fa4eec6cbb51ebfcc3bdc9d3cf0edcb8b7f137f87ac177b3aef46d02465d·...·]-8">)</span><span·class="p">,</span><span·class="w">249 ··························</span><span·class="p"·data-group-id="2335355228-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="2335355228-13">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·245,·SHA:·2be3f75a6a613a3d365ab15ee6840146089fef880f0f8c61029db5810c1a7d60·...·]-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="2916528989-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="2335355228-14">(</span><span·class="ss">project</span><span·class="p">,</span><span·class="w">
251 ·························</span><span·class="p"·data-group-id="2916528989-15">[</span><span·class="p"·data-group-id="2916528989-16">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2916528989-17">[</span><span·class="ss">a@gin</span><span·class="p"[·...·truncated·by·diffoscope;·len:·161,·SHA:·e9d09eca24d84449e73f754ae4b011b8347aca57f628b5f0fdc450ca03af9a72·...·]-16">}</span><span·class="p">,</span><span·class="w">251 ·························</span><span·class="p"·data-group-id="2335355228-15">[</span><span·class="p"·data-group-id="2335355228-16">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2335355228-17">[</span><span·class="ss">a@gin</span><span·class="p"[·...·truncated·by·diffoscope;·len:·161,·SHA:·e98038b5cac492d3610a6650e9666dac50e196ae6dab8a634dac8b60527f1aeb·...·]-16">}</span><span·class="p">,</span><span·class="w">
252 ··························</span><span·class="p"·data-group-id="2916528989-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="2916528989-19">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·249,·SHA:·30aa61f856aa27405216b56fa68cfc2a7a198d830be139090b476188a9993bca·...·]-14">)</span><span·class="p">,</span><span·class="w">252 ··························</span><span·class="p"·data-group-id="2335355228-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="2335355228-19">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·249,·SHA:·f83d9789b4c0b0ba57439dc12db51920edafd19311b9e9283374f0a19cebf3d1·...·]-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="2916528989-20">(</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2916528989-21">[</span><span·class="p"·data-group-id="2916528989-22">{</span><span·class="ss">type</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·97,·SHA:·e7c1132e5f7c419b197557ac98771052412c15a9fe6607598b401670e519a6ec·...·]-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="2335355228-20">(</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2335355228-21">[</span><span·class="p"·data-group-id="2335355228-22">{</span><span·class="ss">type</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·97,·SHA:·812692b6b67a240ec40b4cbc68315d9b340657f98acc22360d44890c3b77660f·...·]-22">}</span><span·class="p">,</span><span·class="w">
254 ··································</span><span·class="p"·data-group-id="2916528989-23">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2916528989-24">[</span><span·class="ss">a@gin</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b@sk[·...·truncated·by·diffoscope;·len:·107,·SHA:·8b81444cd2dec25a087d71d3813fc58953b138c98fb202d7c243c70271087bd4·...·]-23">}</span><span·class="p">,</span><span·class="w">254 ··································</span><span·class="p"·data-group-id="2335355228-23">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2335355228-24">[</span><span·class="ss">a@gin</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b@sk[·...·truncated·by·diffoscope;·len:·107,·SHA:·a4613f9a73d5e3ffc1fad5e45a1beffcb7d873fcc1148c5ae8476e225b13693b·...·]-23">}</span><span·class="p">,</span><span·class="w">
255 ··································</span><span·class="p"·data-group-id="2916528989-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="2916528989-26">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">255 ··································</span><span·class="p"·data-group-id="2335355228-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="2335355228-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="2916528989-26">)</span><span·class="p"·data-group-id="2916528989-25">}</span><span·class="p"·data-group-id="2916528989-21">]</span><span·class="p"·data-group-id="2916528989-20">)</span><span·class="p">,</span><span·class="w">256 »       »       »       »       »       »       »       ···</span><span·class="ss">manager</span><span·class="p"·data-group-id="2335355228-26">)</span><span·class="p"·data-group-id="2335355228-25">}</span><span·class="p"·data-group-id="2335355228-21">]</span><span·class="p"·data-group-id="2335355228-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="2916528989-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="2335355228-27">(</span><span·class="ss">at_dep</span><span·class="p">,</span><span·class="w">
258 ·························</span><span·class="p"·data-group-id="2916528989-28">[</span><span·class="p"·data-group-id="2916528989-29">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2916528989-30">[</span><span·class="ss">a@gin</span><span·class="p"[·...·truncated·by·diffoscope;·len:·161,·SHA:·f84f4b84cb47aac00a67812ccd545273599bedd436371716ab33cffbd8290a2e·...·]-29">}</span><span·class="p">,</span><span·class="w">258 ·························</span><span·class="p"·data-group-id="2335355228-28">[</span><span·class="p"·data-group-id="2335355228-29">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2335355228-30">[</span><span·class="ss">a@gin</span><span·class="p"[·...·truncated·by·diffoscope;·len:·161,·SHA:·daccf6686c92e773d6abdae76f55cc6e939ef156ec27c8667544c70c17400a6a·...·]-29">}</span><span·class="p">,</span><span·class="w">
259 ··························</span><span·class="p"·data-group-id="2916528989-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="2916528989-32">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·248,·SHA:·642a5c34a2c76ce25aa3a0a2179ca6dd4328518d93f24446bae54c5214d277bb·...·]-27">)</span><span·class="p">,</span><span·class="w">259 ··························</span><span·class="p"·data-group-id="2335355228-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="2335355228-32">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·248,·SHA:·8bb374bd9a161c08e59552d857c92ecc3002ac63629c9095acba461c80dea2bb·...·]-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="2916528989-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="2335355228-33">(</span><span·class="ss">in_proj</span><span·class="p">,</span><span·class="w">
261 ························</span><span·class="p"·data-group-id="2916528989-34">[</span><span·class="p"·data-group-id="2916528989-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="2916528989-35">}</span><span·class="p">,</span><span·class="w">261 ························</span><span·class="p"·data-group-id="2335355228-34">[</span><span·class="p"·data-group-id="2335355228-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="2335355228-35">}</span><span·class="p">,</span><span·class="w">
262 ·························</span><span·class="p"·data-group-id="2916528989-36">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2916528989-37">[</span><span·class="ss">a@gin</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b@sk[·...·truncated·by·diffoscope;·len:·107,·SHA:·70615b165a023ece9348a38d7014679cc03f40fa705833ff64816699add405a3·...·]-36">}</span><span·class="p">,</span><span·class="w">262 ·························</span><span·class="p"·data-group-id="2335355228-36">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2335355228-37">[</span><span·class="ss">a@gin</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b@sk[·...·truncated·by·diffoscope;·len:·107,·SHA:·0090b7a50b6b17ad106cab5f38437b8c2d6ab70f98cde443473b737da9017afb·...·]-36">}</span><span·class="p">,</span><span·class="w">
263 ·························</span><span·class="p"·data-group-id="2916528989-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="2916528989-39">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·249,·SHA:·edce76e3317bc3fb0fc86b1ba045abd1b77787c65c0c5f2a1c801f26a78d12f2·...·]-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="2335355228-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="2335355228-39">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·249,·SHA:·963de21a07db52f9e995e99754cbd15895d365c660cc2a52d471efe917d76140·...·]-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="0389267407-1">(</span><span·class="p"·data-group-id="0389267407-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="8441272271-1">(</span><span·class="p"·data-group-id="8441272271-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="7115945435-1">(</span><span·class="p"·data-group-id="7115945435-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="7115945435-2">]</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·03513ee9efaf5691442129a0176ad6e0ae3f1a13c81efd3a1593e74cdff0bf75·...·]-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="8966916812-1">(</span><span·class="p"·data-group-id="8966916812-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="8966916812-2">]</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·b368e4c771f3bdd8c979455ca752befa49e62d04db041d6bf66b8a09b31699fa·...·]-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
304 ··</span><span·class="p"·data-group-id="7115945435-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="7115945435-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">304 ··</span><span·class="p"·data-group-id="8966916812-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="8966916812-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="7115945435-4">(</span><span·class="n">RemainingTabs</span><span·class="p"·data-group-id="7115945435-4">)</span><span·class="p">;</span><span·class="w">305 ····</span><span·class="nf">panic</span><span·class="p"·data-group-id="8966916812-4">(</span><span·class="n">RemainingTabs</span><span·class="p"·data-group-id="8966916812-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="2839085958-1">(</span><span·class="p"·data-group-id="2839085958-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="7274186477-1">(</span><span·class="p"·data-group-id="7274186477-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="2839085958-2">(</span><span·class="p"·data-group-id="2839085958-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="7274186477-2">(</span><span·class="p"·data-group-id="7274186477-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="2839085958-3">(</span><span·class="p"·data-group-id="2839085958-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:·86,·SHA:·c22e84f5a60a160f7c4f762904a86d4a5f997393db2e352d15c1f84ad692d270·...·]-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="7274186477-3">(</span><span·class="p"·data-group-id="7274186477-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:·86,·SHA:·95d5a9f6fefa89f10303a87bce7a1fa3ea842580b42d4f697f0566d86d2d5f1f·...·]-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="2839085958-5">(</span><span·class="p"·data-group-id="2839085958-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:·86,·SHA:·c8161f781a114aa75b7a333402d585c3d465e493d13af9be931296b4832a47ac·...·]-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="7274186477-5">(</span><span·class="p"·data-group-id="7274186477-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:·86,·SHA:·a09a043e3f9a5f59fa0461c3aec4c725ea5f8ab11619f7418479c0f9c645f006·...·]-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="2839085958-7">(</span><span·class="p"·data-group-id="2839085958-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="2839085958-8">}</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·3d9b791b66858206eb7075a9f18d6c536da4d9144370c8a2ff69816d9b190858·...·]-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="7274186477-7">(</span><span·class="p"·data-group-id="7274186477-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="7274186477-8">}</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·5b0b48d424855b73a765da864221e8dad38e99fc0368bfada7873dc68970684e·...·]-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="2839085958-9">(</span><span·class="n">F</span><span·class="p"·data-group-id="2839085958-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="7274186477-9">(</span><span·class="n">F</span><span·class="p"·data-group-id="7274186477-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="7382934451-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="7382934451-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="5379596261-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="5379596261-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="7382934451-2">(</span><span·class="p"·data-group-id="7382934451-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="5379596261-2">(</span><span·class="p"·data-group-id="5379596261-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
150 ················</span><span·class="p"·data-group-id="7382934451-3">[</span><span·class="n">E</span><span·class="p"·data-group-id="7382934451-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:·273,·SHA:·bae2348a3640572b7f4f2a3275c34957372b17b6d55c01fb752c9a01b9bd4854·...·]1-4">)</span><span·class="p">,</span><span·class="w">150 ················</span><span·class="p"·data-group-id="5379596261-3">[</span><span·class="n">E</span><span·class="p"·data-group-id="5379596261-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:·273,·SHA:·8176fb615fe9a4faecbc3eaa16506fc57e47cfc17c528bbd8734fc40c957fe1e·...·]1-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="7382934451-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="7382934451-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="5379596261-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="5379596261-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="7382934451-6">(</span><span·class="n">New</span><span·class="p"·data-group-id="7382934451-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="5379596261-6">(</span><span·class="n">New</span><span·class="p"·data-group-id="5379596261-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="7382934451-7">(</span><span·class="n">F</span><span·class="p"·data-group-id="7382934451-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="5379596261-7">(</span><span·class="n">F</span><span·class="p"·data-group-id="5379596261-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="9169402249-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="9169402249-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="7103835997-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="7103835997-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="9169402249-2">(</span><span·class="p"·data-group-id="9169402249-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="7103835997-2">(</span><span·class="p"·data-group-id="7103835997-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
251 ················</span><span·class="p"·data-group-id="9169402249-3">[</span><span·class="n">E</span><span·class="p"·data-group-id="9169402249-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:·cb6d69dd99987f4a4cf2e3f9ea47e499485350aa904b0b7dcf4e02c0541debdb·...·]-4">)</span><span·class="p">,</span><span·class="w">251 ················</span><span·class="p"·data-group-id="7103835997-3">[</span><span·class="n">E</span><span·class="p"·data-group-id="7103835997-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:·a9a99bd31ecda89a38ac152da393050527f8717fb822adfa4490f9dacc318fcc·...·]-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="9169402249-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="9169402249-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="7103835997-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="7103835997-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="9169402249-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="9169402249-8">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·6a5dd85663298d5caf7e49e090b3f444cc9e4eac54790a48aaf5ee0878b3d7ca·...·]-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="7103835997-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="7103835997-8">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·70eb56ad9cee19ba5d06d5993ced22b3338c3ab9c22bb5dabf7699ee49caa993·...·]-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="9169402249-9">(</span><span·class="n">New</span><span·class="p"·data-group-id="9169402249-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="7103835997-9">(</span><span·class="n">New</span><span·class="p"·data-group-id="7103835997-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="9169402249-10">(</span><span·class="n">F</span><span·class="p"·data-group-id="9169402249-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="7103835997-10">(</span><span·class="n">F</span><span·class="p"·data-group-id="7103835997-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="3243302988-1">(</span><span·class="p"·data-group-id="3243302988-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="2128896599-1">(</span><span·class="p"·data-group-id="2128896599-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="3243302988-2">(</span><span·class="o">#</span><span·class="ss">foo</span><span·class="p"·data-group-id="3243302988-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:·db6f3815b206f5aa709a87fced89542b7b9b049152811fc6ab3b3a36006cbbc4·...·]-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="2128896599-2">(</span><span·class="o">#</span><span·class="ss">foo</span><span·class="p"·data-group-id="2128896599-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:·02c57117c80f742e55287ba2df11da2320780020519903e25e3a56259b13be34·...·]-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="3243302988-4">(</span><span·class="n">F</span><span·class="p"·data-group-id="3243302988-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:·752a1f829072c63093d8b2cc48c2afdaed94684622b091e58a2b0c008cb5d3fe·...·]-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="2128896599-4">(</span><span·class="n">F</span><span·class="p"·data-group-id="2128896599-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:·ecf2c69dd4be6ce4059bbf20b1a9ef410f7f5b063a88eb6ffe3c93f43f3a219f·...·]-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="8707589735-2">(</span><span·class="o">#</span><span·class="ss">foo</span><span·class="p"·data-group-id="8707589735-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:·3b5d7d724116ee5849d39ec2007cea292fd4adf412153946da307ee07a6e2437·...·]-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="5488462370-2">(</span><span·class="o">#</span><span·class="ss">foo</span><span·class="p"·data-group-id="5488462370-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:·e7b71669a6135ef444928dd2231fac32b9218996c2ed17cd4c32805568b1a7d1·...·]-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="8707589735-4">(</span><span·class="n">F</span><span·class="p"·data-group-id="8707589735-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="5488462370-4">(</span><span·class="n">F</span><span·class="p"·data-group-id="5488462370-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="8997366933-1">(</span><span·class="p"·data-group-id="8997366933-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="8997366933-2">}</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">read</span><span·class="p"·data-group-id="8997366933-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="8997366933-3">(</span><span·class="p"·data-group-id="8997366933-4">{</span><span·class="ss">table</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·345,·SHA:·0c6c62ca6409535be2af04a0b427f917eeb5ce9cff08765b98d3755d6b5d5851·...·]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:·05eb74e98936ced8edf9cce663d60e416cb524ce691eb17cfff89d6b9beff0aa·...·]
 337 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="1203407628-3">(</span><span·class="p"·data-group-id="1203407628-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="1203407628-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">write</span><span·class="p"·data-group-id="1203407628-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="2574040830-1">(</span><span·class="ss">subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2574040830-2">[</span><span·class="p"·data-group-id="2574040830-2">]</span><span·class="p"·data-group-id="2574040830-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="2558574797-1">(</span><span·class="ss">subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2558574797-2">[</span><span·class="p"·data-group-id="2558574797-2">]</span><span·class="p"·data-group-id="2558574797-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="2059385001-1">[</span><span·class="p"·data-group-id="2059385001-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="2059385001-2">}</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·762303fd7e34b0df6c958ec1b4e8972e79ff81310b72d9729eacc5c5339a9d3e·...·]-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="8825086145-1">[</span><span·class="p"·data-group-id="8825086145-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="8825086145-2">}</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·575304886b205bd19a0686580b14175336e9f7cb46eeb0b5ce80a5443db8cc09·...·]-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="2059385001-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="2059385001-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="8825086145-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="8825086145-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="2059385001-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="2059385001-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="8825086145-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="8825086145-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="3695308008-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="3695308008-2">{</span><span·class="p"·data-group-id="3695308008-[·...·truncated·by·diffoscope;·len:·129,·SHA:·70bb3ec2d1f2639fd7cb42e328bbfb6160f77cee1879bab41fffe04c1214fe01·...·]-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="3252163823-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="3252163823-2">{</span><span·class="p"·data-group-id="3252163823-[·...·truncated·by·diffoscope;·len:·129,·SHA:·9242363d66a1cab7edc464af662b3fd39977628aa8555044e56f3f855f7e68d1·...·]-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="3695308008-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="3695308008-4">{</span><span·class="p"·data-group-id="36953080[·...·truncated·by·diffoscope;·len:·139,·SHA:·6c9d13ed1600ba8782d61946b3e607e35fde316f1f8c17cf515f599acf8de5a5·...·]-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="3252163823-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="3252163823-4">{</span><span·class="p"·data-group-id="32521638[·...·truncated·by·diffoscope;·len:·139,·SHA:·423e0e9fbe1e40f55114ec75a43e4135f81d75ce3d8555a181427628b8b824f7·...·]-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="3695308008-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="3695308008-6">{</span><span·class="p"·data-group-id="369530[·...·truncated·by·diffoscope;·len:·134,·SHA:·de92735b5fef8eaed31e2b27d082f9732653a7e5dfdf313602d91d9e9fe0fbb1·...·]-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="3252163823-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="3252163823-6">{</span><span·class="p"·data-group-id="325216[·...·truncated·by·diffoscope;·len:·134,·SHA:·f09cad0f25580f58c2ddc877bc2d7bfcaf93d73364d234e1d065b396a5936eac·...·]-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="5417933511-1">(</span><span·class="n">Record</span><span·class="p"·data-group-id="5417933511-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="5991895616-1">(</span><span·class="n">Record</span><span·class="p"·data-group-id="5991895616-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="5417933511-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="5417933511-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="5991895616-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="5991895616-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="5417933511-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="5417933511-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="5991895616-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="5991895616-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="5417933511-4">(</span><span·class="p"·data-group-id="5417933511-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="5417933511-5">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·6805a8be2dbf1bdc031cce334d88a3ac0561fc0d2ac865eaddbd7d2b22638ce0·...·]-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="5991895616-4">(</span><span·class="p"·data-group-id="5991895616-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="5991895616-5">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·92ff2649c1a635962faf0184a9f5e01f8b79335120d76a61c4b2fce7d7b286a9·...·]-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="5417933511-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="5417933511-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="5991895616-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="5991895616-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="5417933511-7">(</span><span·class="n">Record</span><span·class="p"·data-group-id="5417933511-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="5991895616-7">(</span><span·class="n">Record</span><span·class="p"·data-group-id="5991895616-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="5417933511-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="5417933511-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="5991895616-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="5991895616-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="5417933511-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="5417933511-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="5991895616-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="5991895616-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="5417933511-10">(</span><span·class="p"·data-group-id="5417933511-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="5417933511-11">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·90,·SHA:·e6ffe1fcb6f6c9daef5cf0f575781a9783cd147c9b1f55b1ea4e3c795eadac30·...·]-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="5991895616-10">(</span><span·class="p"·data-group-id="5991895616-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="5991895616-11">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·90,·SHA:·d8cb0c564978ff2af8184c12eceb9ff3cbd8606c57be9c27ce46686da888bc6e·...·]-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="5417933511-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="5417933511-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="5991895616-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="5991895616-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="5417933511-13">(</span><span·class="p"·data-group-id="5417933511-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="5417933511-14">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·6060106366447f959d3b668da911183f3f254276a69d3fea4195698e617aca95·...·]-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="5991895616-13">(</span><span·class="p"·data-group-id="5991895616-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="5991895616-14">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·503bb294f674132a17fd685c2f0dc4af7460543b47a6d0434f7873cfb769d105·...·]-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="5417933511-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="5417933511-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="5991895616-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="5991895616-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="5417933511-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="5417933511-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="5991895616-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="5991895616-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="5417933511-17">(</span><span·class="n">Pattern</span><span·class="p"·data-group-id="5417933511-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="5991895616-17">(</span><span·class="n">Pattern</span><span·class="p"·data-group-id="5991895616-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="5417933511-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="5417933511-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="5991895616-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="5991895616-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="5417933511-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="5417933511-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="5991895616-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="5991895616-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="1367169914-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="2488393469-1">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">
171 ····················</span><span·class="p"·data-group-id="1367169914-2">[</span><span·class="p"·data-group-id="1367169914-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1367169914-4">[</span><span·class="n">N1</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·146,·SHA:·ca2d968706bb2dbd3539b444f970cd5478ff2ca91b52d4837d3b13f94b325cce·...·]-3">}</span><span·class="p">,</span><span·class="w">171 ····················</span><span·class="p"·data-group-id="2488393469-2">[</span><span·class="p"·data-group-id="2488393469-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2488393469-4">[</span><span·class="n">N1</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·146,·SHA:·3b29b52a354e39feeeb866a66a39068ca193cd131fdf3100a41158c9eb2e39c3·...·]-3">}</span><span·class="p">,</span><span·class="w">
172 ·····················</span><span·class="p"·data-group-id="1367169914-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="1367169914-6">(</span><span·class="ss">fields</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·241,·SHA:·69d21374db96882dd51edfb5fcf65956eada51958a3d6058769627f3576b8cc6·...·]-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="2488393469-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="2488393469-6">(</span><span·class="ss">fields</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·241,·SHA:·3e87125c2e3d7da1a9a48a32d95837a14588dea4d2b045f63798b857a5f20937·...·]-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="6657963788-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="6657963788-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="5120718250-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="5120718250-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="6657963788-2">(</span><span·class="p"·data-group-id="6657963788-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="5120718250-2">(</span><span·class="p"·data-group-id="5120718250-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="6657963788-3">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="6657963788-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:·6390c82be454758b3c0edc35ee8e8a1adbc19841848e1b95d500286654c7ac64·...·]-4">)</span><span·class="p">.</span><span·class="w">228 </span><span·class="p"·data-group-id="5120718250-3">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="5120718250-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:·ce8487b83f50c342791ad7865e8eb8e61729c83410387be50a5cf3d27af86b59·...·]-4">)</span><span·class="p">.</span><span·class="w">
229 </span><span·class="p"·data-group-id="6657963788-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="6657963788-5">]</span><span·class="gp·unselectable">229 </span><span·class="p"·data-group-id="5120718250-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="5120718250-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="6657963788-6">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="6657963788-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:·ee802d5295903d5382b336562400e8d54aef12357fb92e55ed3bfaf5b1764b63·...·]-7">)</span><span·class="p">.</span><span·class="w">232 </span><span·class="p"·data-group-id="5120718250-6">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="5120718250-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:·174d05e5114d6e77ba28df25424e6b538aec2937e1fa992a58b7fabd0c075bc6·...·]-7">)</span><span·class="p">.</span><span·class="w">
233 </span><span·class="p"·data-group-id="6657963788-11">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6657963788-11">}</span><span·class="gp·unselectable">233 </span><span·class="p"·data-group-id="5120718250-11">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="5120718250-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="6657963788-12">(</span><span·class="n">Keys</span><span·class="p"·data-group-id="6657963788-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6657963788-13">[</span><span·class="nc">mnesi[·...·truncated·by·diffoscope;·len:·664,·SHA:·c85bed6cdbaedbe76c946419f2e97dc2b812a6c43db50460fadcffb09d5f8290·...·]-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="5120718250-12">(</span><span·class="n">Keys</span><span·class="p"·data-group-id="5120718250-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5120718250-13">[</span><span·class="nc">mnesi[·...·truncated·by·diffoscope;·len:·664,·SHA:·70e9afe9edd4bface41d8d095897d2d83e68a4afd4562c3fbb0da0ddd6dd5357·...·]-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="6657963788-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="6657963788-17">[</span><span·class="nc">list[·...·truncated·by·diffoscope;·len:·445,·SHA:·342ecce0a8aa1a7e63e299d19c483c97f7918f1169f99cd831c4d5277ee47bfc·...·]-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="5120718250-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="5120718250-17">[</span><span·class="nc">list[·...·truncated·by·diffoscope;·len:·445,·SHA:·6e4fd551e9985297a31f98dd4472951cb03ee24e5dd079d931ff4ede8117b68f·...·]-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="6657963788-19">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="6657963788-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:·ea290d6ada0967d14423c48dc9199f987578ede6fa78f1cd77e6baef58e6a3c1·...·]-20">)</span><span·class="p">.</span><span·class="w">238 </span><span·class="p"·data-group-id="5120718250-19">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="5120718250-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:·e6ada7a2d30c5a8aa9d9bf06fc761bcce9653e3466ca0d32f96565c108e258be·...·]-20">)</span><span·class="p">.</span><span·class="w">
239 </span><span·class="p"·data-group-id="6657963788-23">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6657963788-23">}</span><span·class="gp·unselectable">239 </span><span·class="p"·data-group-id="5120718250-23">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="5120718250-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="6657963788-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="6657963788-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="5120718250-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="5120718250-24">)</span><span·class="p">.</span><span·class="w">
241 </span><span·class="p"·data-group-id="6657963788-25">[</span><span·class="p"·data-group-id="6657963788-26">{</span><span·class="ss">base_table</span><span·class="p">,</span><span·class="ss">dictionary</span><span·class="p"·data-group-id="6657963788-26">}</span><span·class="p">,</span><span·class="w">241 </span><span·class="p"·data-group-id="5120718250-25">[</span><span·class="p"·data-group-id="5120718250-26">{</span><span·class="ss">base_table</span><span·class="p">,</span><span·class="ss">dictionary</span><span·class="p"·data-group-id="5120718250-26">}</span><span·class="p">,</span><span·class="w">
242 ·</span><span·class="p"·data-group-id="6657963788-27">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p"·data-group-id="6657963788-27">}</span><span·class="p">,</span><span·class="w">242 ·</span><span·class="p"·data-group-id="5120718250-27">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p"·data-group-id="5120718250-27">}</span><span·class="p">,</span><span·class="w">
243 ·</span><span·class="p"·data-group-id="6657963788-28">{</span><span·class="ss">n_doubles</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="6657963788-28">}</span><span·class="p">,</span><span·class="w">243 ·</span><span·class="p"·data-group-id="5120718250-28">{</span><span·class="ss">n_doubles</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="5120718250-28">}</span><span·class="p">,</span><span·class="w">
244 ·</span><span·class="p"·data-group-id="6657963788-29">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6657963788-29">}</span><span·class="p">,</span><span·class="w">244 ·</span><span·class="p"·data-group-id="5120718250-29">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="5120718250-29">}</span><span·class="p">,</span><span·class="w">
245 ·</span><span·class="p"·data-group-id="6657963788-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="6657963788-30">}</span><span·class="p">,</span><span·class="w">245 ·</span><span·class="p"·data-group-id="5120718250-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="5120718250-30">}</span><span·class="p">,</span><span·class="w">
246 ·</span><span·class="p"·data-group-id="6657963788-31">{</span><span·class="ss">node_pool</span><span·class="p">,</span><span·class="p"·data-group-id="6657963788-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:·00752e1fe7d7a05f18ad506c275cc6cc2323f9230e4c75322579bfa2ddf207c2·...·]-25">]</span><span·class="gp·unselectable">246 ·</span><span·class="p"·data-group-id="5120718250-31">{</span><span·class="ss">node_pool</span><span·class="p">,</span><span·class="p"·data-group-id="5120718250-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:·f85210e0d6ef644edaf1764af268cce094af5e1c0f07d97ef1b50b676742fdd4·...·]-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="6657963788-33">(</span><span·class="n">Item</span><span·class="p"·data-group-id="6657963788-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:·a67f22466744b9276cac64adc401278ed075ddfc71e6292ac4b5924d11e46a4f·...·]-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="5120718250-33">(</span><span·class="n">Item</span><span·class="p"·data-group-id="5120718250-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:·9b6427ff5fa091d3399696d422cf7add2c47b87b9ae520c87fa8ae18b126aa1a·...·]-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="6657963788-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="6657963788-36">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·256310b5389ba0533b1541f591d423cfbbbf3f9b612971cb34978ec61018ff00·...·]-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="5120718250-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="5120718250-36">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·455bfae024140563de7dfe2f67dbfe52d777036190bdf13ed298423b10b462d3·...·]-35">)</span><span·class="p">.</span><span·class="w">
250 </span><span·class="p"·data-group-id="6657963788-37">[</span><span·class="p"·data-group-id="6657963788-38">{</span><span·class="ss">c@sam</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="6657963788-38">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·5ddd1b465c5cd851b38ab5903bc3fb395a9e2648a2542f34fb347c50dcbcca82·...·]-37">]</span><span·class="gp·unselectable">250 </span><span·class="p"·data-group-id="5120718250-37">[</span><span·class="p"·data-group-id="5120718250-38">{</span><span·class="ss">c@sam</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="5120718250-38">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·65121c5c82c5d51d68af1c69aa288f01cf23074c501ae29077e48660cda05b3e·...·]-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="6657963788-41">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6657963788-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:·e455626ac87f68d9ca3e8569fe3e1587120dd112decb11c692a0da1fae1a37db·...·]-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="5120718250-41">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5120718250-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:·0853d38ff38621e02c6bdf58782f63c26411073e69c832edb5dfd317c6803676·...·]-41">)</span><span·class="p">.</span><span·class="w">
252 </span><span·class="p"·data-group-id="6657963788-43">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6657963788-43">}</span><span·class="gp·unselectable">252 </span><span·class="p"·data-group-id="5120718250-43">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="5120718250-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="6657963788-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="6657963788-45">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·0a9e8c4bb53a8881812bcd3de39c889c4c87dce112b0476e9d1a7f52f39a95c6·...·]-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="5120718250-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="5120718250-45">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·70106501013cebab82776c8ae2a950baa74707844e2041fa4e88d56e089991a4·...·]-44">)</span><span·class="p">.</span><span·class="w">
254 </span><span·class="p"·data-group-id="6657963788-46">[</span><span·class="p"·data-group-id="6657963788-47">{</span><span·class="ss">b@sam</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6657963788-47">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·df584ad0ccd48eeb8dc1b963745e6f3aa104aa272f07e9610fc65685670dfbbf·...·]-46">]</span><span·class="gp·unselectable">254 </span><span·class="p"·data-group-id="5120718250-46">[</span><span·class="p"·data-group-id="5120718250-47">{</span><span·class="ss">b@sam</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="5120718250-47">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·9853c486957829d2c52a77e9994127ba0794ad99b1ce4dafc2d5c212c03357d0·...·]-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="6657963788-50">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6657963788-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:·d1ff793af46ec0fbe1b35fc7ecc8fc37377577414d60bc0aada0e01d8afe03a8·...·]-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="5120718250-50">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5120718250-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:·70f9b8c95f1766155e9d9cd8b0a034365b5d250032513b8115b24c70bc27ed48·...·]-50">)</span><span·class="p">.</span><span·class="w">
256 </span><span·class="p"·data-group-id="6657963788-52">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6657963788-52">}</span><span·class="gp·unselectable">256 </span><span·class="p"·data-group-id="5120718250-52">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="5120718250-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="6657963788-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="6657963788-54">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·a05038c2b1b5225d18df1734caac90929fe9130e1634dd07471262c3e628ae8a·...·]-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="5120718250-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="5120718250-54">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·4304056e4aa01b60a50f18f80cd061bfbc73bb208edd57ae3f850d64c74c080c·...·]-53">)</span><span·class="p">.</span><span·class="w">
258 </span><span·class="p"·data-group-id="6657963788-55">[</span><span·class="p"·data-group-id="6657963788-56">{</span><span·class="ss">a@sam</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="6657963788-56">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·246c1f82f328b3a6e89824fa8b8bfa3cde110ccfa31003961d9d91724aac0c3c·...·]-55">]</span><span·class="gp·unselectable">258 </span><span·class="p"·data-group-id="5120718250-55">[</span><span·class="p"·data-group-id="5120718250-56">{</span><span·class="ss">a@sam</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5120718250-56">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·c8e229ba1d30aef3f17ce697d4f196a82fd6508480d1ee284e96c7f0af24a1f7·...·]-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="6657963788-59">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6657963788-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:·0158f3a1faf61d55693a1a7b1f123c68653070c1d11e7a9d0f4b9dd74108fedd·...·]-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="5120718250-59">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5120718250-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:·0f708f0989898c40a6bc5c53d1afda8acedf4be568a63a42d48f94e3e18e4e28·...·]-59">)</span><span·class="p">.</span><span·class="w">
260 </span><span·class="p"·data-group-id="6657963788-61">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6657963788-61">}</span><span·class="gp·unselectable">260 </span><span·class="p"·data-group-id="5120718250-61">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="5120718250-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="6657963788-62">(</span><span·class="n">Key</span><span·class="p"·data-group-id="6657963788-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:·2b95e8dc8dca249d8ba51edc6dd47aaebdd0a460a7ac95879847651ecf0c33df·...·]-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="5120718250-62">(</span><span·class="n">Key</span><span·class="p"·data-group-id="5120718250-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:·ffe138e691f785a9a7570bd195358351d253cc0efe71ea8f36fe97d1c1bb7683·...·]-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="6657963788-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="6657963788-66">[</span><span·class="mi">12</[·...·truncated·by·diffoscope;·len:·183,·SHA:·5d173a45bfdbc348f62f408c48b3aac7fd8dab95ab63c96f5f70848f5664cc87·...·]-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="5120718250-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="5120718250-66">[</span><span·class="mi">12</[·...·truncated·by·diffoscope;·len:·183,·SHA:·e9d216ca1a8372f260e75a275586f600d626ac783248f52219e27db64bc8f216·...·]-65">)</span><span·class="p">.</span><span·class="w">
264 </span><span·class="p"·data-group-id="6657963788-67">[</span><span·class="p"·data-group-id="6657963788-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:·0b438aa8090b8e2527b0916780e37720e659a625d3c0fdc487d6a1a5379b8a8a·...·]-67">]</span><span·class="gp·unselectable">264 </span><span·class="p"·data-group-id="5120718250-67">[</span><span·class="p"·data-group-id="5120718250-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:·3eaf8e53322de624b2d5dd2342d75dfe99e727a761768149cb2b6dfed7a97816·...·]-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="6657963788-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="6657963788-70">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·762657840c4493bd228f3f0c31b30f350a4185a691082ccd2317ff0658cb756d·...·]-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="5120718250-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="5120718250-70">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·f47029cb3476c6ea1676dfa3524fa80324ffcc138d9a0786ae31f029d734ab01·...·]-69">)</span><span·class="p">.</span><span·class="w">
266 </span><span·class="p"·data-group-id="6657963788-71">[</span><span·class="p"·data-group-id="6657963788-72">{</span><span·class="ss">dictionary</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="6657963788-72">}</span><span·class="p">,</span><span·class="w">266 </span><span·class="p"·data-group-id="5120718250-71">[</span><span·class="p"·data-group-id="5120718250-72">{</span><span·class="ss">dictionary</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="5120718250-72">}</span><span·class="p">,</span><span·class="w">
267 ·</span><span·class="p"·data-group-id="6657963788-73">{</span><span·class="ss">dictionary_frag2</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="6657963788-73">}</span><span·class="p">,</span><span·class="w">267 ·</span><span·class="p"·data-group-id="5120718250-73">{</span><span·class="ss">dictionary_frag2</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="5120718250-73">}</span><span·class="p">,</span><span·class="w">
268 ·</span><span·class="p"·data-group-id="6657963788-74">{</span><span·class="ss">dictionary_frag3</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="6657963788-74">}</span><span·class="p">,</span><span·class="w">268 ·</span><span·class="p"·data-group-id="5120718250-74">{</span><span·class="ss">dictionary_frag3</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="5120718250-74">}</span><span·class="p">,</span><span·class="w">
269 ·</span><span·class="p"·data-group-id="6657963788-75">{</span><span·class="ss">dictionary_frag4</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="6657963788-75">}</span><span·class="p"·data-group-id="6657963788-71">]</span><span·class="w"> 
270 </span><span·class="p"·data-group-id="6657963788-76">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="6657963788-76">)</span><span·class="mi">19</span><span·class="o">&gt;</span></code></pre><h3·id="fragmentation-properties"·class="secti[·...·truncated·by·diffoscope;·len:·10,·SHA:·ab8d9cf9adb6f312c4ca8d2d89923fa12ea0ca69e5371467ebf63dbb11a07592·...·]">269 ·</span><span·class="p"·data-group-id="5120718250-75">{</span><span·class="ss">dictionary_frag4</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="5120718250-75">}</span><span·class="p"·data-group-id="5120718250-71">]</s[·...·truncated·by·diffoscope;·len:·18,·SHA:·7f5c6b1212d3eb04fd43abf1652541570d6ef0d2bed264ce2c2977e5b9aeee63·...·]">
 270 </span><span·class="p"·data-group-id="5120718250-76">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="5120718250-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="2739955198-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="2739955198-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="8359721505-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="8359721505-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="2739955198-2">(</span><span·class="p"·data-group-id="2739955198-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="8359721505-2">(</span><span·class="p"·data-group-id="8359721505-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="2739955198-3">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="2739955198-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:·924a04d66a06cdafcb25b471c698118f93de22f94e9d1b94581f67746a8c6f3d·...·]-4">]</span><span·class="p">.</span><span·class="w">315 </span><span·class="p"·data-group-id="8359721505-3">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="8359721505-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:·74dff43c31be74f94ad7741e792c0bd0e09b75dae1b65692c69eff9c191d7811·...·]-4">]</span><span·class="p">.</span><span·class="w">
316 </span><span·class="p"·data-group-id="2739955198-9">[</span><span·class="p"·data-group-id="2739955198-10">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="2739955198-10">}</span><span·class="p">,</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·325,·SHA:·d395735d858253effc25be84828ca50a15964abeabd0fedaed9f1afb281f401f·...·]-9">]</span><span·class="gp·unselectable">316 </span><span·class="p"·data-group-id="8359721505-9">[</span><span·class="p"·data-group-id="8359721505-10">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="8359721505-10">}</span><span·class="p">,</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·325,·SHA:·5ed897ff9a75111a8e6a255a969cc1a355055674fcb2c7b69950ae0b2d77f069·...·]-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="2739955198-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="8359721505-13">(</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="w">
318 ······························</span><span·class="p"·data-group-id="2739955198-14">[</span><span·class="p"·data-group-id="2739955198-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="2739955198-15">}</span><span·class="p">,</span><span·class="w">318 ······························</span><span·class="p"·data-group-id="8359721505-14">[</span><span·class="p"·data-group-id="8359721505-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="8359721505-15">}</span><span·class="p">,</span><span·class="w">
319 ·······························</span><span·class="p"·data-group-id="2739955198-16">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="p"·data-group-id="2739955198-17">[</span><span·class="ss">prim_key</span><span·class="p">,</span><span·class="ss">prim_val</span><span·class="p"·data-group-id="27[·...·truncated·by·diffoscope;·len:·170,·SHA:·3e05361b13063b4d1fb2163375e956986dddefe8ae4d6ac55c7d892e71db45d1·...·]-13">)</span><span·class="p">.</span><span·class="w">319 ·······························</span><span·class="p"·data-group-id="8359721505-16">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="p"·data-group-id="8359721505-17">[</span><span·class="ss">prim_key</span><span·class="p">,</span><span·class="ss">prim_val</span><span·class="p"·data-group-id="83[·...·truncated·by·diffoscope;·len:·170,·SHA:·0da41f315931eea43b7dd8ab5f6c87478b7a9075921cadecee19a2c2ef57d6ac·...·]-13">)</span><span·class="p">.</span><span·class="w">
320 </span><span·class="p"·data-group-id="2739955198-18">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="2739955198-18">}</span><span·class="gp·unselectable">320 </span><span·class="p"·data-group-id="8359721505-18">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="8359721505-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="2739955198-19">[</span><span·class="p"·data-group-id="2739955198-20">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2739955198-21">{</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sec_val</span><span·class="p"·data-group-id="2739955198-21">}</span><span·class="p"·data-group-id="2739955198-20">}</span><span·class="p"·data-group-id="2739955198-19">]</span><span·class="p">.</span><span·class="w"> 
322 </span><span·class="p"·data-group-id="2739955198-22">[</span><span·class="p"·data-group-id="2739955198-23">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="p"·data-group-id="2739955198-24">{</span><span·class="ss">prim_dict</[·...·truncated·by·diffoscope;·len:·250,·SHA:·19f79708e5131efd478ad8f8d97a0d80471f4358ed369c4037263b8ad8d5a439·...·]">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="8359721505-19">[</span><span·class="p"·data-group-id="8359721505-20">{</span><span·class="ss">foreign_[·...·truncated·by·diffoscope;·len:·424,·SHA:·0f9cac22bb842c6577b6de5ec958cfbcb57ea55dc0c6415e8ddc90616877b29d·...·]">
 322 </span><span·class="p"·data-group-id="8359721505-22">[</span><span·class="p"·data-group-id="8359721505-23">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="p"·data-group-id="8359721505-24">{</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="ss">sec_val</span><span·class="p"·data-group-id="8359721505-24">}</span><span·class="p"·data-group-id="8359721505-23">}</span><span·class="p"·data-group-id="8359721505-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="2739955198-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="8359721505-25">(</span><span·class="ss">sec_dict</span><span·class="p">,</span><span·class="w">
324 ······························</span><span·class="p"·data-group-id="2739955198-26">[</span><span·class="p"·data-group-id="2739955198-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="2739955198-27">}</span><span·class="p">,</span><span·class="gp·unselectable">324 ······························</span><span·class="p"·data-group-id="8359721505-26">[</span><span·class="p"·data-group-id="8359721505-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="8359721505-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="2739955198-28">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2739955198-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:·a37a3e3de2dcd4d856d9022b58b9c393d9907562d747118e834044902058d81c·...·]-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="8359721505-28">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8359721505-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:·d550ab8bdf0e7ec960c97b4466f6bb96686637ea3649729b582ff3851d0cb045·...·]-25">)</span><span·class="p">.</span><span·class="w">
326 </span><span·class="p"·data-group-id="2739955198-30">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="2739955198-30">}</span><span·class="gp·unselectable">326 </span><span·class="p"·data-group-id="8359721505-30">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="8359721505-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="2739955198-31">(</span><span·class="n">Rec</span><span·class="p"·data-group-id="2739955198-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:·db03b2e2de7eab58f803aa8996dc68903126b7ab133357a9fa966a1c092eee0d·...·]-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="8359721505-31">(</span><span·class="n">Rec</span><span·class="p"·data-group-id="8359721505-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:·b4be17d0610959bedcad7ec0756cc46ea7bc29203535b319aa0c2aa33b30099b·...·]-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="2739955198-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="8359721505-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="2739955198-34">[</span><span·class="p"·data-group-id="2739955198-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:·d785eb6c74afed24c5f2cf719f7b811ac048ed296bbc2c4c8de25aca386407ca·...·]-33">)</span><span·class="p">.</span><span·class="w">334 ··························</span><span·class="p"·data-group-id="8359721505-34">[</span><span·class="p"·data-group-id="8359721505-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:·312bb296f7728502b57a10c0b137de16db4f4188a7fdbc84bc5bdc8f30f643dc·...·]-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="2739955198-36">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="2739955198-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:·e62137f3eaaa114e6a69160dce1c4ff8f33841a9c1c582a02705400d3f00753f·...·]-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="8359721505-36">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="8359721505-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:·cd0f3a33071b6e17c87c69ee9c72cb6476da7031efaa5de50a0da1727e99dc1a·...·]-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="2739955198-38">[</span><span·class="p"·data-group-id="2739955198-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:·f26c8f4de9d449222f91c853f482f86eb9acc299d8409eb7f474fe9da72d95e9·...·]-37">)</span><span·class="p">.</span><span·class="w">337 ···························</span><span·class="p"·data-group-id="8359721505-38">[</span><span·class="p"·data-group-id="8359721505-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:·64335ac987d63a925f376f0fed8e76db621e75b83564d4f5ee2506671134d6de·...·]-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="2739955198-40">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="2739955198-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:·0ec703c262c89eafc75bd470433d71081c7cd4ea07cd78b35ba9df677f797ae1·...·]-41">)</span><span·class="p">.</span><span·class="w">339 </span><span·class="p"·data-group-id="8359721505-40">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="8359721505-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:·ecf935391399a5aaf215a4720dc09c6afc59eb8e1adb7897216fe66e7963df56·...·]-41">)</span><span·class="p">.</span><span·class="w">
340 </span><span·class="p"·data-group-id="2739955198-45">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="2739955198-45">}</span><span·class="gp·unselectable">340 </span><span·class="p"·data-group-id="8359721505-45">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="8359721505-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="2739955198-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="2739955198-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="8359721505-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="8359721505-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="2739955198-47">(</span><span·class="p"·data-group-id="2739955198-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="2739955198-48">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·179,·SHA:·de2c6e2a6f9e44bceb73a030ce0e9eaa55c70f02aefaf05a38494380c2bff1e5·...·]-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="8359721505-47">(</span><span·class="p"·data-group-id="8359721505-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="8359721505-48">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·179,·SHA:·269d86cf19028b91d4f7bcfb41daffbe28175659c29d1d5aed430d196e88ee7e·...·]-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="2739955198-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="8359721505-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="2739955198-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="2739955198-50">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_[·...·truncated·by·diffoscope;·len:·52,·SHA:·f7553eb56f53d217cec17b7cccd82223ae9010bad914be9d63b953c2adec6015·...·]-49">)</span><span·class="p">.</span><span·class="w">345 ···························</span><span·class="p"·data-group-id="8359721505-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="8359721505-50">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_[·...·truncated·by·diffoscope;·len:·52,·SHA:·bd012c82d0a749614fc8e360bb19e9393b81d5b450c131ae76fefbe8682f7163·...·]-49">)</span><span·class="p">.</span><span·class="w">
346 </span><span·class="p"·data-group-id="2739955198-51">[</span><span·class="p"·data-group-id="2739955198-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="2739955198-52">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·85df40134836d98d5ffaf289ec64eeb4e6defd8244e90d322b11bf7384f955a0·...·]-51">]</span><span·class="gp·unselectable">346 </span><span·class="p"·data-group-id="8359721505-51">[</span><span·class="p"·data-group-id="8359721505-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="8359721505-52">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·2420888e43cbe4b2a2108a291ee7241de664f9687805fe608e369652025884ef·...·]-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="2739955198-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="2739955198-53">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·282,·SHA:·a76318b40659f5e44c3b5f9611561d35f9a2c8f17e9a6c594ecd6472aa9aea34·...·]-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="8359721505-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="8359721505-53">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·282,·SHA:·50e731abd222dafa983258f564c8156f556134a07e23f424451e9cc6c73cf33f·...·]-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="2739955198-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="8359721505-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="2739955198-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="2739955198-56">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·59,·SHA:·fd84eeedf5fa2d3430e2f9124c662a6b736233a43f0a954d7027df09546abee9·...·]-55">)</span><span·class="p">.</span><span·class="w">350 ···························</span><span·class="p"·data-group-id="8359721505-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="8359721505-56">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·59,·SHA:·846ac325aec8e19396d35f9f53315dc7da57bb3aab1e78f5be0a03386ef47915·...·]-55">)</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="7840944252-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="7840944252-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="4043911163-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="4043911163-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="7840944252-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="7840944252-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="4043911163-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="4043911163-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="7840944252-3">(</span><span·class="p"·data-group-id="7840944252-4">[</span><span·class="nf">node</span><span·class="p"·data-group-id="7840944252-5">(</span><span·class="p"·data-group-id="7840944252-5">)</span><span·class="p"·data-group-id="7840944252-4">]<[·...·truncated·by·diffoscope;·len:·47,·SHA:·8ce2ffc17beb56c68c647786244d2fb6f954fde169be05f2737b2265d1320b27·...·]-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="4043911163-3">(</span><span·class="p"·data-group-id="4043911163-4">[</span><span·class="nf">node</span><span·class="p"·data-group-id="4043911163-5">(</span><span·class="p"·data-group-id="4043911163-5">)</span><span·class="p"·data-group-id="4043911163-4">]<[·...·truncated·by·diffoscope;·len:·47,·SHA:·03e60a931109a66a7cd2f57d3bee3c595d77c07c5e0aa8a2623ef649cc99befa·...·]-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="7840944252-6">(</span><span·class="ss">klacke@gin</span><span·class="p"·data-group-id="7840944252-6">)</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">240 </span><span·class="p"·data-group-id="4043911163-6">(</span><span·class="ss">klacke@gin</span><span·class="p"·data-group-id="4043911163-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="0388484649-1">(</span><span·class="ss">klacke@gin</span><span·class="p"·data-group-id="0388484649-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:·bc6294ba5ab7b19be3f5b0582f02ad71b3af9f807186067e7b26ee2cc0f4f664·...·]-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="5894065360-1">(</span><span·class="ss">klacke@gin</span><span·class="p"·data-group-id="5894065360-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:·79035d208008b6f6949ce89255280c40ec1b59617f9f86b0b3277c2f4421cf44·...·]-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="1115387051-1">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="p"·data-group-id="1115387051-2">[</span><span·class="p"·data-group-id="1115387051-3">{</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1115387051-4">[</span><span·class="nf">node</span><span·class="p"·data-group-id="1115387051-5">(</span><span·class="p"·data-group-id="1115387051-5">)</span><span·class="p"·data-group-id="1115387051-4">]</span><span·class="p"·data-group-id="1115387051-3">}</span><span·class="p"·data-group-id="1115387051-2">]</span><span·class="p"·data-group-id="1115387051-1">)</span><span·class="p">.</span><span·class="w"> 
254 </span><span·class="p"·data-group-id="1115387051-6">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="1115387051-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:·0e36145914916df57b6dbfbe317b87ee05f1f17b560ffe8a29131bf29506417b·...·]
 254 </span><span·class="p"·data-group-id="0875316634-6">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="0875316634-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="9606215939-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="9606215939-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·688,·SHA:·de6d000e935885d78c8a5a9f3ea45c423442861f60fdc4597298e93977ff71a8·...·]-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="1587532422-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="1587532422-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·688,·SHA:·f75754abe25d9b80bdbc3a6abd93221fc3eaba21011ebb90965be85a94bca48a·...·]-5">}</span><span·class="p">,</span><span·class="w">
300 </span><span·class="p"·data-group-id="9606215939-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="9606215939-6">}</span><span·class="p"·data-group-id="9606215939-3">]</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·0920cf5b1e57ad745abc222e0247d5532c1a762dae0a600e4dce68704289f889·...·]-2">)</span><span·class="p">,</span><span·class="w">300 </span><span·class="p"·data-group-id="1587532422-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="1587532422-6">}</span><span·class="p"·data-group-id="1587532422-3">]</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·5297ceb34692b820ad95e1d10ef04e8753e99b9c29a4424002e3bdf14a30f314·...·]-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="9606215939-7">(</span><span·class="n">X</span><span·class="p"·data-group-id="9606215939-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:·ec54802121b7de69672d240da38fdc5b3ad89f69765e1a972588252c03e0c226·...·]-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="1587532422-7">(</span><span·class="n">X</span><span·class="p"·data-group-id="1587532422-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:·6d294ef6658d2534afbacf93d7e1af8efe0def9620ec4f712ab53d285bba9d55·...·]-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="9606215939-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="9606215939-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="1587532422-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="1587532422-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="9606215939-11">(</span><span·class="n">N</span><span·class="p"·data-group-id="9606215939-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="1587532422-11">(</span><span·class="n">N</span><span·class="p"·data-group-id="1587532422-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="7054925002-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:·134,·SHA:·3df1d98936b05370a104f33032f4e527b25e86e7661fd06a240bcce8fd432f1e·...·]-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="7821667866-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:·134,·SHA:·7b5891d7a857667c356477a55b2faf2b3e7c27be29499ef39da3a7dff3c99805·...·]-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="7054925002-2">(</span><span·class="n">Node</span><span·class="p"·data-group-id="7054925002-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="7821667866-2">(</span><span·class="n">Node</span><span·class="p"·data-group-id="7821667866-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="7054925002-3">(</span><span·class="n">Node</span><span·class="p"·data-group-id="7054925002-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><spa[·...·truncated·by·diffoscope;·len:·465,·SHA:·95a302849a8148f08af08f2d9ce703cc07517d8b544817207b1f2c595df1ea38·...·]-4">)</span><span·class="p">;</span><span·class="w">540 ···········</span><span·class="p"·data-group-id="7821667866-3">(</span><span·class="n">Node</span><span·class="p"·data-group-id="7821667866-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><spa[·...·truncated·by·diffoscope;·len:·465,·SHA:·6930efc69bf3eb868d22d2e2b8d14f602bdf3a162ba95f9e89770cc5e603b6dd·...·]-4">)</span><span·class="p">;</span><span·class="w">
541 ···········</span><span·class="p"·data-group-id="7054925002-6">(</span><span·class="n">Node</span><span·class="p"·data-group-id="7054925002-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="7821667866-6">(</span><span·class="n">Node</span><span·class="p"·data-group-id="7821667866-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="7054925002-7">(</span><span·class="p"·data-group-id="7054925002-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</s[·...·truncated·by·diffoscope;·len:·172,·SHA:·da509e460d30677bc8ebcbdd844465d12c53d259131586e1cc806b1722d3cc44·...·]-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="7821667866-7">(</span><span·class="p"·data-group-id="7821667866-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</s[·...·truncated·by·diffoscope;·len:·172,·SHA:·50610f73ffebd43aa232640b17e981c9ba43671ab175858c7caf39cbf8576d8e·...·]-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
545 ················</span><span·class="p"·data-group-id="7054925002-9">{</span><span·class="p"·data-group-id="7054925002-10">[</span><span·class="p"·data-group-id="7054925002-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:·523,·SHA:·89eff1e672a780ed5954ab83da43dcca58a6f48a053e6d05994baf43a39ec6a6·...·]-9">}</span><span·class="p">;</span><span·class="w">545 ················</span><span·class="p"·data-group-id="7821667866-9">{</span><span·class="p"·data-group-id="7821667866-10">[</span><span·class="p"·data-group-id="7821667866-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:·523,·SHA:·3c8715d7e319a4220f434001eb32837a126663511350e064ebb07112347027e9·...·]-9">}</span><span·class="p">;</span><span·class="w">
546 ···········</span><span·class="p"·data-group-id="7054925002-13">(</span><span·class="p"·data-group-id="7054925002-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">Version[·...·truncated·by·diffoscope;·len:·176,·SHA:·ae34e1c9dba023c3384d837da27fb1be8ea66f7632e5eebe7fe0f482ffd6e55b·...·]-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">546 ···········</span><span·class="p"·data-group-id="7821667866-13">(</span><span·class="p"·data-group-id="7821667866-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">Version[·...·truncated·by·diffoscope;·len:·176,·SHA:·84e1891df8bc0f8cda895ec2d3f84fe8779c9fed33fa74b0b646df94ba3f09fc·...·]-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
547 ················</span><span·class="p"·data-group-id="7054925002-15">{</span><span·class="p"·data-group-id="7054925002-16">[</span><span·class="p"·data-group-id="7054925002-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:·284,·SHA:·26c40981e3a5fd983e727105a4c19691c48c97db723df7564ec965fca176222a·...·]-15">}</span><span·class="p">;</span><span·class="w">547 ················</span><span·class="p"·data-group-id="7821667866-15">{</span><span·class="p"·data-group-id="7821667866-16">[</span><span·class="p"·data-group-id="7821667866-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:·284,·SHA:·1b9cefbdea7931a66c8f56ffc1e5137018f264e3bb9e83be69d8def077faaa28·...·]-15">}</span><span·class="p">;</span><span·class="w">
548 ···········</span><span·class="p"·data-group-id="7054925002-18">(</span><span·class="p"·data-group-id="7054925002-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:·174,·SHA:·53c78e6e366f2cf1d02d560262ae15e62df406bc5d6f79c3994038003838b3a5·...·]-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">548 ···········</span><span·class="p"·data-group-id="7821667866-18">(</span><span·class="p"·data-group-id="7821667866-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:·174,·SHA:·d9a545af4c3137dace5e6f0d21bfcc0c15f74bf877ce22c069f75e8818a11f03·...·]-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
549 ················</span><span·class="p"·data-group-id="7054925002-20">{</span><span·class="p"·data-group-id="7054925002-21">[</span><span·class="p"·data-group-id="7054925002-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:·282,·SHA:·b6f0c3213be2c7f741c39c8b9f5da98d683dc04816ea47a1c41b5dd043bdb55e·...·]-20">}</span><span·class="p">;</span><span·class="w">549 ················</span><span·class="p"·data-group-id="7821667866-20">{</span><span·class="p"·data-group-id="7821667866-21">[</span><span·class="p"·data-group-id="7821667866-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:·282,·SHA:·c47536be10acd61e5c961df41589856605d777ba22714351c5483c07099ed77a·...·]-20">}</span><span·class="p">;</span><span·class="w">
550 ···········</span><span·class="p"·data-group-id="7054925002-23">(</span><span·class="p"·data-group-id="7054925002-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:·174,·SHA:·6c23cdb39bf8ca3682b4e3ae85eeb511b0cb7f317c838a043c8cf23f857b92f3·...·]-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">550 ···········</span><span·class="p"·data-group-id="7821667866-23">(</span><span·class="p"·data-group-id="7821667866-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:·174,·SHA:·b3ba3592cdbc6fb638f317014fd6b63a96de38e31ce3f7d85a13e71d997e5de2·...·]-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="7054925002-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-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·8a7539d0189c5a0420ded1c0f8391c3d5f9c6b4b469f31dc865cbd628c60fd6a·...·]-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="7821667866-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-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·0e3ab1ea040b9ce404d69a5bd0f04d94915a0e51e25dfd21d98633db1bff3b29·...·]-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="7054925002-26">(</span><span·class="p"·data-group-id="7054925002-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="7054925002-27">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·633b11c5f3a2934c2df2012b75d34ec909d62b7796c27ef74b80af0402fc01be·...·]-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="7821667866-26">(</span><span·class="p"·data-group-id="7821667866-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="7821667866-27">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·2f81fc69eafe4e85e51c7f0daade4d65480beb7f714e96070cb137713e8f1e77·...·]-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="7054925002-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="7054925002-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="7821667866-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="7821667866-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="7054925002-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="7054925002-30">(</span><span·class="n">Switch</sp[·...·truncated·by·diffoscope;·len:·172,·SHA:·39099102be721f71b29a3d7502f3e29ee833f13918b7860983d42b20ff3c50a0·...·]-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="7821667866-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="7821667866-30">(</span><span·class="n">Switch</sp[·...·truncated·by·diffoscope;·len:·172,·SHA:·2fa97250e3a87c9e9a51fd232b36900a0da366be7b2504f0a7a6553d702cc422·...·]-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="7054925002-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="7054925002-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="7821667866-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="7821667866-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="7054925002-32">{</span><span·class="p"·data-group-id="7054925002-33">[</span><span·class="p"·data-group-id="7054925002-34">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·550,·SHA:·ed4b3e3e272e8e7bd43f08858df1a1522b26d8af3f53eef30415bc641c207738·...·]-32">}</span><span·class="p">;</span><span·class="w">559 ················</span><span·class="p"·data-group-id="7821667866-32">{</span><span·class="p"·data-group-id="7821667866-33">[</span><span·class="p"·data-group-id="7821667866-34">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·550,·SHA:·46ebe507136e5413b6272a1c5088f1831ed578e7dd36493605b5bfaec474c787·...·]-32">}</span><span·class="p">;</span><span·class="w">
560 ···········</span><span·class="p"·data-group-id="7054925002-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="7054925002-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">560 ···········</span><span·class="p"·data-group-id="7821667866-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="7821667866-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
561 ················</span><span·class="p"·data-group-id="7054925002-37">{</span><span·class="p"·data-group-id="7054925002-38">[</span><span·class="n">Other</span><span·class="p"·data-group-id="7054925002-38">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·9d36b4c3cb9760956ac22492bb4540283776b282dbba5a8124758b3b6a17b7fe·...·]-37">}</span><span·class="w">561 ················</span><span·class="p"·data-group-id="7821667866-37">{</span><span·class="p"·data-group-id="7821667866-38">[</span><span·class="n">Other</span><span·class="p"·data-group-id="7821667866-38">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·c39200b5599edd407862e61d4a490e3ba7f36d953e7b84cde31828a1b19e6d60·...·]-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="7054925002-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:·219,·SHA:·33f57b725867e8989d95d6747f914661110d4d5db31c7e3626504d5644ee3778·...·]-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="7821667866-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:·219,·SHA:·aa932e458f9c84333d08d82bd4f96beae95142c9f5db5e461e3bab5756f88fd2·...·]-39">)</span><span·class="p">.</span><span·class="w">
  
564 </span><span·class="nf">view</span><span·class="p"·data-group-id="7054925002-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="7054925002-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="7821667866-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="7821667866-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="7054925002-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="7054925002-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="7821667866-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="7821667866-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="7054925002-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="7054925002-43">[</span><span·class="n">Item</[·...·truncated·by·diffoscope;·len:·100,·SHA:·f1a892842ffbc88c49d19f02152de0376a44522f81ffac4b8815042eef14ffeb·...·]-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="7821667866-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="7821667866-43">[</span><span·class="n">Item</[·...·truncated·by·diffoscope;·len:·100,·SHA:·66938d43830be54a1ae0b2f336e455c3793c61db1a8b24a6047b5e4e9eeb045b·...·]-42">)</span><span·class="p">,</span><span·class="w">
567 ···················</span><span·class="p"·data-group-id="7054925002-44">{</span><span·class="p"·data-group-id="7054925002-45">[</span><span·class="n">Item</span><span·class="p"·data-group-id="7054925002-45">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·113,·SHA:·1798c0ceed9255320a6316fa267bbb67d854e8305721c69693db0c35ee85c8ab·...·]-44">}</span><span·class="w">567 ···················</span><span·class="p"·data-group-id="7821667866-44">{</span><span·class="p"·data-group-id="7821667866-45">[</span><span·class="n">Item</span><span·class="p"·data-group-id="7821667866-45">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·113,·SHA:·5b802033c0c4d7a527ab1792cb38d54b0458c4131ded3b06621ab8f51e09023a·...·]-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="7054925002-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:·216,·SHA:·60554376c579e4deb6b6d2ec38d8ec421b8cd30d2fd1b168f1853ac1a4bfd086·...·]-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="7821667866-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:·216,·SHA:·91ea8113d7e1e4cadd163423fc982d7066816e29bdff3f79a92f11ba23392442·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>711 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>192 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>414 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>244 <p>Copyright·©·1996-2024·<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="8679508988-1">[</span><span·class="p"·data-group-id="8679508988-2">{</span><span·class="p"·data-group-id="8679508988-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:·b33707713f5c539593da58bf5c8acf3795e41aaf2a39c79de2cad3dd952e24dc·...·]-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="1087202055-1">[</span><span·class="p"·data-group-id="1087202055-2">{</span><span·class="p"·data-group-id="1087202055-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:·49bfb3930eb9b4a42a86d0d7e34abf7df75dbcfd608f1c2431e8fd56ab0a64a4·...·]-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="8679508988-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="8679508988-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="1087202055-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="1087202055-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>289 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1492 <p>Copyright·©·1996-2024·<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-69A0CECD.js"></script>124 <script·src="dist/search_data-9BFFF869.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>183 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>372 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>304 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>435 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>274 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1151 <p>Copyright·©·1996-2024·<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
326 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/observer.epub
3.63 KB
zipinfo {}
Max HTML report size reached
51.1 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
2.43 KB
OEBPS/content.opf
2.4 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>390 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>336 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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="9652674819-1">(</span><span·class="p"·data-group-id="9652674819-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="3517189691-1">(</span><span·class="p"·data-group-id="3517189691-1">)</span><span·class="p">.</span><span·class="w">
1912 </span><span·class="p"·data-group-id="9652674819-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9652674819-3">[</span><span·class="ss">tiger@durin</span><span·class="p"·data-group-id="9652674819-3">]</span><span·class="p"·data-group-id="9652674819-2">}</span><span·class="gp·unselectable">1912 </span><span·class="p"·data-group-id="3517189691-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3517189691-3">[</span><span·class="ss">tiger@durin</span><span·class="p"·data-group-id="3517189691-3">]</span><span·class="p"·data-group-id="3517189691-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="9652674819-4">(</span><span·class="ss">all</span><span·class="p">,</span><span·class="ss">call</span><span·class="p"·data-group-id="9652674819-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="3517189691-4">(</span><span·class="ss">all</span><span·class="p">,</span><span·class="ss">call</span><span·class="p"·data-group-id="3517189691-4">)</span><span·class="p">.</span><span·class="w">
1914 </span><span·class="p"·data-group-id="9652674819-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9652674819-6">{</span><span·class="p"·data-group-id="9652674819-7">[</span><span·class="ss">all</span><span·class="p"·data-group-id="9652674819-7">]</spa[·...·truncated·by·diffoscope;·len:·254,·SHA:·b8d16347a2dd5488eecafc56dac1c2cc3c1918efddc772f6a69b653e1ea11dc6·...·]-5">}</span><span·class="gp·unselectable">1914 </span><span·class="p"·data-group-id="3517189691-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3517189691-6">{</span><span·class="p"·data-group-id="3517189691-7">[</span><span·class="ss">all</span><span·class="p"·data-group-id="3517189691-7">]</spa[·...·truncated·by·diffoscope;·len:·254,·SHA:·26ee3e73f66f3a5f1a41c7cc0559307f82d4b1f516133cf517aa709bb888fe2e·...·]-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="9652674819-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="9652674819-[·...·truncated·by·diffoscope;·len:·107,·SHA:·3c6369184aa920d2bd1d011e43d87c62e011f03e1e85390703ba4d5564f4ac8c·...·]-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="3517189691-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="3517189691-[·...·truncated·by·diffoscope;·len:·107,·SHA:·554b234ccf6e3647d02c9a851d62790b2f241a1b63fbe6bd96def8641f3bdea7·...·]-9">)</span><span·class="p">.</span><span·class="w">
1916 </span><span·class="p"·data-group-id="9652674819-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9652674819-12">[</span><span·class="p"·data-group-id="9652674819-13">{</span><span·class="ss">matched</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9652674819-13">}</span><span·class="p">,</span><span·class="p"·data-group-id="9652674819-14">{</span><span·class="ss">saved</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9652674819-14">}</span><span·class="p"·data-group-id="9652674819-12">]</span><span·class="p"·data-group-id="9652674819-11">}</span><span·class="w"> 
1917 </span><span·class="p"·data-group-id="9652674819-15">(</span><span·class="ss">tiger@durin</span><span·class="p"·data-group-id="9652674819-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,·tok[·...·truncated·by·diffoscope;·len:·54,·SHA:·41a693890ab5b2beea029473d08a7a2b78e19889a5db8de00e6a5de342242f61·...·]1916 </span><span·class="p"·data-group-id="3517189691-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3517189691-12">[</span><span·class="p"·data-group-id="3517189691-13">{</span><span·class="ss">matched</span><span·class="p">,</span><span·class="mi">1</[·...·truncated·by·diffoscope;·len:·393,·SHA:·1f850fb93e79c718e61737da6ec4880912544cda588d8735d2dbc12c8b35a30c·...·]
 1917 </span><span·class="p"·data-group-id="3517189691-15">(</span><span·class="ss">tiger@durin</span><span·class="p"·data-group-id="3517189691-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="6675192474-1">(</span><span·class="p"·data-group-id="6675192474-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="6675192474-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="2671039045-1">(</span><span·class="p"·data-group-id="2671039045-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="2671039045-2">]</span><span·class="p">,</span><span·class="w">
1955 ··················</span><span·class="p"·data-group-id="6675192474-3">[</span><span·class="p"·data-group-id="6675192474-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:·60b20508c7c85b5419ead5716f412814b497a27d7c30b80027f9eeaf2e9d8813·...·]-3">]</span><span·class="p">,</span><span·class="w">1955 ··················</span><span·class="p"·data-group-id="2671039045-3">[</span><span·class="p"·data-group-id="2671039045-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:·2f2c08def4a3b2a5d0435f060e39610f5237b4cc53adcbc4c6a41346800ea61f·...·]-3">]</span><span·class="p">,</span><span·class="w">
1956 ··················</span><span·class="p"·data-group-id="6675192474-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="6675192474-7">}</span><span·class="p">,</span><span·class="w">1956 ··················</span><span·class="p"·data-group-id="2671039045-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="2671039045-7">}</span><span·class="p">,</span><span·class="w">
1957 ··················</span><span·class="p"·data-group-id="6675192474-8">[</span><span·class="p"·data-group-id="6675192474-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="6675192474-9">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·1095,·SHA:·5cd13a7b0ebb4317a73fd167304ef84b68d9bdf47c35f0a8b846873f08d34432·...·]-2">]</span><span·class="p">,</span><span·class="w">1957 ··················</span><span·class="p"·data-group-id="2671039045-8">[</span><span·class="p"·data-group-id="2671039045-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="2671039045-9">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·1095,·SHA:·6414b8351d3542b8e885a455d5b1278ec3e52a72b5c0ecb4dbf1041c937ea928·...·]-2">]</span><span·class="p">,</span><span·class="w">
1958 ··················</span><span·class="p"·data-group-id="3019643472-3">[</span><span·class="p"·data-group-id="3019643472-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="3019643472-4">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·588,·SHA:·81f36e125a7d3c2cf6eea02200fe7998cb747ef19d9028637d165d314cee955a·...·]-1">)</span><span·class="p">,</span><span·class="w">1958 ··················</span><span·class="p"·data-group-id="7301837693-3">[</span><span·class="p"·data-group-id="7301837693-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="7301837693-4">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·588,·SHA:·2f162f2432f595e276e21e38e13bb400ec6219dab5f67af28ba997daec756f89·...·]-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="3019643472-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="3019643472-8">[</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·63,·SHA:·550b9129dc556cef4c3b8006ad968b90d11b1b04cba769a791fce92b01d37f9b·...·]-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="7301837693-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="7301837693-8">[</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·63,·SHA:·e2ac27bb1b271dfcad20455e17bf4eb7872d244b1a34f40089959a95ed15e978·...·]-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="3019643472-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:·ef881be2383aacc3c02cde3a76fb92f207d18b8b4e863999a8a8b223d8a934d3·...·]-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="7301837693-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:·bdd813831278d22c8826e267368fca1b764c10ca3b9e1a0e692b30b9fe6c100d·...·]-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="3019643472-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="3019643472-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="7301837693-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="7301837693-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2533 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>273 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>272 <p>Copyright·©·1996-2024·<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="7924119899-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="7924119899-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·394,·SHA:·4419a8fd03ae3893b662c41b6e460f32e8abf950a3ec2639c15344223e0a9177·...·]-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="9225781868-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="9225781868-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·394,·SHA:·aa5652dae5eb1c80b20f06d08c80c073b6329891bb113fac050802b3ce7c3564·...·]-2">)</span><span·class="p">.</span><span·class="w">
161 ······</span><span·class="p"·data-group-id="7924119899-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="7924119899-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="9225781868-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="9225781868-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="8914942678-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="8914942678-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="5242602667-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="5242602667-1">)</span><span·class="p">.</span><span·class="w">
168 ······</span><span·class="p"·data-group-id="8914942678-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8914942678-3">[</span><span·class="p"·data-group-id="8914942678-4">{</span><span·class="s">&quot;NR&quot;</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·107,·SHA:·864942cd60ed469cdbcf0287c914ebb944af52235f3372608e2a2c6eef0b8034·...·]-4">}</span><span·class="p">,</span><span·class="w">168 ······</span><span·class="p"·data-group-id="5242602667-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5242602667-3">[</span><span·class="p"·data-group-id="5242602667-4">{</span><span·class="s">&quot;NR&quot;</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·107,·SHA:·94fa3f4f78e8cc869f1835a75bdb86f7f66a660479972e1f098861ded228ec5a·...·]-4">}</span><span·class="p">,</span><span·class="w">
169 ············</span><span·class="p"·data-group-id="8914942678-5">{</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8914942678-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="8914942678-6">}</span><span·class="p"·data-group-id="8914942678-5">}</span><span·class="p">,</span><span·class="w"> 
170 ············</span><span·class="p"·data-group-id="8914942678-7">{</span><span·class="s">&quot;LASTNAME&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8914942678-8">{</span><span·class="ss">sql_varchar</span><span·class="p">,</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·118,·SHA:·41bdf0385b82f4a2165fd6ca7184483086c3f3135c9f57530cf9f8fb23f265c1·...·]</span><span·class="w">169 ············</span><span·class="p"·data-group-id="5242602667-5">{</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5242602667-6">{</span><span·class="ss">sql_varchar</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·143,·SHA:·f9b7b5353966e3b11c54bac770f683b2032be3ede2b6032a0d3befac3f284781·...·]</span><span·class="w">
 170 ············</span><span·class="p"·data-group-id="5242602667-7">{</span><span·class="s">&quot;LASTNAME&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5242602667-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="5242602667-8">}</span><span·class="p"·data-group-id="5242602667-7">}</span><span·class="w">
171 ············</span><span·class="p"·data-group-id="8914942678-9">{</span><span·class="s">&quot;GENDER&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8914942678-10">{</span><span·class="ss">sql_char</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·636,·SHA:·867aade2816dc7746f8e6fab98e13a171a7333dd6e4dc3d3b89b9950c851bd96·...·]-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="5242602667-9">{</span><span·class="s">&quot;GENDER&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5242602667-10">{</span><span·class="ss">sql_char</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·636,·SHA:·8d099c08e9e176c7e9b66cc09811a22bd98ce2f414a82c29c135572d48f4f099·...·]-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="7303468922-2">[</span><span·class="p"·data-group-id="7303468922-3">{</span><span·class="ss">sql_integer</span><span·class="p">,</span><span·class="p"·data-group-id="7303468922-4">[</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</[·...·truncated·by·diffoscope;·len:·344,·SHA:·9e5df3a3f8a294e9885626987a81b1f987df985da88951df213fbe9c32636a2d·...·]-3">}</span><span·class="p">,</span><span·class="w">173 ···················</span><span·class="p"·data-group-id="3805663646-2">[</span><span·class="p"·data-group-id="3805663646-3">{</span><span·class="ss">sql_integer</span><span·class="p">,</span><span·class="p"·data-group-id="3805663646-4">[</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</[·...·truncated·by·diffoscope;·len:·344,·SHA:·3a2a41f2c5a5896c887b49a15a440ad70ea952ddd2aad3bc0567e1e1fa6f7cf2·...·]-3">}</span><span·class="p">,</span><span·class="w">
174 ····················</span><span·class="p"·data-group-id="7303468922-5">{</span><span·class="p"·data-group-id="7303468922-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="7303468922-6">}</span><span·class="p">,</span><span·class="w">174 ····················</span><span·class="p"·data-group-id="3805663646-5">{</span><span·class="p"·data-group-id="3805663646-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="3805663646-6">}</span><span·class="p">,</span><span·class="w">
175 ·····························</span><span·class="p"·data-group-id="7303468922-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="3805663646-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="7303468922-7">]</span><span·class="p"·data-group-id="7303468922-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="3805663646-7">]</span><span·class="p"·data-group-id="3805663646-5">}</span><span·class="p">,</span><span·class="w">
177 ···················</span><span·class="p"·data-group-id="7303468922-8">{</span><span·class="p"·data-group-id="7303468922-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="7303468922-9">}</span><span·class="p">,</span><span·class="w">177 ···················</span><span·class="p"·data-group-id="3805663646-8">{</span><span·class="p"·data-group-id="3805663646-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="3805663646-9">}</span><span·class="p">,</span><span·class="w">
178 ·····························</span><span·class="p"·data-group-id="7303468922-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="3805663646-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="7303468922-10">]</span><span·class="p"·data-group-id="7303468922-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="3805663646-10">]</span><span·class="p"·data-group-id="3805663646-8">}</span><span·class="p">,</span><span·class="w">
180 ···················</span><span·class="p"·data-group-id="7303468922-11">{</span><span·class="p"·data-group-id="7303468922-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="7303468922-12">}</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·680,·SHA:·ff84581eb0adc51768293338386f0f058bd73d41243fad2b6fb707ca3cfb4cc0·...·]-1">)</span><span·class="p">.</span><span·class="w">180 ···················</span><span·class="p"·data-group-id="3805663646-11">{</span><span·class="p"·data-group-id="3805663646-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="3805663646-12">}</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·680,·SHA:·67642aed9831ee23c9c988af981b248caf13ba480e28ff9a5e6595b79e56668c·...·]-1">)</span><span·class="p">.</span><span·class="w">
181 ······</span><span·class="p"·data-group-id="7303468922-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="7303468922-14">}</span></code></pre><p>Fetch·all·data·in·the·table·employee</p><pre><code·class="m[·...·truncated·by·diffoscope;·len:·439,·SHA:·52330d9d03e1f1e0c2696163b9572770baa19d56ca724a1d039049ed63b03fb6·...·]-1">)</span><span·class="p">.</span><span·class="w">181 ······</span><span·class="p"·data-group-id="3805663646-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="3805663646-14">}</span></code></pre><p>Fetch·all·data·in·the·table·employee</p><pre><code·class="m[·...·truncated·by·diffoscope;·len:·439,·SHA:·34e3a16a528a5ece5f6b13239076482e9288c10dc1671a0d8e99f3b30d3440f0·...·]-1">)</span><span·class="p">.</span><span·class="w">
182 ····</span><span·class="p"·data-group-id="9539008676-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="9539008676-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:·152,·SHA:·7d6c58f9d100948083fe99820f0ba9f41336578c2007468f444102d5d7a77872·...·]-3">]</span><span·class="p">,</span><span·class="w">182 ····</span><span·class="p"·data-group-id="9326181015-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="9326181015-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:·152,·SHA:·ea8cd2f9efc5616228ff667468f12ceb40daef7fc51bdaa2635689ac7107e1ed·...·]-3">]</span><span·class="p">,</span><span·class="w">
183 ··········</span><span·class="p"·data-group-id="9539008676-4">[</span><span·class="p"·data-group-id="9539008676-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·cl[·...·truncated·by·diffoscope;·len:·69,·SHA:·e38a3e6f1e8144ff473c1ee00ccc820a3a4eeecfbebd885875bb7983d074736f·...·]-5">}</span><span·class="p">,</span><span·class="w">183 ··········</span><span·class="p"·data-group-id="9326181015-4">[</span><span·class="p"·data-group-id="9326181015-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·cl[·...·truncated·by·diffoscope;·len:·69,·SHA:·59f95ddcbf55e0425403810f460a9f399e50c655c7d33bd9c75a73cc126c3937·...·]-5">}</span><span·class="p">,</span><span·class="w">
184 ···········</span><span·class="p"·data-group-id="9539008676-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-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·6b90cf7345cc463be01fdb8734e78c7aefee43607926cc2371dc748cf8013720·...·]-6">}</span><span·class="p">,</span><span·class="w">184 ···········</span><span·class="p"·data-group-id="9326181015-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-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·86b6b8aba4e0df55505096be60e44bdb22093be36a1ec92586e87a378de2e965·...·]-6">}</span><span·class="p">,</span><span·class="w">
185 ···········</span><span·class="p"·data-group-id="9539008676-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"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·50845e04e5c93db59b8c255953b6f36279525eba7f2363dd9df5f3af746b92fb·...·]-7">}</span><span·class="p">,</span><span·class="w">185 ···········</span><span·class="p"·data-group-id="9326181015-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"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·6360ba665fb4a192873718f3d3630df094909a5283ab87f2b558bd26274c0eba·...·]-7">}</span><span·class="p">,</span><span·class="w">
186 ···········</span><span·class="p"·data-group-id="9539008676-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-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·0e77ef3a6efb6491fb884817faf99f74048a4b12d6d5467e16194bd3d2b957f7·...·]-8">}</span><span·class="p">,</span><span·class="w">186 ···········</span><span·class="p"·data-group-id="9326181015-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-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·c9b9ec6b4cc458d3ca0ccf36eda1c204dce513e1b025e65e49ab2e64c4b0bd85·...·]-8">}</span><span·class="p">,</span><span·class="w">
187 ···········</span><span·class="p"·data-group-id="9539008676-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:·20,·SHA:·11a11390a8a6242638bd9473799f29e3b712edced7739a9ecb6bfdf0225f803b·...·]-9">}</span><span·class="p">,</span><span·class="w">187 ···········</span><span·class="p"·data-group-id="9326181015-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:·20,·SHA:·a8fc9dc69c5eb796f873bed92bc176e6c358f1b8d93b3b0d7b679fc77e64cb86·...·]-9">}</span><span·class="p">,</span><span·class="w">
188 ···········</span><span·class="p"·data-group-id="9539008676-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"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·158d23839d2038b2377cffc7942ec34e038e679541e6c8bf4abcd0a6a48e16dd·...·]-10">}</span><span·class="p">,</span><span·class="w">188 ···········</span><span·class="p"·data-group-id="9326181015-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"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·32be423758e5c901fc12caa765ed1c63009984d215cfa0511b66201720ca543a·...·]-10">}</span><span·class="p">,</span><span·class="w">
189 ···········</span><span·class="p"·data-group-id="9539008676-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"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·87bcc0da7635877027292cca6d187cdd3e65a9fa04fa3ef98d28358902e372e5·...·]-11">}</span><span·class="p">,</span><span·class="w">189 ···········</span><span·class="p"·data-group-id="9326181015-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"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·665b9d4c65db49bae07e48f207edaa5762a04eb8dd16364eb320de0c86cbd3d9·...·]-11">}</span><span·class="p">,</span><span·class="w">
190 ···········</span><span·class="p"·data-group-id="9539008676-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:·151,·SHA:·48be9008d06dc2b57447f22646b772893cb6c26761e6e3c812ba26afb2fafc6a·...·]-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="9326181015-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:·151,·SHA:·5c3b4024b9a5fb5ac6a82788d741c5acd86936a51cdd491e517e4af8506e4aee·...·]-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="5527945325-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="5527945325-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="1477142269-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="1477142269-1">)</span><span·class="p">.</span><span·class="w">
192 ······</span><span·class="p"·data-group-id="5527945325-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="5527945325-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:·2e3a4f026faf203412b67c89e3ac7efe55857ae928f9be8fc55ce108781f9472·...·]-1">)</span><span·class="p">.</span><span·class="w">192 ······</span><span·class="p"·data-group-id="1477142269-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="1477142269-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:·fb4458210984ec250944424d9e9f4a541be02684bcd2dccad6d7acadfb061669·...·]-1">)</span><span·class="p">.</span><span·class="w">
193 ······</span><span·class="p"·data-group-id="1719529835-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="1719529835-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:·5527b3f6e4446dc1543b7160fec307eeacd264cdecf9832d83db466026fa117a·...·]-1">)</span><span·class="p">.</span><span·class="w">193 ······</span><span·class="p"·data-group-id="8383352937-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="8383352937-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:·922305b7ea495a976bd05bb8508dc3d3f316ba9bea274f06209b4c40c3d56263·...·]-1">)</span><span·class="p">.</span><span·class="w">
194 ······</span><span·class="p"·data-group-id="7370955243-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="7370955243-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:·652,·SHA:·fe550fa45b067ebb3863f76e030e19d346dd90f8d14a2d1a461e84d6ed7ee64f·...·]-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="1821200810-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="1821200810-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:·652,·SHA:·9c040555ca4f3a7b8f079b2fa2ff28397717b59bcba223b7e2b61e631dc5d473·...·]-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="8074466469-1">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="8074466469-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="6528902689-1">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="6528902689-1">)</span><span·class="p">.</span><span·class="w">
196 ······</span><span·class="p"·data-group-id="8074466469-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="8074466469-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:·774798ce65738b746d70dc28842be7447b660e17af11c4bcca02a869202bca37·...·]-1">)</span><span·class="p">.</span><span·class="w">196 ······</span><span·class="p"·data-group-id="6528902689-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="6528902689-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:·f1a335105b283644c6a8087f18d08017c7889e6f77500947c81cc2471f7c0881·...·]-1">)</span><span·class="p">.</span><span·class="w">
197 ······</span><span·class="p"·data-group-id="0942023573-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="0942023573-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:·1057,·SHA:·78492d3711808cf6be65187bc6302814185912b3527e7a07092d07371f347e56·...·]-1">)</span><span·class="p">.</span><span·class="w">197 ······</span><span·class="p"·data-group-id="8163845958-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="8163845958-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:·1057,·SHA:·b2f462837ec1e5fcec4f95b87c03c5c5218348bd49af0715ecca546f2c868b5c·...·]-1">)</span><span·class="p">.</span><span·class="w">
198 ······</span><span·class="p"·data-group-id="4777493607-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="4777493607-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:·11f896648ea941831cd57d27c52ed259c9579f9f86349432b5a7f017d526019c·...·]-1">)</span><span·class="p">.</span><span·class="w">198 ······</span><span·class="p"·data-group-id="6985893371-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="6985893371-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:·acdbaa2d6344ab5ed3cdbcedcc2d17f463be7dea91d15351e17101038ffe14ae·...·]-1">)</span><span·class="p">.</span><span·class="w">
199 ······</span><span·class="p"·data-group-id="9976705214-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="9976705214-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:·2fd620468e77cc8dcc874cfcb01d97d7b3fe337d604ad4452259848c27ab50ed·...·]-1">)</span><span·class="p">.</span><span·class="w">199 ······</span><span·class="p"·data-group-id="2903892983-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="2903892983-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:·78803b50374bb607965d3511d27e59bf0a7d75aae9a0d85f5ce5220285175a19·...·]-1">)</span><span·class="p">.</span><span·class="w">
200 ·····</span><span·class="p"·data-group-id="0824452351-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="0824452351-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:·6d07e5628edc693739e2471031a548a888104809bafc54ab8e617586a9da385f·...·]-3">]</span><span·class="p">,</span><span·class="w">200 ·····</span><span·class="p"·data-group-id="0203773225-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="0203773225-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:·c9dce34e7c190c6e6f55cdb2b4cf196facc33c263437ca548b9e1d86e8d9bd18·...·]-3">]</span><span·class="p">,</span><span·class="w">
201 ··········</span><span·class="p"·data-group-id="0824452351-4">[</span><span·class="p"·data-group-id="0824452351-5">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="0824452351-5">}</span><span·class="p">,</span><span·class="w">201 ··········</span><span·class="p"·data-group-id="0203773225-4">[</span><span·class="p"·data-group-id="0203773225-5">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="0203773225-5">}</span><span·class="p">,</span><span·class="w">
202 ···········</span><span·class="p"·data-group-id="0824452351-6">{</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="0824452351-6">}</span><span·class="p">,</span><span·class="w">202 ···········</span><span·class="p"·data-group-id="0203773225-6">{</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="0203773225-6">}</span><span·class="p">,</span><span·class="w">
203 ···········</span><span·class="p"·data-group-id="0824452351-7">{</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="0824452351-7">}</span><span·class="p">,</span><span·class="w">203 ···········</span><span·class="p"·data-group-id="0203773225-7">{</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="0203773225-7">}</span><span·class="p">,</span><span·class="w">
204 ···········</span><span·class="p"·data-group-id="0824452351-8">{</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0824452351-8">}</span><span·class="p">,</span><span·class="w">204 ···········</span><span·class="p"·data-group-id="0203773225-8">{</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0203773225-8">}</span><span·class="p">,</span><span·class="w">
205 ···········</span><span·class="p"·data-group-id="0824452351-9">{</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="0824452351-9">}</span><span·class="p">,</span><span·class="w">205 ···········</span><span·class="p"·data-group-id="0203773225-9">{</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="0203773225-9">}</span><span·class="p">,</span><span·class="w">
206 ···········</span><span·class="p"·data-group-id="0824452351-10">{</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="0824452351-10">}</span><span·class="p"·data-group-id="0824452351-4">]</span><span·class="p"·data-group-id="082445[·...·truncated·by·diffoscope;·len:·4,·SHA:·9551dc186746041a33905ed74c560d78983eba5d62685b13439eeaadfb00926d·...·]-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="0203773225-10">{</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="0203773225-10">}</span><span·class="p"·data-group-id="0203773225-4">]</span><span·class="p"·data-group-id="020377[·...·truncated·by·diffoscope;·len:·4,·SHA:·283fb243c9b850e793642fabf71dc861907f87eaf0033267fe3fee0beb04cc76·...·]-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="1884680182-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="7307235344-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="1884680182-1">)</span><span·class="p">.</span><span·class="w">208 ······ORDER·BY·FIRSTNAME&quot;</span><span·class="p"·data-group-id="7307235344-1">)</span><span·class="p">.</span><span·class="w">
209 ····</span><span·class="p"·data-group-id="1884680182-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="1884680182-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:·76719a5587e4bfb5b50b44baddb7886b0daf35dcd9235bb2e7dc3fa48c85eb5a·...·]-3">]</span><span·class="p">,</span><span·class="w">209 ····</span><span·class="p"·data-group-id="7307235344-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="7307235344-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:·578691031116d381b513bd371532be16285cf6a5c70deeec1a2c0e545f3d3152·...·]-3">]</span><span·class="p">,</span><span·class="w">
210 ··········</span><span·class="p"·data-group-id="1884680182-4">[</span><span·class="p"·data-group-id="1884680182-5">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="1884680182-5">}</span><span·class="p">,</span><span·class="w">210 ··········</span><span·class="p"·data-group-id="7307235344-4">[</span><span·class="p"·data-group-id="7307235344-5">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="7307235344-5">}</span><span·class="p">,</span><span·class="w">
211 ···········</span><span·class="p"·data-group-id="1884680182-6">{</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="1884680182-6">}</span><span·class="p">,</span><span·class="w">211 ···········</span><span·class="p"·data-group-id="7307235344-6">{</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="7307235344-6">}</span><span·class="p">,</span><span·class="w">
212 ···········</span><span·class="p"·data-group-id="1884680182-7">{</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="1884680182-7">}</span><span·class="p">,</span><span·class="w">212 ···········</span><span·class="p"·data-group-id="7307235344-7">{</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="7307235344-7">}</span><span·class="p">,</span><span·class="w">
213 ···········</span><span·class="p"·data-group-id="1884680182-8">{</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="1884680182-8">}</span><span·class="p">,</span><span·class="w">213 ···········</span><span·class="p"·data-group-id="7307235344-8">{</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="7307235344-8">}</span><span·class="p">,</span><span·class="w">
214 ···········</span><span·class="p"·data-group-id="1884680182-9">{</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="1884680182-9">}</span><span·class="p">,</span><span·class="w">214 ···········</span><span·class="p"·data-group-id="7307235344-9">{</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="7307235344-9">}</span><span·class="p">,</span><span·class="w">
215 ···········</span><span·class="p"·data-group-id="1884680182-10">{</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="1884680182-10">}</span><span·class="p"·data-group-id="1884680182-4">]</span><span·class="p"·data-group-id="18846[·...·truncated·by·diffoscope;·len:·5,·SHA:·ebc6f27c760dd1d4512bbebc772884c748f015c9d2b172425714f2c4075b4241·...·]-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="7307235344-10">{</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="7307235344-10">}</span><span·class="p"·data-group-id="7307235344-4">]</span><span·class="p"·data-group-id="73072[·...·truncated·by·diffoscope;·len:·5,·SHA:·84412e4c3f4477a8fda21cc497daa5b1e5c4dfde11c76e9d5f7b9b27c637f5c3·...·]-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="2923179823-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="2923179823-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="2804436923-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="2804436923-1">)</span><span·class="p">.</span><span·class="w">
218 ······</span><span·class="p"·data-group-id="2923179823-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="2923179823-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="2804436923-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="2804436923-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="8734673434-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8734673434-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:·dbbbb5d3838bfd93e0d1eaf6088be4133b42333d3055d3bd8265dca479134530·...·]-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="5617486670-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5617486670-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:·868e13837674435f7cf9480d89547e2e591561e9c2165d522f26428fb9b28c58·...·]-1">)</span><span·class="p">.</span><span·class="w">
221 ····</span><span·class="p"·data-group-id="8734673434-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="8734673434-4">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data-group-id="8734673434-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="8734673434-5">[</span><span·class="p"·data-group-id="8734673434-6">{</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="8734673434-6">}</span><span·class="p">,</span><span·class="p"·data-group-id="8734673434-7">{</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="8734673434-7">}</span><span·class="p">,</span><span·class="p"·data-group-id="8734673434-8">{</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="8734673434-8">}</span><span·class="p"·data-group-id="8734673434-5">]</span><span·class="p"·data-group-id="8734673434-3">}</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">19</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="4063041531-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">next</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="4063041531-1">)</span><span·class="p">.</span><span·class="w"> 
222 ······</span><span·class="p"·data-group-id="4063041531-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="4063041531-3">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&[·...·truncated·by·diffoscope;·len:·1390,·SHA:·f2d605456fd4f99bddb7e0be2d0bb74b73f11e71f38e79f5c638e276abf31611·...·]-1">)</span><span·class="p">.</span><span·class="w">221 ····</span><span·class="p"·data-group-id="5617486670-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="5617486670-4">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&qu[·...·truncated·by·diffoscope;·len:·1426,·SHA:·85f7f3f7919ad68d084b4bc444eba18013c5b2a61ca0c225ca9cd6c35894d7dc·...·]-1">)</span><span·class="p">.</span><span·class="w">
 222 ······</span><span·class="p"·data-group-id="1855075138-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="1855075138-3">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data-group-id="1855075138-3">]</span><span·class="p">,</span><span·class="p"·data-group-id="1855075138-4">[</span><span·class="p"·data-group-id="1855075138-5">{</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="1855075138-5">}</span><span·class="p">,</span><span·class="p"·data-group-id="1855075138-6">{</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="1855075138-6">}</span><span·class="p"·data-group-id="1855075138-4">]</span><span·class="p"·data-group-id="1855075138-2">}</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">20</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="5344811026-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5344811026-2">{</span><span·class="ss">absolute</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="5344811026-2">}</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="5344811026-1">)</span><span·class="p">.</span><span·class="w">
223 ······</span><span·class="p"·data-group-id="6298330026-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="6298330026-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:·cc8cb38251d28dbc5b7c71c9a28a19045d580536e2e2283637375959ef256608·...·]-1">)</span><span·class="p">.</span><span·class="w">223 ······</span><span·class="p"·data-group-id="5344811026-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="5344811026-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:·fcd488f780ba4fa414c0fff2139b50b8f076a77835c5b8123db68f054b9ebe05·...·]-1">)</span><span·class="p">.</span><span·class="w">
224 ····</span><span·class="p"·data-group-id="8212098394-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="8212098394-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:·c260df94b42517cd3c9497f9c95779ac8796178c4c491609c5248eca12768074·...·]-1">)</span><span·class="p">.</span><span·class="w">224 ····</span><span·class="p"·data-group-id="2415696577-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="2415696577-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:·e344bba497b40b6d984dfc096173e4e50719ce77d9d39b3d892fa8987f94d307·...·]-1">)</span><span·class="p">.</span><span·class="w">
225 ······</span><span·class="p"·data-group-id="7857991666-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="7857991666-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:·21,·SHA:·a1738a16a4f354fe9b0b5d0d92104bfea681c9f76366c2e5c8eb6858ee73a487·...·]-4">]</span><span·class="p">,</span><span·class="w">225 ······</span><span·class="p"·data-group-id="9803449834-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="9803449834-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:·21,·SHA:·b1feb5041d9ab803b2c3c5c57786e0c122c51b831574861421af6618dedd017f·...·]-4">]</span><span·class="p">,</span><span·class="w">
226 ················</span><span·class="p"·data-group-id="7857991666-5">[</span><span·class="p"·data-group-id="7857991666-6">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="7857991666-6">}</span><span·class="p">,</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·1082,·SHA:·61f3ac0771c5c9bd3246f636dc2970351d220ae68d3c55a5569c43aeb40690c6·...·]-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">226 ················</span><span·class="p"·data-group-id="9803449834-5">[</span><span·class="p"·data-group-id="9803449834-6">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9803449834-6">}</span><span·class="p">,</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·1082,·SHA:·f4eb1809179ce37345558cc4f365df08b52a884693df8b8e7c1ebf8f66d87f5d·...·]-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="3631762857-2">[</span><span·class="p"·data-group-id="3631762857-3">{</span><span·class="p"·data-group-id="3631762857-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-gr[·...·truncated·by·diffoscope;·len:·367,·SHA:·b95d6d40f54fb3e4d5a9aa52198cbcedf8cc6259d1e088c38995c41c20177a1f·...·]-1">)</span><span·class="p">.</span><span·class="w">227 ······</span><span·class="p"·data-group-id="9109254588-2">[</span><span·class="p"·data-group-id="9109254588-3">{</span><span·class="p"·data-group-id="9109254588-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-gr[·...·truncated·by·diffoscope;·len:·367,·SHA:·0e0635f38e6530fe3eddc7d28e9c81b827f3080b016dc7584f79cf4185f35ecc·...·]-1">)</span><span·class="p">.</span><span·class="w">
228 ······</span><span·class="p"·data-group-id="3631762857-6">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="3631762857-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:·7e0078935fccb207d6bebfa7f3589213a558eb0e65a026883d462033fabfef22·...·]-7">]</span><span·class="p">,</span><span·class="w">228 ······</span><span·class="p"·data-group-id="9109254588-6">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="9109254588-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:·4d5799a43f29f6f48f3d9f8c1e2725200bef6a245c6f8d3f86651027e2a7fbc0·...·]-7">]</span><span·class="p">,</span><span·class="w">
229 ················</span><span·class="p"·data-group-id="3631762857-8">[</span><span·class="p"·data-group-id="3631762857-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:·39d7f3cd84ab0ff633f048966ec5e4e69c277a9aebb5a69d35023902dfc401db·...·]-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="9109254588-8">[</span><span·class="p"·data-group-id="9109254588-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:·3865ec149c670e897e913c30bb46c0f8b5c37a21beffa6f13587790699ecfdec·...·]-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="0400079811-1">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="0400079811-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="8079439959-1">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="8079439959-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>286 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>215 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1045 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1848 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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
623 B
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/.build
    
Offset 16, 15 lines modifiedOffset 16, 15 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-97D4011A.js23 dist/search_data-AD845681.js
24 dist/sidebar_items-1750AF81.js24 dist/sidebar_items-1750AF81.js
25 index.html25 index.html
26 memsup.html26 memsup.html
27 notes.html27 notes.html
28 nteventlog.html28 nteventlog.html
29 os_mon_app.html29 os_mon_app.html
30 os_sup.html30 os_sup.html
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>222 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>646 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>576 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>698 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1028 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>342 <p>Copyright·©·1996-2024·<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
50.2 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/os_mon.epub
2.66 KB
zipinfo {}
Max HTML report size reached
46.2 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>208 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>423 <p>Copyright·©·1996-2024·<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.75 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/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-97D4011A.js"></script>124 <script·src="dist/search_data-AD845681.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>195 <p>Copyright·©·1996-2024·<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="9469653737-1">[</span><span·class="mi">0</span><span·class="o">-</span><span·class="mi">9</span><span·class="p"·data-group-id="9469653737-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="6921676590-1">[</span><span·class="mi">0</span><span·class="o">-</span><span·class="mi">9</span><span·class="p"·data-group-id="6921676590-1">]</span><span·class="w">
  
177 </span><span·class="p"·data-group-id="9469653737-2">{</span><span·class="n">D</span><span·class="p"·data-group-id="9469653737-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="6921676590-2">{</span><span·class="n">D</span><span·class="p"·data-group-id="6921676590-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="9469653737-3">{</span><span·class="ss">token</span><span·class="p">,</span><span·class="p"·data-group-id="9469653737-4">{</span><span·class="ss">integer</span><span·class="p">,</span><span·class="n">TokenLine</span><span·class="p">,</span><span·class="nf">[·...·truncated·by·diffoscope;·len:·255,·SHA:·68126d0b0923a499a2cb61e7bcececa44d212990fe802c0f2037a7649d93788b·...·]-3">}</span><span·class="p">.</span><span·class="w">178 ··</span><span·class="p"·data-group-id="6921676590-3">{</span><span·class="ss">token</span><span·class="p">,</span><span·class="p"·data-group-id="6921676590-4">{</span><span·class="ss">integer</span><span·class="p">,</span><span·class="n">TokenLine</span><span·class="p">,</span><span·class="nf">[·...·truncated·by·diffoscope;·len:·255,·SHA:·590769e373691840c4d7a40ca5d9e2dc0b30da78cffd65e71c11f00a6726ea61·...·]-3">}</span><span·class="p">.</span><span·class="w">
  
179 </span><span·class="p"·data-group-id="9469653737-6">{</span><span·class="n">D</span><span·class="p"·data-group-id="9469653737-6">}</span><span·class="o">+</span><span·class="err">\</span><span·class="p">.</span><span·class="p"·data-group-id="9469653737-7">{</span><span·class="n">D</span><span·[·...·truncated·by·diffoscope;·len:·756,·SHA:·5dc3c7c4c29185f34ecb240b2282eea7c1b3966f661e15c1ba1e61cc9cf481e6·...·]-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="6921676590-6">{</span><span·class="n">D</span><span·class="p"·data-group-id="6921676590-6">}</span><span·class="o">+</span><span·class="err">\</span><span·class="p">.</span><span·class="p"·data-group-id="6921676590-7">{</span><span·class="n">D</span><span·[·...·truncated·by·diffoscope;·len:·756,·SHA:·1702e95d5d578e7e6dfc8cecaf783589f474574a451f3c2de50cd7a349e8bb31·...·]-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="9469653737-12">{</span><span·class="ss">token</span><span·class="p">,</span><span·class="p"·data-group-id="9469653737-13">{</span><span·class="nb">float</span><span·class="p">,</span><span·class="n">TokenLine</span><span·class="p">,</span><span·class="nf">[·...·truncated·by·diffoscope;·len:·256,·SHA:·01ef28729a42d7084214215a7c4698650e0b129b426a3884fcfa57afc35a59f0·...·]-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="6921676590-12">{</span><span·class="ss">token</span><span·class="p">,</span><span·class="p"·data-group-id="6921676590-13">{</span><span·class="nb">float</span><span·class="p">,</span><span·class="n">TokenLine</span><span·class="p">,</span><span·class="nf">[·...·truncated·by·diffoscope;·len:·256,·SHA:·fdb717c9a950309c7b87f2f6140387a1a7c9866cd4567fba50c3c0646e5838bd·...·]-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="0053215011-1">(</span><span·class="n">InFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0053215011-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:·c11fe9b47a2bc52b142080eb40cacb8f7154a782117f22e4adf0f956dbaf4f78·...·]-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="6132815729-1">(</span><span·class="n">InFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6132815729-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:·2f36b1783af73907e11a09d3dee5c654d1a7433363e70ab65d6a71454529fd92·...·]-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="2302897825-1">(</span><span·class="n">InFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2302897825-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:·6442fe38db871b178ce24ca3b1742d4dff3cd0a9d58e36c2c5fc3886e4d97fdc·...·]-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="0211588372-1">(</span><span·class="n">InFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0211588372-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:·4160e18a762daa5871039976a937935762cb0c9f3ec3ef0151ddbdbad14eb179·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>997 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>735 <p>Copyright·©·1996-2024·<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.28 KB
./usr/share/doc/erlang-doc/html/lib/parsetools-2.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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="7661608198-1">[</span><span·class="p"·data-group-id="7661608198-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="7661608198-2">}</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·1016,·SHA:·e045ec6b7cb49cbcbe549735ca44eefc42385cbb33795bdbfb5f6324b82bee2a·...·]-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="5309794939-1">[</span><span·class="p"·data-group-id="5309794939-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="5309794939-2">}</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·1016,·SHA:·7100a9777bf14a61de731d87f2a07da4a2be99ccf76f297cd26974a47c168201·...·]-6">}</span><span·class="p">,</span><span·class="w">
166 ·</span><span·class="p"·data-group-id="7661608198-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="7661608198-7">}</span><span·class="p"·data-group-id="7661608198-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="5309794939-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="5309794939-7">}</span><span·class="p"·data-group-id="5309794939-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="0888210629-1">[</span><span·class="p"·data-group-id="0888210629-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="0888210629-2">}</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·920,·SHA:·454e63d3cf50ad9c2ce45f69ece5f1f324e2496923874c5fea8fcb0c9e65aa47·...·]-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="5698269252-1">[</span><span·class="p"·data-group-id="5698269252-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="5698269252-2">}</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·920,·SHA:·bd11fbc68e011f3fd65369e031aa20adc05fd117ce2b6c31dc3203522496969a·...·]-5">}</span><span·class="p">,</span><span·class="w">
237 ·</span><span·class="p"·data-group-id="0888210629-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="0888210629-6">}</span><span·class="p"·data-group-id="0888210629-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="5698269252-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="5698269252-6">}</span><span·class="p"·data-group-id="5698269252-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="5585665075-1">{</span><span·class="ss">cons</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5585665075-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:·18b9ea83f32a13d4cc68aeb4091b25723af50d3330c46715068439ebdbd35f30·...·]-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="6156853529-1">{</span><span·class="ss">cons</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6156853529-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:·270dca03cd23be5f0ff0750c9d9d7d4b79cb2b50ad0083c3ba198316d6674040·...·]-4">}</span><span·class="p">,</span><span·class="w">
250 ····························</span><span·class="p"·data-group-id="5585665075-5">{</span><span·class="ss">cons</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5585665075-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:·94f70d04429eb0ef234036eafc66ee978a7aeb404a85eef9a21e1de9b1718636·...·]-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="6156853529-5">{</span><span·class="ss">cons</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6156853529-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:·87d750a000e09f4927282c02670c6acba51e1fc836710d24ee6b66d9ddd8db11·...·]-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="5238057017-1">(</span><span·class="n">Grammarfile</span><span·class="p"·data-group-id="5238057017-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="7362035130-1">(</span><span·class="n">Grammarfile</span><span·class="p"·data-group-id="7362035130-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="3415324143-1">(</span><span·class="nc">myscanner</span><span·class="p">:</span><span·class="nf">scan</span><span·class="p"·data-group-id="3415324143-2">(</span><span·class="n">Inport</span><span·class="p"·data-group-id="3415324143-2">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·5c10c56fb31f045df2392e7547ea91ff9bffee91fcfee9ee34368ef29834ad4b·...·]-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="9009153042-1">(</span><span·class="nc">myscanner</span><span·class="p">:</span><span·class="nf">scan</span><span·class="p"·data-group-id="9009153042-2">(</span><span·class="n">Inport</span><span·class="p"·data-group-id="9009153042-2">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·be0774f9eb650ff42efbf7f9f90b317fb19b0bce3b2a1dfc195147924f12890d·...·]-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="3265373054-1">(</span><span·class="p"·data-group-id="3265373054-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="3265373054-2">}</span><span·class="p"·data-group-id="3265373054-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="3265373054-3">(</span><span·class="p"·data-group-id="3265373054-4">{</span><span·class="n">Mod</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·386,·SHA:·71e1bb05cecbb971f2a8054990e2f3ef3617a5e178bb3fa01a9e8614329a2563·...·]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="4740746224-1">(</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·258,·SHA:·b3c049db69338cb26a90bfe1ca8960cc34d67b8d7f081dd3f7398a86e2d07298·...·]
 288 </span><span·class="nc">myparser</span><span·class="p">:</span><span·class="nf">parse_and_scan</span><span·class="p"·data-group-id="4740746224-3">(</span><span·class="p"·data-group-id="4740746224-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="4740746224-4">}</span><span·class="p"·data-group-id="4740746224-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="9888380296-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="9888380296-1">}</span><span·class="w">293 following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1751198268-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="1751198268-1">}</span><span·class="w">
294 </span><span·class="p"·data-group-id="9888380296-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="9888380296-2">}</span><span·class="w">294 </span><span·class="p"·data-group-id="1751198268-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="1751198268-2">}</span><span·class="w">
295 </span><span·class="p"·data-group-id="9888380296-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="9888[·...·truncated·by·diffoscope;·len:·6,·SHA:·281ba0d71b042595a16465642dc4b68a03fa332b70eeee9d92051461a873b384·...·]-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="1751198268-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="1751[·...·truncated·by·diffoscope;·len:·6,·SHA:·d88a2b7458876081611b3d753dc85f0bdb20de322a793e44cd7ad027f97e64eb·...·]-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="0259600581-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="0259600581-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="0540235699-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="0540235699-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="0259600581-2">{</span><span·class="ss">rule</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0259600581-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·79,·SHA:·db84f9678f32ad63446931df0383247252007e2173ff6839337efcf8ff59014f·...·]-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="0540235699-2">{</span><span·class="ss">rule</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0540235699-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·79,·SHA:·3966605b50449897b7f17a7af89a491047597f15ac9f970ad1c62d456d798b85·...·]-3">]</span><span·class="p">,</span><span·class="w">
347 ········</span><span·class="ss">&#39;$4&#39;</span><span·class="p"·data-group-id="0259600581-2">}</span><span·class="p">.</span><span·class="w">347 ········</span><span·class="ss">&#39;$4&#39;</span><span·class="p"·data-group-id="0540235699-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="0259600581-4">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0259600581-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="0540235699-4">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0540235699-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="0259600581-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="0259600581-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="0540235699-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="0540235699-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="0259600581-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="0259600581-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="0540235699-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="0540235699-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="0259600581-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="0540235699-7">{</span><span·class="ss">erlang_code</span><span·class="p">,</span><span·class="w">
353 ·················</span><span·class="p"·data-group-id="0259600581-8">[</span><span·class="p"·data-group-id="0259600581-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:·158,·SHA:·80182767b903892fa4e81468b125c58ee48f51e705277ce0abdebd378cf74719·...·]-7">}</span><span·class="p">.</span><span·class="w">353 ·················</span><span·class="p"·data-group-id="0540235699-8">[</span><span·class="p"·data-group-id="0540235699-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:·158,·SHA:·9b53a904dd339b17324db7d95d0e0ce6b4f4cf8526efb50eb3d57fce7c5b003e·...·]-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="0259600581-10">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0259600581-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="0540235699-10">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0540235699-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="0259600581-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="0259600581-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="0540235699-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="0540235699-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="0259600581-12">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0259600581-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="0540235699-12">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0540235699-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="0259600581-13">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0259600581-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="0540235699-13">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0540235699-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="0259600581-14">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0259600581-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="0540235699-14">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0540235699-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="0259600581-15">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0259600581-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="0540235699-15">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0540235699-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="0259600581-16">{</span><span·class="nf">value_of</span><span·class="p"·data-group-id="0259600581-17">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0259600581-17">)</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·206,·SHA:·37ea43063f56183c0630fb284bd97f73d766f74cb171905fe717394200838a1d·...·]-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="0540235699-16">{</span><span·class="nf">value_of</span><span·class="p"·data-group-id="0540235699-17">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0540235699-17">)</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·206,·SHA:·5da2c43fd0865de38da2089510c1bf06e15508adb6421a909873013a9d4b3db1·...·]-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="0259600581-19">{</span><span·class="nf">value_of</span><span·class="p"·data-group-id="0259600581-20">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0259600581-20">)</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·206,·SHA:·b722cd9b98f68bd4fb7d7b1e95e9b322f53fee0b243cf3cfa1e12adfa0c00ae1·...·]-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="0540235699-19">{</span><span·class="nf">value_of</span><span·class="p"·data-group-id="0540235699-20">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0540235699-20">)</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·206,·SHA:·d0ef14239a033436227515a4a4f64c0e048de88701a879f1f32990f6ce52ec03·...·]-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="0259600581-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="0259600581-23">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·69,·SHA:·1fd744988c892ab0b919aeb50679dc87c445e155b34cf89f4c407fa458ec0c5b·...·]-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="0540235699-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="0540235699-23">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·69,·SHA:·77eb63df5219d258ee723dafa15105534f42c75846736010c40dbbadf778acd4·...·]-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="0259600581-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="0259600581-25">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·65,·SHA:·20d3f6aa5a5455f799dec1767ed58e25a1b93acd8ba98ebed6ad0509563b833e·...·]-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="0540235699-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="0540235699-25">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·65,·SHA:·f05a156aac4e5d44bca38d2b0ded822a68e439ee6643ce970eefdc7ea56bbfde·...·]-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="0259600581-26">(</span><span·class="n">Token</span><span·class="p"·data-group-id="0259600581-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="0540235699-26">(</span><span·class="n">Token</span><span·class="p"·data-group-id="0540235699-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="0259600581-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="0259600581-27">)</span><span·class="p">.</span><span·class="w">372 ····</span><span·class="nf">element</span><span·class="p"·data-group-id="0540235699-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="0540235699-27">)</span><span·class="p">.</span><span·class="w">
373 </span><span·class="nf">line_of</span><span·class="p"·data-group-id="0259600581-28">(</span><span·class="n">Token</span><span·class="p"·data-group-id="0259600581-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="0540235699-28">(</span><span·class="n">Token</span><span·class="p"·data-group-id="0540235699-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="0259600581-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="0259600581-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="0540235699-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="0540235699-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-E998F0E5.js21 dist/search_data-118C23D3.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1306 <p>Copyright·©·1996-2024·<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
384 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
47.6 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="4343073341-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="43430[·...·truncated·by·diffoscope;·len:·58,·SHA:·53873ac6cbbeafab0ee304e899c68d55b7f2a1abc4814434ffe5db5b25a57aa3·...·]-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="0796970963-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="07969[·...·truncated·by·diffoscope;·len:·58,·SHA:·baab4956ffa99caecd40386a27d71fa75ca80c87f4ad64c3f4de2cd0f5f4a29f·...·]-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="4343073341-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:·3c31c9e44bf93c9548d7eaa0e6624ffd3f81fe3f4600fa14555c007141badc65·...·]-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="0796970963-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:·5a43d11e37049473e844e47b7352d5d4dcf2ee479e3a15d92ce3b0e27351292c·...·]-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3328 ·············</span><span·class="p"·data-group-id="4343073341-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="4343073341-8">{</span><span·class="p"·data-group-id="43[·...·truncated·by·diffoscope;·len:·61,·SHA:·223f11f48b05d00fc5c9222db59c40a569c1cc841ffb753a71029c6ace56859b·...·]-7">}</span><span·class="p">,</span><span·class="w">3328 ·············</span><span·class="p"·data-group-id="0796970963-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="0796970963-8">{</span><span·class="p"·data-group-id="07[·...·truncated·by·diffoscope;·len:·61,·SHA:·76336a5515018bea9d8275175305a10956c2c7496978410c87375d9a5beb3636·...·]-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="4343073341-9">(</span><span·class="p"·data-group-id="4343073341-9">)</span><span·class="p"·data-group-id="4343073341-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="0796970963-9">(</span><span·class="p"·data-group-id="0796970963-9">)</span><span·class="p"·data-group-id="0796970963-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3330 ··</span><span·class="p"·data-group-id="4343073341-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:·24ef7384dbec4e4bd0c7838751d0aeb235ecf58f3eb5b606757e1d7457d47122·...·]-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3330 ··</span><span·class="p"·data-group-id="0796970963-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:·818dc19c17089e5192f40b8eb818463227971354bb0bc33bb8ebae2d5a693cc6·...·]-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3331 ··</span><span·class="p"·data-group-id="4343073341-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:·b6086743aec2af2db0908ec05579cf35cdc1dbaeb1c85897a7b1bed7bf38001d·...·]-12">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3331 ··</span><span·class="p"·data-group-id="0796970963-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:·aca38d842668a5f45944934dda63124bace7f0a45a857b0d2b9064d92f0539fc·...·]-12">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3332 ··</span><span·class="p"·data-group-id="4343073341-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:·eb90c85acf30d0db8e827d41cc9a22b59897178a12cfafe9fb3b6d454dfc579f·...·]-14">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3332 ··</span><span·class="p"·data-group-id="0796970963-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:·9a8599592b246a73d0b11696945056390099d35ca589b4b67b6a2cdacdd7a8f3·...·]-14">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3333 ··</span><span·class="p"·data-group-id="4343073341-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:·3a1b03643d47950e42bb8ec22e9a672bd04cbfe919fc7dfc884c51bb8dd723b8·...·]-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="0796970963-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:·a986c1958035a9912df50fba82db5fcfe599a310318b8ef43829868ada6f9580·...·]-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="8461260243-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="8461260243-2">(</span><span·class="p"·data-group-id="8461260243-2">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">FQDN</span><span·class="p">:</span><span·class="p">:</span><span·class="nf">string</span><span·class="p"·data-group-id="8461260243-3">(</span><span·class="p"·data-group-id="8461260243-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="8461260243-4">{</span><span·class="ss">dNSName</span><span·class="p">,</span><span·class="nf">string</span><span·class="p"·data-group-id="8461260243-5">(</span><span·class="p"·data-group-id="8461260243-5">)</span><span·class="p"·data-group-id="8461260243-4">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="8461260243-6">{</span><span·class="ss">uniformResourceIdentifier</span><span·class="p">,</span><span·class="nf">string</span><span·class="p"·data-group-id="8461260243-7">(</span><span·class="p"·data-group-id="8461260243-7">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w"> 
3500 ·················</span><span·class="p"·data-group-id="8461260243-8">{</span><span·class="ss">iPAddress</span><span·class="p">,</span><span·class="nf">list</span><span·class="p"·data-group-id="8461260243-9">(</span><span·class="nf">byte</span><span·class="[·...·truncated·by·diffoscope;·len:·1111,·SHA:·6eb790a3cc1ac3aa758b522010cebc864a5a302ee0fccc2f76b0dfb9f0124a4c·...·]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="7352479195-1[·...·truncated·by·diffoscope;·len:·555,·SHA:·6a9122fa0b0334fb3fab2dd512377096370ae29cc3561165f7ffe6b9049f69ef·...·]
 3499 ····</span><span·class="n">PresentedId</span><span·class="p">:</span><span·class="p">:</span><span·class="p"·data-group-id="7352479195-4">{</span><span·class="ss">dNSName</span><span·class="p">,</span><span·class="nf">string</span><span·class="p"·data-group-id="7352479195-5">(</span><span·class="p"·data-group-id="7352479195-5">)</span><span·class="p"·data-group-id="7352479195-4">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="7352479195-6">{</span><span·class="ss">uniformResourceIdentifier</span><span·class="p">,</span><span·class="nf">string</span><span·class="p"·data-group-id="7352479195-7">(</span><span·class="p"·data-group-id="7352479195-7">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
 3500 ·················</span><span·class="p"·data-group-id="7352479195-8">{</span><span·class="ss">iPAddress</span><span·class="p">,</span><span·class="nf">list</span><span·class="p"·data-group-id="7352479195-9">(</span><span·class="nf">byte</span><span·class="p"·data-group-id="7352479195-10">(</span><span·class="p"·data-group-id="7352479195-10">)</span><span·class="p"·data-group-id="7352479195-9">)</span><span·class="p"·data-group-id="7352479195-8">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="7352479195-11">{</span><span·class="n">OtherId</span><span·class="p">:</span><span·class="p">:</span><span·class="nf">atom</span><span·class="p"·data-group-id="7352479195-12">(</span><span·class="p"·data-group-id="7352479195-12">)</span><span·class="p">|</span><span·class="nf">oid</span><span·class="p"·data-group-id="7352479195-13">(</span><span·class="p"·data-group-id="7352479195-13">)</span><span·class="p">,</span><span·class="nf">term</span><span·class="p"·data-group-id="7352479195-14">(</span><span·class="p"·data-group-id="7352479195-14">)</span><span·class="p"·data-group-id="7352479195-11">}</span><span·class="p"·data-group-id="7352479195-6">}</span><span·class="p"·data-group-id="7352479195-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="2728566846-1">(</span><span·class="o">#</span><span·class="ss">&#39;DistributionPoint&#39;</span><span·class="p"·data-group-id="2728566846-2">{</span><span·class="p"·data-group-id="2728566846-2">}</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·215,·SHA:·8e4ba44d2507bef9ca2a7540fdc16322e3688f68f014b351c87e04c1c1f793a2·...·]-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="8713485357-1">(</span><span·class="o">#</span><span·class="ss">&#39;DistributionPoint&#39;</span><span·class="p"·data-group-id="8713485357-2">{</span><span·class="p"·data-group-id="8713485357-2">}</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·215,·SHA:·4d87abc26873a715f802a8756b66f9610a408db12eaa9dd0d5bec7e3f90ebfef·...·]-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="2728566846-4">{</span><span·class="p"·data-group-id="2728566846-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="8713485357-4">{</span><span·class="p"·data-group-id="8713485357-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="7344324813-1">(</span><span·class="o">#</span><span·class="ss">&#39;DistributionPoint&#39;</span><span·class="p"·data-group-id="7344324813-2">{</span><span·class="p"·data-group-id="7344324813-2">}</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·162,·SHA:·7a31c462d8b0054200eaf507f83ab9dfacb51907276d894395a2667b327c47b5·...·]-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="6452757510-1">(</span><span·class="o">#</span><span·class="ss">&#39;DistributionPoint&#39;</span><span·class="p"·data-group-id="6452757510-2">{</span><span·class="p"·data-group-id="6452757510-2">}</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·162,·SHA:·19118a4b8fb69b50f766a976e3a6abd650319010f32e178c766fd6788200281c·...·]-3">}</span><span·class="p">,</span><span·class="w">
3702 ····</span><span·class="p"·data-group-id="7344324813-4">{</span><span·class="ss">rdnSequence</span><span·class="p">,</span><span·class="p"·data-group-id="7344324813-5">[</span><span·class="o">#</span><span·class="ss">&#39;AttributeTypeAndValue&#39;</span><span·class="p"·data-group-id="7344324813-6[·...·truncated·by·diffoscope;·len:·392,·SHA:·684ca9079e6b6f8b7c9b570ba396b71422194b2c9181922f080f6ca2f14d3170·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3702 ····</span><span·class="p"·data-group-id="6452757510-4">{</span><span·class="ss">rdnSequence</span><span·class="p">,</span><span·class="p"·data-group-id="6452757510-5">[</span><span·class="o">#</span><span·class="ss">&#39;AttributeTypeAndValue&#39;</span><span·class="p"·data-group-id="6452757510-6[·...·truncated·by·diffoscope;·len:·392,·SHA:·8e10ad8a11d0aeeea17942c8d02cca767e825d5c71fc334bcb21f15ff7d0ed26·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3703 ··</span><span·class="p"·data-group-id="7344324813-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="7344324813-9">{</span><span·class="p"·data-group-id="7344[·...·truncated·by·diffoscope;·len:·250,·SHA:·21e71b23d93607fadd20af0563ba68aa79b06d33e8fd824591607fe7290b222f·...·]-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="6452757510-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="6452757510-9">{</span><span·class="p"·data-group-id="6452[·...·truncated·by·diffoscope;·len:·250,·SHA:·6263bc72e0c1118be29adcca22e1da36a79594a6d3398b3bce415713c66d8774·...·]-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="2194402778-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:·a520f9c2224a4296a63072cdcc3a0e3384bd58ed6c2108472619f543fca74efa·...·]-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="6013996760-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:·15c17d0e4fb3f2183f04c7a8bd85f1abd2c3f51398b283e5ce3ff213de339a21·...·]-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="2049648087-1">[</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="2049648087-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="5728498190-1">[</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="5728498190-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="2049648087-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="2049648087-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="5728498190-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="5728498190-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="2049648087-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="5728498190-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="2049648087-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="5728498190-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="2049648087-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="2049648087-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="5728498190-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="5728498190-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="2049648087-4">}</span><span·class="p"·data-group-id="2049648087-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="5728498190-4">}</span><span·class="p"·data-group-id="5728498190-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="3984277574-1">[</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="3984277574-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="9863463296-1">[</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="9863463296-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="3984277574-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="3984277574-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="9863463296-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="9863463296-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="3984277574-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="9863463296-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="3984277574-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="9863463296-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="3984277574-5">[</span><span·class="p"·data-group-id="3984277574-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="3984277574-6">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·77d82cf2c6eba61c57d7c2d8aa997ff33926aae61baa7acc5a2f2ba83eda6ce9·...·]-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="9863463296-5">[</span><span·class="p"·data-group-id="9863463296-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="9863463296-6">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·4cb6c4fcb34f6f64bb24980220aaefd58f3afd249fa9df5ad6cc154b24762540·...·]-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="3984277574-4">}</span><span·class="p"·data-group-id="3984277574-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="9863463296-4">}</span><span·class="p"·data-group-id="9863463296-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4445 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>226 <p>Copyright·©·1996-2024·<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="6822663912-1">(</span><span·class="s">&quot;public_key/include/public_key.hrl&quot;</span><span·class="p"·data-group-id="6822663912-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="9808641874-1">(</span><span·class="s">&quot;public_key/include/public_key.hrl&quot;</span><span·class="p"·data-group-id="9808641874-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="2382122690-1">(</span><span·class="p"·data-group-id="2382122690-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="2382122690-2">(</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·231,·SHA:·6a32d64381f40fa0751a7be6cb468a94642bdf58b6f9b28d58e9841a66373664·...·]-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="4911718034-1">(</span><span·class="p"·data-group-id="4911718034-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="4911718034-2">(</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·231,·SHA:·2a76851a92dde28e590c790473f4d649e63f46d2d1d13c393daa3155ba571380·...·]-3">)</span><span·class="w">
  
140 </span><span·class="nf">utc_time</span><span·class="p"·data-group-id="2382122690-4">(</span><span·class="p"·data-group-id="2382122690-4">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2382122690-5">{</span><span·class="ss">utcTime</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·113,·SHA:·6ed01e6b92a2e34f06975e09edb96ea9bd22f87bc141ddb4d2cc79e7ec7806de·...·]-5">}</span><span·class="w">140 </span><span·class="nf">utc_time</span><span·class="p"·data-group-id="4911718034-4">(</span><span·class="p"·data-group-id="4911718034-4">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4911718034-5">{</span><span·class="ss">utcTime</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·113,·SHA:·33dabb103e030a2a537924dffaaa1eb66908ba9ab6022774812d4baa1ea2de31·...·]-5">}</span><span·class="w">
  
141 </span><span·class="nf">general_time</span><span·class="p"·data-group-id="2382122690-6">(</span><span·class="p"·data-group-id="2382122690-6">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2382122690-7">{</span><span·class="ss">generalTime</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·118,·SHA:·23f010d1185a26531501e5d822fc9598848904657fdc7a0a9e54e4ffa3ba1ded·...·]-7">}</span><span·class="w">141 </span><span·class="nf">general_time</span><span·class="p"·data-group-id="4911718034-6">(</span><span·class="p"·data-group-id="4911718034-6">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4911718034-7">{</span><span·class="ss">generalTime</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·118,·SHA:·03ab13935b334cf08a0ad8f597730a506369b054c8280baa6f7f4bc32ec609b4·...·]-7">}</span><span·class="w">
  
142 </span><span·class="nf">general_name</span><span·class="p"·data-group-id="2382122690-8">(</span><span·class="p"·data-group-id="2382122690-8">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2382122690-9">{</span><span·class="ss">rfc822Name</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·205,·SHA:·ee615c2174225815c1fc3cebfe534c32d19481864c9c5e26eb9bcbda760ca852·...·]-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="4911718034-8">(</span><span·class="p"·data-group-id="4911718034-8">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4911718034-9">{</span><span·class="ss">rfc822Name</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·205,·SHA:·11fcf7961385b29e2dff15c6c6ab4af860459aea9cea533459e5036d21776968·...·]-9">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
143 ·················</span><span·class="p"·data-group-id="2382122690-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="2382122690-12">(</span><span·class="p"·data-group-id="2382122690-12">)</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·bef919b6c28ed3454d15bda00c370d6f6b68e70b302b529613acc083d6a0a76d·...·]-11">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">143 ·················</span><span·class="p"·data-group-id="4911718034-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="4911718034-12">(</span><span·class="p"·data-group-id="4911718034-12">)</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·1f2c8eac8de2295f37197c1b5ba3e4952cec355974ae8e8cc6fd938bf5c83792·...·]-11">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
144 ·················</span><span·class="p"·data-group-id="2382122690-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="2382122690-14">(</span><span·class="p"·data-group-id="2382122690-14">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">144 ·················</span><span·class="p"·data-group-id="4911718034-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="4911718034-14">(</span><span·class="p"·data-group-id="4911718034-14">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
145 ·················</span><span·class="p"·data-group-id="2382122690-15">{</span><span·class="ss">directoryName</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2382122690-16">{</span><span·class="ss">rdnSequence</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·379,·SHA:·32db3d4a0c9a9fa83629cc40d8e3d21ddf7bb164241aad546da266e1bc9c2a51·...·]-15">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">145 ·················</span><span·class="p"·data-group-id="4911718034-15">{</span><span·class="ss">directoryName</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4911718034-16">{</span><span·class="ss">rdnSequence</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·379,·SHA:·4dfac33f610861529a7ddb58290f24191214f40d27e6537b03db38a8b1c286fd·...·]-15">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
146 ·················</span><span·class="p"·data-group-id="2382122690-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="2382122690-20">(</span><span·class="p"·data-group-id="2382122690-20">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·3dbe952da281fecd292281fa375a66d7a2afe7b84f4c3a8643799bd8617a2edf·...·]-19">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">146 ·················</span><span·class="p"·data-group-id="4911718034-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="4911718034-20">(</span><span·class="p"·data-group-id="4911718034-20">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·260d80e22433a01e651d52b90d50b3439d6be94599cd086e013038f197c8626b·...·]-19">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
147 ·················</span><span·class="p"·data-group-id="2382122690-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="2382122690-22">(</span><span·class="p"·data-group-id="2382122690-22">)</span><sp[·...·truncated·by·diffoscope;·len:·232,·SHA:·48f510ad738cde57e3211d1feef15119b557319b81eaf47d8875d306a58c20c3·...·]-21">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">147 ·················</span><span·class="p"·data-group-id="4911718034-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="4911718034-22">(</span><span·class="p"·data-group-id="4911718034-22">)</span><sp[·...·truncated·by·diffoscope;·len:·232,·SHA:·c47017329de540011f61caa9507aab61105907fdb5866916290bf2db035c10fa·...·]-21">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
148 ·················</span><span·class="p"·data-group-id="2382122690-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="2382122690-25">(</span><span·class="p"·data-group-id="2382122690-25">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·64a9fc029d4500427e0b7be762aadc4474fd2490d6bec0a6812b690af065b2c5·...·]-24">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">148 ·················</span><span·class="p"·data-group-id="4911718034-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="4911718034-25">(</span><span·class="p"·data-group-id="4911718034-25">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·94c197fbc6c2e2987c63c8b36c4ba3eab1a85e382607fcd88b8ef02b7a5b0622·...·]-24">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
149 ·················</span><span·class="p"·data-group-id="2382122690-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="2382122690-27">(</span><span·class="p"·data-group-id="2382122690-27">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·93ef516a34e4f784b5e0e8f8d667985074d32c070c3f7e9c1c1f48ff0171fd97·...·]-26">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">149 ·················</span><span·class="p"·data-group-id="4911718034-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="4911718034-27">(</span><span·class="p"·data-group-id="4911718034-27">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·d7706a6bf31ddbcfb34e885d4707b2405a1c35d6ed159aceb5885ef364a8ba52·...·]-26">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
150 ·················</span><span·class="p"·data-group-id="2382122690-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="2382122690-29">(</span><span·class="p"·data-group-id="2382122690-29">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·93ef516a34e4f784b5e0e8f8d667985074d32c070c3f7e9c1c1f48ff0171fd97·...·]-28">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">150 ·················</span><span·class="p"·data-group-id="4911718034-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="4911718034-29">(</span><span·class="p"·data-group-id="4911718034-29">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·d7706a6bf31ddbcfb34e885d4707b2405a1c35d6ed159aceb5885ef364a8ba52·...·]-28">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
151 ·················</span><span·class="p"·data-group-id="2382122690-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="2382122690-31">(</span><span·class="p"·data-group-id="2382122690-31">)</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·bef919b6c28ed3454d15bda00c370d6f6b68e70b302b529613acc083d6a0a76d·...·]-30">}</span><span·class="w">151 ·················</span><span·class="p"·data-group-id="4911718034-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="4911718034-31">(</span><span·class="p"·data-group-id="4911718034-31">)</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·1f2c8eac8de2295f37197c1b5ba3e4952cec355974ae8e8cc6fd938bf5c83792·...·]-30">}</span><span·class="w">
  
152 </span><span·class="nf">special_string</span><span·class="p"·data-group-id="2382122690-32">(</span><span·class="p"·data-group-id="2382122690-32">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2382122690-33">{</span><span·class="ss">teletexString</span><span·class="p">[·...·truncated·by·diffoscope;·len:·211,·SHA:·51f25556603aa3641bf86cbdfc3e7e2ed6b67c8b2c47ec93190fab7609781dfe·...·]-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="4911718034-32">(</span><span·class="p"·data-group-id="4911718034-32">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4911718034-33">{</span><span·class="ss">teletexString</span><span·class="p">[·...·truncated·by·diffoscope;·len:·211,·SHA:·c26dd744b3327bf03d6c49e1b0ac9bc555ba6509faeecea7078a4b8a77786205·...·]-33">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
153 ·153 ·
154 ···················</span><span·class="p"·data-group-id="2382122690-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="2382122690-36">(</span><span·class="p"·data-group-id="2382122690-36">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·03f25ea7b7b3689b60ec98248f222a07260a475ff9ab24adca90dcdc843243b3·...·]-35">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">154 ···················</span><span·class="p"·data-group-id="4911718034-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="4911718034-36">(</span><span·class="p"·data-group-id="4911718034-36">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·28de26429a0d9e5f88192947154781fca2763937bb4f856ce0c80713b4d7fd22·...·]-35">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
155 ···················</span><span·class="p"·data-group-id="2382122690-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="2382122690-38">(</span><span·class="p"·data-group-id="2382122690-38">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·03f25ea7b7b3689b60ec98248f222a07260a475ff9ab24adca90dcdc843243b3·...·]-37">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">155 ···················</span><span·class="p"·data-group-id="4911718034-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="4911718034-38">(</span><span·class="p"·data-group-id="4911718034-38">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·28de26429a0d9e5f88192947154781fca2763937bb4f856ce0c80713b4d7fd22·...·]-37">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
156 ···················</span><span·class="p"·data-group-id="2382122690-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="2382122690-40">(</span><span·class="p"·data-group-id="2382122690-40">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·4d69810bbded4c5992e15f0fe290bdb4e7fc6d6cce5685f4842c1e0272849177·...·]-39">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">156 ···················</span><span·class="p"·data-group-id="4911718034-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="4911718034-40">(</span><span·class="p"·data-group-id="4911718034-40">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·781bdeefbed3f49c30ee2bfd4c8f49b795a1eeb8ae32c6d767829050e44e6580·...·]-39">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
157 ···················</span><span·class="p"·data-group-id="2382122690-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="2382122690-42">(</span><span·class="p"·data-group-id="2382122690-42">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·93ef516a34e4f784b5e0e8f8d667985074d32c070c3f7e9c1c1f48ff0171fd97·...·]-41">}</span><span·class="w">157 ···················</span><span·class="p"·data-group-id="4911718034-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="4911718034-42">(</span><span·class="p"·data-group-id="4911718034-42">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·d7706a6bf31ddbcfb34e885d4707b2405a1c35d6ed159aceb5885ef364a8ba52·...·]-41">}</span><span·class="w">
  
158 </span><span·class="nf">dist_reason</span><span·class="p"·data-group-id="2382122690-43">(</span><span·class="p"·data-group-id="2382122690-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="4911718034-43">(</span><span·class="p"·data-group-id="4911718034-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="2382122690-44">(</span><span·class="p"·data-group-id="2382122690-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="2382122690-45">(</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·64a9fc029d4500427e0b7be762aadc4474fd2490d6bec0a6812b690af065b2c5·...·]-45">)</span><span·class="w">160 </span><span·class="n">OID_macro</span><span·class="p"·data-group-id="4911718034-44">(</span><span·class="p"·data-group-id="4911718034-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="4911718034-45">(</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·94c197fbc6c2e2987c63c8b36c4ba3eab1a85e382607fcd88b8ef02b7a5b0622·...·]-45">)</span><span·class="w">
  
161 </span><span·class="n">OID_name</span><span·class="p"·data-group-id="2382122690-46">(</span><span·class="p"·data-group-id="2382122690-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="2382122690-47">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·098030e7f9304df5f0fbb8d629cb967de6501de9551f50fbcb599004e096998f·...·]-47">)</span></code></pre><h2·id="rsa"·class="section-heading">161 </span><span·class="n">OID_name</span><span·class="p"·data-group-id="4911718034-46">(</span><span·class="p"·data-group-id="4911718034-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="4911718034-47">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·aafe64eed7a169cb47779f17921d6947f793ac306b5331f7f76f968c75910ee7·...·]-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="7615210802-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="4076403273-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="7615210802-1">}</span><span·class="p">.</span><span·class="w">172 ··</span><span·class="p"·data-group-id="4076403273-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="7615210802-2">{</span><span·class="w">173 </span><span·class="o">#</span><span·class="ss">&#39;RSAPrivateKey&#39;</span><span·class="p"·data-group-id="4076403273-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="7615210802-2">}</span><span·class="p">.</span><span·class="w">184 ··</span><span·class="p"·data-group-id="4076403273-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="7615210802-3">{</span><span·class="w">185 </span><span·class="o">#</span><span·class="ss">&#39;OtherPrimeInfo&#39;</span><span·class="p"·data-group-id="4076403273-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="7615210802-3">}</span><span·class="p">.</span><span·class="w">189 ··</span><span·class="p"·data-group-id="4076403273-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="7615210802-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="4076403273-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="7615210802-4">}</span><span·class="p">.</span><span·class="w">195 ··</span><span·class="p"·data-group-id="4076403273-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="7615210802-5">{</span><span·class="w">196 </span><span·class="o">#</span><span·class="ss">&#39;HashAlgorithm&#39;</span><span·class="p"·data-group-id="4076403273-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="7615210802-5">}</span><span·class="p">.</span><span·class="w">199 ··</span><span·class="p"·data-group-id="4076403273-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="7615210802-6">{</span><span·class="w">200 </span><span·class="o">#</span><span·class="ss">&#39;MaskGenAlgorithm&#39;</span><span·class="p"·data-group-id="4076403273-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="7615210802-6">}</span><span·class="p">.</span></code></pre><h2·id="dsa"·class="section-heading">203 ··</span><span·class="p"·data-group-id="4076403273-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="3667158944-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="4425513936-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="3667158944-1">}</span><span·class="p">.</span><span·class="w">217 ··</span><span·class="p"·data-group-id="4425513936-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="3667158944-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="4425513936-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="3667158944-2">}</span><span·class="p">.</span></code></pre><h2·id="ecdsa-and-eddsa"·class="section-heading">222 ··</span><span·class="p"·data-group-id="4425513936-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-E998F0E5.js"></script>124 <script·src="dist/search_data-118C23D3.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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
644 B
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.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-A7BB32CF.js21 dist/search_data-780E66E8.js
22 dist/sidebar_items-DF937488.js22 dist/sidebar_items-DF937488.js
23 index.html23 index.html
24 notes.html24 notes.html
25 reltool.html25 reltool.html
26 reltool_examples.html26 reltool_examples.html
27 reltool_intro.html27 reltool_intro.html
28 reltool_usage.html28 reltool_usage.html
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>783 <p>Copyright·©·1996-2024·<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
416 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
41.1 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2882 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>213 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>383 <p>Copyright·©·1996-2024·<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.76 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.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-A7BB32CF.js"></script>124 <script·src="dist/search_data-780E66E8.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>231 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>222 <p>Copyright·©·1996-2024·<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="8008429207-1">(</span><span·class="p"·data-group-id="8008429207-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="6091891370-1">(</span><span·class="p"·data-group-id="6091891370-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="8008429207-2">(</span><span·class="ss">false</span><span·class="p"·data-group-id="8008429207-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="6091891370-2">(</span><span·class="ss">false</span><span·class="p"·data-group-id="6091891370-2">)</span><span·class="p">,</span><span·class="w">
860 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8008429207-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8008429207-4">(</span><span·class="p"·data-group-id="8008429207-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="6091891370-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="6091891370-4">(</span><span·class="p"·data-group-id="6091891370-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="8008429207-5">(</span><span·class="n">TagData</span><span·class="p"·data-group-id="8008429207-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="6091891370-5">(</span><span·class="n">TagData</span><span·class="p"·data-group-id="6091891370-5">)</span><span·class="p">,</span><span·class="w">
862 ·············</span><span·class="nf">do_something</span><span·class="p"·data-group-id="8008429207-6">(</span><span·class="p"·data-group-id="8008429207-6">)</span><span·class="w">862 ·············</span><span·class="nf">do_something</span><span·class="p"·data-group-id="6091891370-6">(</span><span·class="p"·data-group-id="6091891370-6">)</span><span·class="w">
863 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="8008429207-3">)</span><span·class="p">,</span><span·class="w">863 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="6091891370-3">)</span><span·class="p">,</span><span·class="w">
864 ····</span><span·class="nf">do_something_else</span><span·class="p"·data-group-id="8008429207-7">(</span><span·class="p"·data-group-id="8008429207-7">)</span><span·class="p">,</span><span·class="w">864 ····</span><span·class="nf">do_something_else</span><span·class="p"·data-group-id="6091891370-7">(</span><span·class="p"·data-group-id="6091891370-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="8008429207-8">(</span><span·class="n">TagData</span><span·class="p"·data-group-id="8008429207-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="6091891370-8">(</span><span·class="n">TagData</span><span·class="p"·data-group-id="6091891370-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="6410417081-1">(</span><span·class="p"·data-group-id="6410417081-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="9460545788-1">(</span><span·class="p"·data-group-id="9460545788-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
915 ···</span><span·class="p"·data-group-id="6410417081-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="6410417081-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·389,·SHA:·4ca92121bd8824872128afdadd376de8c2a3672c832d8c0b8c2928dcd2e4b799·...·]-3">)</span><span·class="p">,</span><span·class="w">915 ···</span><span·class="p"·data-group-id="9460545788-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="9460545788-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·389,·SHA:·24d6c2272346c75bdb0433d5dfa3395b87e0d3cd0b560a506819d0384083c9ae·...·]-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="6410417081-5">(</span><span·class="ss">true</span><span·class="p"·data-group-id="6410417081-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="9460545788-5">(</span><span·class="ss">true</span><span·class="p"·data-group-id="9460545788-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="6410417081-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="6410417081-7">[</span><span·class="p[·...·truncated·by·diffoscope;·len:·80,·SHA:·6f08d7eeadc56eeeaa8ac9cd24ca943c2747675abbbd4457d59c7fc454dcf110·...·]-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="9460545788-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="9460545788-7">[</span><span·class="p[·...·truncated·by·diffoscope;·len:·80,·SHA:·7d7586b9bb1bb35056d12693d8685b582f87eb0a823ac848d28cd56a47666f24·...·]-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="6410417081-8">(</span><span·class="n">Saved</span><span·class="p"·data-group-id="6410417081-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="9460545788-8">(</span><span·class="n">Saved</span><span·class="p"·data-group-id="9460545788-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="6410417081-9">(</span><span·class="n">F</span><span·class="p"·data-group-id="6410417081-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="9460545788-9">(</span><span·class="n">F</span><span·class="p"·data-group-id="9460545788-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>947 <p>Copyright·©·1996-2024·<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="0307023201-1">(</span><span·class="p"·data-group-id="0307023201-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:·bbba3b6c7fc165b05564421a50a693cecbbd1e53547755ac1d8ac687ee999660·...·]-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="0730429208-1">(</span><span·class="p"·data-group-id="0730429208-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:·c8d0416003375b8c14fe2024b5ec301f472ac35e4841c5b82a59acd2c2bb33f2·...·]-1">)</span><span·class="p">.</span><span·class="w">
357 </span><span·class="p"·data-group-id="0307023201-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0307023201-4">{</span><span·class="mi">128</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·cl[·...·truncated·by·diffoscope;·len:·1359,·SHA:·4eac15689f3c96ae0632b21524e0414b3122e876374089023d073c98dcadba8b·...·]-3">}</span></code></pre>357 </span><span·class="p"·data-group-id="0730429208-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0730429208-4">{</span><span·class="mi">128</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·cl[·...·truncated·by·diffoscope;·len:·1359,·SHA:·e1292b214242db3478be7e5a8608ac777828949713da6c9b3eb4bde7d1e5e1e3·...·]-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="8089282556-1">(</span><span·class="p"·data-group-id="8089282556-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:·eb53b3872acca3ba2f94f90c76014c4ccfa4ff76527fb55912b3a98a726b0d2a·...·]-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="1315577602-1">(</span><span·class="p"·data-group-id="1315577602-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:·a6e55b36353e332d86309db08b4ebf8ec8c0130ab5fef77f1e29cad4c045e26a·...·]-1">)</span><span·class="p">.</span><span·class="w">
500 </span><span·class="p"·data-group-id="8089282556-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8089282556-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="1315577602-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="1315577602-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="8089282556-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="1315577602-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="8089282556-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="8089282556-7">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·743,·SHA:·c0bcc536e766a30de8eaad7f82213200d3d5e52a13bd2903425a5dc8739f15e9·...·]-6">}</span><span·class="p">,</span><span·class="w">502 ···········</span><span·class="p"·data-group-id="1315577602-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="1315577602-7">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·743,·SHA:·a22d58961df12101345df2ab4ebd9d27128bf20ecb1cd3daa9ba5c5f47a7fd24·...·]-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="8089282556-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="8089282556-9">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><s[·...·truncated·by·diffoscope;·len:·677,·SHA:·9ced3a60eb99b6f3db4d743a4f356582484285760362b9e38a4fe3499c8b80da·...·]-9">}</span><span·class="p">,</span><span·class="w">504 ···········</span><span·class="p"·data-group-id="1315577602-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="1315577602-9">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><s[·...·truncated·by·diffoscope;·len:·677,·SHA:·ee7437a938752a76794c992f33a2f1d962d85c50a084085c32db6a4989c83629·...·]-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="8089282556-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:·8392379760f29f98067ceec6807c710e3587935f3699e342e76e648352c43578·...·]-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="1315577602-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:·9bbeb526552bf4ca781b52956c34bd5200e8f61c3f3f2c3052ff8f50aa331a62·...·]-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="8089282556-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:·7777fb626dbc51db125e05e0d9d7c62cd7a7def7d4a9060a7f5e4b8637d86347·...·]-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="1315577602-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:·b260dfc6742aec4767ed6960f44f63fbd742cd863a65737849f974107349fa51·...·]-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="8089282556-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:·c482879ec9e42d33b877444de4ac791aca1a2db37226128e7f1cafdf4c780357·...·]-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="1315577602-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:·eaea952d7cd8176582e867f7bbee6a324e2664b963364c03a43d5007fba9b61c·...·]-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="8089282556-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:·28f4cf420be7a264c3d585c861702e823d812388339c60e5c9a4518a150689e4·...·]-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="1315577602-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:·24e31504ec8b93084c39fa208a4830027ebbf1c51c28c851042d77cf8a604f0a·...·]-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="8089282556-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="1315577602-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="8089282556-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="1315577602-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="8089282556-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:·06d322bb07ec1d0afd73e98bcde4a7ea377e181c99dcde8121cba62bf87db132·...·]-14">}</span><span·class="p">,</span><span·class="w">512 ·················</span><span·class="p"·data-group-id="1315577602-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:·fb1c83b5c3d256388396ea8b01a0ed8efe9ba333b920aace6a6be6e1ed52f91b·...·]-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="8089282556-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="8089282556-17">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0<[·...·truncated·by·diffoscope;·len:·738,·SHA:·dfd7c93d56701fbc9179e039172a427ed39393a5d17d90cf68bd99d872110277·...·]-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="1315577602-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="1315577602-17">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0<[·...·truncated·by·diffoscope;·len:·738,·SHA:·9312405247fbf3c09da102dfa36c16ef39757344ac59a401311bac4d2ec04ba5·...·]-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="8089282556-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="8089282556-19">{</span><span·class="mi">2</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·695,·SHA:·63b9d90c01ebecd59b9227cff7bf2a4a959ebcf53bc25c1bacd928e7cb4cbda2·...·]-19">}</span><span·class="p">,</span><span·class="w">515 ···········</span><span·class="p"·data-group-id="1315577602-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="1315577602-19">{</span><span·class="mi">2</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·695,·SHA:·1af867b31404d020e8e5eb7bf77c66e0f6b84be43836353b531c8219f99dc6ef·...·]-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="8089282556-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:·9fe98fc45ee74e2a5d3a949c4bf5a9a7acbf7e379f50be93bc58b1effece8f29·...·]-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="1315577602-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:·80421a3516dc4f66a93bb36a7965496119756235d1c066b283fd4e256e53aafd·...·]-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="8089282556-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:·9fe98fc45ee74e2a5d3a949c4bf5a9a7acbf7e379f50be93bc58b1effece8f29·...·]-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="1315577602-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:·80421a3516dc4f66a93bb36a7965496119756235d1c066b283fd4e256e53aafd·...·]-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="8089282556-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:·565af27ea1be8c0a0a1ab14b335dffb76c194db07c1d25a1825d9aa09028b63c·...·]-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="1315577602-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:·a4f204f03d5a306732ac64895a0b4ff3315d393290d376d06357698993b4ec03·...·]-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="8089282556-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:·ea84843f3ca2cdc2743a96989ec573679a88a11b5daebc6e8de4557e9fc59e15·...·]-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="1315577602-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:·bf670ca8299d0c0741483660149a8fdd99b51af9c6dae047ea6db0985f15282a·...·]-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="8089282556-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="8089282556-25">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">[·...·truncated·by·diffoscope;·len:·686,·SHA:·85e3c3f8b2e5972a886266ec8e7d0b0dd191d888f29820faf6eec596b834d7ea·...·]-25">}</span><span·class="p">,</span><span·class="w">521 ···········</span><span·class="p"·data-group-id="1315577602-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="1315577602-25">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">[·...·truncated·by·diffoscope;·len:·686,·SHA:·17525287c257cbd3dfa5c8de886b1e9120a87cc2f6b062aedd6f2dfe019993c8·...·]-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="8089282556-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:·41f58586184b2dbeb291b130cd641c6451425128e1519a3bca7a616494d9e2f3·...·]-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="1315577602-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:·da845faca3523289cc1644fd1af94e1c29b5814baf8e02e0c2f7330216ccecee·...·]-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="9026304934-1">(</span><span·class="p"·data-group-id="9026304934-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:·292,·SHA:·7d81407e9f37cb9b7b231b3a844b9d2660e52447f6c67c0e01444dfba7a8e030·...·]-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="7633205602-1">(</span><span·class="p"·data-group-id="7633205602-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:·292,·SHA:·4d093b4914a9bd204795146fcc018fba0bf3a2abf90e648e9c2a635815dfead8·...·]-1">)</span><span·class="p">.</span><span·class="w">
600 </span><span·class="p"·data-group-id="9026304934-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9026304934-4">{</span><span·class="mi">512</span><span·class="p">,</span><span·class="w">600 </span><span·class="p"·data-group-id="7633205602-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7633205602-4">{</span><span·class="mi">512</span><span·class="p">,</span><span·class="w">
601 ·····</span><span·class="p"·data-group-id="9026304934-5">[</span><span·class="p"·data-group-id="9026304934-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="7633205602-5">[</span><span·class="p"·data-group-id="7633205602-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="9026304934-7">[</span><span·class="p"·data-group-id="9026304934-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="9026304934-8[·...·truncated·by·diffoscope;·len:·51,·SHA:·ad316b6ed823a7e2c74509978ba7d543882e8f061e20c15cb1503430dc0bde4b·...·]-7">]</span><span·class="p">,</span><span·class="w">602 ····················</span><span·class="p"·data-group-id="7633205602-7">[</span><span·class="p"·data-group-id="7633205602-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="7633205602-8[·...·truncated·by·diffoscope;·len:·51,·SHA:·91ec7fbe4d8ca1976223d7f0e87cda6597a565f1fbf8bc038e7820ed2a9ce85f·...·]-7">]</span><span·class="p">,</span><span·class="w">
603 ····················</span><span·class="p"·data-group-id="9026304934-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:·228,·SHA:·ff343b6b6077c8a81b2b34984d970305237c44945aa8d10ba9931e535e270c2a·...·]-6">}</span><span·class="p">,</span><span·class="w">603 ····················</span><span·class="p"·data-group-id="7633205602-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:·228,·SHA:·bea36fbe59a6c79afff45a949c4d0e73226e96b164a72551ebbe27b22548df1c·...·]-6">}</span><span·class="p">,</span><span·class="w">
604 ······</span><span·class="p"·data-group-id="9026304934-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="7633205602-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="9026304934-11">[</span><span·class="p"·data-group-id="9026304934-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="9026304934[·...·truncated·by·diffoscope;·len:·54,·SHA:·072d58852913a28a344e09c831c817c9ece9f83f0c56c61ad94cb6fc8e5971b1·...·]-11">]</span><span·class="p">,</span><span·class="w">605 ····················</span><span·class="p"·data-group-id="7633205602-11">[</span><span·class="p"·data-group-id="7633205602-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="7633205602[·...·truncated·by·diffoscope;·len:·54,·SHA:·c38764e314ee47fa3eab02f3cbde2daa3207815b9d87533a2078c8820f811bc2·...·]-11">]</span><span·class="p">,</span><span·class="w">
606 ····················</span><span·class="p"·data-group-id="9026304934-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:·230,·SHA:·9bdf76029dd34eceb56715a05e7b3f6bb90a1911176b6f8d5aaf87ad2e4078c7·...·]-10">}</span><span·class="p">,</span><span·class="w">606 ····················</span><span·class="p"·data-group-id="7633205602-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:·230,·SHA:·16b12d00f75e03ffa482a0cebdd6343af64ef7a27671800caa1184f445d5d12d·...·]-10">}</span><span·class="p">,</span><span·class="w">
607 ······</span><span·class="p"·data-group-id="9026304934-14">{</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="9026304934-14">}</span><span·class="p">|</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class[·...·truncated·by·diffoscope;·len:·136,·SHA:·0a0df9e22de71505f910bf01263d4d8a6d0cfefa1943b39c08bbf52b5cd77946·...·]-3">}</span></code></pre>607 ······</span><span·class="p"·data-group-id="7633205602-14">{</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="7633205602-14">}</span><span·class="p">|</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class[·...·truncated·by·diffoscope;·len:·136,·SHA:·6cc23045d968a4548c834cb439dc4fbbdd3960c9d6691e2f0dbad6b4b8e55612·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>634 <p>Copyright·©·1996-2024·<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="8998074375-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="8998074375-1">}</span><span·[·...·truncated·by·diffoscope;·len:·731,·SHA:·d1fddcea5e67a68288e46e57c6bfcf1eccc624325a88cb5617e673b6b1cce97d·...·]-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="3606771257-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="3606771257-1">}</span><span·[·...·truncated·by·diffoscope;·len:·731,·SHA:·b4143e644261d7a96fe8c7993d9f8097022875fe35a67311addfca2447e9f34f·...·]-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="6824252106-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="6824252106-1">}</span><span·[·...·truncated·by·diffoscope;·len:·703,·SHA:·73f1384e5ed750a029fe02605158a58b4a3b66b8aed9e418e14f86fa7eb98bd3·...·]-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="5652771002-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="5652771002-1">}</span><span·[·...·truncated·by·diffoscope;·len:·703,·SHA:·307369943bab010904b911ca1271c821ee2cc265d2a1830beaf60d1f240353b2·...·]-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="1009115838-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="1009115838-1">}</span><span·[·...·truncated·by·diffoscope;·len:·716,·SHA:·78ac9a8710ce4e8593953e69d5ca71e09243abcedb3ef2fb58a64b98e5bf93b2·...·]-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="9238878179-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="9238878179-1">}</span><span·[·...·truncated·by·diffoscope;·len:·716,·SHA:·ddb2869eaa912984053946e2816cc7b1c8b505b9cca48985d543226d46830f0c·...·]-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="5228342550-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="5228342550-1">}</span><span·[·...·truncated·by·diffoscope;·len:·722,·SHA:·d79883405b0712dd9fcac2595422e30d2349beadcf888791f193929e7d179405·...·]0-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="4220608010-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="4220608010-1">}</span><span·[·...·truncated·by·diffoscope;·len:·722,·SHA:·fdb8be13aff4837ad2156b6e100470832ced041d7517b1588ab49ae9fc4479c5·...·]0-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="8642352278-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="8642352278-1">}</span><span·[·...·truncated·by·diffoscope;·len:·712,·SHA:·82632409291d6bac0fe6e942e0160bafdda21548e89891cf413154f68477d61b·...·]-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="6991474721-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="6991474721-1">}</span><span·[·...·truncated·by·diffoscope;·len:·712,·SHA:·08a180546092cd786d58eecc048371497be1ff87c360a4dbb6adb03b1486324f·...·]-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="6921143434-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="6921143434-1">}</span><span·[·...·truncated·by·diffoscope;·len:·740,·SHA:·5e9d68e8c36b4b47db8d76f6a8c01b8938c02d26a27e65e9a4526d1e6088a223·...·]-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="8950187463-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="8950187463-1">}</span><span·[·...·truncated·by·diffoscope;·len:·740,·SHA:·e454059a1966494fae0c0bbc7bd533053695f2d05397b10c2f448c311452cb87·...·]-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="7207765388-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="7207765388-1">}</span><span·[·...·truncated·by·diffoscope;·len:·720,·SHA:·98cd7136aa1dee36affbdf9cf0d83867a05124f5bad72b3b07aa0a10ea9a9857·...·]-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="0702669172-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="0702669172-1">}</span><span·[·...·truncated·by·diffoscope;·len:·720,·SHA:·20347f65eaa0561440761b687ea599be0040e15b56465b07f08205be882b6fb8·...·]-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="4307251382-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="4307251382-1">}</span><span·[·...·truncated·by·diffoscope;·len:·718,·SHA:·5019197945416cf66a95f20a9256e646a791255595368ff8fbfcd59b726ed589·...·]-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="6136653998-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="6136653998-1">}</span><span·[·...·truncated·by·diffoscope;·len:·718,·SHA:·ee86c4f5553b829c49f6faad389b3457eaa14ef97ef3b525ce263bdaa2a72c38·...·]-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="1627899649-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="1627899649-1">}</span><span·[·...·truncated·by·diffoscope;·len:·858,·SHA:·593cabd144a20a146c0072c7bd0d23d86d28c1fe57239e2e1f76878d1796b7ce·...·]-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="5035678937-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="5035678937-1">}</span><span·[·...·truncated·by·diffoscope;·len:·858,·SHA:·b016ed73f001d6ce05774ec9e2ae03742bf7c7ab8eb6f6227aea2cfa3301747a·...·]-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="3811979043-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="3811979043-1">}</span><span·[·...·truncated·by·diffoscope;·len:·862,·SHA:·3213bd5b3a59c9b928185e39922a9cb8286940fba189b29739e742895511280b·...·]-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="5746104718-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="5746104718-1">}</span><span·[·...·truncated·by·diffoscope;·len:·862,·SHA:·54bc59121d744414fe76e2a7b52dc458942b45fd6e6671f894081bee4c26a537·...·]-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="0805143178-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="0805143178-1">}</span><span·[·...·truncated·by·diffoscope;·len:·19389,·SHA:·cd1c91c0a3f3bf80f2d8c634c1a975fc5ee87305ac741e0ad0b4e9247db6be93·...·]-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="9605711239-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="9605711239-1">}</span><span·[·...·truncated·by·diffoscope;·len:·19389,·SHA:·e9d8693f830d950da3979e2498e5cf81752af79e2f08fa29d32b98cd79a37134·...·]-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="2251093918-1">(</span><span·class="ss">dyntrace</span><span·class="p"·data-group-id="2251093918-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="1683677490-1">(</span><span·class="ss">dyntrace</span><span·class="p"·data-group-id="1683677490-1">)</span><span·class="p">.</span><span·class="w">
201 </span><span·class="p"·data-group-id="2251093918-2">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">dyntrace</span><span·class="p"·data-group-id="2251093918-2">}</span></code></pre><p>All·tracepoints·via·dyntrace·are·now·visible·and·can·be·listed·through201 </span><span·class="p"·data-group-id="1683677490-2">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">dyntrace</span><span·class="p"·data-group-id="1683677490-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="9640943905-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="9640943905-2">[</span><span·class="ss">procs</span><span·class="p">,</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·391,·SHA:·6433cd960221c7bce57dc2c9e4caac7debbf86283e946ac0ff87d6f2a3327506·...·]-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="4903472469-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="4903472469-2">[</span><span·class="ss">procs</span><span·class="p">,</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·391,·SHA:·8c91dcbadc4bb5cd22fbdeba177547c051b2c606ffe3265497de4566563ec557·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>276 <p>Copyright·©·1996-2024·<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="0536974805-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="0536974805-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="7592206362-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="7592206362-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="0536974805-2">(</span><span·class="p"·data-group-id="0536974805-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="7592206362-2">(</span><span·class="p"·data-group-id="7592206362-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="0536974805-3">(</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="0536974805-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="7592206362-3">(</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="7592206362-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="0536974805-4">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0536974805-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="7592206362-4">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7592206362-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="0536974805-5">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0536974805-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="7592206362-5">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7592206362-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="0536974805-6">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0536974805-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="7592206362-6">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7592206362-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="0536974805-7">(</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="0536974805-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="7592206362-7">(</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="7592206362-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="3268874054-1">(</span><span·class="nc">msacc</span><span·class="p">:</span><span·class="nf">stats</span><span·class="p"·data-group-id="3268874054-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:·66e08466c1b999e6837f363819ffdfd8dadce7db5bfcf8675f08e7d92c92262e·...·]-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="4337695386-1">(</span><span·class="nc">msacc</span><span·class="p">:</span><span·class="nf">stats</span><span·class="p"·data-group-id="4337695386-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:·7cb612250886dcac6a2b289bc8b6eaa49ba4b447f8ccac6c11472cb96e6b01c9·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1237 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1268 <p>Copyright·©·1996-2024·<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
451 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
63.3 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>196 <p>Copyright·©·1996-2024·<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="5074616561-1">(</span><span·class="nc">scheduler</span><span·class="p">:</span><span·class="nf">sample</span><span·class="p"·data-group-id="5074616561-2">(</span><span·class="p"·data-group-id="5074616561-2">)</span><span·class="p"·data-group-id="5074616561-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="6030554979-1">(</span><span·class="nc">scheduler</span><span·class="p">:</span><span·class="nf">sample</span><span·class="p"·data-group-id="6030554979-2">(</span><span·class="p"·data-group-id="6030554979-2">)</span><span·class="p"·data-group-id="6030554979-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>682 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>299 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>419 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>213 <p>Copyright·©·1996-2024·<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="8364502942-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="8364502942-1">}</span><span·class="w">224 specification·of·a·supervisor.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1080907184-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="1080907184-1">}</span><span·class="w">
225 </span><span·class="p"·data-group-id="8364502942-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="8364502942-2">}</span><span·class="w">225 </span><span·class="p"·data-group-id="1080907184-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="1080907184-2">}</span><span·class="w">
226 </span><span·class="p"·data-group-id="8364502942-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:·23b8bab39ea82cf782fa586c346071f0951513886bd74afd78aadec11be9ac04·...·]-3">}</span><span·class="w">226 </span><span·class="p"·data-group-id="1080907184-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:·6df1e0281d1d4250378cfc8ec4c304f473e8848d85231968d85ae52c7bbe832a·...·]-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="8364502942-4">(</span><span·class="p"·data-group-id="8364502942-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="1080907184-4">(</span><span·class="p"·data-group-id="1080907184-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="8364502942-5">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="8364502942-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="1080907184-5">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="1080907184-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="1617423672-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="1617423672-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="8076798778-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="8076798778-1">}</span><span·class="w">
232 </span><span·class="p"·data-group-id="1617423672-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="1617423672-2">}</span><span·class="w">232 </span><span·class="p"·data-group-id="8076798778-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="8076798778-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="1617423672-3">(</span><span·class="p"·data-group-id="1617423672-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="8076798778-3">(</span><span·class="p"·data-group-id="8076798778-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="1617423672-4">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="1617423672-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="8076798778-4">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="8076798778-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="2607944990-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="2607944990-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="0002361274-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="0002361274-1">}</span><span·class="w">
237 </span><span·class="p"·data-group-id="2607944990-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="2607944990-2">}</span><span·class="w">237 </span><span·class="p"·data-group-id="0002361274-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="0002361274-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="2607944990-3">(</span><span·class="p"·data-group-id="2607944990-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="0002361274-3">(</span><span·class="p"·data-group-id="0002361274-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="7847592210-1">{</span><span·class="ss">load_object_code</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7847592210-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:·216bcf9f6c8795de02f700d3922f62877e20dd7195ebf1ccca8a4473fa180bf0·...·]-1">}</span><span·class="w">265 <pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3998649143-1">{</span><span·class="ss">load_object_code</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3998649143-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:·ffed0bffc17d90d375b50b95b4b12515265c04ccb44904030d98fd41f805a9e9·...·]-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="7847592210-4">(</span><span·class="p"·data-group-id="7847592210-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="3998649143-4">(</span><span·class="p"·data-group-id="3998649143-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="7847592210-5">(</span><span·class="p"·data-group-id="7847592210-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="3998649143-5">(</span><span·class="p"·data-group-id="3998649143-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="2446305823-1">{</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2446305823-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:·4a09edacfdae5b0e0dce5aaae01177b9932800c4a5bfda5e3f6de2cff75bf260·...·]-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="6740938196-1">{</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6740938196-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:·cff2412a9e41dd00b7dc71c549524d01a5c5b7ac27ef9ce2710cd1b9931afd74·...·]-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="2446305823-4">(</span><span·class="p"·data-group-id="2446305823-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="6740938196-4">(</span><span·class="p"·data-group-id="6740938196-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="2446305823-5">(</span><span·class="p"·data-group-id="2446305823-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="6740938196-5">(</span><span·class="p"·data-group-id="6740938196-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="0069408272-1">{</span><span·class="ss">code_change</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0069408272-2">[</span><span·class="p"·data-group-id="0069408272-3">{</span><span·class="n">Mod</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·204,·SHA:·736ad15db1e9035d2860199d130e4fa9062bce9df19ba9125dbb957dbf24fb88·...·]-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="2235138754-1">{</span><span·class="ss">code_change</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2235138754-2">[</span><span·class="p"·data-group-id="2235138754-3">{</span><span·class="n">Mod</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·204,·SHA:·92ebbe7084c7e2d99dc4b880dbdc1da4eaf2a4bf4efad3d49baad4258c660ade·...·]-1">}</span><span·class="w">
289 </span><span·class="p"·data-group-id="0069408272-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="0069408272-5">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·279,·SHA:·f91fb75dc36e7695dfcf652b5b3ca7c8cb0a4cec1098e4b6166a023e74168b53·...·]-4">}</span><span·class="w">289 </span><span·class="p"·data-group-id="2235138754-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="2235138754-5">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·279,·SHA:·6c0b61bb2f372e77e280b97e0c219d4609246792a902b2d607eb873915d2f23d·...·]-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="0069408272-7">(</span><span·class="p"·data-group-id="0069408272-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="2235138754-7">(</span><span·class="p"·data-group-id="2235138754-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="0069408272-8">(</span><span·class="p"·data-group-id="0069408272-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="2235138754-8">(</span><span·class="p"·data-group-id="2235138754-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="9378422716-1">{</span><span·class="ss">start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9378422716-2">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="9378422716-2">]</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·7c36d763151f624d265d6a996b57bf8b2a1ca362bdd47f5d240d6a5486c0688b·...·]-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="7873536730-1">{</span><span·class="ss">start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7873536730-2">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="7873536730-2">]</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·4d70a2b33664eec08d0ed4d55bf7a410e3d059cbbf2f89ee3c16a0efc4446f15·...·]-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="9378422716-3">(</span><span·class="p"·data-group-id="9378422716-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="7873536730-3">(</span><span·class="p"·data-group-id="7873536730-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="1072501903-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="1072501903-2">[</span><span·class="n">Node</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·6b2cee7abf59380f96292616d99fd1c1476adfce10f36fa1f8d1803e668355f9·...·]-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="4274884802-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="4274884802-2">[</span><span·class="n">Node</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·88c378dad9c104e76005cd5df738d78381152b77b35af1d19fd8cc054b52c981·...·]-1">}</span><span·class="w">
301 </span><span·class="p"·data-group-id="1072501903-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="1072501903-4">{</span><span·class="n">M</span><s[·...·truncated·by·diffoscope;·len:·236,·SHA:·d82ad4e633f0c0ca9cd9dc422307451c2edabe19bc84dfaea2c0d103a7754970·...·]-3">}</span><span·class="w">301 </span><span·class="p"·data-group-id="4274884802-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="4274884802-4">{</span><span·class="n">M</span><s[·...·truncated·by·diffoscope;·len:·236,·SHA:·eb5271dcc8b241c0bddde6ec01fc54a278c34e124d27d4f1d36765aa15cab4ce·...·]-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="1072501903-5">(</span><span·class="p"·data-group-id="1072501903-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="4274884802-5">(</span><span·class="p"·data-group-id="4274884802-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="1072501903-6">(</span><span·class="p"·data-group-id="1072501903-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="4274884802-6">(</span><span·class="p"·data-group-id="4274884802-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="1072501903-7">(</span><span·class="p"·data-group-id="1072501903-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="4274884802-7">(</span><span·class="p"·data-group-id="4274884802-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="1072501903-8">[</span><span·class="nf">term</span><span·class="p"·data-group-id="1072501903-9">(</span><span·class="p"·data-group-id="1072501903-9">)</span><span·class="p"·data-group-id="1072501903-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="4274884802-8">[</span><span·class="nf">term</span><span·class="p"·data-group-id="4274884802-9">(</span><span·class="p"·data-group-id="4274884802-9">)</span><span·class="p"·data-group-id="4274884802-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="3803750472-1">{</span><span·class="nb">apply</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3803750472-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:·3c22925eded6e9630ebcf61a8b3303992b2f6a8ed38ee807b54d82dd322b624d·...·]-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="8099893951-1">{</span><span·class="nb">apply</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8099893951-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:·6a14cb9c307bc6703a106394d447628218b3dca0c42309c182a53c70f1334d39·...·]-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="3803750472-3">(</span><span·class="p"·data-group-id="3803750472-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="8099893951-3">(</span><span·class="p"·data-group-id="8099893951-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="3803750472-4">[</span><span·class="nf">term</span><span·class="p"·data-group-id="3803750472-5">(</span><span·class="p"·data-group-id="3803750472-5">)</span><span·class="p"·data-group-id="3803750472-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="8099893951-4">[</span><span·class="nf">term</span><span·class="p"·data-group-id="8099893951-5">(</span><span·class="p"·data-group-id="8099893951-5">)</span><span·class="p"·data-group-id="8099893951-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>396 <p>Copyright·©·1996-2024·<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="8033211763-1">(</span><span·class="mi">4</span><span·class="p"·data-group-id="8033211763-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="0379182673-1">(</span><span·class="mi">4</span><span·class="p"·data-group-id="0379182673-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="8033211763-2">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">sasl_sup</span><span·class="p"·data-group-id="8033211763-2">}</span><span·class="w">314 </span><span·class="ss">supervisor</span><span·class="w">·····················································</span><span·class="p"·data-group-id="0379182673-2">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">sasl_sup</span><span·class="p"·data-group-id="0379182673-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="8033211763-3">[</span><span·class="p"·data-group-id="8033211763-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:·41,·SHA:·726caf0bdf9b67fcb9ffe0656d2d8b31a1683162d18c2f38357099a9fcea0c02·...·]3-4">}</span><span·class="p">,</span><span·class="w">316 </span><span·class="p"·data-group-id="0379182673-3">[</span><span·class="p"·data-group-id="0379182673-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:·41,·SHA:·f63d8ffa97813ab80937415f5feb25d632dce62efc058645cec52ef8aec1c98a·...·]3-4">}</span><span·class="p">,</span><span·class="w">
317 </span><span·class="p"·data-group-id="8033211763-5">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="ss">release_handler</span><span·class="p"·data-group-id="8033211763-5">}</span><span·class="p">,</span><span·class="w">317 </span><span·class="p"·data-group-id="0379182673-5">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="ss">release_handler</span><span·class="p"·data-group-id="0379182673-5">}</span><span·class="p">,</span><span·class="w">
318 </span><span·class="p"·data-group-id="8033211763-6">{</span><span·class="ss">mfa</span><span·class="p">,</span><span·class="p"·data-group-id="8033211763-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:·190,·SHA:·7a7466456351082b2428748d68e0cac84ed1ee9ae96b7f04b845faf8080e4cab·...·]3-6">}</span><span·class="p">,</span><span·class="w">318 </span><span·class="p"·data-group-id="0379182673-6">{</span><span·class="ss">mfa</span><span·class="p">,</span><span·class="p"·data-group-id="0379182673-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:·190,·SHA:·6c0cb8af6cf12ff13b828d8bfc5f783de4eeb09f9d131ec1994ee1ccaa04b1c7·...·]3-6">}</span><span·class="p">,</span><span·class="w">
319 </span><span·class="p"·data-group-id="8033211763-9">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="8033211763-9">}</span><span·class="p">,</span><span·class="w">319 </span><span·class="p"·data-group-id="0379182673-9">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="0379182673-9">}</span><span·class="p">,</span><span·class="w">
320 </span><span·class="p"·data-group-id="8033211763-10">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">2000</span><span·class="p"·data-group-id="8033211763-10">}</span><span·class="p">,</span><span·class="w">320 </span><span·class="p"·data-group-id="0379182673-10">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">2000</span><span·class="p"·data-group-id="0379182673-10">}</span><span·class="p">,</span><span·class="w">
321 </span><span·class="p"·data-group-id="8033211763-11">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">worker</span><span·class="p"·data-group-id="8033211763-11">}</span><span·class="p"·data-group-id="8033211763-3">]</span><span·class="w">321 </span><span·class="p"·data-group-id="0379182673-11">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">worker</span><span·class="p"·data-group-id="0379182673-11">}</span><span·class="p"·data-group-id="0379182673-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="8033211763-12">(</span><span·class="mi">9</span><span·class="p"·data-group-id="8033211763-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="0379182673-12">(</span><span·class="mi">9</span><span·class="p"·data-group-id="0379182673-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="8033211763-13">{</span><span·class="ss">undef</span><span·class="p">,</span><span·class="p"·data-group-id="8033211763-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:·195,·SHA:·f1b4034932769832e912c361ab87a5d9066ce6bf5216ec71d1863b47d03cf535·...·]3-13">}</span><span·class="w">329 </span><span·class="ss">error_info</span><span·class="w">·····························</span><span·class="p"·data-group-id="0379182673-13">{</span><span·class="ss">undef</span><span·class="p">,</span><span·class="p"·data-group-id="0379182673-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:·195,·SHA:·9941ff46419d445142b9edf6098175937c929b752dbea5c844626810fecae299·...·]3-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="8033211763-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="0379182673-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="8033211763-17">[</span><span·class="ss">gen_server</span><span·class="p">,</span><span·class="w">332 </span><span·class="p"·data-group-id="0379182673-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="8033211763-18">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">register</span><span·class="p"·data-group-id="8033211763-18">}</span><span·class="p">,</span><span·class="w">335 </span><span·class="p"·data-group-id="0379182673-18">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">register</span><span·class="p"·data-group-id="0379182673-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="8033211763-19">[</span><span·class="p"·data-group-id="8033211763-19">]</span><span·class="p">,</span><span·class="w">338 </span><span·class="p"·data-group-id="0379182673-19">[</span><span·class="p"·data-group-id="0379182673-19">]</span><span·class="p">,</span><span·class="w">
339 </span><span·class="p"·data-group-id="8033211763-20">[</span><span·class="p"·data-group-id="8033211763-20">]</span><span·class="p"·data-group-id="8033211763-17">]</span><span·class="p"·data-group-id="8033211763-16">}</span><span·class="w">339 </span><span·class="p"·data-group-id="0379182673-20">[</span><span·class="p"·data-group-id="0379182673-20">]</span><span·class="p"·data-group-id="0379182673-17">]</span><span·class="p"·data-group-id="0379182673-16">}</span><span·class="w">
340 </span><span·class="ss">ancestors</span><span·class="w">················································</span><span·class="p"·data-group-id="8033211763-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="8033211763-21">]</span><span·class="w">340 </span><span·class="ss">ancestors</span><span·class="w">················································</span><span·class="p"·data-group-id="0379182673-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="0379182673-21">]</span><span·class="w">
341 </span><span·class="ss">messages</span><span·class="w">··································································</span><span·class="p"·data-group-id="8033211763-22">[</span><span·class="p"·data-group-id="8033211763-22">]</span><span·class="w">341 </span><span·class="ss">messages</span><span·class="w">··································································</span><span·class="p"·data-group-id="0379182673-22">[</span><span·class="p"·data-group-id="0379182673-22">]</span><span·class="w">
342 </span><span·class="ss">links</span><span·class="w">····················································</span><span·class="p"·data-group-id="8033211763-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:·93,·SHA:·52e3467a39a9ce9ea03dd136b1703df70ed6e76b496cc15f53cc2bf16f58e1b8·...·]3-23">]</span><span·class="w">342 </span><span·class="ss">links</span><span·class="w">····················································</span><span·class="p"·data-group-id="0379182673-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:·93,·SHA:·2010046bcf3b198d77c059f4295675245bc1463557f5a14708a6e2600599a956·...·]3-23">]</span><span·class="w">
343 </span><span·class="ss">dictionary</span><span·class="w">································································</span><span·class="p"·data-group-id="8033211763-24">[</span><span·class="p"·data-group-id="8033211763-24">]</span><span·class="w">343 </span><span·class="ss">dictionary</span><span·class="w">································································</span><span·class="p"·data-group-id="0379182673-24">[</span><span·class="p"·data-group-id="0379182673-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>486 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1164 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1114 <p>Copyright·©·1996-2024·<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="3603881872-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3603881872-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:·5fcdf253d66f8dc18dc53b441bcd10929c7559452dd5d2e556d472728f3d2bda·...·]-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="2728783818-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2728783818-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:·525ad393df86ccb75e8186328b543b7e49e505f1bcbcbcf0bb5a626ab3881fcb·...·]-3">}</span><span·class="p">,</span><span·class="w">
144 ··</span><span·class="p"·data-group-id="3603881872-4">[</span><span·class="p"·data-group-id="3603881872-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="3603881872-5">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">144 ··</span><span·class="p"·data-group-id="2728783818-4">[</span><span·class="p"·data-group-id="2728783818-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="2728783818-5">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
145 ···</span><span·class="p"·data-group-id="3603881872-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="3603881872-6">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">145 ···</span><span·class="p"·data-group-id="2728783818-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="2728783818-6">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
146 ···</span><span·class="p"·data-group-id="3603881872-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="3603881872-7">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">146 ···</span><span·class="p"·data-group-id="2728783818-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="2728783818-7">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
147 ···</span><span·class="p"·data-group-id="3603881872-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:·2ac776a626a4191797f0fd3e46f9c71ec9b44fe0bb4a0f3789448aa00d40aabd·...·]-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="2728783818-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:·048a9eaef4b6195bb4f83b0d79831c8c35ea5faebcf570c15aad3054364ad26a·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>209 <p>Copyright·©·1996-2024·<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="5650820682-1">(</span><span·class="n">RelFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5650820682-2">[</span><span·class="p"·data-group-id="5650820682-3">{</span><span·class="ss">myapp</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·353,·SHA:·bcd4a7488ac7bfad50cd35291b7b52fb18aa300a56b6cd8c813972cc52d8ae3a·...·]-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="0628849244-1">(</span><span·class="n">RelFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0628849244-2">[</span><span·class="p"·data-group-id="0628849244-3">{</span><span·class="ss">myapp</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·353,·SHA:·8dffd80d3102519cc2fcc8350325bd033959d923f93afbf771f8253e2b38c7cd·...·]-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="5650820682-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">NewVsn</span><span·class="p"·data-group-id="5650820682-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="0628849244-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">NewVsn</span><span·class="p"·data-group-id="0628849244-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1387 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>211 <p>Copyright·©·1996-2024·<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
147 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
67.2 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>266 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>193 <p>Copyright·©·1996-2024·<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="7399951972-1">{</span><span·class="ss">script</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7399951972-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:·1375408600497a01b519a26acdb266194ec8399d4b4c7777206438cd90b3ac82·...·]-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="8794218174-1">{</span><span·class="ss">script</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8794218174-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:·03a1804f0fe15f0ad0fbbbbc18367b969f8e0cea833239b6d914e1f6ade73dff·...·]-2">}</span><span·class="p">,</span><span·class="w">
146 ·</span><span·class="p"·data-group-id="7399951972-3">[</span><span·class="w">146 ·</span><span·class="p"·data-group-id="8794218174-3">[</span><span·class="w">
147 ··</span><span·class="p"·data-group-id="7399951972-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="7399951972-4">}</span><span·class="p">,</span><span·class="w">147 ··</span><span·class="p"·data-group-id="8794218174-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="8794218174-4">}</span><span·class="p">,</span><span·class="w">
148 ··</span><span·class="p"·data-group-id="7399951972-5">{</span><span·class="ss">preLoaded</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7399951972-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:·6bbd4f53ef5a0ac1463217fe4d68d126190f9a1ef9f42a24eb95d3b433640d55·...·]-5">}</span><span·class="p">,</span><span·class="w">148 ··</span><span·class="p"·data-group-id="8794218174-5">{</span><span·class="ss">preLoaded</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8794218174-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:·ac043c77d4cb293ee03f1c5d8f0f5235fbc1799f55a9f8f47384ad5a3d90088d·...·]-5">}</span><span·class="p">,</span><span·class="w">
149 ··</span><span·class="p"·data-group-id="7399951972-7">{</span><span·class="ss">path</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7399951972-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:·f0f63ca388ba7d385f27675ec10538889e2641006dd34817a8af2bab2d5a7dfe·...·]-7">}</span><span·class="p">.</span><span·class="w">149 ··</span><span·class="p"·data-group-id="8794218174-7">{</span><span·class="ss">path</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8794218174-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:·efed965222545d012b9b79c510ae4729afeb05bf7c5fadf735aeca0e5ffa9371·...·]-7">}</span><span·class="p">.</span><span·class="w">
150 ··</span><span·class="p"·data-group-id="7399951972-9">{</span><span·class="ss">primLoad</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7399951972-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:·841791d2bc60991a6500a9e00bb564f488cc64456cae6f89a5ca99977f9ba11c·...·]-9">}</span><span·class="p">,</span><span·class="w">150 ··</span><span·class="p"·data-group-id="8794218174-9">{</span><span·class="ss">primLoad</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8794218174-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:·eb1998c1c17182e3422fc0e9020bbd6ebcadf26295709a8e2da963147dbedb74·...·]-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="7399951972-11">{</span><span·class="ss">kernel_load_completed</span><span·class="p"·data-group-id="7399951972-11">}</span><span·class="p">,</span><span·class="w">152 ··</span><span·class="p"·data-group-id="8794218174-11">{</span><span·class="ss">kernel_load_completed</span><span·class="p"·data-group-id="8794218174-11">}</span><span·class="p">,</span><span·class="w">
153 ··</span><span·class="p"·data-group-id="7399951972-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="7399951972-12">}</span><span·class="p">,</span><span·class="w">153 ··</span><span·class="p"·data-group-id="8794218174-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="8794218174-12">}</span><span·class="p">,</span><span·class="w">
154 ··</span><span·class="p"·data-group-id="7399951972-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="7399951972-14">{</span><span·class="n">Mod[·...·truncated·by·diffoscope;·len:·252,·SHA:·f8145d4424c325fc4adb985a190d696ddc8821c371bc2ebe0161213f517cb209·...·]-13">}</span><span·class="p">,</span><span·class="w">154 ··</span><span·class="p"·data-group-id="8794218174-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="8794218174-14">{</span><span·class="n">Mod[·...·truncated·by·diffoscope;·len:·252,·SHA:·1e387d82a97b47124860577a7a3c7f111396ab484834b50b1d5b5a0ef8e6b312·...·]-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="7399951972-15">{</span><span·class="nb">apply</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7399951972-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:·23fc8c15f16e98f19ec60ed6ed704d0bee599f4e589493b9cd88e4de5fbbe847·...·]-15">}</span><span·class="p">,</span><span·class="w">156 ··</span><span·class="p"·data-group-id="8794218174-15">{</span><span·class="nb">apply</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8794218174-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:·2b3ce33854e7c0196579c4bf4b4cbf3bc54036854949da3f3a23fc7f6bec21fa·...·]-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="7399951972-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="7399951972-17">}</span><span·class="p"·data-group-id="7399951972-3">]</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·0af3ff45bcda972e332790bc2e71278007cd37baead73852214c6969f53e76d3·...·]-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="8794218174-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="8794218174-17">}</span><span·class="p"·data-group-id="8794218174-3">]</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·91e1d8a12544cd2a706b609ab9503b7cc29e2f0e33358f78f38ba4150006d55c·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>235 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v4.2.23 v4.2.2
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·sasl[q···················]6 Search·documentation·of·sasl[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>675 <p>Copyright·©·1996-2024·<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
639 B
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/.build
    
Offset 25, 15 lines modifiedOffset 25, 15 lines modified
25 dist/lato-latin-300-normal-YUMVEFOL.woff225 dist/lato-latin-300-normal-YUMVEFOL.woff2
26 dist/lato-latin-400-normal-W7754I4D.woff226 dist/lato-latin-400-normal-W7754I4D.woff2
27 dist/lato-latin-700-normal-2XVSBPG4.woff227 dist/lato-latin-700-normal-2XVSBPG4.woff2
28 dist/lato-latin-ext-300-normal-VPGGJKJL.woff228 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
29 dist/lato-latin-ext-400-normal-N27NCBWW.woff229 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
30 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff230 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
31 dist/remixicon-NKANDIL5.woff231 dist/remixicon-NKANDIL5.woff2
32 dist/search_data-1BE8F222.js32 dist/search_data-0F5832B4.js
33 dist/sidebar_items-A1EF8975.js33 dist/sidebar_items-A1EF8975.js
34 index.html34 index.html
35 notes.html35 notes.html
36 search.html36 search.html
37 snmp.html37 snmp.html
38 snmp_advanced_agent.html38 snmp_advanced_agent.html
39 snmp_agent_config_files.html39 snmp_agent_config_files.html
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>483 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1077 <p>Copyright·©·1996-2024·<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.74 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.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-1BE8F222.js"></script>124 <script·src="dist/search_data-0F5832B4.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v5.163 v5.16
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·snmp[q···················]6 Search·documentation·of·snmp[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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
235 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
3.75 KB
OEBPS/content.opf
3.72 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="3902846561-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="3902846561-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">versions1</span><span·class="p"·data-group-id="3902846561-2">(</span><span·class="p"·data-group-id="3902846561-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="3902846561-3">(</span><span·class="n">V</span><span·class="p"·data-group-id="3902846561-3">)</span><span·class="p">.<[·...·truncated·by·diffoscope;·len:·18,·SHA:·aa6285803019735a1e142dd0f052e377f4e11767187e5c1060f3bd4bfb9428ac·...·]>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="8772300005-1">{</span><span·class="ss[·...·truncated·by·diffoscope;·len:·438,·SHA:·bea18ab4cef357714695b9461dc7e1cc9f34f25fc8f9c21dcf038c6bc71cbd36·...·]>
 3344 ···········</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">print_versions</span><span·class="p"·data-group-id="8772300005-3">(</span><span·class="n">V</span><span·class="p"·data-group-id="8772300005-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="1538188782-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="1538188782-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·168,·SHA:·b0793558e245c8d4d21002261dcd568566897d0e5d5b9527c5d7ab309abc4160·...·]-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="8797358443-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="8797358443-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·168,·SHA:·422bdb85285faef3041972b65f01493dbba2511893c6ababa177deaf5f2abc84·...·]-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="1538188782-3">(</span><span·class="n">V</span><span·class="p"·data-group-id="1538188782-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="8797358443-3">(</span><span·class="n">V</span><span·class="p"·data-group-id="8797358443-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="7438848900-1">(</span><span·class="p"·data-group-id="7438848900-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="7574565519-1">(</span><span·class="p"·data-group-id="7574565519-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="7438848900-2">(</span><span·class="p"·data-group-id="7438848900-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="7574565519-2">(</span><span·class="p"·data-group-id="7574565519-3">[</span><span·class="ss">snmp_generic</span><span·class="p">,</span><span·class="w">
3545 ··························</span><span·class="p"·data-group-id="7438848900-4">{</span><span·class="ss">snmp_generic_mnesia</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7438848900-5">[</span><span·class="p"·data-group-id="7438848900-6">{</span><span·class="ss">scope</span><span·cla[·...·truncated·by·diffoscope;·len:·329,·SHA:·9c8733202f0db56d12a7696c7ee6203d03f5b0dcee584e29e51d78dbebdccad7·...·]-2">)</span><span·class="p">,</span><span·class="w">3545 ··························</span><span·class="p"·data-group-id="7574565519-4">{</span><span·class="ss">snmp_generic_mnesia</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7574565519-5">[</span><span·class="p"·data-group-id="7574565519-6">{</span><span·class="ss">scope</span><span·cla[·...·truncated·by·diffoscope;·len:·329,·SHA:·9ee5a5b1eacd0d0a14fdaacb3da9353d3243da979755db9c583338c4540e720d·...·]-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="7438848900-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="7438848900-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="7574565519-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="7574565519-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="7438848900-8">(</span><span·class="p"·data-group-id="7438848900-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="7574565519-8">(</span><span·class="p"·data-group-id="7574565519-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3947 <p>Copyright·©·1996-2024·<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="3376075070-1">(</span><span·class="p"·data-group-id="3376075070-2">[</span><span·class="p"·data-group-id="3376075070-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:·e91abee5bcce020f5a66031269b3b01bc7f43034faf376899691a918e95968ad·...·]-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="0572513252-1">(</span><span·class="p"·data-group-id="0572513252-2">[</span><span·class="p"·data-group-id="0572513252-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:·93025de5850612840ee5f75474591034c70f362fa0b3aecce91c5e28863a4a47·...·]-3">}</span><span·class="p">,</span><span·class="w">
333 ·····················</span><span·class="p"·data-group-id="3376075070-4">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3376075070-5">[</span><span·class="p"·data-group-id="3376075070-6">{</span><span·class="ss">key</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·385,·SHA:·2c42c6d000a1266c6fa455ae9413718d68ea84eb7e4ea3b8d76509d4463f4d11·...·]-4">}</span><span·class="p">,</span><span·class="w">333 ·····················</span><span·class="p"·data-group-id="0572513252-4">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0572513252-5">[</span><span·class="p"·data-group-id="0572513252-6">{</span><span·class="ss">key</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·385,·SHA:·74800561b7d47f20e2aa072824bdd947cff8ca96acc5a7156f9cda5258549bbc·...·]-4">}</span><span·class="p">,</span><span·class="w">
334 ·····················</span><span·class="p"·data-group-id="3376075070-8">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3376075070-9">[</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">telno</[·...·truncated·by·diffoscope;·len:·287,·SHA:·91d4df5abd527becbdd305be38462bbb561f0603b14b49154876b665c3bc0f22·...·]-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="0572513252-8">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0572513252-9">[</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">telno</[·...·truncated·by·diffoscope;·len:·287,·SHA:·ac4c2d5dd2abe594ac132fce83db1bbaa64dbf8c09ece4d5f10e4e57b66786bd·...·]-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="2752554047-1">(</span><span·class="s">&quot;EmpMIB&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2752554047-2">[</span><span·class="p"·data-group-id="2752554047-3">{</span><span·class="ss">db</span><span·class="[·...·truncated·by·diffoscope;·len:·212,·SHA:·7620c26b3f26e1ac7a5b7b2306206b0a5b3de5f1a092dac5eb4022db618d3aeb·...·]-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="6912905864-1">(</span><span·class="s">&quot;EmpMIB&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6912905864-2">[</span><span·class="p"·data-group-id="6912905864-3">{</span><span·class="ss">db</span><span·class="[·...·truncated·by·diffoscope;·len:·212,·SHA:·29f800592a504c58ccc63790dd873cba97e1c37605a4dbee0749ec58a558a53d·...·]-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="1274778500-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="1274778500-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="9944989926-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="9944989926-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="1274778500-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="1274778500-2">)</span><span·class="p">,</span><span·class="w">354 ····</span><span·class="nf">notify_internal_resources</span><span·class="p"·data-group-id="9944989926-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="9944989926-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="1274778500-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:·b3d4681db269dc5588f2deaaeebd36a1b0dca735f693e25c9f45810016df8dd2·...·]-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="9944989926-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:·6a0af48c6d464dcdff356355c639f8935a415be99bcd5e5f6fde6dfcfbfa367f·...·]-3">)</span><span·class="p">;</span><span·class="w">
356 </span><span·class="nf">emp_table</span><span·class="p"·data-group-id="1274778500-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="1274778500-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="9944989926-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="9944989926-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="1274778500-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:·24cae3e93af1c7201d4d77a9133a1e9b9ca0afc5679a8750db07f1e57ef874ca·...·]-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="9944989926-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:·e61d8eac39fb1a02f8e5a3a6be984de4f2b371ab97212eff0a79ce9d5b58d1fc·...·]-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="3243203556-1">(</span><span·class="p"·data-group-id="3243203556-2">[</span><span·class="p"·data-group-id="3243203556-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:·7c2e543ba06f68287afd0977c48d85c887990b708a20f3b29d6fd9d8e935099f·...·]-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="2342730054-1">(</span><span·class="p"·data-group-id="2342730054-2">[</span><span·class="p"·data-group-id="2342730054-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:·e3df8dfd95aab2d95d8399830871f586953f43b5de056c98089b6e5005983e9a·...·]-3">}</span><span·class="p">,</span><span·class="w">
371 ·····················</span><span·class="p"·data-group-id="3243203556-4">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3243203556-5">[</span><span·class="p"·data-group-id="3243203556-6">{</span><span·class="ss">key</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·385,·SHA:·f251d964472542ed14ddbffe0766afe457c50a11e030452c78017a4039fdbdfa·...·]-4">}</span><span·class="p">,</span><span·class="w">371 ·····················</span><span·class="p"·data-group-id="2342730054-4">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2342730054-5">[</span><span·class="p"·data-group-id="2342730054-6">{</span><span·class="ss">key</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·385,·SHA:·630401cd2447b702675ed467860dc26afccb036b14ea419fe5b385afae452bb8·...·]-4">}</span><span·class="p">,</span><span·class="w">
372 ·····················</span><span·class="p"·data-group-id="3243203556-8">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3243203556-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:·e590d393617f6178fe2be80c18aab7bd1c69ea037a2b842741448466a4be6f51·...·]-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="2342730054-8">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2342730054-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:·6196b400e6c36fb87f550913626fccb2d43e9787fe9ba8ac21de55761961a79e·...·]-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="6549971801-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="6549971801-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="4834795258-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="4834795258-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="6549971801-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="6549971801-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="4834795258-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="4834795258-2">)</span><span·class="p">.</span><span·class="w">
  
376 </span><span·class="nf">emp_table</span><span·class="p"·data-group-id="6549971801-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="6549971801-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="4834795258-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="4834795258-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="6549971801-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="6549971801-4">)</span><span·class="p">,</span><span·class="w">377 ··</span><span·class="nf">notify_internal_resources</span><span·class="p"·data-group-id="4834795258-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="4834795258-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="6549971801-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="6549971801-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="4834795258-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="4834795258-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="6549971801-6">[</span><span·class="p"·data-group-id="6549971801-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="6549971801-7">}</span><span·class=[·...·truncated·by·diffoscope;·len:·29,·SHA:·09aadf83d8686e898afae15ca50c8f33f003ad284e82550fc82c56198b329094·...·]-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="4834795258-6">[</span><span·class="p"·data-group-id="4834795258-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="4834795258-7">}</span><span·class=[·...·truncated·by·diffoscope;·len:·29,·SHA:·732bdde287096f098a28c1c1589944341d27edee8125bcbcda6a43c482fe158f·...·]-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="6549971801-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:·709f69f25fbb9aee6a7e74b1de80abda4b308fb6b32ff8375d6a7611a02475ba·...·]-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="4834795258-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:·594577a53ddf7f3e3d61824990d4324d8f848bf6fb4386c4810ca1e9ae9e8ddd·...·]-8">)</span><span·class="p">;</span><span·class="w">
384 </span><span·class="nf">emp_table</span><span·class="p"·data-group-id="6549971801-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="6549971801-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="4834795258-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="4834795258-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="6549971801-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:·cd3f4343d2768d10376746241903a3d373e7143af44b95a706cad9762f8f6787·...·]-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="4834795258-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:·00930bf003a762d4f386aa054857dbf005d584f090487e1f58122c27df685708·...·]-11">)</span><span·class="p">.</span><span·class="w">
  
386 </span><span·class="nf">is_row_created</span><span·class="p"·data-group-id="6549971801-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="6549971801-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="4834795258-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="4834795258-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="6549971801-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="6549971801-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="4834795258-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="4834795258-14">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
388 ····</span><span·class="p"·data-group-id="6549971801-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="6549971801-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="4834795258-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="4834795258-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="6549971801-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="6549971801-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="4834795258-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="4834795258-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>458 <p>Copyright·©·1996-2024·<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="1056090261-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="1056090261-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="1605000956-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="1605000956-1">}</span><span·class="p">.</span><span·class="w">
154 </span><span·class="p"·data-group-id="1056090261-2">{</span><span·class="ss">intAgentTransports</span><span·class="p">,</span><span·class="w">154 </span><span·class="p"·data-group-id="1605000956-2">{</span><span·class="ss">intAgentTransports</span><span·class="p">,</span><span·class="w">
155 ·</span><span·class="p"·data-group-id="1056090261-3">[</span><span·class="p"·data-group-id="1056090261-4">{</span><span·class="ss">transportDomainUdpIpv4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1056090261-5">{</span><span·class="mi">141</span><span·cl[·...·truncated·by·diffoscope;·len:·237,·SHA:·414671c50e5ce3d51bec04c61663887f669066cd6d0242614a89e69bf186ea47·...·]-4">}</span><span·class="p">,</span><span·class="w">155 ·</span><span·class="p"·data-group-id="1605000956-3">[</span><span·class="p"·data-group-id="1605000956-4">{</span><span·class="ss">transportDomainUdpIpv4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1605000956-5">{</span><span·class="mi">141</span><span·cl[·...·truncated·by·diffoscope;·len:·237,·SHA:·fbc750a192c407d3f5a2e74a394d2d6840aef44093074047ef72017342760b1c·...·]-4">}</span><span·class="p">,</span><span·class="w">
156 ··</span><span·class="p"·data-group-id="1056090261-6">{</span><span·class="ss">transportDomainUdpIpv6</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1056090261-7">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p[·...·truncated·by·diffoscope;·len:·480,·SHA:·52fd201ae32bceba064ba826d73a7fa88c407ec7105bcf7adedd7e69207245a3·...·]-2">}</span><span·class="p">.</span><span·class="w">156 ··</span><span·class="p"·data-group-id="1605000956-6">{</span><span·class="ss">transportDomainUdpIpv6</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1605000956-7">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p[·...·truncated·by·diffoscope;·len:·480,·SHA:·6350e852be01018bcb3937bf6409385bd17946e5063b91ab56953f93ac5231b6·...·]-2">}</span><span·class="p">.</span><span·class="w">
157 </span><span·class="p"·data-group-id="1056090261-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="1056090261-8">}</span><span·class="p">.</span><span·class="w">157 </span><span·class="p"·data-group-id="1605000956-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="1605000956-8">}</span><span·class="p">.</span><span·class="w">
158 </span><span·class="p"·data-group-id="1056090261-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="1056090261-9">}</span><span·class="p">.</span></code></pre><p>These·are·the·suppo[·...·truncated·by·diffoscope;·len:·441,·SHA:·290071d9726c60a5e8ba8c40d3ee4da4d638dfaf80699f11a132d53ab78f7128·...·]6-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="1605000956-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="1605000956-9">}</span><span·class="p">.</span></code></pre><p>These·are·the·suppo[·...·truncated·by·diffoscope;·len:·441,·SHA:·a16ca50b38bc8598219d5657b69a54da13fd76cf6e496d54db8b1ad31efd7e3c·...·]6-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="0220106926-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="0[·...·truncated·by·diffoscope;·len:·114,·SHA:·ad53c172baa6d3ecb0333f1881cc3e58d6db02b7639d21867d5693ba608e2b5a·...·]6-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="8262485066-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="8[·...·truncated·by·diffoscope;·len:·114,·SHA:·d58bff8ea05be5580310c5f5bf92d6ce6ef98df77ba9f9c94137280c595a4d45·...·]6-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="0220106926-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="0220106926-6">(</span><span·class="p"·data-group-id="0220106926-6">)</span><span·class="p"·data-group-id="0220106926-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="0220106926-7">{</span><span·class="ss">intAgentTransports</span><span·class="p">,</span><span·class="w">·······</span><span·class="p"·data-group-id="0220106926-8">[</span><span·class="nc">snmpa_conf</span><span·class="p">:</span><span·class="nf">intAgentTr[·...·truncated·by·diffoscope;·len:·439,·SHA:·3d42d91f72bbe0a68555499f3d26c8a77c4e97af6e396a4f0a050a7b57be1ff1·...·]160 ······</span><span·class="p"·data-group-id="8262485066-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="8262485066-6">(</spa[·...·truncated·by·diffoscope;·len:·227,·SHA:·7b297987839eef52cec2067223e70a2228855de9bfa7c38439e5bed167932b6f·...·]
 161 ······</span><span·class="p"·data-group-id="8262485066-7">{</span><span·class="ss">intAgentTransports</span><span·class="p">,</span><span·class="w">·······</span><span·class="p"·data-group-id="8262485066-8">[</span><span·class="nc">snmpa_conf</span><span·class="p">:</span><span·class="nf">intAgentTransport</span><span·class="p"·data-group-id="8262485066-9">(</span><span·class="p"·data-group-id="8262485066-9">)</span><span·class="p"·data-group-id="8262485066-8">]</span><span·class="p"·data-group-id="8262485066-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="7405195454-1">[</span><span·class="p"·data-group-id="7405195454-2">{</span><span·class="ss">transportDomainUdpIpv4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7405195454-3">{</span><span·class="p"·data-group-id="7405195454-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="7405195454-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4000</span><span·class="p"·data-group-id="7405195454-3">}</span><span·class="p"·data-group-id="7405195454-2">}</span><span·class="p">,</span><span·class="w"> 
165 ··</span><span·class="p"·data-group-id="7405195454-5">{</span><span·class="ss">transportDomainUdpIpv4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7405195454-6">{</span><span·class="p"·data-group-id="7405195454-7">{<[·...·truncated·by·diffoscope;·len:·665,·SHA:·124132105e91864dcbafb74a9233d6c6d3224152a2fb714bdbddba717c9e3239·...·]164 example,·<em>not</em>·allowed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p"·data-group-id="0075398783-1">[</span><span·class="p"·data-group-id="0075398783-2">{</span><span·class="ss">transportDomainUdpIpv4</spa[·...·truncated·by·diffoscope;·len:·609,·SHA:·e29278676492b30fa64507e504ba695c5c52de51449169197357304621f7aba8·...·]
 165 ··</span><span·class="p"·data-group-id="0075398783-5">{</span><span·class="ss">transportDomainUdpIpv4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0075398783-6">{</span><span·class="p"·data-group-id="0075398783-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="0075398783-7">}</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4001</span><span·class="p"·data-group-id="0075398783-6">}</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">trap_sender</span><span·class="p"·data-group-id="0075398783-5">}</span><span·class="p"·data-group-id="0075398783-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="0342815486-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="0342815486-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="8025066993-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="8025066993-1">}</span><span·class="p">.</span><span·class="w">
192 </span><span·class="p"·data-group-id="0342815486-2">{</span><span·class="ss">sysObjectID</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0342815486-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:·cbbc18e867a7bdddd05da690b965179a621715a8ad3920e78790c199e02849e7·...·]-2">}</span><span·class="p">.</span><span·class="w">192 </span><span·class="p"·data-group-id="8025066993-2">{</span><span·class="ss">sysObjectID</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8025066993-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:·dfe422f543373358b5f96d441d320643d603bac7badd0956b679655dab4e2982·...·]-2">}</span><span·class="p">.</span><span·class="w">
193 </span><span·class="p"·data-group-id="0342815486-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="0342815486-4">}</span><span·class="p">.</span><span·class="w">193 </span><span·class="p"·data-group-id="8025066993-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="8025066993-4">}</span><span·class="p">.</span><span·class="w">
194 </span><span·class="p"·data-group-id="0342815486-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="0342815486-5">}</span><span·class="p">.</span><span·class="w">194 </span><span·class="p"·data-group-id="8025066993-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="8025066993-5">}</span><span·class="p">.</span><span·class="w">
195 </span><span·class="p"·data-group-id="0342815486-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="0342815486-6">}</span><span·class="p">.</span><span·class="w">195 </span><span·class="p"·data-group-id="8025066993-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="8025066993-6">}</span><span·class="p">.</span><span·class="w">
196 </span><span·class="p"·data-group-id="0342815486-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="0342815486-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="8025066993-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="8025066993-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>312 <p>Copyright·©·1996-2024·<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="8390596395-1">(</span><span·class="s">&quot;snmp/include/SNMPv2-MIB.hrl&quot;</span><span·class="p"·data-group-id="8390596395-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="4019433940-1">(</span><span·class="s">&quot;snmp/include/SNMPv2-MIB.hrl&quot;</span><span·class="p"·data-group-id="4019433940-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="7805722719-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="3031112175-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="7805722719-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:·a160e3f646054f2a158b4fb0e36125333f132c62fb989177c772baa5b8f54e5e·...·]-1">)</span><span·class="w">473 ·······················</span><span·class="p"·data-group-id="3031112175-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:·f193df7c5a94e9cec09a7a1d0433985b09d61ac9faa2af57ff29fb0fe1875dda·...·]-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="7805722719-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:·57d75917afebe0adecdd276ea41fe8d0699bdb951984cebca9f54d5753e4dc64·...·]-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="3031112175-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:·b4e5dca5a91f6e8e0bd2447869a1f2236ac7a0549fd9dff9589004d359912a60·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>616 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>268 <p>Copyright·©·1996-2024·<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="6755262879-1">[</span><span·class="p"·data-group-id="6755262879-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="1303658916-1">[</span><span·class="p"·data-group-id="1303658916-2">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">
144 ········</span><span·class="p"·data-group-id="6755262879-3">[</span><span·class="p"·data-group-id="6755262879-4">{</span><span·class="ss">agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6755262879-5">[</span><span·class="p"·data-group-id="6755262879-6">{</spa[·...·truncated·by·diffoscope;·len:·174,·SHA:·3e4f354a3f90393acb5788ac0affa50d8c143aa0b82a44df258bc1b76795bcfa·...·]-6">}</span><span·class="p">,</span><span·class="w">144 ········</span><span·class="p"·data-group-id="1303658916-3">[</span><span·class="p"·data-group-id="1303658916-4">{</span><span·class="ss">agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1303658916-5">[</span><span·class="p"·data-group-id="1303658916-6">{</spa[·...·truncated·by·diffoscope;·len:·174,·SHA:·697d5d2f6d259927dd4a9a1055fc8d3f5e413e1cbfc9b0d78324d0faad2d802e·...·]-6">}</span><span·class="p">,</span><span·class="w">
145 ··················</span><span·class="p"·data-group-id="6755262879-7">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6755262879-8">[</span><span·class="p"·data-group-id="6755262879-9">{</span><span·class="ss">dir</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·333,·SHA:·adc9a09b2404751279afeec4f4e4b99c845814617017b6d80763a5064ac86bad·...·]-4">}</span><span·class="p">,</span><span·class="w">145 ··················</span><span·class="p"·data-group-id="1303658916-7">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1303658916-8">[</span><span·class="p"·data-group-id="1303658916-9">{</span><span·class="ss">dir</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·333,·SHA:·a5f0d320d83a6d3830550621d24f1ca903c3d69deaf385596050368c793d2f06·...·]-4">}</span><span·class="p">,</span><span·class="w">
146 ·········</span><span·class="p"·data-group-id="6755262879-10">{</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6755262879-11">[</span><span·class="p"·data-group-id="6755262879-12">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6755262879-13">[</span><span·class="p"·data-group-id="6755262879-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="6755262879-14">}</span><span·class="p">,</span><span·class="w"> 
147 ······························</span><span·class="p"·data-group-id="6755262879-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="6755262879[·...·truncated·by·diffoscope;·len:·328,·SHA:·045d4512f4c6effa935f6795fa6e53df629977ec8b205b4abe24769d86a543fa·...·]</span><span·class="w">146 ·········</span><span·class="p"·data-group-id="1303658916-10">{</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1303658916-11">[</span><span·class="p"·data-group-id="1303658916-12">{</span><span·cl[·...·truncated·by·diffoscope;·len:·381,·SHA:·c347fc6f1829669173de0449c062dc4aa63a3177b8b5887c3114fb4b28587bbd·...·]</span><span·class="w">
 147 ······························</span><span·class="p"·data-group-id="1303658916-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="1303658916-15">}</span><span·class="p"·data-group-id="1303658916-13">]</span><span·class="p"·data-group-id="1303658916-12">}</span><span·class="p"·data-group-id="1303658916-11">]</span><span·class="p"·data-group-id="1303658916-10">}</span><span·class="p"·data-group-id="1303658916-3">]</span><span·class="p"·data-group-id="1303658916-2">}</span><span·class="w">
148 ········</span><span·class="p"·data-group-id="6755262879-1">]</span><span·class="w">148 ········</span><span·class="p"·data-group-id="1303658916-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="1027831236-1">(</span><span·class="p"·data-group-id="1027831236-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1027831236-2">[</span><span·class="nf">snmp_component_config</span><span·class="p"·data-group-id="1027831236-3">(</span><span·class="p"·data-group-id="1027831236-3">)</span><span·class="p"·data-group-id="1027831236-2">]</span><span·class="w"> 
152 ······</span><span·class="nf">snmp_component_config</span><span·class="p"·data-group-id="1027831236-4">(</span><span·class="p"·data-group-id="1027831236-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·705,·SHA:·a3476484f8b2ac4bd746bb33f77cfbff7af24bb6e3bfc5d10609364dad23e4cf·...·]</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="7627835608-1">(</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·351,·SHA:·78080c04f1b9d2034cc991c182884cc7dce90a9d452adf3fa5750fdafb90d97e·...·]</span><span·class="w">
 152 ······</span><span·class="nf">snmp_component_config</span><span·class="p"·data-group-id="7627835608-4">(</span><span·class="p"·data-group-id="7627835608-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7627835608-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="7627835608-6">(</span><span·class="p"·data-group-id="7627835608-6">)</span><span·class="p"·data-group-id="7627835608-5">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="7627835608-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="7627835608-8">(</span><span·class="p"·data-group-id="7627835608-8">)</span><span·class="p"·data-group-id="7627835608-7">}</span><span·class="w">
153 ······</span><span·class="nf">agent_options</span><span·class="p"·data-group-id="1027831236-9">(</span><span·class="p"·data-group-id="1027831236-9">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1027831236-10">[</span><span·class="nf">agent_option</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·2ced3b8d12b8c37d17fada7db41a90561ecf39e819b77db22c179ca101a52d9c·...·]-10">]</span><span·class="w">153 ······</span><span·class="nf">agent_options</span><span·class="p"·data-group-id="7627835608-9">(</span><span·class="p"·data-group-id="7627835608-9">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7627835608-10">[</span><span·class="nf">agent_option</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·7631f09cbb8fcc72c612535469e46b4dcf4f9ec8691b30cf2ce029b5a9472e32·...·]-10">]</span><span·class="w">
154 ······</span><span·class="nf">agent_option</span><span·class="p"·data-group-id="1027831236-12">(</span><span·class="p"·data-group-id="1027831236-12">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1027831236-13">{</span><span·class="ss">restart_type</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·220,·SHA:·f426b894544c9de8193141273875e2194b2e936e0200b1a19464df6f7d395fb8·...·]-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="7627835608-12">(</span><span·class="p"·data-group-id="7627835608-12">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7627835608-13">{</span><span·class="ss">restart_type</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·220,·SHA:·771b86765e136a830e640f395e8faa4e3929f62194a96261d1bb9cb8c152b9cf·...·]-13">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
155 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-16">(</span><span·class="p"·data-group-id="1027831236-16">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·097af5834e8dd31edce2d4efb9003e95906dc0e758fa225cd1dcb14609996910·...·]-15">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">155 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-16">(</span><span·class="p"·data-group-id="7627835608-16">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·06d7500161658064326ad7106034f40ca234cc0098ff87abdf7f2ad90b311e49·...·]-15">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
156 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-18">(</span><span·class="p"·data-group-id="1027831236-18">)</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·ec1b5120d72cdf5e5093391f4cb97d30886bb81071afaf8e69740daf1073b00b·...·]-17">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">156 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-18">(</span><span·class="p"·data-group-id="7627835608-18">)</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·6a9367565ebe4219b4e06ff6afe4ddac083b3efafb44f28da049c8f673d3efdf·...·]-17">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
157 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-20">(</span><span·class="p"·data-group-id="1027831236-20">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·ec6ac499a8ab8a3267069c9d90875c5b32eedd84ac307361c579ce99612a6acc·...·]-19">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">157 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-20">(</span><span·class="p"·data-group-id="7627835608-20">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·cb8732bf1d34493c71720d138905a1972b3395325f7abf0acaba7f9930b954d3·...·]-19">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
158 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-22">(</span><span·class="p"·data-group-id="1027831236-22">)</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·424ac9797e1ce52b6248f774854c856e69784f820d0e9874255ab17396b06d6b·...·]-21">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">158 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-22">(</span><span·class="p"·data-group-id="7627835608-22">)</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·fc155ab4ae3936c466771ffc9e122e19a9e07391d439bda93e6c25b25ea39273·...·]-21">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">
159 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-24">(</span><span·class="p"·data-group-id="1027831236-24">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·097af5834e8dd31edce2d4efb9003e95906dc0e758fa225cd1dcb14609996910·...·]-23">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">159 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-24">(</span><span·class="p"·data-group-id="7627835608-24">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·06d7500161658064326ad7106034f40ca234cc0098ff87abdf7f2ad90b311e49·...·]-23">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
160 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-26">(</span><span·class="p"·data-group-id="1027831236-26">)</span><span·class="p"·data-group-id="1027831236-25">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w"> 
161 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-28">(</span><span·class="p"·data-group-id="1027831236-28">)</span[·...·truncated·by·diffoscope;·len:·71,·SHA:·7434daeedf9c39db78f1b4bd0419d5e987ab70203f3c27798b9efc7094eb989c·...·]···</span><span·class="p">|</span><span·class="w">160 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-26">(</span><span·class="p"·data-group-id="7627835608-26">)</span><span[·...·truncated·by·diffoscope;·len:·71,·SHA:·c6d7381603549bc269b2732000e5c414c1ce97c5b4fa39a0e49333e0bc202800·...·]···</span><span·class="p">|</span><span·class="w">
 161 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-28">(</span><span·class="p"·data-group-id="7627835608-28">)</span><span·class="p"·data-group-id="7627835608-27">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">
162 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-30">(</span><span·class="p"·data-group-id="1027831236-30">)</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·9fbdd70ad8ef6e039d248a1e1510de9bd870880b1a22b148af068da717e133e4·...·]-29">}</span><span·class="w">···········</span><span·class="p">|</span><span·class="w">162 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-30">(</span><span·class="p"·data-group-id="7627835608-30">)</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·65a89f20a237da544313bb6cae5884ea327a4fcd53457434fb68d9ad0ebeb393·...·]-29">}</span><span·class="w">···········</span><span·class="p">|</span><span·class="w">
163 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-32">(</span><span·class="p"·data-group-id="1027831236-32">)</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·a814688af443af12dd4fcb3b2c7ae9ec5a7072836b9722f6150056792d04b6fc·...·]-31">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">163 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-32">(</span><span·class="p"·data-group-id="7627835608-32">)</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·0b950f3e83b6ff701482a9fd3d7ac43356ff73f2e12f0e582f6ec625c1e95c65·...·]-31">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
164 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-34">(</span><span·class="p"·data-group-id="1027831236-34">)</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·424ac9797e1ce52b6248f774854c856e69784f820d0e9874255ab17396b06d6b·...·]-33">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">164 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-34">(</span><span·class="p"·data-group-id="7627835608-34">)</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·fc155ab4ae3936c466771ffc9e122e19a9e07391d439bda93e6c25b25ea39273·...·]-33">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">
165 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-36">(</span><span·class="p"·data-group-id="1027831236-36">)</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·75d54aebbf4bb7adb37652e1019b992dbd2739aec83f428192a0d943bba5344a·...·]-35">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">165 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-36">(</span><span·class="p"·data-group-id="7627835608-36">)</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·bfbbd716ecbd331d0cf7589d756b8f4881d29f13fc8a65624793d2166de05fe6·...·]-35">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
166 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-38">(</span><span·class="p"·data-group-id="1027831236-38">)</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·00da68309be28aeba8024acaa85ca0a38be0e56a4ce35c64d828ecff778fd469·...·]-37">}</span><span·class="w">·············</span><span·class="p">|</span><span·class="w">166 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-38">(</span><span·class="p"·data-group-id="7627835608-38">)</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·e3066eab6ffa976f77730d9323c9db504d8a38729883451fe1b130456f7d2626·...·]-37">}</span><span·class="w">·············</span><span·class="p">|</span><span·class="w">
167 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-40">(</span><span·class="p"·data-group-id="1027831236-40">)</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·18ae86c5d6cd622feb1af2e4abb09b042020c887c50e4fc9344ec3a45f90e18c·...·]-39">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">167 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-40">(</span><span·class="p"·data-group-id="7627835608-40">)</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·1572f389914ae7a81ac8b7c66b6e8d1b8292ee37e8b2bafa01c38872abc4ae1a·...·]-39">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">
168 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-42">(</span><span·class="p"·data-group-id="1027831236-42">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·097af5834e8dd31edce2d4efb9003e95906dc0e758fa225cd1dcb14609996910·...·]-41">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">168 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-42">(</span><span·class="p"·data-group-id="7627835608-42">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·06d7500161658064326ad7106034f40ca234cc0098ff87abdf7f2ad90b311e49·...·]-41">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
169 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-44">(</span><span·class="p"·data-group-id="1027831236-44">)</span><span·class="p"·data-group-id="1027831236-43">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w"> 
170 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-46">(</span><span·class="p"·data-group-id="1027831236-46">)</span><span·class="p"·data-group-id="1027831236-45">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w"> 
171 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-48">(</span><span·class="p"·data-group-id="1027831236-48">)</span><sp[·...·truncated·by·diffoscope;·len:·72,·SHA:·c203cdc44c2293c6237a720ded24261cf9bf5aa638194e2bf35073b04522dc85·...·]··</span><span·class="p">|</span><span·class="w">169 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-44">(</span><span·class="p"·data-group-id="7627835608-44">)</spa[·...·truncated·by·diffoscope;·len:·72,·SHA:·8110b4af5d40aa634d3cfa5cd4e9cade26289a00350a5c4d513f76441f9dd935·...·]··</span><span·class="p">|</span><span·class="w">
 170 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-46">(</span><span·class="p"·data-group-id="7627835608-46">)</span><span·class="p"·data-group-id="7627835608-45">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
 171 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-48">(</span><span·class="p"·data-group-id="7627835608-48">)</span><span·class="p"·data-group-id="7627835608-47">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
172 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-50">(</span><span·class="p"·data-group-id="1027831236-50">)</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·a36d48277fb40a343f9b1ac5624d5ec1caf9eaa8c14780dcb158d1404a2e05ad·...·]-49">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">172 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-50">(</span><span·class="p"·data-group-id="7627835608-50">)</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·156b98aba08a2547d1cdca175cf874c55e80757aa257a4b4450069f0291d1f37·...·]-49">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">
173 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-52">(</span><span·class="p"·data-group-id="1027831236-52">)</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·75d54aebbf4bb7adb37652e1019b992dbd2739aec83f428192a0d943bba5344a·...·]-51">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">173 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-52">(</span><span·class="p"·data-group-id="7627835608-52">)</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·bfbbd716ecbd331d0cf7589d756b8f4881d29f13fc8a65624793d2166de05fe6·...·]-51">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
174 ·······················</span><span·class="p"·data-group-id="1027831236-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="1027831236-54">(</span><span·class="p"·data-group-id="1027831236-54">)</span><span·class="p"·data-group-id="1027831236-53">}</span><span·class="w"> 
175 ······</span><span·class="nf">manager_options</span><span·class="p"·data-group-id="1027831236-55">(</span><span·class="p"·data-group-id="1027831236-55">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1027831236-56">[</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="1027831236-57">(</span><span·class="p"·data-group-id="1027831236-57">)</span><span·class="p"·data-group-id="1027831236-56">]</span><span·class="w"> 
176 ······</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="1027831236-58">(</span><span·class="p"·data-group-id="1027831236-58">)</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:·c041f9e6866ec59057af59959dfa7e3682e0b39378b8154b7327877775718e9e·...·]</span><span·class="w">174 ·······················</span><span·class="p"·data-group-id="7627835608-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="7627835608-54">(</span>[·...·truncated·by·diffoscope;·len:·101,·SHA:·d11a998369150255d7094bbed243b6137621683c23eb004e89f3d30b20b78de8·...·]</span><span·class="w">
 175 ······</span><span·class="nf">manager_options</span><span·class="p"·data-group-id="7627835608-55">(</span><span·class="p"·data-group-id="7627835608-55">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7627835608-56">[</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="7627835608-57">(</span><span·class="p"·data-group-id="7627835608-57">)</span><span·class="p"·data-group-id="7627835608-56">]</span><span·class="w">
 176 ······</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="7627835608-58">(</span><span·class="p"·data-group-id="7627835608-58">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7627835608-59">{</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="7627835608-60">(</span><span·class="p"·data-group-id="7627835608-60">)</span><span·class="p"·data-group-id="7627835608-59">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
177 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-62">(</span><span·class="p"·data-group-id="1027831236-62"[·...·truncated·by·diffoscope;·len:·50,·SHA:·3a8cb8be3a030475100000ae478029b80bd5cd6154202dce31a1a8ea138d5c76·...·]-61">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">177 ·························</span><span·class="p"·data-group-id="7627835608-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="7627835608-62">(</span><span·class="p"·data-group-id="7627835608-62"[·...·truncated·by·diffoscope;·len:·50,·SHA:·ee8c34fb7964a1a1ae82b4ebe38e8cfc6d92f0e0ae2e246f7d8c267474df540b·...·]-61">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
178 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-64">(</span><span·class="p"·data-group-id="1027831236-64">)</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·a36d48277fb40a343f9b1ac5624d5ec1caf9eaa8c14780dcb158d1404a2e05ad·...·]-63">}</span><span·class="w">··········</span><span·class="p">|</span><span·class="w">178 ·························</span><span·class="p"·data-group-id="7627835608-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="7627835608-64">(</span><span·class="p"·data-group-id="7627835608-64">)</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·156b98aba08a2547d1cdca175cf874c55e80757aa257a4b4450069f0291d1f37·...·]-63">}</span><span·class="w">··········</span><span·class="p">|</span><span·class="w">
179 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-66">(</span><span·class="p"·data-group-id="1027831236-66">)</span><span·class="p"·data-group-id="1027831236-65">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w"> 
180 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-68">(</span><span·class="p"·data-group-id="1027831236-68"[·...·truncated·by·diffoscope;·len:·79,·SHA:·f6613c2d34f46ca9bf7688fef47635955c14d1aedaad8194562e4f96532c1b1e·...·]··</span><span·class="p">|</span><span·class="w">179 ·························</span><span·class="p"·data-group-id="7627835608-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="7627835608-66">(</span><span·class="p"·data-group-id="7627835608-66">)</[·...·truncated·by·diffoscope;·len:·79,·SHA:·77bf29bb05f58dd4387fc8100d7343e83b7a5af9fdfa34dbb62267dd7fc7bf44·...·]··</span><span·class="p">|</span><span·class="w">
 180 ·························</span><span·class="p"·data-group-id="7627835608-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="7627835608-68">(</span><span·class="p"·data-group-id="7627835608-68">)</span><span·class="p"·data-group-id="7627835608-67">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
181 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-70">(</span><span·class="p"·data-group-id="1027831236-70">)<[·...·truncated·by·diffoscope;·len:·47,·SHA:·615b9e11ad39925961b0e8962b3b059960c4c87f0cc5c64a3bd2ca65a438c712·...·]-69">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">181 ·························</span><span·class="p"·data-group-id="7627835608-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="7627835608-70">(</span><span·class="p"·data-group-id="7627835608-70">)<[·...·truncated·by·diffoscope;·len:·47,·SHA:·bf2adc1f2a8f7b081980b291b2f731a076af6e25be2b59f6ca639edcbab7c254·...·]-69">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
182 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-72">(</span><span·class="p"·data-group-id="1027831236-72">)[·...·truncated·by·diffoscope;·len:·48,·SHA:·8b2eed8ac1fc93576038ef884caa9b245f38860cc73ef3192665fe83b252f0da·...·]-71">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">182 ·························</span><span·class="p"·data-group-id="7627835608-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="7627835608-72">(</span><span·class="p"·data-group-id="7627835608-72">)[·...·truncated·by·diffoscope;·len:·48,·SHA:·a83776c088334dc058c5907370e48fb623be399c15c7a83102cee0e90132ece2·...·]-71">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
183 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-74">(</span><span·class="p"·data-group-id="1027831236-74">)</span><span·class="p"·data-group-id="1027831236-73">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w"> 
184 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-76">(</span><span·class="p"·data-group-id="1027831236-76">)</span><span·class="p"·data-group-id="1027831236-75">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w"> 
185 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-78">(</span><span·class="p"·data-group-id="1027831236-78">)</sp[·...·truncated·by·diffoscope;·len:·47,·SHA:·b751c01bb8cd5ec57f8d65a644e5828826485fac34ba54b2201cf9d250beff4c·...·]">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">183 ·························</span><span·class="p"·data-group-id="7627835608-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="7627835608-74">(</span><span·class="p"·data-group-id="7627835608-74">)</sp[·...·truncated·by·diffoscope;·len:·47,·SHA:·bebef73df24ec1c10680f175313dc875bedc63105aad9b6f5aa3b261f6c68534·...·]">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
 184 ·························</span><span·class="p"·data-group-id="7627835608-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="7627835608-76">(</span><span·class="p"·data-group-id="7627835608-76">)</span><span·class="p"·data-group-id="7627835608-75">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
 185 ·························</span><span·class="p"·data-group-id="7627835608-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="7627835608-78">(</span><span·class="p"·data-group-id="7627835608-78">)</span><span·class="p"·data-group-id="7627835608-77">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
186 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-80">(</span><span·class="p"·data-group-id="1027831236-80">)</span><span·class="w">··</span><span·class="p">|</span><span·class="w">186 ·························</span><span·class="p"·data-group-id="7627835608-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="7627835608-80">(</span><span·class="p"·data-group-id="7627835608-80">)</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
187 ·························</span><span·class="p"·data-group-id="1027831236-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="1027831236-82">(</span><span·class="p"·data-group-id="1027831236-82">[·...·truncated·by·diffoscope;·len:·49,·SHA:·082e8e6d4314ebd39c3e654cf5c02f11d3ea6c9cecf2567f04d2dbce54bb331a·...·]-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="7627835608-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="7627835608-82">(</span><span·class="p"·data-group-id="7627835608-82">[·...·truncated·by·diffoscope;·len:·49,·SHA:·a5a6e6d9a865c1f139b2369fddedea78958454edc6aea5b7426fd242a6b0cdd1·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>426 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>184 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>654 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>203 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>620 <p>Copyright·©·1996-2024·<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="7675435062-1">(</span><span·class="p"·data-group-id="7675435062-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7675435062-2">[</span><span·class="nf">agent_option</span><span·class="p"·data-group-id="7675435062-3">(</span><span·class="p"·data-group-id="7675435062-3">)</span><span·class="p"·data-group-id="7675435062-2">]</span><span·class="w"> 
149 ······</span><span·class="nf">agent_option</span><span·class="p"·data-group-id="7675435062-4">(</span><span·class="p"·data-group-id="7675435062-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:·7bf095d93ee1ba74ab1986d9d34782d6822bc10609d47a029c3fef7b2243d62f·...·]</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="0641647142-1">(</span><span·class="p"·data-group-id="0641647142-1">)</span[·...·truncated·by·diffoscope;·len:·314,·SHA:·fc372f1b4ec0efad537654adccb2172186ea9744e950db7ae51bfe290e7ecd5f·...·]</span><span·class="w">
 149 ······</span><span·class="nf">agent_option</span><span·class="p"·data-group-id="0641647142-4">(</span><span·class="p"·data-group-id="0641647142-4">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0641647142-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="0641647142-6">(</span><span·class="p"·data-group-id="0641647142-6">)</span><span·class="p"·data-group-id="0641647142-5">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
150 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-8">(</span><span·class="p"·data-group-id="7675435062-8">)</span><span·[·...·truncated·by·diffoscope;·len:·34,·SHA:·ebebedddb3081775dada5d124448c63451faee4b566063cbff89606f734b0604·...·]2-7">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">150 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-8">(</span><span·class="p"·data-group-id="0641647142-8">)</span><span·[·...·truncated·by·diffoscope;·len:·34,·SHA:·d6bd20cc39d6568337e64746049edae3fa234a5897830cbd9b8c821ee66655f0·...·]2-7">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
151 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-10">(</span><span·class="p"·data-group-id="7675435062-10">)</span><span[·...·truncated·by·diffoscope;·len:·35,·SHA:·ab2ac7b369a2aad2751c3a2093ca29d3afd5d9960774ec7ca8a6c8709e2b1865·...·]2-9">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">151 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-10">(</span><span·class="p"·data-group-id="0641647142-10">)</span><span[·...·truncated·by·diffoscope;·len:·35,·SHA:·784dc3d08a06553039205330bf422efdaaaed5d30b13cbdcac35071f9653b731·...·]2-9">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
152 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-12">(</span><span·class="p"·data-group-id="7675435062-12">)</span><span·class="p"·data-group-id="7675435062-11">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w"> 
153 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-14">(</span><span·class="p"·data-group-id="7675435062-14">)</spa[·...·truncated·by·diffoscope;·len:·72,·SHA:·67a837093f3bfa94850580d1ec7f5163e16faad087e8e95988c15b16a789e975·...·]··</span><span·class="p">|</span><span·class="w">152 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-12">(</span><span·class="p"·data-group-id="0641647142-12">)</span><span[·...·truncated·by·diffoscope;·len:·72,·SHA:·d4650017bb1d4da1180515bff530f941f0f5302379bdd7d30b97555d94b68e3d·...·]··</span><span·class="p">|</span><span·class="w">
 153 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-14">(</span><span·class="p"·data-group-id="0641647142-14">)</span><span·class="p"·data-group-id="0641647142-13">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
154 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-16">(</span><span·class="p"·data-group-id="7675435062-16">)</span><sp[·...·truncated·by·diffoscope;·len:·37,·SHA:·e7253ce20eb4711d6f44e6ec10b09db5bfa33009a487184abb1778a79da895d4·...·]2-15">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">154 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-16">(</span><span·class="p"·data-group-id="0641647142-16">)</span><sp[·...·truncated·by·diffoscope;·len:·37,·SHA:·7d9ebc99efdee25a2e5b25c8b5a9e05efd8b3d7a6357acb89c4c1a86e6f234cc·...·]2-15">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
155 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-18">(</span><span·class="p"·data-group-id="7675435062-18">)</span><span[·...·truncated·by·diffoscope;·len:·35,·SHA:·ab2ac7b369a2aad2751c3a2093ca29d3afd5d9960774ec7ca8a6c8709e2b1865·...·]2-17">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">155 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-18">(</span><span·class="p"·data-group-id="0641647142-18">)</span><span[·...·truncated·by·diffoscope;·len:·35,·SHA:·784dc3d08a06553039205330bf422efdaaaed5d30b13cbdcac35071f9653b731·...·]2-17">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">
156 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-20">(</span><span·class="p"·data-group-id="7675435062-20">)</span[·...·truncated·by·diffoscope;·len:·41,·SHA:·2e8c4e390cba793f679c244afaad212263f5347d6839ff43db3b7858150b6e49·...·]2-19">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">156 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-20">(</span><span·class="p"·data-group-id="0641647142-20">)</span[·...·truncated·by·diffoscope;·len:·41,·SHA:·52579ff6afa3ca4f4be80bb1e24bf8f4dda59e644dc95589eea715fcc0277483·...·]2-19">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">
157 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-22">(</span><span·class="p"·data-group-id="7675435062-22">)</span><span·c[·...·truncated·by·diffoscope;·len:·33,·SHA:·cc41bf4f93ec1ff09e2ee0bade6c9e9dc416e168467b0ad529ad55449d017053·...·]2-21">}</span><span·class="w">···········</span><span·class="p">|</span><span·class="w">157 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-22">(</span><span·class="p"·data-group-id="0641647142-22">)</span><span·c[·...·truncated·by·diffoscope;·len:·33,·SHA:·a5f8ddcf0ccc0b5961f3576aca461d08d3b1ea1112b791d05a9abe0282315a8b·...·]2-21">}</span><span·class="w">···········</span><span·class="p">|</span><span·class="w">
158 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-24">(</span><span·class="p"·data-group-id="7675435062-24">)</span>[·...·truncated·by·diffoscope;·len:·40,·SHA:·a6e414ad5982ea9922a10bdbd38ba42f06e420d9a6da740d41a9292fd4471b28·...·]2-23">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">158 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-24">(</span><span·class="p"·data-group-id="0641647142-24">)</span>[·...·truncated·by·diffoscope;·len:·40,·SHA:·388e5ae6bd9dd980524003b3cb7627cfe61048d3d03d4961628fad80e8f76173·...·]2-23">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
159 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-26">(</span><span·class="p"·data-group-id="7675435062-26">)</span><span[·...·truncated·by·diffoscope;·len:·35,·SHA:·ab2ac7b369a2aad2751c3a2093ca29d3afd5d9960774ec7ca8a6c8709e2b1865·...·]2-25">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">159 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-26">(</span><span·class="p"·data-group-id="0641647142-26">)</span><span[·...·truncated·by·diffoscope;·len:·35,·SHA:·784dc3d08a06553039205330bf422efdaaaed5d30b13cbdcac35071f9653b731·...·]2-25">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">
160 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-28">(</span><span·class="p"·data-group-id="7675435062-28">)</span><[·...·truncated·by·diffoscope;·len:·39,·SHA:·1a641a08b1bf19ecacefc56f7d73d3d1e3cdcc5eaecbe565451e884a5ceecbc0·...·]2-27">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">160 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-28">(</span><span·class="p"·data-group-id="0641647142-28">)</span><[·...·truncated·by·diffoscope;·len:·39,·SHA:·ca616aec7998251e70fe947ab5740cb76350775b2319db4e1e9b186e7a692a96·...·]2-27">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
161 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-30">(</span><span·class="p"·data-group-id="7675435062-30">)</span><span·cla[·...·truncated·by·diffoscope;·len:·31,·SHA:·cf1d53d11cfad538524361cea27424c67257f546807dc6e826223e1d2555f36d·...·]2-29">}</span><span·class="w">·············</span><span·class="p">|</span><span·class="w">161 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-30">(</span><span·class="p"·data-group-id="0641647142-30">)</span><span·cla[·...·truncated·by·diffoscope;·len:·31,·SHA:·19f123233f89318ec26880ad5cc1e37bb9c8d577e5d628058a849cd41e7296ce·...·]2-29">}</span><span·class="w">·············</span><span·class="p">|</span><span·class="w">
162 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-32">(</span><span·class="p"·data-group-id="7675435062-32">)</span><s[·...·truncated·by·diffoscope;·len:·38,·SHA:·aa8ac05ec0d40630648a24364628febf1b10bbaa57ce9f7db87248acb818a5dc·...·]2-31">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">162 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-32">(</span><span·class="p"·data-group-id="0641647142-32">)</span><s[·...·truncated·by·diffoscope;·len:·38,·SHA:·951c033bc1a13854e254492abbf90855f5a1f754546aabc10c62ffe8ba1e6c0e·...·]2-31">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">
163 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-34">(</span><span·class="p"·data-group-id="7675435062-34">)</span><sp[·...·truncated·by·diffoscope;·len:·37,·SHA:·e7253ce20eb4711d6f44e6ec10b09db5bfa33009a487184abb1778a79da895d4·...·]2-33">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">163 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-34">(</span><span·class="p"·data-group-id="0641647142-34">)</span><sp[·...·truncated·by·diffoscope;·len:·37,·SHA:·7d9ebc99efdee25a2e5b25c8b5a9e05efd8b3d7a6357acb89c4c1a86e6f234cc·...·]2-33">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
164 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-36">(</span><span·class="p"·data-group-id="7675435062-36">)</spa[·...·truncated·by·diffoscope;·len:·42,·SHA:·c1f6c1aa4a5a9f7af505f39476ee4d33b4fd6649edd6a47164786aebee275a32·...·]2-35">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">164 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-36">(</span><span·class="p"·data-group-id="0641647142-36">)</spa[·...·truncated·by·diffoscope;·len:·42,·SHA:·e85ede3517ae664e8713fba6f666c366918de4276b549b4361c9c84731c1f60e·...·]2-35">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
165 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-38">(</span><span·class="p"·data-group-id="7675435062-38">)</sp[·...·truncated·by·diffoscope;·len:·43,·SHA:·0a2e644de6159517d815ce1f415cb21cea4ff9aafae7e233536e544001dfa7d5·...·]2-37">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">165 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-38">(</span><span·class="p"·data-group-id="0641647142-38">)</sp[·...·truncated·by·diffoscope;·len:·43,·SHA:·bf328878fd28e20ff715354550b42a451f39eb3734fb051044a226d8e70af09c·...·]2-37">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
166 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-40">(</span><span·class="p"·data-group-id="7675435062-40">)</span><sp[·...·truncated·by·diffoscope;·len:·37,·SHA:·e7253ce20eb4711d6f44e6ec10b09db5bfa33009a487184abb1778a79da895d4·...·]2-39">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">166 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-40">(</span><span·class="p"·data-group-id="0641647142-40">)</span><sp[·...·truncated·by·diffoscope;·len:·37,·SHA:·7d9ebc99efdee25a2e5b25c8b5a9e05efd8b3d7a6357acb89c4c1a86e6f234cc·...·]2-39">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
167 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-42">(</span><span·class="p"·data-group-id="7675435062-42">)</span[·...·truncated·by·diffoscope;·len:·41,·SHA:·2e8c4e390cba793f679c244afaad212263f5347d6839ff43db3b7858150b6e49·...·]2-41">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">167 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-42">(</span><span·class="p"·data-group-id="0641647142-42">)</span[·...·truncated·by·diffoscope;·len:·41,·SHA:·52579ff6afa3ca4f4be80bb1e24bf8f4dda59e644dc95589eea715fcc0277483·...·]2-41">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">
168 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-44">(</span><span·class="p"·data-group-id="7675435062-44">)</span><[·...·truncated·by·diffoscope;·len:·39,·SHA:·1a641a08b1bf19ecacefc56f7d73d3d1e3cdcc5eaecbe565451e884a5ceecbc0·...·]2-43">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">168 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-44">(</span><span·class="p"·data-group-id="0641647142-44">)</span><[·...·truncated·by·diffoscope;·len:·39,·SHA:·ca616aec7998251e70fe947ab5740cb76350775b2319db4e1e9b186e7a692a96·...·]2-43">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
169 ·······················</span><span·class="p"·data-group-id="7675435062-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="7675435062-46">(</span><span·class="p"·data-group-id="7675435062-46">)</span><[·...·truncated·by·diffoscope;·len:·39,·SHA:·1a641a08b1bf19ecacefc56f7d73d3d1e3cdcc5eaecbe565451e884a5ceecbc0·...·]2-45">}</span><span·class="w">169 ·······················</span><span·class="p"·data-group-id="0641647142-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="0641647142-46">(</span><span·class="p"·data-group-id="0641647142-46">)</span><[·...·truncated·by·diffoscope;·len:·39,·SHA:·ca616aec7998251e70fe947ab5740cb76350775b2319db4e1e9b186e7a692a96·...·]2-45">}</span><span·class="w">
170 ······</span><span·class="nf">manager_options</span><span·class="p"·data-group-id="7675435062-47">(</span><span·class="p"·data-group-id="7675435062-47">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7675435062-48">[</span><span·class="nf">manager_option</span><span·class="p"[·...·truncated·by·diffoscope;·len:·133,·SHA:·556e996ccb85abd145dca72e60ec87e618e99c8f6c936abd40c1cef2dfd067f3·...·]2-48">]</span><span·class="w">170 ······</span><span·class="nf">manager_options</span><span·class="p"·data-group-id="0641647142-47">(</span><span·class="p"·data-group-id="0641647142-47">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0641647142-48">[</span><span·class="nf">manager_option</span><span·class="p"[·...·truncated·by·diffoscope;·len:·133,·SHA:·1b2dc22129ac4cfa5674b35123bf9c7263d60a16ccfa2cf00849a46f0bc40c34·...·]2-48">]</span><span·class="w">
171 ······</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="7675435062-50">(</span><span·class="p"·data-group-id="7675435062-50">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7675435062-51">{</span><span·class="ss">restart_type</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·227,·SHA:·603d3376c3361f40bcf014f19c85e92ae6098e8c6538385fcbc0f1310457d8ec·...·]2-51">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">171 ······</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="0641647142-50">(</span><span·class="p"·data-group-id="0641647142-50">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0641647142-51">{</span><span·class="ss">restart_type</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·227,·SHA:·e1ffacfb0b6345457e0894363e988f43c00673535cbab5879b8a8bece7421d8a·...·]2-51">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
172 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-54">(</span><span·class="p"·data-group-id="7675435062-54"[·...·truncated·by·diffoscope;·len:·49,·SHA:·39250cde00841557b806692f5206cdd02b57f4191fb71bd6051f5c74c4d270fc·...·]2-53">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">172 ·························</span><span·class="p"·data-group-id="0641647142-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="0641647142-54">(</span><span·class="p"·data-group-id="0641647142-54"[·...·truncated·by·diffoscope;·len:·49,·SHA:·8f59e244e40b4079383bf2ec64c8952da5ec418abacca91c6f2a5e051e404557·...·]2-53">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
173 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-56">(</span><span·class="p"·data-group-id="7675435062-56">)</span[·...·truncated·by·diffoscope;·len:·41,·SHA:·2e8c4e390cba793f679c244afaad212263f5347d6839ff43db3b7858150b6e49·...·]2-55">}</span><span·class="w">··········</span><span·class="p">|</span><span·class="w">173 ·························</span><span·class="p"·data-group-id="0641647142-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="0641647142-56">(</span><span·class="p"·data-group-id="0641647142-56">)</span[·...·truncated·by·diffoscope;·len:·41,·SHA:·52579ff6afa3ca4f4be80bb1e24bf8f4dda59e644dc95589eea715fcc0277483·...·]2-55">}</span><span·class="w">··········</span><span·class="p">|</span><span·class="w">
174 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-58">(</span><span·class="p"·data-group-id="7675435062-58">)</[·...·truncated·by·diffoscope;·len:·45,·SHA:·d3f3b30204598bd879cfd0dae1b14034d53a6ef77ab69fe87ca06f05829af11b·...·]2-57">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">174 ·························</span><span·class="p"·data-group-id="0641647142-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="0641647142-58">(</span><span·class="p"·data-group-id="0641647142-58">)</[·...·truncated·by·diffoscope;·len:·45,·SHA:·5bcafdbcd9e33b9f3cd280ac06c237c45392b91ff14b6859a741cd63763c9bd1·...·]2-57">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">
175 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-60">(</span><span·class="p"·data-group-id="7675435062-60"[·...·truncated·by·diffoscope;·len:·49,·SHA:·39250cde00841557b806692f5206cdd02b57f4191fb71bd6051f5c74c4d270fc·...·]2-59">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">175 ·························</span><span·class="p"·data-group-id="0641647142-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="0641647142-60">(</span><span·class="p"·data-group-id="0641647142-60"[·...·truncated·by·diffoscope;·len:·49,·SHA:·8f59e244e40b4079383bf2ec64c8952da5ec418abacca91c6f2a5e051e404557·...·]2-59">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
176 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-62">(</span><span·class="p"·data-group-id="7675435062-62">)<[·...·truncated·by·diffoscope;·len:·46,·SHA:·760c2eb28195358a4b5cb28145ba6ea852c30f8d3d6419307921b5ba83228da6·...·]2-61">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">176 ·························</span><span·class="p"·data-group-id="0641647142-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="0641647142-62">(</span><span·class="p"·data-group-id="0641647142-62">)<[·...·truncated·by·diffoscope;·len:·46,·SHA:·452ac9f4b4f6c8baafd91aa82e3b75326206271ddbaca9d2a2e838c4d8c88d53·...·]2-61">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
177 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-64">(</span><span·class="p"·data-group-id="7675435062-64">)[·...·truncated·by·diffoscope;·len:·47,·SHA:·b847342792ca4579c03e84a7c8049dc8202a54fa31fa80942c65514ab90e7e3e·...·]2-63">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">177 ·························</span><span·class="p"·data-group-id="0641647142-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="0641647142-64">(</span><span·class="p"·data-group-id="0641647142-64">)[·...·truncated·by·diffoscope;·len:·47,·SHA:·eedabd25e491243adc0c213296922ba62eecbe9f164f19709f076d67095411cd·...·]2-63">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
178 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-66">(</span><span·class="p"·data-group-id="7675435062-66">)</sp[·...·truncated·by·diffoscope;·len:·43,·SHA:·0a2e644de6159517d815ce1f415cb21cea4ff9aafae7e233536e544001dfa7d5·...·]2-65">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">178 ·························</span><span·class="p"·data-group-id="0641647142-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="0641647142-66">(</span><span·class="p"·data-group-id="0641647142-66">)</sp[·...·truncated·by·diffoscope;·len:·43,·SHA:·bf328878fd28e20ff715354550b42a451f39eb3734fb051044a226d8e70af09c·...·]2-65">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
179 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-68">(</span><span·class="p"·data-group-id="7675435062-68[·...·truncated·by·diffoscope;·len:·50,·SHA:·301a36ba4f3693aa4aaa6ff4722a4f9268d397ea4a61413244fe473e561711fc·...·]2-67">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">179 ·························</span><span·class="p"·data-group-id="0641647142-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="0641647142-68">(</span><span·class="p"·data-group-id="0641647142-68[·...·truncated·by·diffoscope;·len:·50,·SHA:·99af6001c53bb83896f51d83a1e8289c3e317acb354ed4440c20b1d4bb0bd7fb·...·]2-67">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
180 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-70">(</span><span·class="p"·data-group-id="7675435062-70">)</sp[·...·truncated·by·diffoscope;·len:·43,·SHA:·0a2e644de6159517d815ce1f415cb21cea4ff9aafae7e233536e544001dfa7d5·...·]2-69">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">180 ·························</span><span·class="p"·data-group-id="0641647142-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="0641647142-70">(</span><span·class="p"·data-group-id="0641647142-70">)</sp[·...·truncated·by·diffoscope;·len:·43,·SHA:·bf328878fd28e20ff715354550b42a451f39eb3734fb051044a226d8e70af09c·...·]2-69">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
181 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-72">(</span><span·class="p"·data-group-id="7675435062-72">)</span><span·class="w">··</span><span·class="p">|</span><span·class="w">181 ·························</span><span·class="p"·data-group-id="0641647142-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="0641647142-72">(</span><span·class="p"·data-group-id="0641647142-72">)</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
182 ·························</span><span·class="p"·data-group-id="7675435062-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="7675435062-74">(</span><span·class="p"·data-group-id="7675435062-74">[·...·truncated·by·diffoscope;·len:·48,·SHA:·2513cf1564f933b87fcb0227756eb13ea378b2a2d8aae141baca953ae96bc669·...·]2-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="0641647142-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="0641647142-74">(</span><span·class="p"·data-group-id="0641647142-74">[·...·truncated·by·diffoscope;·len:·48,·SHA:·170d3a58f04db4ead9252a33a42d2699448f81668c448a67ecfe90557a4853a9·...·]2-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>651 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>369 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>619 <p>Copyright·©·1996-2024·<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="4911405242-1">{</span><span·class="ss">myVar</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4911405242-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:·f02f36dd5b27e6557bac6504e0c87ad59898e9d5bcee813ddbbae7d53a421e3d·...·]-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="1710836561-1">{</span><span·class="ss">myVar</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1710836561-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:·dc347feb606392fa39487b21ede941ca6311f7c11e377dee276680acc340f521·...·]-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="1168105269-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="1168105269-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="3231560473-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="3231560473-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="1168105269-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="1168105269-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="3231560473-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="3231560473-2">)</span><span·class="p">.</span><span·class="w">
  
174 </span><span·class="nf">myTable_func</span><span·class="p"·data-group-id="1168105269-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="1168105269-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="3231560473-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="3231560473-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="1168105269-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="1168105269-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="3231560473-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="3231560473-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="1168105269-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:·ae0409f6094c04ccc3f848e03b53ae10913601ab657c9239b678ef8db41ba0fe·...·]-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="3231560473-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:·863a1d3eeb7527ecb9e161764cde45b44ba45172fee59b42b9abc32d849ab490·...·]-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="1168105269-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="3231560473-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="1168105269-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="3231560473-6">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
180 ····</span><span·class="p"·data-group-id="1168105269-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="1168105269-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">180 ····</span><span·class="p"·data-group-id="3231560473-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="3231560473-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="1168105269-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="1168105269-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="3231560473-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="3231560473-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="1168105269-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:·47c21cad586e4a94a983d37648cdbc444c52fe9aa1866b25bace4df5986243ec·...·]-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="3231560473-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:·904be4aa69d752593635b503ed8f3c7b7a7e0f2940ea8bb44d28b83e0261643c·...·]-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="1168105269-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="3231560473-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="1168105269-10">)</span><span·class="p">,</span><span·class="w">187 ·······························</span><span·class="n">NameDb</span><span·class="p"·data-group-id="3231560473-10">)</span><span·class="p">,</span><span·class="w">
188 ····</span><span·class="p"·data-group-id="1168105269-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="1168105269-11">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">188 ····</span><span·class="p"·data-group-id="3231560473-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="3231560473-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="1168105269-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="1168105269-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="3231560473-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="3231560473-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="1168105269-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:·a16a32955e0df9a4b389c9cbdcd974b8108a22ee4eec9084eb8dca211f0a5476·...·]-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="3231560473-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:·259493fc3f857b1708dae9a1acbfaa84b3f2d9e2428fd68b2fd4f4ae448fd558·...·]-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="1168105269-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:·0c5e0c28d8f747f12952b31895375716773167e8ab8280dbdc2eb791493c2a36·...·]-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="3231560473-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:·43b03033226dfecc8cd999e92242245b789e5231bffe6cec19716442bbe47408·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>964 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>194 <p>Copyright·©·1996-2024·<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="0478308987-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="0478308987-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="0643306992-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="0643306992-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="0478308987-2">(</span><span·class="p"·data-group-id="0478308987-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="0643306992-2">(</span><span·class="p"·data-group-id="0643306992-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="0478308987-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="0478308987-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="0643306992-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="0643306992-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="8332029550-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="8332029550-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="1191692345-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="1191692345-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
144 ··</span><span·class="p"·data-group-id="8332029550-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8332029550-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:·1de0338b8b3bf4493b06e02df4077984689e3626c8dab04c4c9434cba45ab893·...·]-4">)</span><span·class="p">,</span><span·class="w">144 ··</span><span·class="p"·data-group-id="1191692345-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1191692345-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:·30c8dcf9225cf04cb558de108e51816787c6886f538d5709b565aa6a843ca5bc·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>796 <p>Copyright·©·1996-2024·<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="5970046648-1">[</span><span·class="p"·data-group-id="5970046648-2">{</span><span·class="p"·data-group-id="5970046648-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·[·...·truncated·by·diffoscope;·len:·767,·SHA:·39b398a2d09002d0fe10a90bd9056e520b508a5348cac47263d1a66db03d9731·...·]-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,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="8215918445-1">[</span><span·class="p"·data-group-id="8215918445-2">{</span><span·class="p"·data-group-id="8215918445-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·[·...·truncated·by·diffoscope;·len:·767,·SHA:·189386d297ec9eec6a5dfb38f9dbe46049b66c928ada575ce2cf45b782b4bbed·...·]-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="8232187344-1">(</span><span·class="ss">get_next</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8232187344-2">[</span><span·class="p"·data-group-id="8232187344-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8232187344-3">[</span><span·class="mi">0</span><span·class="p"·data-group-id="8232187344-3">]</span><span·class="p"·data-group-id="8232187344-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="8232187344-4">(</span><span·class="ss">get_next</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8232187344-5">[</span><span·class="mi">3</span><span·[·...·truncated·by·diffoscope;·len:·447,·SHA:·8e2eeace7e1e27d8fb094b3a5fa0189ed16ac086f0ede54d712b47a4a75954b4·...·]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="1405227277[·...·truncated·by·diffoscope;·len:·497,·SHA:·fc1cb5067bf19bcb4485ff276b390417e2d0ea9edd5860218f8bfa0d27fd86f0·...·]
 219 </span><span·class="nf">my_table</span><span·class="p"·data-group-id="1405227277-4">(</span><span·class="ss">get_next</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1405227277-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="1405227277-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1405227277-6">[</span><span·class="mi">1</span><span·class="p"·data-group-id="1405227277-6">]</span><span·class="p"·data-group-id="1405227277-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="5348254496-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5348254496-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:·1ce939ad55d562ce863838f7eaa9281b542c6a7b6f3667317d7952cb38b8929b·...·]-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="3247871709-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3247871709-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:·45c6210f0486474792b6b047eb58ec28e2c35aa5380d0f75222cf0e5918e8458·...·]-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="5348254496-4">{</span><span·class="p"·data-group-id="5348254496-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="5348254496-5">]</span><span[·...·truncated·by·diffoscope;·len:·460,·SHA:·50e15655b0e550b6ffa65e8011d6d5fa5676e2b0197959768ed95eeca35004f7·...·]-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="3247871709-4">{</span><span·class="p"·data-group-id="3247871709-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="3247871709-5">]</span><span[·...·truncated·by·diffoscope;·len:·460,·SHA:·efec6ab338ece37d3a29063487fd387be21e8a05ab51eccae828ca7cff5ca871·...·]-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="9281658753-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9281658753-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:·d1f377156c20791f322b90c503735328933d767ec1b788b11a241f258846e114·...·]-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="3921395997-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3921395997-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:·359b93c316f9f07db5dea3afa277ad711e86efcc912cbe2f22fa5856d0dd504c·...·]-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="9281658753-4">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9281658753-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="9281658753-6">[</span><span·class="ss">&#39;NAME&#39;</span><span·class="p"·data-group-id="9281658753-6">]</span><span·class="p"·data-group-id="9281658753-5">}</span><span·class="p"·data-group-id="9281658753-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="1203967361-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1203967361-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="1203967361-3">[</span><span·class="mi">16#2543</span><span·class="p"·data-group-id="1203967361-3">]</span><span·class="p"·data-group-id="1203967361-2">}</span><span·class="p"·data-group-id="1203967361-1">}</span><span·class="p">.</span><span·class="w"> 
246 </span><span·class="p"·data-group-id="1203967361-4">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1203967361-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:·e977037014f578544d29aa803e020dd770f154361ada63685bb2d0ee93516264·...·]244 </span><span·class="p"·data-group-id="3921395997-4">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3921395997-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:·cabee942eabffc750b50b3eaf5e5a5fdfd2545cda911909ba4ee2bd677746f17·...·]
 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="9602142867-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9602142867-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="9602142867-3">[</span><span·class="mi">16#2543</span><span·class="p"·data-group-id="9602142867-3">]</span><span·class="p"·data-group-id="9602142867-2">}</span><span·class="p"·data-group-id="9602142867-1">}</span><span·class="p">.</span><span·class="w">
 246 </span><span·class="p"·data-group-id="9602142867-4">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9602142867-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="9602142867-6">[</span><span·class="mi">16#A2B3</span><span·class="p"·data-group-id="9602142867-6">]</span><span·class="p"·data-group-id="9602142867-5">}</span><span·class="p"·data-group-id="9602142867-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>350 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>258 <p>Copyright·©·1996-2024·<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="8415827700-1">{</span><span·class="ss">transports</span><span·class="p">,</span><span·class="w">·······</span><span·class="p"·data-group-id="8415827700-2">[</span><span·class="p"·data-group-id="8415827700-3">{</span><span·class="ss">transportDomainUdpIpv4<[·...·truncated·by·diffoscope;·len:·561,·SHA:·81293ae9e1afcf823d13a9277706f08a5dce9d326e13faee9c8ce1a688a78676·...·]-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="9427116105-1">{</span><span·class="ss">transports</span><span·class="p">,</span><span·class="w">·······</span><span·class="p"·data-group-id="9427116105-2">[</span><span·class="p"·data-group-id="9427116105-3">{</span><span·class="ss">transportDomainUdpIpv4<[·...·truncated·by·diffoscope;·len:·561,·SHA:·11008920ba82aed10b865e3a8a4ed68b10dce0f6abf0a773b8228f0d2888fcf7·...·]-3">}</span><span·class="p">,</span><span·class="w">
153 ····················</span><span·class="p"·data-group-id="8415827700-6">{</span><span·class="ss">transportDomainUdpIpv6</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8415827700-7">{</span><span·class="p"·data-group-id="8415827700-8">{</span><span·class="mi">0</span><span·cla[·...·truncated·by·diffoscope;·len:·663,·SHA:·7e599cceda3f8988526cf67d10030ad42c4478f086357a42e3b0dd04b945afdb·...·]-1">}</span><span·class="p">.</span><span·class="w">153 ····················</span><span·class="p"·data-group-id="9427116105-6">{</span><span·class="ss">transportDomainUdpIpv6</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9427116105-7">{</span><span·class="p"·data-group-id="9427116105-8">{</span><span·class="mi">0</span><span·cla[·...·truncated·by·diffoscope;·len:·663,·SHA:·6f1135e3f90abf7ff60c6d1b5fd6221f7b3e05a37be0adb6e0b85e36ecf2ba23·...·]-1">}</span><span·class="p">.</span><span·class="w">
154 </span><span·class="p"·data-group-id="8415827700-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="8415827700-9">}</span><span·class="p">.</span><span·class="w">154 </span><span·class="p"·data-group-id="9427116105-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="9427116105-9">}</span><span·class="p">.</span><span·class="w">
155 </span><span·class="p"·data-group-id="8415827700-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="8415827700-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="9427116105-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="9427116105-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>248 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>256 <p>Copyright·©·1996-2024·<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="5786483274-1">(</span><span·class="s">&quot;RFC1213-MIB&quot;</span><span·class="p"·data-group-id="5786483274-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="3592608239-1">(</span><span·class="s">&quot;RFC1213-MIB&quot;</span><span·class="p"·data-group-id="3592608239-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="2653777101-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="9256407498-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="2653777101-2">[</span><span·class="p"·data-group-id="2653777101-3">{</span><span·class="ss">i</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2653777101-4">[</span><span·class="s">&quot;friend_mibs/&quot;</span><span·cl[·...·truncated·by·diffoscope;·len:·292,·SHA:·b8f37e1064d8ff0293378ac98038bb64bed2cc4c76b8eb70d7fdd2b756c05970·...·]-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="9256407498-2">[</span><span·class="p"·data-group-id="9256407498-3">{</span><span·class="ss">i</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9256407498-4">[</span><span·class="s">&quot;friend_mibs/&quot;</span><span·cl[·...·truncated·by·diffoscope;·len:·292,·SHA:·57c7ea4e9658ecdef8805b1c76347dcb19dd159d6b88708db5920631e6649298·...·]-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="3381800669-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="8369482653-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="3381800669-2">[</span><span·class="p"·data-group-id="3381800669-3">{</span><span·class="ss">il</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3381800669-4">[</span><span·class="s">&quot;snmp/priv/mibs/&quot;</span><spa[·...·truncated·by·diffoscope;·len:·295,·SHA:·3a9b262029e203b8c009ab6e11c3a846d83eaf7f7bc1f5b13b638add87740955·...·]-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="8369482653-2">[</span><span·class="p"·data-group-id="8369482653-3">{</span><span·class="ss">il</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8369482653-4">[</span><span·class="s">&quot;snmp/priv/mibs/&quot;</span><spa[·...·truncated·by·diffoscope;·len:·295,·SHA:·0e78688767ca739177a6ca61966b140b7d99fad7fc9c5e7624b0912c5a7a78f3·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>267 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>487 <p>Copyright·©·1996-2024·<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="0969127516-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="0969127516-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="1894165484-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="1894165484-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="0969127516-2">(</span><span·class="s">&quot;snmp/include/snmp_types.hrl&quot;</span><span·class="p"·data-group-id="0969127516-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="1894165484-2">(</span><span·class="s">&quot;snmp/include/snmp_types.hrl&quot;</span><span·class="p"·data-group-id="1894165484-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1054 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>427 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>819 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>770 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1095 <p>Copyright·©·1996-2024·<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="3921413342-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="3921413342-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="3599462229-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="3599462229-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="3921413342-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:·35,·SHA:·f48bfa9baf0224ee6bf97dee1a98bf07b36c421ad2a424dd0b388a093238a88f·...·]-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="3599462229-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:·35,·SHA:·7725a0af8fb4f2b465eda32c315af6064255c921d1b310097e1d7ee4d8bd182f·...·]-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="1973628390-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="1973628390-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="0376176676-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="0376176676-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="1973628390-2">(</span><span·class="ss">snmp_master_agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1973628390-3">[</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·142,·SHA:·504e8e5d138753034878065446982d15ccb9210ffbd0839e6805467396585178·...·]-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="0376176676-2">(</span><span·class="ss">snmp_master_agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0376176676-3">[</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·142,·SHA:·857e5304229356991b8f9480dfd14211b04fb76603d7ea60d51b3d42db39ac04·...·]-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="1020344126-1">(</span><span·class="n">MAPid</span><span·class="p">,</span><span·class="p"·data-group-id="1020344126-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="1020344126-2">]</span><span·class="p">,</span><span·class="n">SA1</span><span·class="p"·data-group-id="1020344126-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="1020344126-3">(</span><span·class="n">SA1</span><span·class="p">,</span><span·class="p"·data-group-id="1020344126-4">[<[·...·truncated·by·diffoscope;·len:·476,·SHA:·2b6ba0316add6b8e3f3bf51589db1da49c026b7fbeeab21c4dfce1ada7c23720·...·]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="1177128673-1">(</span><span·class="n">MAPid</span>[·...·truncated·by·diffoscope;·len:·445,·SHA:·da69faa152f842892a054802c50a138b03e096e4fd3455056549cfe66102fd1c·...·]
 4567 </span><span·class="nc">snmp_agent</span><span·class="p">:</span><span·class="nf">register_subagent</span><span·class="p"·data-group-id="1177128673-3">(</span><span·class="n">SA1</span><span·class="p">,</span><span·class="p"·data-group-id="1177128673-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="1177128673-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SA2</span><span·class="p"·data-group-id="1177128673-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="9495866615-1">[</span><span·class="nf">address</span><span·class="p"·data-group-id="9495866615-2">(</span><span·class="p"·data-group-id="9495866615-2">)</span><span·class="p"·data-group-id="9495866615-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="2106445797-1">[</span><span·class="nf">address</span><span·class="p"·data-group-id="2106445797-2">(</span><span·class="p"·data-group-id="2106445797-2">)</span><span·class="p"·data-group-id="2106445797-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="9495866615-3">(</span><span·class="p"·data-group-id="9495866615-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="2106445797-3">(</span><span·class="p"·data-group-id="2106445797-3">)</span><span·class="w">
5016 ········</span><span·class="nf">address</span><span·class="p"·data-group-id="9495866615-4">(</span><span·class="p"·data-group-id="9495866615-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="9495866615-5">(</span><span·class="p"·data-group-id="9495866615-5">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">v3_address</span><span·class="p"·data-group-id="9495866615-6">(</span><span·class="p"·data-group-id="9495866615-6">)</span><span·class="w"> 
5017 ········</span><span·class="nf">v1_address</span><span·class="p"·data-group-id="9495866615-7">(</span><span·class="p"·data-group-id="9495866615-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9495866615-8">{</span><span·class="n">TDomain</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TAddress</span><span·class="p"·data-group-id="9495866615-8">}</span><span·class="w"> 
5018 ········</span><span·class="nf">v3_address</span><span·class="p"·data-group-id="9495866615-9">(</span><span·class="p"·data-group-id="9495866615-9">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9495866615-10">{</span><span·c[·...·truncated·by·diffoscope;·len:·337,·SHA:·4f0b46b9821c2705a04ad772c97576d24bcd512128a0b0440d5ef075d6384f6d·...·]</span><span·class="w">5016 ········</span><span·class="nf">address</span><span·class="p"·data-group-id="2106445797-4">(</span><span·class="p"·data-group-id="2106445797-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[·...·truncated·by·diffoscope;·len:·282,·SHA:·e8d8a5202b263537ca0d7f11375b07e3181578ea3684060c12f11aa78a8e6028·...·]</span><span·class="w">
 5017 ········</span><span·class="nf">v1_address</span><span·class="p"·data-group-id="2106445797-7">(</span><span·class="p"·data-group-id="2106445797-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2106445797-8">{</span><span·class="n">TDomain</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TAddress</span><span·class="p"·data-group-id="2106445797-8">}</span><span·class="w">
 5018 ········</span><span·class="nf">v3_address</span><span·class="p"·data-group-id="2106445797-9">(</span><span·class="p"·data-group-id="2106445797-9">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2106445797-10">{</span><span·class="p"·data-group-id="2106445797-11">{</span><span·class="n">TDomain</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TAddress</span><span·class="p"·data-group-id="2106445797-11">}</span><span·class="p">,</span><span·class="w">·</span><span·class="n">V3MsgData</span><span·class="p"·data-group-id="2106445797-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="9495866615-12">(</span><span·class="p"·data-group-id="9495866615-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="2106445797-12">(</span><span·class="p"·data-group-id="2106445797-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="9495866615-13">(</span><span·class="p"·data-group-id="9495866615-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="2106445797-13">(</span><span·class="p"·data-group-id="2106445797-13">)</span><span·class="w">
5021 ········</span><span·class="nf">tdomain</span><span·class="p"·data-group-id="9495866615-14">(</span><span·class="p"·data-group-id="9495866615-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="2106445797-14">(</span><span·class="p"·data-group-id="2106445797-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="9495866615-15">(</span><span·class="p"·data-group-id="9495866615-15">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9495866615-16">[</span><span·class="n">A1</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·378,·SHA:·16eefb024b1a54f163f20828dcb864e3c55331c8d0599cd5438dc6672fda1f48·...·]-16">]</span><span·class="w">5023 ········</span><span·class="nf">taddress</span><span·class="p"·data-group-id="2106445797-15">(</span><span·class="p"·data-group-id="2106445797-15">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2106445797-16">[</span><span·class="n">A1</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·378,·SHA:·8d134b6cf4acbc9e73ff61feeef6f5e8ed34dde41f8ddf148abfcd36c695386d·...·]-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="9495866615-17">(</span><span·class="p"·data-group-id="9495866615-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="2106445797-17">(</span><span·class="p"·data-group-id="2106445797-17">)</span><span·class="w">
5027 ········</span><span·class="nf">v3_msg_data</span><span·class="p"·data-group-id="9495866615-18">(</span><span·class="p"·data-group-id="9495866615-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="9495866615-19">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·1049256fcbcf3a65ff3d7c2bf19257bc650be3d5847ac7794089075939859b57·...·]-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="2106445797-18">(</span><span·class="p"·data-group-id="2106445797-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="2106445797-19">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·fbe96d1d51d5edb12e3a96e4e5447a016e52d68fc6ad33762dd62321592380e4·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>6067 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3808 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>245 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>270 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>270 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>277 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>266 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>740 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1125 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>848 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1018 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>493 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>505 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>425 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>330 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>373 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>412 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>216 <p>Copyright·©·1996-2024·<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="0775737337-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="0775737337-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="7619606529-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="7619606529-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="0775737337-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="0775737337-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="7619606529-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="7619606529-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="0686844647-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="0686844647-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="2768752187-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="2768752187-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="0686844647-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="0686844647-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="2768752187-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="2768752187-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4058 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1369 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>648 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>575 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>497 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>720 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>269 <p>Copyright·©·1996-2024·<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="7232874982-1">(</span><span·class="mi">22</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7232874982-2">[</span><span·class="p"·data-group-id="7232874982-3">{</span><span·class="ss">user</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·625,·SHA:·59190af87fdc34364b9f427480ad680d7649390bd75a0049c2adad67b3204808·...·]-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="1373798283-1">(</span><span·class="mi">22</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1373798283-2">[</span><span·class="p"·data-group-id="1373798283-3">{</span><span·class="ss">user</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·625,·SHA:·5516d0ba0beed102c565685ad0e5c94b717ae8d8dadbc525f21432942507255d·...·]-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="1697541038-2">[</span><span·class="p"·data-group-id="1697541038-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="1697541038-3">}</span><span·class="p">,</span><span·class="w">146 ·</span><span·class="p"·data-group-id="1521863887-2">[</span><span·class="p"·data-group-id="1521863887-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="1521863887-3">}</span><span·class="p">,</span><span·class="w">
147 ··</span><span·class="p"·data-group-id="1697541038-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="1697541038-4">}</span><span·class="p">,</span><span·class="w">147 ··</span><span·class="p"·data-group-id="1521863887-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="1521863887-4">}</span><span·class="p">,</span><span·class="w">
148 ··</span><span·class="p"·data-group-id="1697541038-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1697541038-6">[</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">148 ··</span><span·class="p"·data-group-id="1521863887-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1521863887-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="1697541038-6">]</span><span·class="p"·data-group-id="1697541038-5">}</span><span·class="p">,</span><span·class="w">150 ·········</span><span·class="ss">ssh_xfer</span><span·class="p"·data-group-id="1521863887-6">]</span><span·class="p"·data-group-id="1521863887-5">}</span><span·class="p">,</span><span·class="w">
151 ··</span><span·class="p"·data-group-id="1697541038-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1697541038-8">[</span><span·class="p"·data-group-id="1697541038-8">]</span><span·class="p"·data-group-id="1697541038-7">}</span><span·class="p">,</span><span·class="w">151 ··</span><span·class="p"·data-group-id="1521863887-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1521863887-8">[</span><span·class="p"·data-group-id="1521863887-8">]</span><span·class="p"·data-group-id="1521863887-7">}</span><span·class="p">,</span><span·class="w">
152 ··</span><span·class="p"·data-group-id="1697541038-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1697541038-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">st[·...·truncated·by·diffoscope;·len:·266,·SHA:·d33f3472a286ff2aed994c0c8e18210a4f0fcccb384835c909e33ae1f8ba1442·...·]-9">}</span><span·class="p">,</span><span·class="w">152 ··</span><span·class="p"·data-group-id="1521863887-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1521863887-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">st[·...·truncated·by·diffoscope;·len:·266,·SHA:·1dd5c3e0eaee819d8b7e347a6b55abf5e92592567e50a9916acccd1acca24d88·...·]-9">}</span><span·class="p">,</span><span·class="w">
153 ··</span><span·class="p"·data-group-id="1697541038-11">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1697541038-12">[</span><span·class="p"·data-group-id="1697541038-13">{</span><span·class="ss">user</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·128,·SHA:·2c8f97668ce231166cd4afcce592aa692e44d734745e90699a4d3a3f3a0d6224·...·]-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="1521863887-11">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1521863887-12">[</span><span·class="p"·data-group-id="1521863887-13">{</span><span·class="ss">user</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·128,·SHA:·b044e1861b8bb80a7bed7d3cdd8b3298fb0784cb23cda34965f94b58db850f3a·...·]-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="1697541038-14">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1697541038-15">{</span><span·class="ss">ssh_app</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·177,·SHA:·ec98c7aabcc7bdd47061be2219babae50530573246e4d460ab502399fe74cee4·...·]-14">}</span><span·class="p">,</span><span·class="w">154 ··</span><span·class="p"·data-group-id="1521863887-14">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1521863887-15">{</span><span·class="ss">ssh_app</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·177,·SHA:·72ca1992779380dcc83b443646f747ba7df7df846e08e8ecadf3a30f9c82f031·...·]-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="0551070511-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="6834336771-1">[</span><span·class="w">
156 </span><span·class="p"·data-group-id="0551070511-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0551070511-3">[</span><span·class="p"·data-group-id="0551070511-4">{</span><span·class="ss">user</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·207,·SHA:·1a5e6dc158e62d7e140f01389ec16ee064d2f46ff6974572ad5277d6d2a7b7c4·...·]1-2">}</span><span·class="w">156 </span><span·class="p"·data-group-id="6834336771-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6834336771-3">[</span><span·class="p"·data-group-id="6834336771-4">{</span><span·class="ss">user</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·207,·SHA:·01e7cd1595513029506b244561bc8f991a3e635f7df70ecf51eb4e0fb33cb971·...·]1-2">}</span><span·class="w">
157 </span><span·class="p"·data-group-id="0551070511-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="6834336771-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="8275326999-1">[</span><span·class="w">158 this·way:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5898114720-1">[</span><span·class="w">
159 </span><span·class="p"·data-group-id="8275326999-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8275326999-3">[</span><span·class="p"·data-group-id="8275326999-4">{</span><span·class="ss">server_options</span><span·class="p">,</span><span·class="p"·data-group-id="8275326999-5">[</span><span·class="p"·data-group-id="8275326999-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="8275326999-6">}</span><span·class="p"·data-group-id="8275326999-5">]</span><span·class="p"·data-group-id="8275326999-4">}</span><span·class="p">,</span><span·class="w"> 
160 ·······</span><span·class="p"·data-group-id="8275326999-7">{</span><span·class="ss">client_options</span><span·class="p">,</span><span·class="p"·data-group-id="8275326999-8">[</span><span·class="p"·data-group-id="8275326999-9">{</span><span·class="ss">user[·...·truncated·by·diffoscope;·len:·245,·SHA:·d7d8b591d993674c238a79ffb573db6933c3cc141533041ace5eae8a78ce98f6·...·]</span><span·class="w">159 </span><span·class="p"·data-group-id="5898114720-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5898114720-3">[</span><span·class="p"·data-group-id="5898114720-4">{</span><span·class="ss[·...·truncated·by·diffoscope;·len:·443,·SHA:·1f0be2c5ac33d842cdb5f71be0f31d4ea1aceccbaea2dfaf4bc7ad06f9fe8e5a·...·]</span><span·class="w">
 160 ·······</span><span·class="p"·data-group-id="5898114720-7">{</span><span·class="ss">client_options</span><span·class="p">,</span><span·class="p"·data-group-id="5898114720-8">[</span><span·class="p"·data-group-id="5898114720-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="5898114720-9">}</span><span·class="p"·data-group-id="5898114720-8">]</span><span·class="p"·data-group-id="5898114720-7">}</span><span·class="w">
161 </span><span·class="p"·data-group-id="8275326999-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="5898114720-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="8193493629-1">(</span><span·class="p"·data-group-id="8193493629-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="6471423720-1">(</span><span·class="p"·data-group-id="6471423720-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="8193493629-2">(</span><span·class="p"·data-group-id="8193493629-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="6471423720-2">(</span><span·class="p"·data-group-id="6471423720-2">)</span><span·class="p">.</span><span·class="w">
235 </span><span·class="p"·data-group-id="8193493629-3">[</span><span·class="p"·data-group-id="8193493629-4">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="8193493629-5">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·69,·SHA:·c464bb0a808695d657a5a823283900ffbca076126aad3617508a2f18e5221e07·...·]-4">}</span><span·class="p">,</span><span·class="w">235 </span><span·class="p"·data-group-id="6471423720-3">[</span><span·class="p"·data-group-id="6471423720-4">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="6471423720-5">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·69,·SHA:·3e20c61dd45a70631f079dad85942491c148e4e15bdd1679e152267454fb956a·...·]-4">}</span><span·class="p">,</span><span·class="w">
236 ·</span><span·class="p"·data-group-id="8193493629-6">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="8193493629-7">[</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p"·data-group-id="8193493629-7">]</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·5454474052d7be82be40f76208df56de60ca8db43080cf16dcec668c9a0149f1·...·]-6">}</span><span·class="p">,</span><span·class="w">236 ·</span><span·class="p"·data-group-id="6471423720-6">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="6471423720-7">[</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p"·data-group-id="6471423720-7">]</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·19f5168caee42407509c96f64d539622c39548212ca57731f090b1f3c1fb8266·...·]-6">}</span><span·class="p">,</span><span·class="w">
237 ·</span><span·class="p"·data-group-id="8193493629-8">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="8193493629-9">[</span><span·class="p"·data-group-id="8193493629-10">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class=[·...·truncated·by·diffoscope;·len:·181,·SHA:·31b3e98e9eb2248d2c0f414eced19f1eebda1d559201c9cd87cd31bbc33594e4·...·]-10">}</span><span·class="p">,</span><span·class="w">237 ·</span><span·class="p"·data-group-id="6471423720-8">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="6471423720-9">[</span><span·class="p"·data-group-id="6471423720-10">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class=[·...·truncated·by·diffoscope;·len:·181,·SHA:·048633462fd0267707c8f0c42b3ba812735976fb9dfbfb7e5c7d38cd9c0c0463·...·]-10">}</span><span·class="p">,</span><span·class="w">
238 ··········</span><span·class="p"·data-group-id="8193493629-12">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8193493629-13">[</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p"·data-group-id="8193493629-13">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·128,·SHA:·2e904cbd304462726398d78d202c21779e06a471e44f6e222fc41640145758c4·...·]-8">}</span><span·class="p">,</span><span·class="w">238 ··········</span><span·class="p"·data-group-id="6471423720-12">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6471423720-13">[</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p"·data-group-id="6471423720-13">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·128,·SHA:·07115219ca5591fcd4c0f28e1d4218d67c80ea7a5518c62b9c01c1b1dc87935a·...·]-8">}</span><span·class="p">,</span><span·class="w">
239 ·</span><span·class="p"·data-group-id="8193493629-14">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="8193493629-15">[</span><span·class="p"·data-group-id="8193493629-16">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·179,·SHA:·616fc974847a18bd745528b02c0612553ed0129e4a25291afc2f9eece42eaee8·...·]-16">}</span><span·class="p">,</span><span·class="w">239 ·</span><span·class="p"·data-group-id="6471423720-14">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="6471423720-15">[</span><span·class="p"·data-group-id="6471423720-16">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·179,·SHA:·00dcdff2352ed80893b598b848373f9e67dad99231f9d22d5bf64c9c8daa1b0f·...·]-16">}</span><span·class="p">,</span><span·class="w">
240 ·······</span><span·class="p"·data-group-id="8193493629-18">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8193493629-19">[</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="8193493629-19">]</span><span·class="p"·data-group-id="8193493629-18">}</span><span·class="p"·data-group-id="8193493629-15">]</span><span·class="p"·data-group-id="8193493629-14">}</span><span·class="p">,</span><span·class="w"> 
241 ·</span><span·class="p"·data-group-id="8193493629-20">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="8193493629-21">[</span><span·class="p"·data-group-id="8193493629-22">{</span><span·class="ss">client2serv[·...·truncated·by·diffoscope;·len:·339,·SHA:·8dbb181703cb9f539add09e336f9cb29be24f8023f95a9e4f250ce6d6b796fd8·...·]">}</span><span·class="p">,</span><span·class="w">240 ·······</span><span·class="p"·data-group-id="6471423720-18">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6471423720-19">[</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·175,·SHA:·18dcb5d21ff797ee6f763bc3d80a06c2c3d3e9c8cc2f126dc8f85115e1e049d7·...·]">}</span><span·class="p">,</span><span·class="w">
 241 ·</span><span·class="p"·data-group-id="6471423720-20">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="6471423720-21">[</span><span·class="p"·data-group-id="6471423720-22">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="p"·data-group-id="6471423720-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="6471423720-23">]</span><span·class="p"·data-group-id="6471423720-22">}</span><span·class="p">,</span><span·class="w">
242 ···············</span><span·class="p"·data-group-id="8193493629-24">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8193493629-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:·078f9a36934778e8559eec355826fd9d8b980376bfc246e300071508c8867bd5·...·]-3">]</span><span·class="w">242 ···············</span><span·class="p"·data-group-id="6471423720-24">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6471423720-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:·f57e8c1a65d33c4f47f615218f90cdc7059fce1869c5817e669caeb5fe6f11ef·...·]-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="0436339314-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="0436339314-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:·d09ac6d77f1a40532ee0b9b2d1ad0ff6622fda65501466240d2e9c435bbaa935·...·]-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="8926759008-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="8926759008-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:·e31c5a9a32c64bf5c5d044504dd44a6e614b1dba5877b93f76279f0256961089·...·]-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="0436339314-3">[</span><span·class="p"·data-group-id="0436339314-4">{</span><span·class="ss">modify_algorithms</span><span·class="p">,</span><span·class="w">256 ························</span><span·class="p"·data-group-id="8926759008-3">[</span><span·class="p"·data-group-id="8926759008-4">{</span><span·class="ss">modify_algorithms</span><span·class="p">,</span><span·class="w">
257 ·································</span><span·class="p"·data-group-id="0436339314-5">[</span><span·class="p"·data-group-id="0436339314-6">{</span><span·class="ss">rm</span><span·class="p">,</span><span·class="w">257 ·································</span><span·class="p"·data-group-id="8926759008-5">[</span><span·class="p"·data-group-id="8926759008-6">{</span><span·class="ss">rm</span><span·class="p">,</span><span·class="w">
258 ·····································</span><span·class="p"·data-group-id="0436339314-7">[</span><span·class="w">·</span><span·class="p"·data-group-id="0436339314-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="0436339314-9">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><[·...·truncated·by·diffoscope;·len:·170,·SHA:·b63e245b1a920362a99068e9efb7092dc1445eb7b7bf55d2db71d994c9aa8645·...·]-7">]</span><span·class="w">258 ·····································</span><span·class="p"·data-group-id="8926759008-7">[</span><span·class="w">·</span><span·class="p"·data-group-id="8926759008-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="8926759008-9">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><[·...·truncated·by·diffoscope;·len:·170,·SHA:·2d58beb901ee20290595fd47bb4eda603cfccd61aace322355a85c345ea76e49·...·]-7">]</span><span·class="w">
259 »       »       »       »       ··</span><span·class="p"·data-group-id="0436339314-6">}</span><span·class="p">,</span><span·class="w">259 »       »       »       »       ··</span><span·class="p"·data-group-id="8926759008-6">}</span><span·class="p">,</span><span·class="w">
260 ··································</span><span·class="p"·data-group-id="0436339314-10">{</span><span·class="ss">append</span><span·class="p">,</span><span·class="w">260 ··································</span><span·class="p"·data-group-id="8926759008-10">{</span><span·class="ss">append</span><span·class="p">,</span><span·class="w">
261 »       »       »       ·············</span><span·class="p"·data-group-id="0436339314-11">[</span><span·class="w">·</span><span·class="p"·data-group-id="0436339314-12">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="0436339314-13">[</span><span·class="ss">&#39;curve25519-sha256@libssh.org[·...·truncated·by·diffoscope;·len:·185,·SHA:·9bc9287053e90a3486d59a83da9982907c6a18a8258a5f50f2c1cd721b947e85·...·]-11">]</span><span·class="w">261 »       »       »       ·············</span><span·class="p"·data-group-id="8926759008-11">[</span><span·class="w">·</span><span·class="p"·data-group-id="8926759008-12">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="8926759008-13">[</span><span·class="ss">&#39;curve25519-sha256@libssh.org[·...·truncated·by·diffoscope;·len:·185,·SHA:·8aa802f6851876cc4658bbe762eb14f71d54658c810fa037bab911b9177f8e84·...·]-11">]</span><span·class="w">
262 »       »       »       »       ··</span><span·class="p"·data-group-id="0436339314-10">}</span><span·class="w">262 »       »       »       »       ··</span><span·class="p"·data-group-id="8926759008-10">}</span><span·class="w">
263 »       »       »       »       ·</span><span·class="p"·data-group-id="0436339314-5">]</span><span·class="w">263 »       »       »       »       ·</span><span·class="p"·data-group-id="8926759008-5">]</span><span·class="w">
264 »       ·················</span><span·class="p"·data-group-id="0436339314-4">}</span><span·class="w">264 »       ·················</span><span·class="p"·data-group-id="8926759008-4">}</span><span·class="w">
265 ························</span><span·class="p"·data-group-id="0436339314-3">]</span><span·class="p"·data-group-id="0436339314-2">)</span><span·class="p">.</span><span·class="w">265 ························</span><span·class="p"·data-group-id="8926759008-3">]</span><span·class="p"·data-group-id="8926759008-2">)</span><span·class="p">.</span><span·class="w">
266 </span><span·class="p"·data-group-id="0436339314-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="0436339314-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="8926759008-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="8926759008-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="1709322996-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="1709322996-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="5324060222-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="5324060222-1">)</span><span·class="p">.</span><span·class="w">
268 </span><span·class="p"·data-group-id="1709322996-2">{</span><span·class="ss">algorithms</span><span·class="p">,</span><span·class="p"·data-group-id="1709322996-3">[</span><span·class="p"·data-group-id="1709322996-4">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="ss">&#[·...·truncated·by·diffoscope;·len:·84,·SHA:·786ea60e7cda38bc88e168c1d6f0164bf414306a80ef00698ad66467717d6b3e·...·]-4">}</span><span·class="p">,</span><span·class="w">268 </span><span·class="p"·data-group-id="5324060222-2">{</span><span·class="ss">algorithms</span><span·class="p">,</span><span·class="p"·data-group-id="5324060222-3">[</span><span·class="p"·data-group-id="5324060222-4">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="ss">&#[·...·truncated·by·diffoscope;·len:·84,·SHA:·3392528edd4785cd11b1417130c64e243664b48c5fcd684738ad74bb4e3335f3·...·]-4">}</span><span·class="p">,</span><span·class="w">
269 ·············</span><span·class="p"·data-group-id="1709322996-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="1709322996-5">}</span><span·class="p">,</span><span·class="w">269 ·············</span><span·class="p"·data-group-id="5324060222-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="5324060222-5">}</span><span·class="p">,</span><span·class="w">
270 ·············</span><span·class="p"·data-group-id="1709322996-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="1709322996-6">}</span><span·class="p">,</span><span·class="w">270 ·············</span><span·class="p"·data-group-id="5324060222-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="5324060222-6">}</span><span·class="p">,</span><span·class="w">
271 ·············</span><span·class="p"·data-group-id="1709322996-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="1709322996-7">}</span><span·class="p">,</span><span·class="w">271 ·············</span><span·class="p"·data-group-id="5324060222-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="5324060222-7">}</span><span·class="p">,</span><span·class="w">
272 ·············</span><span·class="p"·data-group-id="1709322996-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="1709322996-8">}</span><span·class="p">,</span><span·class="w">272 ·············</span><span·class="p"·data-group-id="5324060222-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="5324060222-8">}</span><span·class="p">,</span><span·class="w">
273 ·············</span><span·class="p"·data-group-id="1709322996-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="1709322996-9">}</span><span·class="p">,</span><span·class="w">273 ·············</span><span·class="p"·data-group-id="5324060222-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="5324060222-9">}</span><span·class="p">,</span><span·class="w">
274 ·············</span><span·class="p"·data-group-id="1709322996-10">{</span><span·class="ss">compress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="1709322996-10">}</span><span·class="p">,</span><span·class="w">274 ·············</span><span·class="p"·data-group-id="5324060222-10">{</span><span·class="ss">compress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="5324060222-10">}</span><span·class="p">,</span><span·class="w">
275 ·············</span><span·class="p"·data-group-id="1709322996-11">{</span><span·class="ss">decompress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="1709322996-11">}</span><span·class="p">,</span><span·class="w">275 ·············</span><span·class="p"·data-group-id="5324060222-11">{</span><span·class="ss">decompress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="5324060222-11">}</span><span·class="p">,</span><span·class="w">
276 ·············</span><span·class="p"·data-group-id="1709322996-12">{</span><span·class="ss">send_ext_info</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="1709322996-12">}</span><span·class="p">,</span><span·class="w">276 ·············</span><span·class="p"·data-group-id="5324060222-12">{</span><span·class="ss">send_ext_info</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="5324060222-12">}</span><span·class="p">,</span><span·class="w">
277 ·············</span><span·class="p"·data-group-id="1709322996-13">{</span><span·class="ss">recv_ext_info</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="1709322996-13">}</span><span·class="p"·data-group-id="1709322996-3">]</span><span·class="p"·data-group-id="170932[·...·truncated·by·diffoscope;·len:·4,·SHA:·a51baee973742433352aef2a7d0206026abe4c804c3f8bbbafd92a740ab78386·...·]-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="5324060222-13">{</span><span·class="ss">recv_ext_info</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="5324060222-13">}</span><span·class="p"·data-group-id="5324060222-3">]</span><span·class="p"·data-group-id="532406[·...·truncated·by·diffoscope;·len:·4,·SHA:·d1b54be1dd2d039d250fa063fe2170a9c15bc910769a697183c82960fb9645a9·...·]-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="8180688830-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="0072782595-1">[</span><span·class="w">
283 ·</span><span·class="p"·data-group-id="8180688830-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8180688830-3">[</span><span·class="p"·data-group-id="8180688830-4">{</span><span·class="ss">modify_algorithms</span><span·class="p">,</span><span·class="w">283 ·</span><span·class="p"·data-group-id="0072782595-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0072782595-3">[</span><span·class="p"·data-group-id="0072782595-4">{</span><span·class="ss">modify_algorithms</span><span·class="p">,</span><span·class="w">
284 ·········</span><span·class="p"·data-group-id="8180688830-5">[</span><span·class="w">·</span><span·class="p"·data-group-id="8180688830-6">{</span><span·class="ss">prepend</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8180688830-7">[</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·481,·SHA:·8038cd8ca0089ad53cd059859952781ef1d9ed242cbec28ea0d6af60f337ca8c·...·]-5">]</span><span·class="w">284 ·········</span><span·class="p"·data-group-id="0072782595-5">[</span><span·class="w">·</span><span·class="p"·data-group-id="0072782595-6">{</span><span·class="ss">prepend</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0072782595-7">[</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·481,·SHA:·55711985ba969d469ee30d0d8d480dd45b6a35e4b17649b28f98cdec0ad7913e·...·]-5">]</span><span·class="w">
285 ········</span><span·class="p"·data-group-id="8180688830-4">}</span><span·class="p"·data-group-id="8180688830-3">]</span><span·class="p"·data-group-id="8180688830-2">}</span><span·class="w">285 ········</span><span·class="p"·data-group-id="0072782595-4">}</span><span·class="p"·data-group-id="0072782595-3">]</span><span·class="p"·data-group-id="0072782595-2">}</span><span·class="w">
286 </span><span·class="p"·data-group-id="8180688830-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="0072782595-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="9265943095-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="9265943095-2">(</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·75ca000dc1de2c6143377f7616561baea4c0b365c17e3588d0e5f4e5c5011bea·...·]-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="0663670532-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="0663670532-2">(</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·64718e6c96777008ade6d394fdd878866871c26aff85030ba19425e06199dea4·...·]-1">)</span><span·class="p">.</span><span·class="w">
288 </span><span·class="p"·data-group-id="9265943095-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="0663670532-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="9265943095-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="0663670532-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="7135903789-1">(</span><span·class="p"·data-group-id="7135903789-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="2972171316-1">(</span><span·class="p"·data-group-id="2972171316-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="7135903789-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="7135903789-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:·88,·SHA:·9a57b25f63e96b19ac86b6bf6767a061043e14182041290eb77f0792b250140e·...·]-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="2972171316-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="2972171316-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:·88,·SHA:·75083b79aff33e9562ac0c680c86d928f239c2b970ab86049782fefdf504bd8f·...·]-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="7135903789-4">[</span><span·class="p"·data-group-id="7135903789-5">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">294 ························</span><span·class="p"·data-group-id="2972171316-4">[</span><span·class="p"·data-group-id="2972171316-5">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">
295 ·························</span><span·class="p"·data-group-id="7135903789-6">[</span><span·class="p"·data-group-id="7135903789-7">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7135903789-8">[</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;[·...·truncated·by·diffoscope;·len:·101,·SHA:·72e2c13a9be412601e53aed8840f1016e68d4d9c46f97fc127c0c11dbc77a914·...·]-7">}</span><span·class="p">,</span><span·class="w">295 ·························</span><span·class="p"·data-group-id="2972171316-6">[</span><span·class="p"·data-group-id="2972171316-7">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2972171316-8">[</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;[·...·truncated·by·diffoscope;·len:·101,·SHA:·221677e1711941c249993576ea59d6ebdb042a0efd1a1c40ddcf8034de308bbf·...·]-7">}</span><span·class="p">,</span><span·class="w">
296 »       »       »       ··</span><span·class="p"·data-group-id="7135903789-9">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7135903789-10">[</span><span·class="ss">&#39;ecdh-sha2-nistp256&#39;</span><span·class="p"·data-group-id="7135903789-10">]</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·6832cb0162bbace6801745062689b874ccf5f0b7a8d4677fb4a98e4551b77c17·...·]-9">}</span><span·class="p">,</span><span·class="w">296 »       »       »       ··</span><span·class="p"·data-group-id="2972171316-9">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2972171316-10">[</span><span·class="ss">&#39;ecdh-sha2-nistp256&#39;</span><span·class="p"·data-group-id="2972171316-10">]</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·49da4e3a69700461e2ca797dd393fefb3cbeb9b8848f176ac99caff17bc18b7c·...·]-9">}</span><span·class="p">,</span><span·class="w">
297 »       »       ··········</span><span·class="p"·data-group-id="7135903789-11">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7135903789-12">[</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="7135903[·...·truncated·by·diffoscope;·len:·57,·SHA:·33605d6b3e3f6ba4839e82647fdafe742ee35ab1c9ff80f6d44435e918465f64·...·]-11">}</span><span·class="p">,</span><span·class="w">297 »       »       ··········</span><span·class="p"·data-group-id="2972171316-11">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2972171316-12">[</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="2972171[·...·truncated·by·diffoscope;·len:·57,·SHA:·c659e3446118366a7a1546ef3249371124eaae4fa0f9890dbd6e8805efca0e3f·...·]-11">}</span><span·class="p">,</span><span·class="w">
298 »       »       »       ··</span><span·class="p"·data-group-id="7135903789-13">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7135903789-14">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p"·data-group-id="7135903789-14">]</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·e3e214ab78a5d74e1be7f3b28f2786d03af1cd7521d242e240b62ff1f1a15ab4·...·]-13">}</span><span·class="p">,</span><span·class="w">298 »       »       »       ··</span><span·class="p"·data-group-id="2972171316-13">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2972171316-14">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p"·data-group-id="2972171316-14">]</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·354e6cee52756124b3eb4cf91b38ffc25f680e1fb7704782298d15d95145f2aa·...·]-13">}</span><span·class="p">,</span><span·class="w">
299 »       »       »       ··</span><span·class="p"·data-group-id="7135903789-15">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7135903789-16">[</span><span·class="ss">none</span><span·class="p"·data-group-id="7135903789-16">]</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·2a18ccd1b03257bd433e3e4f668f6e6484cb0b146d42ca76cfc0d31fb5518ff0·...·]-15">}</span><span·class="w">299 »       »       »       ··</span><span·class="p"·data-group-id="2972171316-15">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2972171316-16">[</span><span·class="ss">none</span><span·class="p"·data-group-id="2972171316-16">]</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·2c8b3c18bccd3fb06ffe4a9cb16ac0fbfeaec77bd52962a2815ab4b91f09ec4e·...·]-15">}</span><span·class="w">
300 »       »       »       ··</span><span·class="p"·data-group-id="7135903789-6">]</span><span·class="p"·data-group-id="7135903789-5">}</span><span·class="w">300 »       »       »       ··</span><span·class="p"·data-group-id="2972171316-6">]</span><span·class="p"·data-group-id="2972171316-5">}</span><span·class="w">
301 »       »       »       ·</span><span·class="p"·data-group-id="7135903789-4">]</span><span·class="p"·data-group-id="7135903789-3">)</span><span·class="p">.</span><span·class="w">301 »       »       »       ·</span><span·class="p"·data-group-id="2972171316-4">]</span><span·class="p"·data-group-id="2972171316-3">)</span><span·class="p">.</span><span·class="w">
302 </span><span·class="p"·data-group-id="7135903789-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="7135903789-17">}</span><span·class="gp·unselectable">302 </span><span·class="p"·data-group-id="2972171316-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="2972171316-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="7135903789-18">(</span><span·class="n">C</span><span·class="p">,</span><span·class="ss">algorithms</span><span·class="p"·data-group-id="7135903789-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="2972171316-18">(</span><span·class="n">C</span><span·class="p">,</span><span·class="ss">algorithms</span><span·class="p"·data-group-id="2972171316-18">)</span><span·class="p">.</span><span·class="w">
304 </span><span·class="p"·data-group-id="7135903789-19">{</span><span·class="ss">algorithms</span><span·class="p">,</span><span·class="p"·data-group-id="7135903789-20">[</span><span·class="p"·data-group-id="7135903789-21">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·77,·SHA:·534c277a063e776c29de1224b352731316f58a89d1eb2b5e430d611dfea0745d·...·]-21">}</span><span·class="p">,</span><span·class="w">304 </span><span·class="p"·data-group-id="2972171316-19">{</span><span·class="ss">algorithms</span><span·class="p">,</span><span·class="p"·data-group-id="2972171316-20">[</span><span·class="p"·data-group-id="2972171316-21">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·77,·SHA:·872d6e4851adcce3620587d0e7584cd90abccbb6bdb85602dfa2f09920e174d3·...·]-21">}</span><span·class="p">,</span><span·class="w">
305 ·············</span><span·class="p"·data-group-id="7135903789-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="7135903789-22">}</span><span·class="p">,</span><span·class="w">305 ·············</span><span·class="p"·data-group-id="2972171316-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="2972171316-22">}</span><span·class="p">,</span><span·class="w">
306 ·············</span><span·class="p"·data-group-id="7135903789-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="7135903789-23">}</span><span·class="p">,</span><span·class="w">306 ·············</span><span·class="p"·data-group-id="2972171316-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="2972171316-23">}</span><span·class="p">,</span><span·class="w">
307 ·············</span><span·class="p"·data-group-id="7135903789-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="7135903789-24">}</span><span·class="p">,</span><span·class="w">307 ·············</span><span·class="p"·data-group-id="2972171316-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="2972171316-24">}</span><span·class="p">,</span><span·class="w">
308 ·············</span><span·class="p"·data-group-id="7135903789-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="7135903789-25">}</span><span·class="p">,</span><span·class="w">308 ·············</span><span·class="p"·data-group-id="2972171316-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="2972171316-25">}</span><span·class="p">,</span><span·class="w">
309 ·············</span><span·class="p"·data-group-id="7135903789-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="7135903789-26">}</span><span·class="p">,</span><span·class="w">309 ·············</span><span·class="p"·data-group-id="2972171316-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="2972171316-26">}</span><span·class="p">,</span><span·class="w">
310 ·············</span><span·class="p"·data-group-id="7135903789-27">{</span><span·class="ss">compress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="7135903789-27">}</span><span·class="p">,</span><span·class="w">310 ·············</span><span·class="p"·data-group-id="2972171316-27">{</span><span·class="ss">compress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="2972171316-27">}</span><span·class="p">,</span><span·class="w">
311 ·············</span><span·class="p"·data-group-id="7135903789-28">{</span><span·class="ss">decompress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="7135903789-28">}</span><span·class="p">,</span><span·class="w">311 ·············</span><span·class="p"·data-group-id="2972171316-28">{</span><span·class="ss">decompress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="2972171316-28">}</span><span·class="p">,</span><span·class="w">
312 ·············</span><span·class="p"·data-group-id="7135903789-29">{</span><span·class="ss">send_ext_info</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="7135903789-29">}</span><span·class="p">,</span><span·class="w">312 ·············</span><span·class="p"·data-group-id="2972171316-29">{</span><span·class="ss">send_ext_info</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="2972171316-29">}</span><span·class="p">,</span><span·class="w">
313 ·············</span><span·class="p"·data-group-id="7135903789-30">{</span><span·class="ss">recv_ext_info</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="7135903789-30">}</span><span·class="p"·data-group-id="7135903789-20">]</span><span·class="p"·data-group-id="71359[·...·truncated·by·diffoscope;·len:·5,·SHA:·2ed456704065323c0b2a46867cd3501ac3018ab071a3f61c61851a2fd088c625·...·]-19">}</span><span·class="w">313 ·············</span><span·class="p"·data-group-id="2972171316-30">{</span><span·class="ss">recv_ext_info</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="2972171316-30">}</span><span·class="p"·data-group-id="2972171316-20">]</span><span·class="p"·data-group-id="29721[·...·truncated·by·diffoscope;·len:·5,·SHA:·4300f3d20e46f2b2fd676383af517ec2140c7e790a99feec635b55995e9f2f5f·...·]-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="0332083350-1">(</span><span·class="p"·data-group-id="0332083350-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="8921442645-1">(</span><span·class="p"·data-group-id="8921442645-1">)</span><span·class="p">.</span><span·class="w">
174 </span><span·class="p"·data-group-id="0332083350-2">[</span><span·class="p"·data-group-id="0332083350-3">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="0332083350-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="8921442645-2">[</span><span·class="p"·data-group-id="8921442645-3">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="8921442645-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="0332083350-4">]</span><span·class="p"·data-group-id="0332083350-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="8921442645-4">]</span><span·class="p"·data-group-id="8921442645-3">}</span><span·class="p">,</span><span·class="w">
181 ·</span><span·class="p"·data-group-id="0332083350-5">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="0332083350-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="8921442645-5">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="8921442645-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="0332083350-6">]</span><span·class="p"·data-group-id="0332083350-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="8921442645-6">]</span><span·class="p"·data-group-id="8921442645-5">}</span><span·class="p">,</span><span·class="w">
184 ·</span><span·class="p"·data-group-id="0332083350-7">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="0332083350-8">[</span><span·class="p"·data-group-id="0332083350-9">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·3ee7da4d6bd8cfb5aaaa54c322bc366b4b0c962533933ce174f0d5b168912e10·...·]-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="8921442645-7">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="8921442645-8">[</span><span·class="p"·data-group-id="8921442645-9">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·a1ab343d2fee27123d80ef8717ce06a09d87b654770eebc013860ad697d78fe9·...·]-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="0332083350-10">]</span><span·class="p"·data-group-id="0332083350-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="8921442645-10">]</span><span·class="p"·data-group-id="8921442645-9">}</span><span·class="p">,</span><span·class="w">
187 ··········</span><span·class="p"·data-group-id="0332083350-11">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="0332083350-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="8921442645-11">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8921442645-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="0332083350-12">]</span><span·class="p"·data-group-id="0332083350-11">}</span><span·class="p"·data-group-id="0332083350-8">]</span><span·class="p"·data-group-id="0332083350-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="8921442645-12">]</span><span·class="p"·data-group-id="8921442645-11">}</span><span·class="p"·data-group-id="8921442645-8">]</span><span·class="p"·data-group-id="8921442645-7">}</span><span·class="p">,</span><span·class="w">
190 ·</span><span·class="p"·data-group-id="0332083350-13">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="0332083350-14">[</span><span·class="p"·data-group-id="0332083350-15">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·3ee7da4d6bd8cfb5aaaa54c322bc366b4b0c962533933ce174f0d5b168912e10·...·]-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="8921442645-13">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="8921442645-14">[</span><span·class="p"·data-group-id="8921442645-15">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·a1ab343d2fee27123d80ef8717ce06a09d87b654770eebc013860ad697d78fe9·...·]-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="0332083350-16">]</span><span·class="p"·data-group-id="0332083350-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="8921442645-16">]</span><span·class="p"·data-group-id="8921442645-15">}</span><span·class="p">,</span><span·class="w">
192 ·······</span><span·class="p"·data-group-id="0332083350-17">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="0332083350-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="8921442645-17">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8921442645-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="0332083350-18">]</span><span·class="p"·data-group-id="0332083350-17">}</span><span·class="p"·data-group-id="0332083350-14">]</span><span·class="p"·data-group-id="0332083350-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="8921442645-18">]</span><span·class="p"·data-group-id="8921442645-17">}</span><span·class="p"·data-group-id="8921442645-14">]</span><span·class="p"·data-group-id="8921442645-13">}</span><span·class="p">,</span><span·class="w">
194 ·</span><span·class="p"·data-group-id="0332083350-19">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="0332083350-20">[</span><span·class="p"·data-group-id="0332083350-21">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="p"·data-group-id="0332083350-22">[</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="0332083350-22">]</span><span·class="p"·data-group-id="0332083350-21">}</span><span·class="p">,</span><span·class="w"> 
195 ···············</span><span·class="p"·data-group-id="0332083350-23">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="0332083350-24">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="s[·...·truncated·by·diffoscope;·len:·445,·SHA:·e2bf4a19ba11c570d1e7758620a4c95609fb676ba993476d4e93ffef59b51206·...·]194 ·</span><span·class="p"·data-group-id="8921442645-19">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="8921442645-20">[</span><span·class="p"·data-group-id="8921442645-21">{</span><span·class="ss">client2serv[·...·truncated·by·diffoscope;·len:·389,·SHA:·02d8ad6c60812dc06e89ec36a5d60a784a603205c4172a4537980080cb4fd9b2·...·]
 195 ···············</span><span·class="p"·data-group-id="8921442645-23">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8921442645-24">[</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="8921442645-24">]</span><span·class="p"·data-group-id="8921442645-23">}</span><span·class="p"·data-group-id="8921442645-20">]</span><span·class="p"·data-group-id="8921442645-19">}</span><span·class="p"·data-group-id="8921442645-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="0694383973-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="6619057545-1">(</span><span·class="w">
219 ···············</span><span·class="p"·data-group-id="0694383973-2">[</span><span·class="p"·data-group-id="0694383973-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">219 ···············</span><span·class="p"·data-group-id="6619057545-2">[</span><span·class="p"·data-group-id="6619057545-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">
220 ·····················</span><span·class="p"·data-group-id="0694383973-4">[</span><span·class="p"·data-group-id="0694383973-5">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0694383973-6">[</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#[·...·truncated·by·diffoscope;·len:·104,·SHA:·53c37daf138747e256cc1b950865b70a397359718f4ab544ba7d760e4941530b·...·]-5">}</span><span·class="w">220 ·····················</span><span·class="p"·data-group-id="6619057545-4">[</span><span·class="p"·data-group-id="6619057545-5">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6619057545-6">[</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#[·...·truncated·by·diffoscope;·len:·104,·SHA:·d5e86f5cd0dc25958c7ba10d5f9374acc745b638d355659da46804324480e067·...·]-5">}</span><span·class="w">
221 ·····················</span><span·class="p"·data-group-id="0694383973-4">]</span><span·class="w">221 ·····················</span><span·class="p"·data-group-id="6619057545-4">]</span><span·class="w">
222 ················</span><span·class="p"·data-group-id="0694383973-3">}</span><span·class="w">222 ················</span><span·class="p"·data-group-id="6619057545-3">}</span><span·class="w">
223 ··············</span><span·class="p"·data-group-id="0694383973-2">]</span><span·class="p"·data-group-id="0694383973-1">)</span><span·class="p">.</span><span·class="w">223 ··············</span><span·class="p"·data-group-id="6619057545-2">]</span><span·class="p"·data-group-id="6619057545-1">)</span><span·class="p">.</span><span·class="w">
224 </span><span·class="p"·data-group-id="0694383973-7">[</span><span·class="p"·data-group-id="0694383973-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="0694383973-9">[</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#39;</span><span·class="p[·...·truncated·by·diffoscope;·len:·80,·SHA:·2f5a07f74ab2e109349d05967eba3ed5ab546ccbdebcd2b0fae298657c771aaf·...·]-8">}</span><span·class="p">,</span><span·class="w">224 </span><span·class="p"·data-group-id="6619057545-7">[</span><span·class="p"·data-group-id="6619057545-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="6619057545-9">[</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#39;</span><span·class="p[·...·truncated·by·diffoscope;·len:·80,·SHA:·3ad7960332841297044039d7d0be34fdf6508c982960a62de19244a78e64ba08·...·]-8">}</span><span·class="p">,</span><span·class="w">
225 ·</span><span·class="p"·data-group-id="0694383973-10">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="0694383973-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="6619057545-10">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="6619057545-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="0694383973-11">]</span><span·class="p"·data-group-id="0694383973-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="6619057545-11">]</span><span·class="p"·data-group-id="6619057545-10">}</span><span·class="p">,</span><span·class="w">
228 ·</span><span·class="p"·data-group-id="0694383973-12">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="0694383973-13">[</span><span·class="p"·data-group-id="0694383973-14">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·3be854c09a05b841aa80c059cec03530587139c3d998d09f494d8d2ece901867·...·]-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="6619057545-12">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="6619057545-13">[</span><span·class="p"·data-group-id="6619057545-14">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·a258bb8cde3142625a7382971bac9ab7352bbe7bd054deac65ef3a0d2d3aba31·...·]-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="0694383973-15">]</span><span·class="p"·data-group-id="0694383973-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="6619057545-15">]</span><span·class="p"·data-group-id="6619057545-14">}</span><span·class="p">,</span><span·class="w">
231 ··········</span><span·class="p"·data-group-id="0694383973-16">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="0694383973-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="6619057545-16">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6619057545-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="0694383973-17">]</span><span·class="p"·data-group-id="0694383973-16">}</span><span·class="p"·data-group-id="0694383973-13">]</span><span·class="p"·data-group-id="0694383973-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="6619057545-17">]</span><span·class="p"·data-group-id="6619057545-16">}</span><span·class="p"·data-group-id="6619057545-13">]</span><span·class="p"·data-group-id="6619057545-12">}</span><span·class="p">,</span><span·class="w">
234 ·</span><span·class="p"·data-group-id="0694383973-18">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="0694383973-19">[</span><span·class="p"·data-group-id="0694383973-20">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·654de3b64aa99a2a3f5f285c8232bac6a53b5d47d5826350c0e8f858c793d55e·...·]-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="6619057545-18">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="6619057545-19">[</span><span·class="p"·data-group-id="6619057545-20">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·2a5cd166e549d31934ceecc1354221f5841598f1965a97832f1d5711f15d0ad5·...·]-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="0694383973-21">]</span><span·class="p"·data-group-id="0694383973-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="6619057545-21">]</span><span·class="p"·data-group-id="6619057545-20">}</span><span·class="p">,</span><span·class="w">
236 ·······</span><span·class="p"·data-group-id="0694383973-22">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="0694383973-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="6619057545-22">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6619057545-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="0694383973-23">]</span><span·class="p"·data-group-id="0694383973-22">}</span><span·class="p"·data-group-id="0694383973-19">]</span><span·class="p"·data-group-id="0694383973-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="6619057545-23">]</span><span·class="p"·data-group-id="6619057545-22">}</span><span·class="p"·data-group-id="6619057545-19">]</span><span·class="p"·data-group-id="6619057545-18">}</span><span·class="p">,</span><span·class="w">
238 ·</span><span·class="p"·data-group-id="0694383973-24">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="0694383973-25">[</span><span·class="p"·data-group-id="0694383973-26">{</span><span·class="ss">client2server</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·298,·SHA:·745a575177bb3fcda8c13888a2f512bde55c3ccf627e8c79e2d2d1c1bd3cdce8·...·]-26">}</span><span·class="p">,</span><span·class="w">238 ·</span><span·class="p"·data-group-id="6619057545-24">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="6619057545-25">[</span><span·class="p"·data-group-id="6619057545-26">{</span><span·class="ss">client2server</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·298,·SHA:·486ceffab54ff02c2414bfbdd9b897bf3cd423eda3115c2b181a65c31c84ad2a·...·]-26">}</span><span·class="p">,</span><span·class="w">
239 ···············</span><span·class="p"·data-group-id="0694383973-28">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="0694383973-29">[</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:·2f6e2cf9a27c08a8adee5745f437585908e5e80f48f76ff01a905a293323c39a·...·]-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>·and239 ···············</span><span·class="p"·data-group-id="6619057545-28">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6619057545-29">[</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:·62a7b6b29eefc188defef7ce0a3e82e22a8b7144120f30ce367236726b6eeac2·...·]-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="7155565769-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="3515651551-1">(</span><span·class="w">
248 ···············</span><span·class="p"·data-group-id="7155565769-2">[</span><span·class="p"·data-group-id="7155565769-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">248 ···············</span><span·class="p"·data-group-id="3515651551-2">[</span><span·class="p"·data-group-id="3515651551-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">
249 ·····················</span><span·class="p"·data-group-id="7155565769-4">[</span><span·class="p"·data-group-id="7155565769-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="7155565769-6">[</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·64,·SHA:·13adac3d24661372ccbe97681f6241dfaba29c80bdf10c2cc8cd3425fdb2f21d·...·]-5">}</span><span·class="w">249 ·····················</span><span·class="p"·data-group-id="3515651551-4">[</span><span·class="p"·data-group-id="3515651551-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="3515651551-6">[</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·64,·SHA:·a37e7d10b155556f83940670a29be05934a8e827dd4d1e33d3934b8bfa37cc67·...·]-5">}</span><span·class="w">
250 ·····················</span><span·class="p"·data-group-id="7155565769-4">]</span><span·class="w">250 ·····················</span><span·class="p"·data-group-id="3515651551-4">]</span><span·class="w">
251 ················</span><span·class="p"·data-group-id="7155565769-3">}</span><span·class="w">251 ················</span><span·class="p"·data-group-id="3515651551-3">}</span><span·class="w">
252 ··············</span><span·class="p"·data-group-id="7155565769-2">]</span><span·class="p"·data-group-id="7155565769-1">)</span><span·class="p">.</span><span·class="w">252 ··············</span><span·class="p"·data-group-id="3515651551-2">]</span><span·class="p"·data-group-id="3515651551-1">)</span><span·class="p">.</span><span·class="w">
253 </span><span·class="p"·data-group-id="7155565769-7">[</span><span·class="p"·data-group-id="7155565769-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="7155565769-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="3515651551-7">[</span><span·class="p"·data-group-id="3515651551-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="3515651551-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="7155565769-9">]</span><span·class="p"·data-group-id="7155565769-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="3515651551-9">]</span><span·class="p"·data-group-id="3515651551-8">}</span><span·class="p">,</span><span·class="w">
260 ·</span><span·class="p"·data-group-id="7155565769-10">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="7155565769-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="3515651551-10">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="3515651551-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="7155565769-11">]</span><span·class="p"·data-group-id="7155565769-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="3515651551-11">]</span><span·class="p"·data-group-id="3515651551-10">}</span><span·class="p">,</span><span·class="w">
263 ·</span><span·class="p"·data-group-id="7155565769-12">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="7155565769-13">[</span><span·class="p"·data-group-id="7155565769-14">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·183,·SHA:·7021a4d698e08b8a5c2700b14606a6ae8872bbaad9c864af52f9274ad969a291·...·]-14">}</span><span·class="p">,</span><span·class="w">263 ·</span><span·class="p"·data-group-id="3515651551-12">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="3515651551-13">[</span><span·class="p"·data-group-id="3515651551-14">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·183,·SHA:·99a640764cd0c35984ee501be9d7fd982ec7c2372be0b78dca5a6d7c9c924b46·...·]-14">}</span><span·class="p">,</span><span·class="w">
264 ··········</span><span·class="p"·data-group-id="7155565769-16">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="7155565769-17">[</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p"·data-group-id="7155565769-17">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·129,·SHA:·73aaaccbc108bd2ec9af4ba9c986c8c4ca1faa894b7b204621f82af9b17c14b0·...·]-12">}</span><span·class="p">,</span><span·class="w">264 ··········</span><span·class="p"·data-group-id="3515651551-16">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="3515651551-17">[</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p"·data-group-id="3515651551-17">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·129,·SHA:·3f94887f71fe84eb69e6ac7ce301e00c65f849b53b96d6c98d91f1b9e4f9fab2·...·]-12">}</span><span·class="p">,</span><span·class="w">
265 ·</span><span·class="p"·data-group-id="7155565769-18">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="7155565769-19">[</span><span·class="p"·data-group-id="7155565769-20">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·86c4b3e8ebc9433bd2345208c8036db36656539023b676f086eadb55bce348f7·...·]-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="3515651551-18">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="3515651551-19">[</span><span·class="p"·data-group-id="3515651551-20">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·b6abf735099fd9d6b71e6e96a8d29731e27f74a7d8d0cc928e755cc79566e02f·...·]-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="7155565769-21">]</span><span·class="p"·data-group-id="7155565769-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="3515651551-21">]</span><span·class="p"·data-group-id="3515651551-20">}</span><span·class="p">,</span><span·class="w">
267 ·······</span><span·class="p"·data-group-id="7155565769-22">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="7155565769-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="3515651551-22">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="3515651551-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="7155565769-23">]</span><span·class="p"·data-group-id="7155565769-22">}</span><span·class="p"·data-group-id="7155565769-19">]</span><span·class="p"·data-group-id="7155565769-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="3515651551-23">]</span><span·class="p"·data-group-id="3515651551-22">}</span><span·class="p"·data-group-id="3515651551-19">]</span><span·class="p"·data-group-id="3515651551-18">}</span><span·class="p">,</span><span·class="w">
269 ·</span><span·class="p"·data-group-id="7155565769-24">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="7155565769-25">[</span><span·class="p"·data-group-id="7155565769-26">{</span><span·class="ss">client2server</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·298,·SHA:·9442fb4a44209674ab2044e9dd6086c249cc7f7b262fa15672dc5ccf68daf663·...·]-26">}</span><span·class="p">,</span><span·class="w">269 ·</span><span·class="p"·data-group-id="3515651551-24">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="3515651551-25">[</span><span·class="p"·data-group-id="3515651551-26">{</span><span·class="ss">client2server</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·298,·SHA:·b2f3108c976fc778d77c3c73066d92eadcc85a226faf3a51b054975ea61ddfeb·...·]-26">}</span><span·class="p">,</span><span·class="w">
270 ···············</span><span·class="p"·data-group-id="7155565769-28">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="7155565769-29">[</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:·41f50fcdc8b287691fe58e7b97ec772a0302a3299661ccdf0010b8d0d8dc5dff·...·]-7">]</span></code></pre><p>Note·that·both·lists·in·<code·class="inline">cipher</code>·has·been·changed·to·the·provided·value270 ···············</span><span·class="p"·data-group-id="3515651551-28">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="3515651551-29">[</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:·7396155f604d5df468fad0b03c0a0b79cb55d88a6fe0f9a24cc8fcb605528fe7·...·]-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="5120130461-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="7874079659-1">(</span><span·class="w">
279 ···············</span><span·class="p"·data-group-id="5120130461-2">[</span><span·class="p"·data-group-id="5120130461-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">279 ···············</span><span·class="p"·data-group-id="7874079659-2">[</span><span·class="p"·data-group-id="7874079659-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">
280 ·····················</span><span·class="p"·data-group-id="5120130461-4">[</span><span·class="p"·data-group-id="5120130461-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="5120130461-6">[</span><span·class="p"·data-group-id="5120130461-7">{</span><span·class="ss">clie[·...·truncated·by·diffoscope;·len:·337,·SHA:·559e880e482305aa9e6fce9dc3574901bb97011c402894c6553daedff64fbe1d·...·]-5">}</span><span·class="w">280 ·····················</span><span·class="p"·data-group-id="7874079659-4">[</span><span·class="p"·data-group-id="7874079659-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="7874079659-6">[</span><span·class="p"·data-group-id="7874079659-7">{</span><span·class="ss">clie[·...·truncated·by·diffoscope;·len:·337,·SHA:·fba1dc12f0eec826ece1de71006a3b1ddc0a1d531b9abea9eb7b3ae3e89b78f4·...·]-5">}</span><span·class="w">
281 ·····················</span><span·class="p"·data-group-id="5120130461-4">]</span><span·class="w">281 ·····················</span><span·class="p"·data-group-id="7874079659-4">]</span><span·class="w">
282 ················</span><span·class="p"·data-group-id="5120130461-3">}</span><span·class="w">282 ················</span><span·class="p"·data-group-id="7874079659-3">}</span><span·class="w">
283 ··············</span><span·class="p"·data-group-id="5120130461-2">]</span><span·class="p"·data-group-id="5120130461-1">)</span><span·class="p">.</span><span·class="w">283 ··············</span><span·class="p"·data-group-id="7874079659-2">]</span><span·class="p"·data-group-id="7874079659-1">)</span><span·class="p">.</span><span·class="w">
284 </span><span·class="p"·data-group-id="5120130461-9">[</span><span·class="p"·data-group-id="5120130461-10">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="5120130461-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="7874079659-9">[</span><span·class="p"·data-group-id="7874079659-10">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="7874079659-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="5120130461-11">]</span><span·class="p"·data-group-id="5120130461-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="7874079659-11">]</span><span·class="p"·data-group-id="7874079659-10">}</span><span·class="p">,</span><span·class="w">
291 ·</span><span·class="p"·data-group-id="5120130461-12">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="5120130461-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="7874079659-12">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="7874079659-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="5120130461-13">]</span><span·class="p"·data-group-id="5120130461-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="7874079659-13">]</span><span·class="p"·data-group-id="7874079659-12">}</span><span·class="p">,</span><span·class="w">
294 ·</span><span·class="p"·data-group-id="5120130461-14">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="5120130461-15">[</span><span·class="p"·data-group-id="5120130461-16">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·183,·SHA:·a302c2c80540c5104d83e645a3caa2a0bca9c182060704a28d3d8bb28dc55637·...·]-16">}</span><span·class="p">,</span><span·class="w">294 ·</span><span·class="p"·data-group-id="7874079659-14">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="7874079659-15">[</span><span·class="p"·data-group-id="7874079659-16">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·183,·SHA:·b009c4c66d5e63a749420b85c156967fc9a019aedf9c66946dc8f9926c85d633·...·]-16">}</span><span·class="p">,</span><span·class="w">
295 ··········</span><span·class="p"·data-group-id="5120130461-18">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="5120130461-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="7874079659-18">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="7874079659-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="5120130461-19">]</span><span·class="p"·data-group-id="5120130461-18">}</span><span·class="p"·data-group-id="5120130461-15">]</span><span·class="p"·data-group-id="5120130461-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="7874079659-19">]</span><span·class="p"·data-group-id="7874079659-18">}</span><span·class="p"·data-group-id="7874079659-15">]</span><span·class="p"·data-group-id="7874079659-14">}</span><span·class="p">,</span><span·class="w">
298 ·</span><span·class="p"·data-group-id="5120130461-20">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="5120130461-21">[</span><span·class="p"·data-group-id="5120130461-22">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·cad1fa5449ad93c92c1f4c735f535ca630242d7af9e45692f0dea33740ba6da0·...·]-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">298 ·</span><span·class="p"·data-group-id="7874079659-20">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="7874079659-21">[</span><span·class="p"·data-group-id="7874079659-22">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·5a9ebfed5b45eca581568029065d928addaa7a72506451b9cd6446a70e1e224e·...·]-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">
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="9985886781-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:·1bae227efeea257b2338d80372400dc0e0453a9faf08c83a9a834f02ee35e21e·...·]-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="0358896140-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:·4d38876e67dece9ee796c6953a795eecd9e417bb804accc3540731502e72e550·...·]-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="9985886781-2">(</span><span·class="p"·data-group-id="9985886781-3">{</span><span·class="n">User</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="9985886781-3">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·185,·SHA:·f945372c3f044efb84baba06d60d740a5494b2dda10b34332b682ed3c86575f2·...·]-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="0358896140-2">(</span><span·class="p"·data-group-id="0358896140-3">{</span><span·class="n">User</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="0358896140-3">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·185,·SHA:·17acc27d9f228d5595b0508ad9307d55cfd16ca2b343fe86723306b549b26dd0·...·]-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="9985886781-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="9985886781-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="0358896140-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="0358896140-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="9985886781-6">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="9985886781-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="0358896140-6">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="0358896140-6">)</span><span·class="p">,</span><span·class="w">
223 ················</span><span·class="p"·data-group-id="9985886781-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="9985886781-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="0358896140-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="0358896140-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="9985886781-8">(</span><span·class="n">State</span><span·class="p"·data-group-id="9985886781-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="0358896140-8">(</span><span·class="n">State</span><span·class="p"·data-group-id="0358896140-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="9985886781-9">(</span><span·class="n">State</span><span·class="p"·data-group-id="9985886781-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="0358896140-9">(</span><span·class="n">State</span><span·class="p"·data-group-id="0358896140-9">)</span><span·class="p">,</span><span·class="w">
226 ················</span><span·class="p"·data-group-id="9985886781-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="9985886781-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="0358896140-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="0358896140-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="2774701091-1">(</span><span·class="mi">1234</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2774701091-2">[</span><span·class="p"·data-group-id="2774701091-3">{</span><span·class="ss">id_string</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·339,·SHA:·287dab9303a4ef3c99d48476369b60aaca7d197cfb13fdd0c240f45ee73d40ef·...·]-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="8398829930-1">(</span><span·class="mi">1234</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8398829930-2">[</span><span·class="p"·data-group-id="8398829930-3">{</span><span·class="ss">id_string</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·339,·SHA:·e35e104d39ca6d09bc93c790e17e8b7147e637c281af8d629e0ea1e22bd9f4cd·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>347 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>273 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3162 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v5.2.13 v5.2.1
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·ssh[q···················]6 Search·documentation·of·ssh[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
526 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
103 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="4401016975-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="2292078563-1">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">
3656 »       ··</span><span·class="p"·data-group-id="4401016975-2">[</span><span·class="p"·data-group-id="4401016975-3">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="4401016975-4">[</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·130,·SHA:·42179f9627998a5a13087475a7690ca4a75ec0dc3cec109abe4d29b7286dbade·...·]-3">}</span><span·class="p">,</span><span·class="w">3656 »       ··</span><span·class="p"·data-group-id="2292078563-2">[</span><span·class="p"·data-group-id="2292078563-3">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="2292078563-4">[</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·130,·SHA:·4f08343604acacd64209a8b45c1113b2cbba65e5a713e28b0ddacbbf7c6d93e8·...·]-3">}</span><span·class="p">,</span><span·class="w">
3657 »       ··</span><span·class="p"·data-group-id="4401016975-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="4401016975-6">[</span><span·class="p"·data-group-id="4401016975-7">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·178,·SHA:·ced1eee01f3d2ad843abca9e6a66689610f94ba0c24c908a3d2c0f594a16a34b·...·]-7">}</span><span·class="p">,</span><span·class="w">3657 »       ··</span><span·class="p"·data-group-id="2292078563-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="2292078563-6">[</span><span·class="p"·data-group-id="2292078563-7">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·178,·SHA:·e9cec56ac9e8b19e011c0ede66cf4d995f0ada050264b55141d0565bcf88c83c·...·]-7">}</span><span·class="p">,</span><span·class="w">
3658 ··········</span><span·class="p"·data-group-id="4401016975-9">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="4401016975-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:·d319466e894258dc83b79f8058ad44e5f4b71c5a9d6cc21c6e37a9f1d8e0a61f·...·]-5">}</span><span·class="p">,</span><span·class="w">3658 ··········</span><span·class="p"·data-group-id="2292078563-9">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="2292078563-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:·7ed9fedf984078622a7c1d366dc76311842f9554d5f79f291e8ced646444bea8·...·]-5">}</span><span·class="p">,</span><span·class="w">
3659 »       ··</span><span·class="p"·data-group-id="4401016975-11">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="4401016975-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:·21c4ed7374f35569500366746264111da189a975cd343e2b5d67581c87844401·...·]-11">}</span><span·class="p">,</span><span·class="w">3659 »       ··</span><span·class="p"·data-group-id="2292078563-11">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="2292078563-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:·a138d5e2fbd6e6518f6b48d2f8cb3e7e3370874bc00851ab12646345ca1827dc·...·]-11">}</span><span·class="p">,</span><span·class="w">
3660 »       ··</span><span·class="p"·data-group-id="4401016975-13">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="4401016975-14">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">zlib</span><span·class="p"·data-group-id="440101697[·...·truncated·by·diffoscope;·len:·55,·SHA:·4979c901310618377db9fb59df701eb4cb3be5bf6a97f98f4ba99d3eecabbf61·...·]-13">}</span><span·class="w">3660 »       ··</span><span·class="p"·data-group-id="2292078563-13">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="2292078563-14">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">zlib</span><span·class="p"·data-group-id="229207856[·...·truncated·by·diffoscope;·len:·55,·SHA:·6f147e435e997ca516756e45379f04daf07f17916d5f3a9c43b4fc309b15ae61·...·]-13">}</span><span·class="w">
3661 »       ··</span><span·class="p"·data-group-id="4401016975-2">]</span><span·class="w">3661 »       ··</span><span·class="p"·data-group-id="2292078563-2">]</span><span·class="w">
3662 »       ··</span><span·class="p"·data-group-id="4401016975-1">}</span></code></pre><p>The·example·specifies·different·algorithms·in·the·two·directions·(client2server3662 »       ··</span><span·class="p"·data-group-id="2292078563-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="6985238280-1">(</span><span·class="n">Key</span><span·class="p"·data-group-id="6985238280-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="0753218296-1">(</span><span·class="n">Key</span><span·class="p"·data-group-id="0753218296-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="6985238280-2">(</span><span·class="nb">md5</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="6985238280-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="0753218296-2">(</span><span·class="nb">md5</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="0753218296-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="6985238280-3">(</span><span·class="ss">sha</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="6985238280-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="0753218296-3">(</span><span·class="ss">sha</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="0753218296-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="6985238280-4">(</span><span·class="ss">sha256</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="6985238280-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="0753218296-4">(</span><span·class="ss">sha256</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="0753218296-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="6985238280-5">(</span><span·class="p"·data-group-id="6985238280-6">[</span><span·class="ss">sha</span><span·class="p">,</span><span·class="ss">sha256</span><span·class="p"·data-group-id="6985238280-6">]</span><span·class="p">,</span><span·class="n">Key</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·7b88ca6f2d4c01d3e1061a785a3cace1c4a7901ef72c783a814788c632e08575·...·]-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="0753218296-5">(</span><span·class="p"·data-group-id="0753218296-6">[</span><span·class="ss">sha</span><span·class="p">,</span><span·class="ss">sha256</span><span·class="p"·data-group-id="0753218296-6">]</span><span·class="p">,</span><span·class="n">Key</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·0f6f15293cf3dab930143d0f2cc68ec51db6e37792ea355f93bf5cb623fe6e00·...·]-5">)</span><span·class="p">.</span><span·class="w">
5569 ·</span><span·class="p"·data-group-id="6985238280-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="0753218296-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="6985238280-7">]</span></code></pre>5570 ··</span><span·class="s">&quot;SHA256:aZGXhabfbf4oxglxltItWeHU7ub3Dc31NcNw2cMJePQ&quot;</span><span·class="p"·data-group-id="0753218296-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>6157 <p>Copyright·©·1996-2024·<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="1423648924-1">{</span><span·class="ss">key_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1423648924-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:·baa99b648db688365297eb2027698e0ee1141d786e2c4ad26a34b7d0c2d45186·...·]-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="8788951608-1">{</span><span·class="ss">key_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8788951608-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:·6bc6e0f8434ecea72ee87f785e0d80bf0d4347ed3169d8ffd9467547a5770647·...·]-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="8670485950-1">{</span><span·class="ss">key_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8670485950-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:·2687c42ff5785b9388899b575633b8abcace9d0195965a4b312aa9301dc90599·...·]-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="9356900554-1">{</span><span·class="ss">key_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9356900554-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:·c6464c33c52fa782a3b5432ee5fadd57f6bb18d54eff5d1c7a3b202cefaf3597·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>574 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>352 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>985 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>542 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2012 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1055 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>388 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>332 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2969 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>245 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>248 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3261 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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="6379573150-1">(</span><span·class="p"·data-group-id="6379573150-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="6379573150-2">(</span><span·class="s">&quot;google.com&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">443</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6379573150-3">[</span><span·class="p"·data-group-id="6379573150-4">{</span><span·class="ss">verify</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">verify_peer</span><span·class="p"·data-group-id="6379573150-4">}</span><span·class="p">,</span><span·class="w"> 
133 ····</span><span·class="p"·data-group-id="6379573150-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="6379573150-6">(</span><span·class="p"·data-group-id="6379573150-6">)</span><span·class="p"·data-group-id="6379573150-5">}</span><span·class="p"·data-group-id="6379573150-3">]</span><span·class="p"·data-group-id="6379573150-2">)</span><span·class="p">.</span><span·class="w"> 
134 </span><span·class="p"·data-group-id="6379573150-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6379573150-8">{</span><span·class="ss">sslsocket</span><span·class="p">,</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·513,·SHA:·90497356b5ddcbf42df7ae29bd0b30cb7d84f11e0ff653ec821d4ab311d98bd0·...·]>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="96[·...·truncated·by·diffoscope;·len:·735,·SHA:·6caaf749fe6b75bb454d655adf2a346bdf82d04914e3b1b779a1175b1811a676·...·]>
 133 ····</span><span·class="p"·data-group-id="9659662008-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="9659662008-6">(</span><span·class="p"·data-group-id="9659662008-6">)</span><span·class="p"·data-group-id="9659662008-5">}</span><span·class="p"·data-group-id="9659662008-3">]</span><span·class="p"·data-group-id="9659662008-2">)</span><span·class="p">.</span><span·class="w">
 134 </span><span·class="p"·data-group-id="9659662008-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9659662008-8">{</span><span·class="ss">sslsocket</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9659662008-9">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="9659662008-9">]</span><span·class="p"·data-group-id="9659662008-8">}</span><span·class="p"·data-group-id="9659662008-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="6556323478-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="8055662204-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="6556323478-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="6556323478-2">}</span><span·class="p">,</span><span·class="w">2534 </span><span·class="p"·data-group-id="8055662204-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="8055662204-2">}</span><span·class="p">,</span><span·class="w">
2535 </span><span·class="p"·data-group-id="6556323478-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="6556323478-3">}</span><span·class="p">,</span><span·class="w">2535 </span><span·class="p"·data-group-id="8055662204-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="8055662204-3">}</span><span·class="p">,</span><span·class="w">
2536 </span><span·class="p"·data-group-id="6556323478-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="6556323478-4">}</span><span·class="p">,</span><span·class="w">2536 </span><span·class="p"·data-group-id="8055662204-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="8055662204-4">}</span><span·class="p">,</span><span·class="w">
2537 </span><span·class="p"·data-group-id="6556323478-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="6556323478-5">}</span><span·class="p">,</span><span·class="w">2537 </span><span·class="p"·data-group-id="8055662204-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="8055662204-5">}</span><span·class="p">,</span><span·class="w">
2538 </span><span·class="p"·data-group-id="6556323478-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="6556323478-6">}</span><span·class="p">,</span><span·class="w">2538 </span><span·class="p"·data-group-id="8055662204-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="8055662204-6">}</span><span·class="p">,</span><span·class="w">
2539 </span><span·class="p"·data-group-id="6556323478-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="6556323478-7">}</span><span·class="w">2539 </span><span·class="p"·data-group-id="8055662204-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="8055662204-7">}</span><span·class="w">
2540 </span><span·class="p"·data-group-id="6556323478-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="8055662204-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="3522235433-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="5007138231-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="3522235433-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="5007138231-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="3870696363-1">(</span><span·class="n">Chain</span><span·class="p">:</span><span·class="p">:</span><span·class="p"·data-group-id="3870696363-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:·c2d8d9177728fed7b7bfc832a0df6e198661f8e69ab9fc8053ba8c95fbad4022·...·]-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="2595727692-1">(</span><span·class="n">Chain</span><span·class="p">:</span><span·class="p">:</span><span·class="p"·data-group-id="2595727692-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:·a13eed58d5b61c4c058afdf609347581549fe6fe44bae669ab55709a41f628a8·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
2636 ····</span><span·class="p"·data-group-id="3870696363-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:·a2a9e3db188a812b4941f9079357f3c4c2db808d8276cba5cd6e13eb433a65fe·...·]-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="2595727692-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:·7fd492f8b9db8691fb69d8e1db4776f6cb36607424eb57ba0f0e5305942dbfcb·...·]-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="6211434826-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="62114[·...·truncated·by·diffoscope;·len:·58,·SHA:·075a031bc4ba888c7728a4773cd5532a32c5eaaafdd48b6ac748274b2fa6ee6d·...·]-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="1596166441-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="15961[·...·truncated·by·diffoscope;·len:·58,·SHA:·ec4d957db51eb6b7e5b1a27a4ccdb1db8ec6204f2ab06b11fd81d55c6806e09b·...·]-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="6211434826-3">(</span><span·class="p"·data-group-id="6211434826-3">)</span><span·class="p"·data-group-id="6211434826-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="1596166441-3">(</span><span·class="p"·data-group-id="1596166441-3">)</span><span·class="p"·data-group-id="1596166441-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3654 ··</span><span·class="p"·data-group-id="6211434826-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:·146,·SHA:·c6427c6a13d3dacf67226882728fbe4276400be39f76ec66ddf702b5a4c67b09·...·]-4">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3654 ··</span><span·class="p"·data-group-id="1596166441-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:·146,·SHA:·af3964b5f22b52310705bfcbf1c7fca66e0929fdc01fc2f4bb99364eb820c061·...·]-4">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3655 ··</span><span·class="p"·data-group-id="6211434826-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:·661,·SHA:·e3df1434d2ee26ac3e51b38b9dedf1c7648c0b21987bc29906745eaae4963c99·...·]-8">}</span><span·class="p">.</span><span·class="w">3655 ··</span><span·class="p"·data-group-id="1596166441-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:·661,·SHA:·850c225681c4755efb9c360e997740dcaeea59e7019100ee8fc103e3bb8540f0·...·]-8">}</span><span·class="p">.</span><span·class="w">
  
3656 </span><span·class="nf">fun</span><span·class="p"·data-group-id="6211434826-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="6211[·...·truncated·by·diffoscope;·len:·435,·SHA:·2c92c286600b0a8e5e31d35362983692de41845c6c8bc12b34d4b0b891ecc22f·...·]-12">)</span><span·class="p">,</span><span·class="w">3656 </span><span·class="nf">fun</span><span·class="p"·data-group-id="1596166441-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="1596[·...·truncated·by·diffoscope;·len:·435,·SHA:·a973720f1a1cba321d1cb08def224c3d72de3631924fd4f820b044d2168238f5·...·]-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="6211434826-13">(</span><span·class="p"·data-group-id="6211434826-13">)</span><span·class="p"·data-group-id="6211434826-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="1596166441-13">(</span><span·class="p"·data-group-id="1596166441-13">)</span><span·class="p"·data-group-id="1596166441-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3658 ··</span><span·class="p"·data-group-id="6211434826-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:·149,·SHA:·e979efaae54d273b9c998725f6feb5ec6781935153190dea85c178c77507ce4c·...·]-14">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3658 ··</span><span·class="p"·data-group-id="1596166441-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:·149,·SHA:·40d07410f7c46d1ce8eaf59ddfc7c0549353d3e44402e86c2b898ea40e0878ac·...·]-14">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3659 ··</span><span·class="p"·data-group-id="6211434826-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:·668,·SHA:·4d6baec90304de7eb7a3c4a5509396ca476dfbebfa53227e93f73dd9d3afbd5e·...·]-18">}</span><span·class="p">.</span><span·class="w">3659 ··</span><span·class="p"·data-group-id="1596166441-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:·668,·SHA:·60bd2717cc3fcc5d332aef9e3aba48d64611cdf6335c974b876d520556a1546b·...·]-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="6211434826-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:·95,·SHA:·559a33a8a7818a2a457b1d9b0adeac9422f22a59fac0993fb1536cb59a9b3de4·...·]-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="1596166441-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:·95,·SHA:·6d68e86d3d28d22f9bf0c2d3507d3d6ebf07cfd26afbb893dfd170dc7c6b92b5·...·]-21">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3662 ··············</span><span·class="p"·data-group-id="6211434826-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="6211434826-23">(</span><span·class="p"·data-group-id="6211434826-23">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·77,·SHA:·71e844261ac043df4de05697bf2e3d51817cd0c58230d296f274667126103ac1·...·]-20">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3662 ··············</span><span·class="p"·data-group-id="1596166441-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="1596166441-23">(</span><span·class="p"·data-group-id="1596166441-23">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·77,·SHA:·abb0894b6be1915a93dcb2c6703c95d89d0ac97034c3f9f07fbe98da4cfac885·...·]-20">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3663 ······</span><span·class="p"·data-group-id="6211434826-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="6211434826-25">{</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·64,·SHA:·4ad7090506eaa85d3fce78601712c3f1608d0402434ec9589ca2026f1fcd5a2c·...·]-24">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3663 ······</span><span·class="p"·data-group-id="1596166441-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="1596166441-25">{</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·64,·SHA:·64df37abf93a049ea26ef7f8cbac1b3d3430717e36dc4c99cfdadcf57c438eaa·...·]-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="1038173806-1">{</span><span·class="nf">fun</span><span·class="p"·data-group-id="1038173806-2">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="1038173806-3">{</span><span·class="ss">bad_cert</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·317,·SHA:·f75568030742853097e7f5d75b018b8c88aebf19a84d80780f67d93fe751a4cc·...·]6-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="3288598436-1">{</span><span·class="nf">fun</span><span·class="p"·data-group-id="3288598436-2">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="3288598436-3">{</span><span·class="ss">bad_cert</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·317,·SHA:·1fa03a287296d0b3afb8d5a650019a764fc68e1c9024e186039deef747d571a4·...·]6-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3682 ···</span><span·class="p"·data-group-id="1038173806-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="1038173806-4">}</span><span·class="p">;</span><span·class="w">3682 ···</span><span·class="p"·data-group-id="3288598436-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="3288598436-4">}</span><span·class="p">;</span><span·class="w">
3683 ····</span><span·class="p"·data-group-id="1038173806-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="1038173806-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:·145,·SHA:·7f565daa961c294a586e4e72277e77e447c52332c15f1a12574c3fd0bc226de4·...·]6-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3683 ····</span><span·class="p"·data-group-id="3288598436-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="3288598436-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:·145,·SHA:·73cb18153c0162f94b697b2f3b46984a8b6b52f6a8022ef216d03f5076f4b2d0·...·]6-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3684 ···</span><span·class="p"·data-group-id="1038173806-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="1038173806-7">}</span><span·class="p">;</span><span·class="w">3684 ···</span><span·class="p"·data-group-id="3288598436-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="3288598436-7">}</span><span·class="p">;</span><span·class="w">
3685 ····</span><span·class="p"·data-group-id="1038173806-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="1038173806-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3685 ····</span><span·class="p"·data-group-id="3288598436-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="3288598436-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3686 ···</span><span·class="p"·data-group-id="1038173806-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="1038173806-9">}</span><span·class="p">;</span><span·class="w">3686 ···</span><span·class="p"·data-group-id="3288598436-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="3288598436-9">}</span><span·class="p">;</span><span·class="w">
3687 ····</span><span·class="p"·data-group-id="1038173806-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="1038173806-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3687 ····</span><span·class="p"·data-group-id="3288598436-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="3288598436-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3688 ·······</span><span·class="p"·data-group-id="1038173806-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="1038173806-11">}</span><span·class="w">3688 ·······</span><span·class="p"·data-group-id="3288598436-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="3288598436-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="1038173806-12">[</span><span·class="p"·data-group-id="1038173806-12">]</span><span·class="p"·data-group-id="1038173806-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:·579,·SHA:·0c0350501d6886f0a08c6d44aebe2a5bd1584689c51efb9535bc9e5ece971c49·...·]3-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="3288598436-12">[</span><span·class="p"·data-group-id="3288598436-12">]</span><span·class="p"·data-group-id="3288598436-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:·579,·SHA:·aef416626fe08090f6012bbc41ba4635ed71aa6d1174a0c4e1091959e8e595eb·...·]3-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3690 ···</span><span·class="p"·data-group-id="8063720093-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="8063720093-4">}</span><span·class="p">;</span><span·class="w">3690 ···</span><span·class="p"·data-group-id="9526642863-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="9526642863-4">}</span><span·class="p">;</span><span·class="w">
3691 ····</span><span·class="p"·data-group-id="8063720093-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="8063720093-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:·426,·SHA:·476ff5144d63d372b7a65e4c341077be9de092123a6dbbd5c3ea5ed492f05cec·...·]3-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3691 ····</span><span·class="p"·data-group-id="9526642863-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="9526642863-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:·426,·SHA:·cb854b51de9d3e490a17cf7841d515465ccebfb5d3a96eab912fa781a0501373·...·]3-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3692 ···</span><span·class="p"·data-group-id="8063720093-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="8063720093-8">}</span><span·class="p">;</span><span·class="w">3692 ···</span><span·class="p"·data-group-id="9526642863-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="9526642863-8">}</span><span·class="p">;</span><span·class="w">
3693 ····</span><span·class="p"·data-group-id="8063720093-9">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="8063720093-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:·147,·SHA:·189d3b0f47d9b6871969dab604468a35352e03b5f338cb30e6b339528f8290bd·...·]3-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3693 ····</span><span·class="p"·data-group-id="9526642863-9">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="9526642863-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:·147,·SHA:·56a16f602335144f83a7507db63888af1bdd7451f9fccc986f55b18277d4ca5f·...·]3-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3694 ···</span><span·class="p"·data-group-id="8063720093-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="8063720093-11">}</span><span·class="p">;</span><span·class="w">3694 ···</span><span·class="p"·data-group-id="9526642863-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="9526642863-11">}</span><span·class="p">;</span><span·class="w">
3695 ····</span><span·class="p"·data-group-id="8063720093-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="8063720093-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3695 ····</span><span·class="p"·data-group-id="9526642863-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="9526642863-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3696 ···</span><span·class="p"·data-group-id="8063720093-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="8063720093-13">}</span><span·class="p">;</span><span·class="w">3696 ···</span><span·class="p"·data-group-id="9526642863-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="9526642863-13">}</span><span·class="p">;</span><span·class="w">
3697 ····</span><span·class="p"·data-group-id="8063720093-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="8063720093-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3697 ····</span><span·class="p"·data-group-id="9526642863-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="9526642863-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3698 ·······</span><span·class="p"·data-group-id="8063720093-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="8063720093-15">}</span><span·class="w">3698 ·······</span><span·class="p"·data-group-id="9526642863-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="9526642863-15">}</span><span·class="w">
Max diff block lines reached; 34884/82972 bytes (42.04%) 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>276 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>370 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>531 <p>Copyright·©·1996-2024·<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="7608120157-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7608120157-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:·320,·SHA:·06a94c34b371388ea3de79d0a26890be80f358e753f16665a9ec6f0819c693e9·...·]-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="9683469221-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9683469221-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:·320,·SHA:·fb62732505e708820949f42b06d96bb2d707fe386b70c468b54266a7e7a20ca5·...·]-3">}</span><span·class="p">,</span><span·class="w">
151 ······</span><span·class="p"·data-group-id="7608120157-4">[</span><span·class="p"·data-group-id="7608120157-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="7608120157-5">}</span><span·class="p">,</span><span·class="w">151 ······</span><span·class="p"·data-group-id="9683469221-4">[</span><span·class="p"·data-group-id="9683469221-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="9683469221-5">}</span><span·class="p">,</span><span·class="w">
152 ······</span><span·class="p"·data-group-id="7608120157-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="7608120157-6">}</span><span·class="p">,</span><span·class="w">152 ······</span><span·class="p"·data-group-id="9683469221-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="9683469221-6">}</span><span·class="p">,</span><span·class="w">
153 ······</span><span·class="p"·data-group-id="7608120157-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="7608120157-7">}</span><span·class="p">,</span><span·class="w">153 ······</span><span·class="p"·data-group-id="9683469221-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="9683469221-7">}</span><span·class="p">,</span><span·class="w">
154 ······</span><span·class="p"·data-group-id="7608120157-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="7608120157-8">}</span><span·class="p">,</span><span·class="w">154 ······</span><span·class="p"·data-group-id="9683469221-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="9683469221-8">}</span><span·class="p">,</span><span·class="w">
155 ······</span><span·class="p"·data-group-id="7608120157-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="7608120157-9">}</span><span·class="p">,</span><span·class="w">155 ······</span><span·class="p"·data-group-id="9683469221-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="9683469221-9">}</span><span·class="p">,</span><span·class="w">
156 ······</span><span·class="p"·data-group-id="7608120157-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="7608120157-10">}</span><span·class="w">156 ······</span><span·class="p"·data-group-id="9683469221-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="9683469221-10">}</span><span·class="w">
157 ······</span><span·class="p"·data-group-id="7608120157-4">]</span><span·class="p"·data-group-id="7608120157-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="9683469221-4">]</span><span·class="p"·data-group-id="9683469221-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="0158627584-1">[</span><span·class="p"·data-group-id="0158627584-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="0353766876-1">[</span><span·class="p"·data-group-id="0353766876-2">{</span><span·class="ss">server</span><span·class="p">,</span><span·class="w">
205 ··</span><span·class="p"·data-group-id="0158627584-3">[</span><span·class="p"·data-group-id="0158627584-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="0158627584-4">}</span><span·class="p">,</span><span·class="w">205 ··</span><span·class="p"·data-group-id="0353766876-3">[</span><span·class="p"·data-group-id="0353766876-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="0353766876-4">}</span><span·class="p">,</span><span·class="w">
206 ···</span><span·class="p"·data-group-id="0158627584-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="0158627584-5">}</span><span·class="p"·data-group-id="0158627584-3">]</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·62c97e62db6312582d1a0040c6e02ad5915ee8672efab2a07f27a56c261f39e1·...·]-2">}</span><span·class="p">,</span><span·class="w">206 ···</span><span·class="p"·data-group-id="0353766876-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="0353766876-5">}</span><span·class="p"·data-group-id="0353766876-3">]</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·6437838d986348888eaa4662b4883a24d2277318e03bb77bb3ef49c4b2bc8b0f·...·]-2">}</span><span·class="p">,</span><span·class="w">
207 ·</span><span·class="p"·data-group-id="0158627584-6">{</span><span·class="ss">client</span><span·class="p">,</span><span·class="w">207 ·</span><span·class="p"·data-group-id="0353766876-6">{</span><span·class="ss">client</span><span·class="p">,</span><span·class="w">
208 ··</span><span·class="p"·data-group-id="0158627584-7">[</span><span·class="p"·data-group-id="0158627584-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="0158627584-8">}</span><span·class[·...·truncated·by·diffoscope;·len:·136,·SHA:·8c3b2e87688a1c8ff27cac446c5ddbbb7944708f9de39da3348e496cbb712906·...·]-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="0353766876-7">[</span><span·class="p"·data-group-id="0353766876-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="0353766876-8">}</span><span·class[·...·truncated·by·diffoscope;·len:·136,·SHA:·4ced246b6fa98f7756ddf9e28857efde3da739c2b13d4bb222ac48e5ad31469a·...·]-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="2312989477-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="2312989477-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:·156,·SHA:·788da296fc8f270d1168e56f03405f2175acd4905f445a2482922e900323df2c·...·]-2">]</span><span·class="w">264 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="5108011411-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="5108011411-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:·156,·SHA:·ecc89605692b35c08d0ef950b0eb286c2e3ca7698fdcb30ae59bcf3fe090de2e·...·]-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="2312989477-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="2312989477-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="5108011411-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="5108011411-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="2312989477-4">(</span><span·class="p"·data-group-id="2312989477-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="5108011411-4">(</span><span·class="p"·data-group-id="5108011411-4">)</span><span·class="p">.</span><span·class="w">
267 </span><span·class="p"·data-group-id="2312989477-5">[</span><span·class="p"·data-group-id="2312989477-6">{</span><span·class="ss">root</span><span·class="p">,</span><span·class="p"·data-group-id="2312989477-7">[</span><span·class="s">&quot;/usr/local/erlang&quot;</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·f8b4f0b4c89c88d252070678d5d8e868c1d6437e4473135ac4cd04b4d3ddf79f·...·]-6">}</span><span·class="p">,</span><span·class="w">267 </span><span·class="p"·data-group-id="5108011411-5">[</span><span·class="p"·data-group-id="5108011411-6">{</span><span·class="ss">root</span><span·class="p">,</span><span·class="p"·data-group-id="5108011411-7">[</span><span·class="s">&quot;/usr/local/erlang&quot;</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·8bd1b2a7d847254ba65115d558e4a561d9614c463f6944ccf9b8c3c0ee1716b4·...·]-6">}</span><span·class="p">,</span><span·class="w">
268 ·</span><span·class="p"·data-group-id="2312989477-8">{</span><span·class="ss">progname</span><span·class="p">,</span><span·class="p"·data-group-id="2312989477-9">[</span><span·class="s">&quot;erl·&quot;</span><span·class="p"·data-group-id="2312989477-9">]</span><span·class="p"·data-group-id="23[·...·truncated·by·diffoscope;·len:·8,·SHA:·168c360eb77eb815bfc0d1265d900c597cfa0467f0a6d82b6c80207dfaac225b·...·]-8">}</span><span·class="p">,</span><span·class="w">268 ·</span><span·class="p"·data-group-id="5108011411-8">{</span><span·class="ss">progname</span><span·class="p">,</span><span·class="p"·data-group-id="5108011411-9">[</span><span·class="s">&quot;erl·&quot;</span><span·class="p"·data-group-id="5108011411-9">]</span><span·class="p"·data-group-id="51[·...·truncated·by·diffoscope;·len:·8,·SHA:·7087ee4d7929f3fab4fba922d203628b0c9df3f5fba3d206561fada2ff78d896·...·]-8">}</span><span·class="p">,</span><span·class="w">
269 ·</span><span·class="p"·data-group-id="2312989477-10">{</span><span·class="ss">sname</span><span·class="p">,</span><span·class="p"·data-group-id="2312989477-11">[</span><span·class="s">&quot;ssl_test&quot;</span><span·class="p"·data-group-id="2312989477-11">]</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·f60286bde9510dace8c0ac6e4c7f5beb4ec24e8f31016c077a975dde6642b403·...·]-10">}</span><span·class="p">,</span><span·class="w">269 ·</span><span·class="p"·data-group-id="5108011411-10">{</span><span·class="ss">sname</span><span·class="p">,</span><span·class="p"·data-group-id="5108011411-11">[</span><span·class="s">&quot;ssl_test&quot;</span><span·class="p"·data-group-id="5108011411-11">]</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·bd8696cd2f1a06222dac3872bb898eac30bc3cfef7f1b82447554386a344e3f2·...·]-10">}</span><span·class="p">,</span><span·class="w">
270 ·</span><span·class="p"·data-group-id="2312989477-12">{</span><span·class="ss">boot</span><span·class="p">,</span><span·class="p"·data-group-id="2312989477-13">[</span><span·class="s">&quot;/home/me/ssl/start_ssl&quot;</span><span·class="p"·data-group-id="2312989477-13">]</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·ec6ae8f1d41c8ac5977dcaa4eca0ec96e39a4539de8144599a8e28a6237f2564·...·]-12">}</span><span·class="p">,</span><span·class="w">270 ·</span><span·class="p"·data-group-id="5108011411-12">{</span><span·class="ss">boot</span><span·class="p">,</span><span·class="p"·data-group-id="5108011411-13">[</span><span·class="s">&quot;/home/me/ssl/start_ssl&quot;</span><span·class="p"·data-group-id="5108011411-13">]</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·c47c5d2018992df4194cf821d7bc9f96ef5a876fc58e684b52599d2d8c169f3d·...·]-12">}</span><span·class="p">,</span><span·class="w">
271 ·</span><span·class="p"·data-group-id="2312989477-14">{</span><span·class="ss">proto_dist</span><span·class="p">,</span><span·class="p"·data-group-id="2312989477-15">[</span><span·class="s">&quot;inet_tls&quot;</span><span·class="p"·data-group-id="2312989477-15">]</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·02fe4b4f59b16ac59ef8228f7ffdee65c3d28b8109adfd495059ecf3eb66f55c·...·]-14">}</span><span·class="p">,</span><span·class="w">271 ·</span><span·class="p"·data-group-id="5108011411-14">{</span><span·class="ss">proto_dist</span><span·class="p">,</span><span·class="p"·data-group-id="5108011411-15">[</span><span·class="s">&quot;inet_tls&quot;</span><span·class="p"·data-group-id="5108011411-15">]</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·f17a72cb6d09ca5a1cbf844ff5703b77e1aca67d814556b9de2e17a7defdbb0d·...·]-14">}</span><span·class="p">,</span><span·class="w">
272 ·</span><span·class="p"·data-group-id="2312989477-16">{</span><span·class="ss">ssl_dist_opt</span><span·class="p">,</span><span·class="p"·data-group-id="2312989477-17">[</span><span·class="s">&quot;server_certfile&quot;</span><span·class="p">,</span><span·class="s">&quot;/home/me/ssl/erlserver.[·...·truncated·by·diffoscope;·len:·111,·SHA:·7b6185870270556854a43a60bba4939ea7d5d4e1f91a047e61556cd5b0a18029·...·]-16">}</span><span·class="p">,</span><span·class="w">272 ·</span><span·class="p"·data-group-id="5108011411-16">{</span><span·class="ss">ssl_dist_opt</span><span·class="p">,</span><span·class="p"·data-group-id="5108011411-17">[</span><span·class="s">&quot;server_certfile&quot;</span><span·class="p">,</span><span·class="s">&quot;/home/me/ssl/erlserver.[·...·truncated·by·diffoscope;·len:·111,·SHA:·a09fcba5779ae89a28d50201dedadbfe859e3dc71930448af5096d80c9b2450a·...·]-16">}</span><span·class="p">,</span><span·class="w">
273 ·</span><span·class="p"·data-group-id="2312989477-18">{</span><span·class="ss">ssl_dist_opt</span><span·class="p">,</span><span·class="p"·data-group-id="2312989477-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">273 ·</span><span·class="p"·data-group-id="5108011411-18">{</span><span·class="ss">ssl_dist_opt</span><span·class="p">,</span><span·class="p"·data-group-id="5108011411-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="2312989477-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="5108011411-19">]</span><span·class="w">
275 ·</span><span·class="p"·data-group-id="2312989477-20">{</span><span·class="ss">home</span><span·class="p">,</span><span·class="p"·data-group-id="2312989477-21">[</span><span·class="s">&quot;/home/me&quot;</span><span·class="p"·data-group-id="2312989477-21">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·6bb3568ca06099a18fa73c8ecf6cdd744bb86611fc3b3ff36638a4f6b0e9d98b·...·]-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="5108011411-20">{</span><span·class="ss">home</span><span·class="p">,</span><span·class="p"·data-group-id="5108011411-21">[</span><span·class="s">&quot;/home/me&quot;</span><span·class="p"·data-group-id="5108011411-21">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·6a903b6e3eb38833b089a8bfb81e99f5395a2d59b8cd6a2a8fda8a7c8467d2ba·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>338 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>280 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>724 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>261 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>828 <p>Copyright·©·1996-2024·<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="4180874804-1">(</span><span·class="n">Args</span><span·class="p"·data-group-id="4180874804-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="4801331301-1">(</span><span·class="n">Args</span><span·class="p"·data-group-id="4801331301-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="4180874804-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="4180874804-3">(</span><span·class="p"·data-group-id="4180874804-3">)</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·304,·SHA:·22936162cfa674379c9041ed6afad64e549a8b63f8f4101aab109e775da6e85c·...·]-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="4801331301-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="4801331301-3">(</span><span·class="p"·data-group-id="4801331301-3">)</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·304,·SHA:·a85b014339b04f1872fd6a0ea2a98ff6bb6bf5ec140e2e8daa6dbebd76adf0be·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
152 </span><span·class="nf">cli</span><span·class="p"·data-group-id="4180874804-5">(</span><span·class="p"·data-group-id="4180874804-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="4801331301-5">(</span><span·class="p"·data-group-id="4801331301-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
153 ····</span><span·class="p"·data-group-id="4180874804-6">#{</span><span·class="w">153 ····</span><span·class="p"·data-group-id="4801331301-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="4180874804-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="4801331301-7">[</span><span·class="w">
155 ············</span><span·class="p"·data-group-id="4180874804-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><s[·...·truncated·by·diffoscope;·len:·122,·SHA:·bf6680c6531eb92154c5e3710993b9ae741be39c76b6a663c9258b23b702b4a7·...·]-8">}</span><span·class="p">,</span><span·class="w">155 ············</span><span·class="p"·data-group-id="4801331301-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><s[·...·truncated·by·diffoscope;·len:·122,·SHA:·31f61f1d9967748d9bc8d60008a706f14821be383c1c8dd29ee21e9d6877a54e·...·]-8">}</span><span·class="p">,</span><span·class="w">
156 ············</span><span·class="p"·data-group-id="4180874804-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:·123,·SHA:·d08b176bbb0b439bd175e5228da74b11b1bf1a60e56114f4ffd6a827f74a6873·...·]-9">}</span><span·class="w">156 ············</span><span·class="p"·data-group-id="4801331301-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:·123,·SHA:·dbc099b0f7316877fb72e4dbbaa246504b3a77bb6086d0bb7c9e1836cb3314dc·...·]-9">}</span><span·class="w">
157 ········</span><span·class="p"·data-group-id="4180874804-7">]</span><span·class="p">,</span><span·class="w">157 ········</span><span·class="p"·data-group-id="4801331301-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="4180874804-10">(</span><span·class="p"·data-group-id="4180874804-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><sp[·...·truncated·by·diffoscope;·len:·222,·SHA:·239a6577d6b41eca3f7dee78ae7c2643bc8c76afde9bee748145dacdad2f560c·...·]-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="4801331301-10">(</span><span·class="p"·data-group-id="4801331301-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><sp[·...·truncated·by·diffoscope;·len:·222,·SHA:·e04aed52297f150757ae5f8ecff80ed91acfaf9d3157ee6ab95d78bbd50a4dec·...·]-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="4180874804-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="4180874804-13">[</span><span·class="n">Left</[·...·truncated·by·diffoscope;·len:·200,·SHA:·a9ad0df21b60ba1e7553b82f048350d350d535f95a000a9ed04b48b9c13a451a·...·]-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="4801331301-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="4801331301-13">[</span><span·class="n">Left</[·...·truncated·by·diffoscope;·len:·200,·SHA:·cbff6513ce991218b40a9ee69a83875b02bcf5d75f8f9b490cc2ce05cd2376a9·...·]-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="4180874804-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="4801331301-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="0391368724-1">(</span><span·class="p"·data-group-id="0391368724-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="8356322713-1">(</span><span·class="p"·data-group-id="8356322713-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ··</span><span·class="p"·data-group-id="0391368724-2">#{</span><span·class="w">177 ··</span><span·class="p"·data-group-id="8356322713-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="0391368724-3">[</span><span·class="p"·data-group-id="0391368724-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="0391368724-4">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·84bd5b14135bb467e2a4338aa88f6813bb3d6bae920e39b4f3ff00789eee6ea6·...·]-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="8356322713-3">[</span><span·class="p"·data-group-id="8356322713-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="8356322713-4">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·b0c9420bb7a2026a1a737158098599f814081e2a7a23706a7d8d2e3142ddaf97·...·]-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="0391368724-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="8356322713-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="0391368724-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="8356322713-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="0391368724-7">[</span><span·class="p"·data-group-id="0391368724-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="0391368724-8">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·84bd5b14135bb467e2a4338aa88f6813bb3d6bae920e39b4f3ff00789eee6ea6·...·]-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="8356322713-7">[</span><span·class="p"·data-group-id="8356322713-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="8356322713-8">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·b0c9420bb7a2026a1a737158098599f814081e2a7a23706a7d8d2e3142ddaf97·...·]-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="0391368724-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="8356322713-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="0391368724-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="8356322713-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="0391368724-11">[</span><span·class="p"·data-group-id="0391368724-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="0391368724-12[·...·truncated·by·diffoscope;·len:·51,·SHA:·f4b51e9304322472911e1f866963a36116d5696846d4bfb7bc296968dc496a84·...·]-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="8356322713-11">[</span><span·class="p"·data-group-id="8356322713-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="8356322713-12[·...·truncated·by·diffoscope;·len:·51,·SHA:·168625592a13043f7c8287aeb2de144f19ff2b218d27186b39fdb190aff7e80c·...·]-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="0391368724-13">(</span><span·class="n">A</span><span·class="p"·data-group-id="0391368724-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:·eb916996cedbfdc5eeacd15207f0c3c687ffdd52f8b719e67921b77c1ad764dd·...·]-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="8356322713-13">(</span><span·class="n">A</span><span·class="p"·data-group-id="8356322713-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:·0b007615a2db450712c8b543dc0944717a2af28631571aa18774b8a0d746b6d5·...·]-14">)</span><span·class="w">·</span><span·class="k">end</span><span·class="w">
190 ··········</span><span·class="p"·data-group-id="0391368724-10">}</span><span·class="w">190 ··········</span><span·class="p"·data-group-id="8356322713-10">}</span><span·class="w">
191 ········</span><span·class="p"·data-group-id="0391368724-9">}</span><span·class="w">191 ········</span><span·class="p"·data-group-id="8356322713-9">}</span><span·class="w">
192 ······</span><span·class="p"·data-group-id="0391368724-6">}</span><span·class="w">192 ······</span><span·class="p"·data-group-id="8356322713-6">}</span><span·class="w">
193 ····</span><span·class="p"·data-group-id="0391368724-5">}</span><span·class="w">193 ····</span><span·class="p"·data-group-id="8356322713-5">}</span><span·class="w">
194 ··</span><span·class="p"·data-group-id="0391368724-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="8356322713-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="7159317092-1">(</span><span·class="p"·data-group-id="7159317092-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="8568181178-1">(</span><span·class="p"·data-group-id="8568181178-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
214 ··</span><span·class="p"·data-group-id="7159317092-2">#{</span><span·class="w">214 ··</span><span·class="p"·data-group-id="8568181178-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="7159317092-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="8568181178-3">[</span><span·class="w">
216 ······</span><span·class="p"·data-group-id="7159317092-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:·46b14d5c54aed4bffa2d12e0844e35cf7a9f05bd9bedaa07129e9e67b1ae2f5d·...·]-4">}</span><span·class="p">,</span><span·class="w">216 ······</span><span·class="p"·data-group-id="8568181178-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:·9394dc4baaf7ef08aaa239e67695855b0d2193a98a5e3099df3725a6e4e46c48·...·]-4">}</span><span·class="p">,</span><span·class="w">
217 ······</span><span·class="p"·data-group-id="7159317092-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:·f3d90e5539c4449bdf6aa860d913c9ae453555fef8d1ecad1b072523e318e1a8·...·]-5">}</span><span·class="w">217 ······</span><span·class="p"·data-group-id="8568181178-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:·97bb9de9431add5d346827310214163b81d4184c88c10c5f4713ef51c5bc0a11·...·]-5">}</span><span·class="w">
218 ····</span><span·class="p"·data-group-id="7159317092-3">]</span><span·class="p">,</span><span·class="w">218 ····</span><span·class="p"·data-group-id="8568181178-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="7159317092-6">(</span><span·class="n">Args</span><span·class="p"·data-group-id="7159317092-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:·3f659ba8ef86fedb4748fd31b0906b2171861c2ed8bd13ae5645add2108b2fa6·...·]-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="8568181178-6">(</span><span·class="n">Args</span><span·class="p"·data-group-id="8568181178-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:·25855bbd43b5ffa1c58b167932af56fdd0cc09d6cffa7e7edfbb3b76e19d3c4d·...·]-7">)</span><span·class="w">·</span><span·class="k">end</span><span·class="w">
220 ··</span><span·class="p"·data-group-id="7159317092-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="8568181178-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="1674056142-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="1674056142-2">[</span><span·class="p"·data-group-id="1674056142-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·442,·SHA:·3a82ab0a59df57ab22e9b7526a457003b2372d7de3372308c1f6e3b479d35f83·...·]-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="0045290667-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="0045290667-2">[</span><span·class="p"·data-group-id="0045290667-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·442,·SHA:·29e29379b9f9e3a19a706edec2f6c7b98764af56a4ad7d45871f490d6232affb·...·]-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="1674056142-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:·613ada8943763e2058eb269192b1ab69ae7a547370915c4183e9eb5c2d937a25·...·]-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="0045290667-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:·e0d9867867c73379446351027a03bedb827a65a1b0e0ada03589ae89190c340e·...·]-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="1674056142-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="1674056142-7">}</span><span·class="w">614 </span><span·class="p"·data-group-id="0045290667-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="0045290667-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="1674056142-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:·790c6840607d77e4d0a7ac330f805cfe693b1564cb5bd87bf9eb3ee0e0a767ce·...·]-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="0045290667-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:·0f3411cc2a172035ae0fc803bc50cd6483fa5eb43845d649458c636c04e1948e·...·]-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="1674056142-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="1674056142-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="0045290667-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="0045290667-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="6097191240-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="6097191240-2">[</span><span·class="p"·data-group-id="6097191240-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·454,·SHA:·7c53a374ba925f4e524c675f1311d170887c376056d35594fe4826f33df7d340·...·]-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="2611152766-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="2611152766-2">[</span><span·class="p"·data-group-id="2611152766-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·454,·SHA:·b712b23ff9faf1d03ab0a195974e6fd8679a3c3a198bc7ef35d00414c24906e3·...·]-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="6097191240-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:·760fe216f27528e9f4883e13316e1b2068ce076d117cb763f30f65f226c551a2·...·]-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="2611152766-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:·f71d9391d44903dfd897c53a2b774c9aaab4098ae59a549f5b37eb8e1123de96·...·]-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="6097191240-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="6097191240-7">}</span><span·class="w">621 </span><span·class="p"·data-group-id="2611152766-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="2611152766-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="6097191240-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:·2d609ab4c7d6bac04e2ec10c55adf81a60e450de857c9874ac8529904785ab80·...·]-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="2611152766-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:·245616b0fc4af2aa2e2412eea79b0789eebeea8491cbd37ec4028b1050749d41·...·]-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="6097191240-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="6097191240-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="2611152766-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="2611152766-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="8775641274-1">(</span><span·class="p"·data-group-id="8775641274-2">[</span><span·class="p"·data-group-id="8775641274-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8775641274-3">#{</span><span·class="ss">arguments[·...·truncated·by·diffoscope;·len:·702,·SHA:·2c4bb91b7274a8de96e03a97276352ca11a7187d18a296f105136bf1c8f05955·...·]-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="6235643390-1">(</span><span·class="p"·data-group-id="6235643390-2">[</span><span·class="p"·data-group-id="6235643390-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6235643390-3">#{</span><span·class="ss">arguments[·...·truncated·by·diffoscope;·len:·702,·SHA:·6e97410fa2022b9a4c09e4607b7231ca3327683933d00c1f15f8199b616fd906·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
629 </span><span·class="p"·data-group-id="8775641274-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8775641274-7">#{</span><span·class="p"·data-group-id="8775641274-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="6235643390-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6235643390-7">#{</span><span·class="p"·data-group-id="6235643390-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="8775641274-8">(</span><span·class="p"·data-group-id="8775641274-9">[</span><span·class="p"·data-group-id="8775641274-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8775641274-10">#{</span><span·class="ss">argument[·...·truncated·by·diffoscope;·len:·901,·SHA:·1b738d12c2a3197bd1b088c0f07028c5579fd2f3c63ae089d457ddad531040bf·...·]-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="6235643390-8">(</span><span·class="p"·data-group-id="6235643390-9">[</span><span·class="p"·data-group-id="6235643390-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6235643390-10">#{</span><span·class="ss">argument[·...·truncated·by·diffoscope;·len:·901,·SHA:·f5dc6f91f5ec3a1fbfe5a48829ee0c1ba30612fef91f45e11d6c8526b5a23a2f·...·]-8">)</span><span·class="p">.</span><span·class="w">
  
631 </span><span·class="p"·data-group-id="8775641274-13">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8775641274-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:·c264f8d19e70e6e4a930e053a8d7196ae3b9061943f3ed6c411a5cbbb904eb97·...·]-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="6235643390-13">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6235643390-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:·1cad7255a6b6866808e6a069cc6e9d4e556fe1cd03d7f6d8727afa7fff3c902e·...·]-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="2538277279-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="2538277279-2">[</span><span·class="p"·data-group-id="2538277279-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·623,·SHA:·3bea460a9924469e5e973e0c2abed6d44e8bdf86b08380061c35c52b04a60bb9·...·]-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="9807417830-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="9807417830-2">[</span><span·class="p"·data-group-id="9807417830-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·623,·SHA:·4abf082837d0533b7fa79727f1d8da3e2a1276b0fa8350b4ba0cf56f0d8a8012·...·]-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="2538277279-4">(</span><span·class="p"·data-group-id="2538277279-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:·191,·SHA:·62a8d38ff98c573e89454d3e939e21af4bc21e166f0fc30fc36d4f4512dad070·...·]-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="9807417830-4">(</span><span·class="p"·data-group-id="9807417830-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:·191,·SHA:·df211483de8f7f04b69e993bb7df05287a597338a9942fd604d68fe94d9a81cb·...·]-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="6897931584-1">(</span><span·class="mi">10</span><span·class="p"·data-group-id="6897931584-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="4618087865-1">(</span><span·class="mi">10</span><span·class="p"·data-group-id="4618087865-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="6897931584-2">(</span><span·class="n">A0</span><span·class="p"·data-group-id="6897931584-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="4618087865-2">(</span><span·class="n">A0</span><span·class="p"·data-group-id="4618087865-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="2224893980-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><spa[·...·truncated·by·diffoscope;·len:·143,·SHA:·2015cc7c3ad1cf00d44457a567553718745368382bf057a391353c952593016a·...·]-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="6525710131-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><spa[·...·truncated·by·diffoscope;·len:·143,·SHA:·64b18381e65d1ed5dd8a485b75d2bbe2ee5a89b0bc13d670afab71499fe4e070·...·]-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="2224893980-3">(</span><span·class="n">A1</span><span·class="p"·data-group-id="2224893980-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="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="0831898834-1">(</span><span·class="mi">17</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A1</span><span·class="p"·data-group-id="0831898834-1">)</span><span·class="p">.</span></code></pre><p>Accessing·an·unset·entry·returns·default·value:</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="9888067866-1">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A1</span><span·class="p"·data-group-id="9888067866-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="1640342276-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="1640342276-1">)</span><span·class="p">.</span></code></pre><p>&quot;Sparse&quot;·functions·ignore·default-valued·entries:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">A2</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="2446999254-1">(</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A1</span><span·class="p"·data-group-id="2446999254-1">)</span><span·class="p">.</span><span·class="w"> 
144 </span><span·class="p"·data-group-id="2446999254-2">[</span><span·class="p"·data-group-id="2446999254-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="2446999254-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2446999254-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="2446999254-4">}</span><span·class="p"·data-group-id="2446999254-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="2446999254-5">(</span><span·class="n">A2</span><span·class="p"·data-group-id="2446999254-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="9313780361-1">(</span><span·class="n">A2</span><span·class="p"·data-group-id="9313780361-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="2720915411-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="2720915411-2">{</span><span·clas[·...·truncated·by·diffoscope;·len:·805,·SHA:·9f58642324ca033ba5e8ab9f19513aca88b0d79711ae7c624d65b5d6a4940698·...·]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="6525710131-3">(</span><span·class="n">A[·...·truncated·by·diffoscope;·len:·1186,·SHA:·755c0840097fcf1e85329cccf7590c27b16450dece64e0235e0798debb70fc4c·...·]
 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="5452199197-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="5452199197-1">)</span><span·class="p">.</span></code></pre><p>&quot;Sparse&quot;·functions·ignore·default-valued·entries:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">A2</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="4403264945-1">(</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A1</span><span·class="p"·data-group-id="4403264945-1">)</span><span·class="p">.</span><span·class="w">
 144 </span><span·class="p"·data-group-id="4403264945-2">[</span><span·class="p"·data-group-id="4403264945-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="4403264945-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4403264945-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="4403264945-4">}</span><span·class="p"·data-group-id="4403264945-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="4403264945-5">(</span><span·class="n">A2</span><span·class="p"·data-group-id="4403264945-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="6741556928-1">(</span><span·class="n">A2</span><span·class="p"·data-group-id="6741556928-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="9171191768-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="9171191768-2">{</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="9171191768-2">}</span><span·class="p"·data-group-id="9171191768-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9171191768-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="9171191768-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="9171191768-4">)</span><span·class="p"·data-group-id="9171191768-3">)</span><span·class="p">.</span><span·class="w">
146 </span><span·class="p"·data-group-id="2720915411-5">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="2720915411-6">{</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="2720915411[·...·truncated·by·diffoscope;·len:·568,·SHA:·c23b9c777329e6944954a8e2928a0f8a7518e3016c9b834c0c502ee4deb9d0be·...·]-7">)</span><span·class="p">.</span></code></pre>146 </span><span·class="p"·data-group-id="9171191768-5">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="9171191768-6">{</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="9171191768[·...·truncated·by·diffoscope;·len:·568,·SHA:·f187421d9e48021e9b609e75840c3a3f1fa5ac005ab8c0d15aff55631fb8700b·...·]-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="7858455341-1">(</span><span·class="mi">100</span><span·class="p"·data-group-id="7858455341-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:·1390,·SHA:·e30f0ef085934948bf1443578f2d73129f3275022cc1a1513be0d62efc4b6c15·...·]9-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="6183071319-1">(</span><span·class="mi">100</span><span·class="p"·data-group-id="6183071319-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:·1390,·SHA:·e84a7088967254b5e822eabbb153641ba36d92a86d3e93d6a4715a81386761ba·...·]9-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="6391396576-1">(</span><span·class="mi">100</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6391396576-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:·68,·SHA:·4cb081960a56dda1b7e778dc6e90eedcb7075c5732c435d8e06125daf6135f5b·...·]-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="1932354635-1">(</span><span·class="mi">100</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1932354635-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:·68,·SHA:·16a4266ebf71d36d4d082be36927820b49a6074eb246f3b8f6e6d6f1bb5af95b·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1660 <p>Copyright·©·1996-2024·<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="1937662140-1">(</span><span·class="s">&quot;stdlib/include/assert.hrl&quot;</span><span·class="p"·data-group-id="1937662140-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="8926938224-1">(</span><span·class="s">&quot;stdlib/include/assert.hrl&quot;</span><span·class="p"·data-group-id="8926938224-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="0966221978-1">(</span><span·class="p"·data-group-id="0966221978-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="0966221978-2">}</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·391,·SHA:·0ef222cb320ca0d0f024aa54d872375535fc4c38b9c6074a01b53ecf2cb4d84b·...·]-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="2456550777-1">(</span><span·class="p"·data-group-id="2456550777-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="2456550777-2">}</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·391,·SHA:·54d005114350fd5d2642e78aa4da78ca62a13bf08225298671772c7066565aea·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>223 <p>Copyright·©·1996-2024·<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="9619600394-1">(</span><span·class="s">&quot;AQIDBA==&quot;</span><span·class="p"·data-group-id="9619600394-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="8952786312-1">(</span><span·class="s">&quot;AQIDBA==&quot;</span><span·class="p"·data-group-id="8952786312-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="9619600394-2">(</span><span·class="s">&quot;AQ·ID·BA==&quot;</span><span·class="p"·data-group-id="9619600394-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="8952786312-2">(</span><span·class="s">&quot;AQ·ID·BA==&quot;</span><span·class="p"·data-group-id="8952786312-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="9619600394-3">(</span><span·class="s">&quot;AQIDBA=&quot;</span><span·class="p"·data-group-id="9619600394-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="8952786312-3">(</span><span·class="s">&quot;AQIDBA=&quot;</span><span·class="p"·data-group-id="8952786312-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="9619600394-4">(</span><span·class="s">&quot;AQIDBA=&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9619600394-5">#{</span><span·class="w">·</span><span·class="ss">padding</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·188,·SHA:·f4a2baece473c782cabec70757e7a8cb09be0e8843f82a945b5e52c031611475·...·]-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="8952786312-4">(</span><span·class="s">&quot;AQIDBA=&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8952786312-5">#{</span><span·class="w">·</span><span·class="ss">padding</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·188,·SHA:·61a164065b1c4f002cd53a301c5c156bd696b8d2fb8063ddc1fe4e755da043de·...·]-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="4677826180-1">(</span><span·class="s">&quot;AQIDBA==&quot;</span><span·class="p"·data-group-id="4677826180-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="2345966615-1">(</span><span·class="s">&quot;AQIDBA==&quot;</span><span·class="p"·data-group-id="2345966615-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="4677826180-2">(</span><span·class="s">&quot;AQIDB=A=&quot;</span><span·class="p"·data-group-id="4677826180-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="2345966615-2">(</span><span·class="s">&quot;AQIDB=A=&quot;</span><span·class="p"·data-group-id="2345966615-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1034 <p>Copyright·©·1996-2024·<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="8815667799-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8815667799-2">{</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="8815667799-3">[</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·921,·SHA:·0ee27ba464acb211ddf3388d2c9261f3048548d72dc4a492fe2326083ef54fd6·...·]-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="1916341950-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="1916341950-2">{</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="1916341950-3">[</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·921,·SHA:·bfc6bdb9bea5621e517cc1852c415b825661a76ead6141b1fea4cf0baec3347a·...·]-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="8815667799-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="8815667799-9">[</span><span·class="nc">erl_pr[·...·truncated·by·diffoscope;·len:·493,·SHA:·3407f217b1feaebfa65f07d5374e64f830b508c18f13501ee38bd1aebbbf521f·...·]-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="1916341950-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="1916341950-9">[</span><span·class="nc">erl_pr[·...·truncated·by·diffoscope;·len:·493,·SHA:·5a38c1767f35189a5880dc332d9ee1bdbe36c77ca62839b82184ac8c7629bcd8·...·]-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="6940758633-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:·6172836f9444d10aa86e727ce377cae8f55315501edba0daec74033ffa485a03·...·]-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="9720920234-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:·556ae8e524617e2953e2f63774aa9d4780cdbd6e07bd299794e852ab94c884b3·...·]-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="1819959361-1">[</span><span·class="p"·data-group-id="1819959361-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:·2148c236e2bf4693fa910cfb5b28777b5f854f34f54dce469a2de9b3a74fa443·...·]-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="7426149966-1">[</span><span·class="p"·data-group-id="7426149966-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:·ecdec24fcc608c42ccdb11543fcdb105841f346558006dffdb41c070bc1e89e3·...·]-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="6091472384-1">[</span><span·class="p"·data-group-id="6091472384-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:·00492312a88f593d291cdb67dfdceb5422a255ee734118d11a76c3d2e7b1f7d2·...·]-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="4571284702-1">[</span><span·class="p"·data-group-id="4571284702-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:·dab4c14edd0bde29c26f0d5b12347f6effd73a7316312c6b26865cef8f81fb8b·...·]-2">}</span><span·class="p">,</span><span·class="w">
191 ·</span><span·class="p"·data-group-id="6091472384-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="6091472384-4">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·250,·SHA:·100ec72bebd4c6057caac0cec77b4ec3dd4f77df803fe41a5b876f9fe002b667·...·]-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="4571284702-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="4571284702-4">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·250,·SHA:·934507c9a02e5758eb6053edec486440d60bfbce164150e2c84a5ddda207de07·...·]-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="7402890020-1">(</span><span·class="ss">init</span><span·class="p"·data-group-id="7402890020-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:·74a767c119e714abd790f4baa3b0a8bdf7bf21a4fa784ffb021eb7cddd21a3ba·...·]-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="1696370358-1">(</span><span·class="ss">init</span><span·class="p"·data-group-id="1696370358-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:·b8921dda218a13cb82cc2551ac21d0fa4f0469458614d4e3fde8464d7fce3d1e·...·]-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="6542453647-1">(</span><span·class="p"·data-group-id="6542453647-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:·178,·SHA:·8c5f375072812705c1b9045233b21c76700d743f527de043667b09857998e8f3·...·]-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="2706992416-1">(</span><span·class="p"·data-group-id="2706992416-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:·178,·SHA:·e7afcd2b72b3dfba9acedb73d442a86f68a6b82217f2f9549f24d2019aa23d5a·...·]-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="9572683368-1">(</span><span·class="ss">a</span><span·class="p"·data-group-id="9572683368-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="9916645900-1">(</span><span·class="ss">a</span><span·class="p"·data-group-id="9916645900-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="9572683368-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9572683368-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="p"·data-group-id="9572683368-4">[</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·142,·SHA:·9c46d443dd16bb4ec2965b734b4aa3580678e2254ffb42d77354ae462ae0fbd0·...·]-2">}</span><span·class="gp·unselectable">1929 </span><span·class="p"·data-group-id="9916645900-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9916645900-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="p"·data-group-id="9916645900-4">[</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·142,·SHA:·157646492da944229d4f3adac837de8a60689fb63be901ff1b8a57a89d536e70·...·]-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="9572683368-5">(</span><span·class="ss">b</span><span·class="p"·data-group-id="9572683368-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="9916645900-5">(</span><span·class="ss">b</span><span·class="p"·data-group-id="9916645900-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="9572683368-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9572683368-7">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="9572683368-8">[</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·142,·SHA:·ea362acc57e2189ab2450bac93389737b44c4ee1afbe2a2440810e5206cb0f72·...·]-6">}</span><span·class="gp·unselectable">1931 </span><span·class="p"·data-group-id="9916645900-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9916645900-7">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="9916645900-8">[</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·142,·SHA:·417b297b000ff8fd8acb3d316be0156cfa8dc636fda82e2a49ad592de03d6bbd·...·]-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="9572683368-9">(</span><span·class="ss">c</span><span·class="p"·data-group-id="9572683368-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="9916645900-9">(</span><span·class="ss">c</span><span·class="p"·data-group-id="9916645900-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="9572683368-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9572683368-11">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="p"·data-group-id="9572683368-12">[</span><span·class="mi">1</span><s[·...·truncated·by·diffoscope;·len:·196,·SHA:·e599ff7e69de0f03d550dc3eba744f143368563d09738e69327d91896210ff7a·...·]-10">}</span><span·class="gp·unselectable">1933 </span><span·class="p"·data-group-id="9916645900-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9916645900-11">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="p"·data-group-id="9916645900-12">[</span><span·class="mi">1</span><s[·...·truncated·by·diffoscope;·len:·196,·SHA:·8b7755ac9999de8e4c10b5b182561bcbac9bff6bd6d1aa6575d7b04aa4f53cb3·...·]-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="9572683368-13">(</span><span·class="ss">d</span><span·class="p"·data-group-id="9572683368-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="9916645900-13">(</span><span·class="ss">d</span><span·class="p"·data-group-id="9916645900-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="9572683368-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9572683368-15">{</span><span·class="ss">d</span><span·class="p">,</span><span·class="p"·data-group-id="9572683368-16">[</span><span·class="mi">2756132081[·...·truncated·by·diffoscope;·len:·185,·SHA:·88776a430b05f9b16fc6551c5c5155e31d505d753a3dd08fb81b0a7ef1bf746e·...·]-14">}</span></code></pre>1935 </span><span·class="p"·data-group-id="9916645900-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9916645900-15">{</span><span·class="ss">d</span><span·class="p">,</span><span·class="p"·data-group-id="9916645900-16">[</span><span·class="mi">2756132081[·...·truncated·by·diffoscope;·len:·185,·SHA:·e85875cf26975f65faf82f54e9f9abe3136aace698de3ac111561484d347ac2f·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1964 <p>Copyright·©·1996-2024·<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="3536944138-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="3536944138-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="3736471140-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="3736471140-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="4598786727-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="4598786727-2">{</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·138,·SHA:·40bda14c952216451218759634894baf5078589262c59545d367fd2c14a4719c·...·]-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="1842576020-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="1842576020-2">{</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·138,·SHA:·41658c6acd8b80c44988233cdacdd99b78cddfa7590c0d59246cf0242b66814e·...·]-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="9696057373-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="9696057373-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="8371617430-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="8371617430-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="8832874741-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="8832874741-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="5261531783-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="5261531783-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="8832874741-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:·ed5b6c47816271e699e5970df806af294982fa181a18f8a88c8b7756d7788416·...·]-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="5261531783-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:·4fbcb8ad70fff95bcdb1b6f16878ac729b96d6adda4488cf98a6767e2cbacf4e·...·]-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="8832874741-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:·30a081a53dec28c37df1988998e1420bf979265cc922986f1d1a1876540c0014·...·]-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="5261531783-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:·e86b21b597ef17248fdfc83580fa07feab1a3fab0b7490e5bbdfbc2d9e62543c·...·]-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="0673633743-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="0673633743-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="1658215621-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="1658215621-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="0673633743-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="0673633743-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="1658215621-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="1658215621-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="0673633743-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="0673633743-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="1658215621-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="1658215621-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="0673633743-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="0673633743-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="1658215621-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="1658215621-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="7354009386-1">(</span><span·class="mi">11111111</span><span·class="p"·data-group-id="7354009386-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="8127739070-1">(</span><span·class="mi">11111111</span><span·class="p"·data-group-id="8127739070-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="7354009386-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="7354009386-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="8127739070-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="8127739070-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="7354009386-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="7354009386-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="8127739070-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="8127739070-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="6455229321-1">(</span><span·class="p"·data-group-id="6455229321-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:·167,·SHA:·a9133bbaafa11460baae5be533b7d946ce90bde042a7d21b1460eeeb8607d39e·...·]21-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="4973737421-1">(</span><span·class="p"·data-group-id="4973737421-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:·167,·SHA:·d5b145da8d96c84c35f2e61b71600c82e66a6c02df9543fb03e033a83b419960·...·]21-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="6455229321-3">(</span><span·class="p"·data-group-id="6455229321-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:·163,·SHA:·ff0cb186f0da79d26439322d428c07153a496b412b9a8faad3885a559ad19505·...·]21-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="4973737421-3">(</span><span·class="p"·data-group-id="4973737421-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:·163,·SHA:·37ae00e0927815b939b40ee9be6412d22f08bd8f9634a8126caa83c0db5c878f·...·]21-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="9394631083-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="9394631083-2">[</span><sp[·...·truncated·by·diffoscope;·len:·215,·SHA:·aa4412b190c0331b3ddf08a955533b3b835976719131aaba20d811b44130a73e·...·]-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="5981470739-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="5981470739-2">[</span><sp[·...·truncated·by·diffoscope;·len:·215,·SHA:·41d76daa010aef730f8cf1a744aa52afc97fd57d65b297e48c768818f7da2592·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2103 <p>Copyright·©·1996-2024·<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="2347159430-1">(</span><span·class="s">&quot;2018-02-01T16:17:58+01:00&quot;</span><span·class="p"·data-group-id="2347159430-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="0693253558-1">(</span><span·class="s">&quot;2018-02-01T16:17:58+01:00&quot;</span><span·class="p"·data-group-id="0693253558-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="2347159430-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="0693253558-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="2347159430-3">[</span><span·class="p"·data-group-id="2347159430-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="2347159430-4">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·65f664eedccecfc956d311a6424ed97bd52cf1d49adb61e9a2a49d90d65b59a1·...·]-2">)</span><span·class="p">.</span><span·class="w">1849 ···</span><span·class="p"·data-group-id="0693253558-3">[</span><span·class="p"·data-group-id="0693253558-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="0693253558-4">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·6c8cc3f8b90ace340f782f105991f606b53e8ccd5313d9a013f6782c6e3dc473·...·]-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="0070271463-1">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="0070271463-2">(</span><span·class="ss">second</span><span·class="p"·data-group-id="0070271463-2">)</span><span·cla[·...·truncated·by·diffoscope;·len:·31,·SHA:·0f573ec5bb1ae6a8ca5308d1e0e560a94f2164b969f3bd2e66a9b138b464e911·...·]3-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="8620827453-1">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="8620827453-2">(</span><span·class="ss">second</span><span·class="p"·data-group-id="8620827453-2">)</span><span·cla[·...·truncated·by·diffoscope;·len:·31,·SHA:·3efafb17dd92fa3981eb0a7e82662caf716d5f253836c47d73718f2b9bad0481·...·]3-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="0070271463-3">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="0070271463-4">(</span><span·class="ss">second</span><span·class="p"·data-group-id="0070271463-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="8620827453-3">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="8620827453-4">(</span><span·class="ss">second</span><span·class="p"·data-group-id="8620827453-4">)</span><span·class="p">,</span><span·class="w">
2024 ···</span><span·class="p"·data-group-id="0070271463-5">[</span><span·class="p"·data-group-id="0070271463-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="0070271463-6">}</span><span·cla[·...·truncated·by·diffoscope;·len:·84,·SHA:·cb63610a0213c76e514df76589676220409d1b192b474d7a34bb360d12abfae0·...·]3-3">)</span><span·class="p">.</span><span·class="w">2024 ···</span><span·class="p"·data-group-id="8620827453-5">[</span><span·class="p"·data-group-id="8620827453-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="8620827453-6">}</span><span·cla[·...·truncated·by·diffoscope;·len:·84,·SHA:·788f450ca16440a6e374ea43d40a6ef1ccf0f33b1cda6dc23b5f4945545d3489·...·]3-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="0070271463-7">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="0070271463-8">(</span><span·class="ss">second</span><span·class="p"·data-group-id="0070271463-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="8620827453-7">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="8620827453-8">(</span><span·class="ss">second</span><span·class="p"·data-group-id="8620827453-8">)</span><span·class="p">,</span><span·class="w">
2027 ···</span><span·class="p"·data-group-id="0070271463-9">[</span><span·class="p"·data-group-id="0070271463-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="0070271463-10">}</s[·...·truncated·by·diffoscope;·len:·97,·SHA:·f61323026005fd71778b7da6ee6072fe8815eb7662f9b087044d590db3cfa3d3·...·]3-7">)</span><span·class="p">.</span><span·class="w">2027 ···</span><span·class="p"·data-group-id="8620827453-9">[</span><span·class="p"·data-group-id="8620827453-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="8620827453-10">}</s[·...·truncated·by·diffoscope;·len:·97,·SHA:·3c945c10371ad6276ef5a8e6a0dc8d8a0e638740f58f763204e79f1f787d0c53·...·]3-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="0070271463-11">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="0070271463-12">(</span><span·class="ss">millisecond</span><span·class="p"·data-group-id="0070271463-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="8620827453-11">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="8620827453-12">(</span><span·class="ss">millisecond</span><span·class="p"·data-group-id="8620827453-12">)</span><span·class="p">,</span><span·class="w">
2030 ···</span><span·class="p"·data-group-id="0070271463-13">[</span><span·class="p"·data-group-id="0070271463-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="0070271463-14">}</span><span·class="p[·...·truncated·by·diffoscope;·len:·620,·SHA:·5de55460daa93ecf42c5f3528e85c4369a32c9871d546dd6fd991277173df8ad·...·]3-11">)</span><span·class="p">.</span><span·class="w">2030 ···</span><span·class="p"·data-group-id="8620827453-13">[</span><span·class="p"·data-group-id="8620827453-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="8620827453-14">}</span><span·class="p[·...·truncated·by·diffoscope;·len:·620,·SHA:·a3e3caecd2d9b370b5b46dee184af24b19ece5c42b8981fac87d08c0588fe97e·...·]3-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2263 <p>Copyright·©·1996-2024·<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="7631630856-1">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7631630856-2">[</span><span·class="p"·data-group-id="7631630856-3">{</span><span·class="ss">type</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·196,·SHA:·26ca3548cc0eab85baac15c8aa6760163e741c757cbea7092ba97dee9c208b7a·...·]-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="7526622834-1">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7526622834-2">[</span><span·class="p"·data-group-id="7526622834-3">{</span><span·class="ss">type</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·196,·SHA:·02c78aad9ecfe3185b3a8328d2b27803d1494d096bf514900d55d71f4b72270c·...·]-1">)</span><span·class="p">.</span><span·class="w">
1915 </span><span·class="p"·data-group-id="7631630856-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">abc</span><span·class="p"·data-group-id="7631630856-4">}</span><span·class="gp·unselectable">1915 </span><span·class="p"·data-group-id="7526622834-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">abc</span><span·class="p"·data-group-id="7526622834-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="7631630856-5">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7631630856-6">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·110,·SHA:·32fc5308e745331767feddcb561ef776e6f75a0ad5d8298fd06eee103d6a6bf7·...·]-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="7526622834-5">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7526622834-6">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·110,·SHA:·b804fa86e9b6963984802c40769b34563ccc54c9d60c44fa53dc18e7d83af002·...·]-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="7631630856-7">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7631630856-8">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·110,·SHA:·193dc6abb42efa8400318cbd2a836e779df74c0eacdb6370f5eb37cb5d82490a·...·]-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="7526622834-7">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7526622834-8">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·110,·SHA:·17f41845a6135a3f24284e8d4cbc43930f0fb4ecc325239e2489c113e7107d7e·...·]-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="7631630856-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="7631630856-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="7526622834-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="7526622834-9">)</span><span·class="p">.</span><span·class="w">
1921 </span><span·class="p"·data-group-id="7631630856-10">[</span><span·class="p"·data-group-id="7631630856-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="7631630856-11">}</span><sp[·...·truncated·by·diffoscope;·len:·293,·SHA:·b650375f1335370897e76234591388326ea1b690908aac84c37ec28c9a591cf4·...·]-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="7526622834-10">[</span><span·class="p"·data-group-id="7526622834-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="7526622834-11">}</span><sp[·...·truncated·by·diffoscope;·len:·293,·SHA:·931d17d87d7bdf206c7ebb943ac1626080496157b6d8495a19ae50785d92df85·...·]-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="5489010973-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5489010973-2">[</span><span·class="p"·data-group-id="5489010973-2">]</span><span·class="p"·data-group-id="5489010973-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="5826617043-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5826617043-2">[</span><span·class="p"·data-group-id="5826617043-2">]</span><span·class="p"·data-group-id="5826617043-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="5489010973-3">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5489010973-4">[</span><span·class="p"·data-group-id="5489010973-5">{</span><span·class="mi">1</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·776,·SHA:·976520ec36a113fc8e55c764c8808c4cdfb608ec0a26e168ea084d0f20007e6f·...·]3-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="5826617043-3">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5826617043-4">[</span><span·class="p"·data-group-id="5826617043-5">{</span><span·class="mi">1</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·776,·SHA:·c2e00ffcaf626fb27241713eee101f93d7279a148dd27c0755d5c12b6e114b2c·...·]3-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="5489010973-9">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5489010973-10">(</span><span·class="p"·data-group-id="5489010973-11">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">Y</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·992,·SHA:·58d17ed4a56384b4b6a6b83421f7e015680786fe7db3a0fdf899e81c840d717e·...·]3-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="5826617043-9">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5826617043-10">(</span><span·class="p"·data-group-id="5826617043-11">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">Y</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·992,·SHA:·28cb99810a79b8634b3ec93cdde890c9534eeea61a1270fdeaf7d980ac532a86·...·]3-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="5489010973-15">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5489010973-16">[</span><span·class="p"·data-group-id="5489010973-17">{</span><span·class="ss">traverse</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·2205,·SHA:·078ef2d83bebf711f51d13f4bd68f922330e53be2574ad8c34fd557d2c893dda·...·]-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="5826617043-15">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5826617043-16">[</span><span·class="p"·data-group-id="5826617043-17">{</span><span·class="ss">traverse</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·2205,·SHA:·fdb27a62ae955dedbf346d37fd31606ea157f635ecc6e4ae34dd6e5cef462f08·...·]-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="5725626941-1">(</span><span·class="n">QH1</span><span·class="p"·data-group-id="5725626941-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:·512fd1cd19a9ea0d38532027a1d7072a1a6e35bc04d89573d609596fa7ff153c·...·]-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="8543128649-1">(</span><span·class="n">QH1</span><span·class="p"·data-group-id="8543128649-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:·aaf299a0d502b9aa95cca28abc799331ea8715100498009a2261346d8237b6f5·...·]-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="2194088136-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="2194088136-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:·f20f31e4eed984edd7dd9547de3441d732a9f1b8fa4ff737c244957663d9921a·...·]-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="6801084731-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="6801084731-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:·f891b33fc5b46d1319dd1e360cc8a4fb1cf1e7f6b7c3576cf6082795f27ca86e·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2928 <p>Copyright·©·1996-2024·<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="1494248205-1">(</span><span·class="p"·data-group-id="1494248205-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="9393526609-1">(</span><span·class="p"·data-group-id="9393526609-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="1494248205-2">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1494248205-3">[</span><span·class="p"·data-group-id="1494248205-3">]</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·63,·SHA:·bc1624c62620be59ba5c9e5a2b5f15d36460bcb8a989d73d498e349eaef20769·...·]-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="9393526609-2">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9393526609-3">[</span><span·class="p"·data-group-id="9393526609-3">]</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·63,·SHA:·e2f447961fcacaa4846c0876a4413fd7828b4c6326f8c90680a3c5b59b5e7f60·...·]-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="1494248205-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="1494248205-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="9393526609-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="9393526609-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="1494248205-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="1494248205-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="9393526609-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="9393526609-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="1494248205-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="1494248205-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="9393526609-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="9393526609-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="1494248205-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="1494248205-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="9393526609-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="9393526609-7">)</span><span·class="p">.</span><span·class="w">
147 </span><span·class="p"·data-group-id="1494248205-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="1494248205-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="9393526609-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="9393526609-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="2788941260-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="2788941260-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="0850563399-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="0850563399-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="2788941260-2">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="2788941260-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:·45eb0aad82ee6980312c8c4ae47f1ac8d07ade4f78a00117c680ce46c39d2195·...·]-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="0850563399-2">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="0850563399-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:·b738867b2ffe576404fa054266e9d060f66e175bfd89a01cd59ce86a75cdaa57·...·]-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="2788941260-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="2788941260-5">(</span><span·class="n">V2</span><span·class="p"·data-group-id="27[·...·truncated·by·diffoscope;·len:·634,·SHA:·78a3be051a95906143f9956316015afb8de1563769ae9be72f42a824c511f6c7·...·]-4">)</span><span·class="w">908 ·················</span><span·class="nf">update</span><span·class="p"·data-group-id="0850563399-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="0850563399-5">(</span><span·class="n">V2</span><span·class="p"·data-group-id="08[·...·truncated·by·diffoscope;·len:·634,·SHA:·8ccc53c6d6c0b0199a91dfac2d4eda68813ee1fdd8acb472684a02b41faa4034·...·]-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="2788941260-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="0850563399-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="4487531128-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="4487531128-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="0256775710-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="0256775710-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="4487531128-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="4487531128-3">(</span><span·class="n">Old</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·673,·SHA:·c34a57fc2206c0c8d4ab15f67ede850ab7f88164fb86adf288bbf9ef0546b786·...·]-2">)</span><span·class="p">.</span></code></pre>1123 ····</span><span·class="nf">update</span><span·class="p"·data-group-id="0256775710-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="0256775710-3">(</span><span·class="n">Old</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·673,·SHA:·5ff0184e3d2d33900edcd1aea777a7cd3b25a9e77bba2d93fa3d1fb8bafcd7a4·...·]-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="9888085204-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="9888085204-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="4282007673-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="4282007673-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="9888085204-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="9888085204-3">(</span><span·class="n">Old</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·462,·SHA:·78d671239e494db4f2d01c6069869e6002183885b2041d1ee89cabe77683e049·...·]-2">)</span><span·class="p">.</span></code></pre>1155 ····</span><span·class="nf">update</span><span·class="p"·data-group-id="4282007673-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="4282007673-3">(</span><span·class="n">Old</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·462,·SHA:·797939974fc974905c1d50f5cc25b90a29c481abe0ee0b50d6575ba20839bbbf·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1184 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1843 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1045 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>344 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>337 <p>Copyright·©·1996-2024·<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="0296288595-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="02962885[·...·truncated·by·diffoscope;·len:·369,·SHA:·fb94062cb73c92d8e337f1aa948eaa307020f8d145e99abd9cd29737f6b0eecd·...·]-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="9681586474-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="96815864[·...·truncated·by·diffoscope;·len:·369,·SHA:·55e412c5ba93b239fbe87ecab50254b17df318b5193d63c935385d130ccde27e·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1234 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1268 <p>Copyright·©·1996-2024·<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="0726959742-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="0726959742-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·418,·SHA:·2b8244a776bce40743aaec2687a2566ce359e11c5d04d09aa9136f8f9b96daa3·...·]-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="2176895150-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="2176895150-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·418,·SHA:·ba73657d6b2ca1f423dd83096d26af5b426a756c349a6c7af4e84deb488f4f42·...·]-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="4816249012-1">(</span><span·class="ss">my_error_module</span><span·class="p"·data-group-id="4816249012-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="1190633420-1">(</span><span·class="ss">my_error_module</span><span·class="p"·data-group-id="1190633420-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="4816249012-2">(</span><span·class="p"·data-group-id="4816249012-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:·5606e9485875c68a026eca25fd72b3b6069d7319861ade9d978e2cdf8561b1e3·...·]-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="1190633420-2">(</span><span·class="p"·data-group-id="1190633420-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:·27c5d295c4af0b18594087c8adf1fcd4ac738195724a8856d44652d5675277ba·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
443 </span><span·class="nf">atom_to_string</span><span·class="p"·data-group-id="4816249012-4">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="4816249012-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="4816249012-5">(</s[·...·truncated·by·diffoscope;·len:·71,·SHA:·465a1549db1b2880aa7f79522cb97c20587a1772ee2a82834a6cbcb603d1890f·...·]-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="1190633420-4">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="1190633420-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="1190633420-5">(</s[·...·truncated·by·diffoscope;·len:·71,·SHA:·704a24c27d9ca7354d0ad0b9db112280d08acf9f43d617e1aa313183d5a4d1f8·...·]-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="4816249012-6">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="4816249012-6">)</span><span·class="p">;</span><span·class="w">444 ··</span><span·class="nf">atom_to_list</span><span·class="p"·data-group-id="1190633420-6">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="1190633420-6">)</span><span·class="p">;</span><span·class="w">
445 </span><span·class="nf">atom_to_string</span><span·class="p"·data-group-id="4816249012-7">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="4816249012-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="1190633420-7">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="1190633420-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="4816249012-8">(</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p"·data-group-id="4816249012-9">[</span><span·class="n">Arg</span><span·class="p"·data-group-id="4816249012-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="1190633420-8">(</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p"·data-group-id="1190633420-9">[</span><span·class="n">Arg</span><span·class="p"·data-group-id="1190633420-9">]</span><span·class="p">,</span><span·class="w">
447 ···············</span><span·class="p"·data-group-id="4816249012-10">[</span><span·class="p"·data-group-id="4816249012-11">{</span><span·class="ss">error_info</span><span·class="p">,</span><span·class="p"·data-group-id="4816249012-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="1190633420-10">[</span><span·class="p"·data-group-id="1190633420-11">{</span><span·class="ss">error_info</span><span·class="p">,</span><span·class="p"·data-group-id="1190633420-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="4816249012-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:·5ee14632883e92f58bcee4ce45eb4a6f6d29e3f0af75756fa0cdbc554dba34be·...·]-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="1190633420-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:·1a9e172e23b429c7678dc1d74c6cb2ef475f68c626a5309542e8775b90642edd·...·]-8">)</span><span·class="p">.</span><span·class="w">
  
449 </span><span·class="nf">format_error</span><span·class="p"·data-group-id="4816249012-14">(</span><span·class="n">Reason</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4816249012-15">[</span><span·class="p"·data-group-id="4816249012-16">{</span><span·class="p">_</span><span·class="n">M</span>[·...·truncated·by·diffoscope;·len:·393,·SHA:·8a34d82ccc7ed8425bd52c57979d92e6f19b11d06aaf49339f0bbf1b0779d17a·...·]-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="1190633420-14">(</span><span·class="n">Reason</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1190633420-15">[</span><span·class="p"·data-group-id="1190633420-16">{</span><span·class="p">_</span><span·class="n">M</span>[·...·truncated·by·diffoscope;·len:·393,·SHA:·9c0dbae04e0bd81c2e477f2db15da475691ac9ba028981d872944b1ba800e972·...·]-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="4816249012-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="4816249012-18">#{</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·74,·SHA:·659bbbfe0c49668e5b0445201c97e05287a12e2dec934a9b5dcd0ffa2242b321·...·]-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="1190633420-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="1190633420-18">#{</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·74,·SHA:·ff0e54b79c2219bd78f709c5ce814459ca465b8493a37b985ddda3fca749b4e1·...·]-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="4816249012-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="4816249012-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="1190633420-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="1190633420-19">)</span><span·class="p">,</span><span·class="w">
452 ··</span><span·class="n">ErrorMap</span><span·class="p"·data-group-id="4816249012-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="1190633420-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="4816249012-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="4816249012-22">[</span><span·class="o">?</s[·...·truncated·by·diffoscope;·len:·582,·SHA:·67f59179662fd9ba84a2b591d60e516ef54974b528b8b210acb6c19b104e4dc1·...·]-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="1190633420-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="1190633420-22">[</span><span·class="o">?</s[·...·truncated·by·diffoscope;·len:·582,·SHA:·9e728c251fcfcdc7b497cfab3cdcc735c9a45dc76bf5140dc7fbdd19029e4ebb·...·]-1">)</span><span·class="p">.</span><span·class="w">
454 </span><span·class="p"·data-group-id="8709638784-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">my_error_module</span><span·class="p"·data-group-id="8709638784-2">}</span><span·class="gp·unselectable">454 </span><span·class="p"·data-group-id="1938777017-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">my_error_module</span><span·class="p"·data-group-id="1938777017-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="8709638784-3">(</span><span·class="mi">1</span><span·class="p"·data-group-id="8709638784-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="1938777017-3">(</span><span·class="mi">1</span><span·class="p"·data-group-id="1938777017-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="8356060258-1">(</span><span·class="p"·data-group-id="8356060258-1">)</span><span·class="w">543 ····</span><span·class="nf">do_something</span><span·class="p"·data-group-id="1485321054-1">(</span><span·class="p"·data-group-id="1485321054-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="8356060258-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="8356060258-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="1485321054-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="1485321054-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="8356060258-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="8356060258-4">[</span><span·class="n"[·...·truncated·by·diffoscope;·len:·109,·SHA:·9cf8b78f0c52978e13f64bc356ef6501622dc868639081362967bffc19ee31b1·...·]-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="1485321054-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="1485321054-4">[</span><span·class="n"[·...·truncated·by·diffoscope;·len:·109,·SHA:·a9087c1c2b49691b8df1ceef82f4543d4fd1354ac057902e58af3eb43db7ccb1·...·]-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="0195659470-1">(</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p"·data-group-id="0195659470-2">[</span><span·class="p"·data-group-id="0195659470-2">]</span><span·class="p">,</span><span·class="p"·data-group-id="0195659470-3">[</sp[·...·truncated·by·diffoscope;·len:·368,·SHA:·835275f04d2c71d3ea21cdb4b4e8219ecc909c9bebd7fb42244564b608ec4b2b·...·]-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="1449731231-1">(</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p"·data-group-id="1449731231-2">[</span><span·class="p"·data-group-id="1449731231-2">]</span><span·class="p">,</span><span·class="p"·data-group-id="1449731231-3">[</sp[·...·truncated·by·diffoscope;·len:·368,·SHA:·b2e6191b473ad11d05855a87043faa8d1e28bc6a67714e875e446e063cb16b6c·...·]-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="0195659470-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="0195659470-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="1449731231-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="1449731231-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="0195659470-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="0195659470-8">[</span><span·class="n"[·...·truncated·by·diffoscope;·len:·109,·SHA:·5312ede8cd16dc499f701bab4c3f717ae8c77f1fac63e87759233f9e55e76702·...·]-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="1449731231-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="1449731231-8">[</span><span·class="n"[·...·truncated·by·diffoscope;·len:·109,·SHA:·f8c060db462c5e708a40ad465aa748cb1d80ebb2e0351c861a5bdf6700572454·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>585 <p>Copyright·©·1996-2024·<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="6971544788-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="6971544788-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="6594694492-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="6594694492-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="1071132502-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="1071132502-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="7092822926-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="7092822926-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="0910228680-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="0910228680-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="8142287169-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="8142287169-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="4856273303-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="4856273303-1">)</span></code></pre><p>or·three·arguments:</p><pre><code·class="makeup·erlang[·...·truncated·by·diffoscope;·len:·324,·SHA:·915711796afad986050e267198a95c179b3b5149ede3965bd4fafbc289bd1231·...·]-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="9318977015-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="9318977015-1">)</span></code></pre><p>or·three·arguments:</p><pre><code·class="makeup·erlang[·...·truncated·by·diffoscope;·len:·324,·SHA:·ddbef59280ad7e3199a0b30f74a1a9342ca113874cc30c95485f5f42324a5379·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1426 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>237 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>593 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>292 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>581 <p>Copyright·©·1996-2024·<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="7394385789-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="73943857[·...·truncated·by·diffoscope;·len:·369,·SHA:·a7620581db8b1fb14a247982554ec25bdba2008e175347c3d539c5ecb0666b6a·...·]-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="1588365338-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="15883653[·...·truncated·by·diffoscope;·len:·369,·SHA:·2eacec32c6f6d45478a65ebd5a33a97061fedabd052ba15fcd2dac5a77836d0f·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>596 <p>Copyright·©·1996-2024·<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="6614567866-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="661456786[·...·truncated·by·diffoscope;·len:·368,·SHA:·dfb289e9af4d822dd57e408a3f2e43baefc1d720999aeeee596dcefb19ee2cea·...·]-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="6536687862-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="653668786[·...·truncated·by·diffoscope;·len:·368,·SHA:·7e276eb706e51babaaf80568e87434f35ab6b35602caaeef4d74983a0cf9a180·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>5921 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1006 <p>Copyright·©·1996-2024·<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="0927144925-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="0927[·...·truncated·by·diffoscope;·len:·373,·SHA:·b7e207c4ad9c9503d20180fa6d34d9c2e517c1c9a71b87df0de3cf7c94b7c1c6·...·]-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="8212455834-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="8212[·...·truncated·by·diffoscope;·len:·373,·SHA:·bd340fb2b6a042964170f1b53cef45df78e04453ae5cd7a3f2f88bb2111a2d48·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1346 <p>Copyright·©·1996-2024·<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="4045696836-1">(</span><span·class="ss">write</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4045696836-2">{</span><span·class="n">Fd</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·428,·SHA:·9b39d78f6c0368d3a8eb44f3b5b9e72492457962e931276bfcd16b088118382a·...·]6-3">)</span><span·class="p">;</span><span·class="w">1294 ···</span><span·class="nf">fun</span><span·class="p"·data-group-id="4368977366-1">(</span><span·class="ss">write</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4368977366-2">{</span><span·class="n">Fd</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·428,·SHA:·e57eb20f2351971aecceb4fe145e53f75abba70cfade7e8ebb70be28fe57bd88·...·]6-3">)</span><span·class="p">;</span><span·class="w">
1295 ······</span><span·class="p"·data-group-id="4045696836-4">(</span><span·class="ss">position</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4045696836-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:·431,·SHA:·a10ed757cdc8031bdf003c1930f70166fb9f971b3a8027f2da306af591105830·...·]6-6">)</span><span·class="p">;</span><span·class="w">1295 ······</span><span·class="p"·data-group-id="4368977366-4">(</span><span·class="ss">position</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4368977366-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:·431,·SHA:·d4db1ee1dc4002864d60cd5bf027a31fcaea1b89723ef7d5ccaac1f3f2be5695·...·]6-6">)</span><span·class="p">;</span><span·class="w">
1296 ······</span><span·class="p"·data-group-id="4045696836-7">(</span><span·class="ss">read2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4045696836-8">{</span><span·class="n">Fd</span><span·class="p">,</span><span·class="n">Size</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·426,·SHA:·6a03ff126853db3b250786c87415885656176f9ab621360b5e149ce1ce46e2a9·...·]6-9">)</span><span·class="p">;</span><span·class="w">1296 ······</span><span·class="p"·data-group-id="4368977366-7">(</span><span·class="ss">read2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4368977366-8">{</span><span·class="n">Fd</span><span·class="p">,</span><span·class="n">Size</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·426,·SHA:·f99446d4b59e8e2e3b5b4f8d7027101bbce11b8eb441a276564b0ca5d172f3cc·...·]6-9">)</span><span·class="p">;</span><span·class="w">
1297 ······</span><span·class="p"·data-group-id="4045696836-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="4045696836-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·198,·SHA:·a71e9c735961c9ab8af8af2e871356060987318541794e78599fdb46c0954b0b·...·]6-11">)</span><span·class="w">1297 ······</span><span·class="p"·data-group-id="4368977366-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="4368977366-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·198,·SHA:·c0879fe897aeb0f3ea1d1524296efa161645b61599fc2af52fc761e06fc0f32f·...·]6-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="0899441055-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Fd</span><span·class="p"·data-group-id="0899441055-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="0899441055-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="0899441055-2">)</span><span·class="p">.</span><span·class="w"> 
1299 </span><span·class="p"·data-group-id="0899441055-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TarDesc</span><span·class="p"·data-group-id="0899441055-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w"[·...·truncated·by·diffoscope;·len:·1041,·SHA:·4a9c7c7b3bb4b6a17dd8d068d8884e1c31b9f5175fabe209fc08cb0f19266546·...·]</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:·6fb257479a3edd922c21aa2d6990ac83fe091341eefe78cb5bfe9ab8a78fa713·...·]</span><span·class="w">
 1299 </span><span·class="p"·data-group-id="6196243789-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TarDesc</span><span·class="p"·data-group-id="6196243789-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="6196243789-4">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6196243789-5">[</span><span·class="ss">write</span><span·class="p"·data-group-id="6196243789-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExampleFun</span><span·class="p"·data-group-id="6196243789-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="7888607397-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="7888607397-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="2950201286-2">(</span><span·class="n">TarDesc</span><span·class="p"·data-group-id="2950201286-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="7888607397-2">(</span><span·class="n">TarDesc</span><span·class="p"·data-group-id="7888607397-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1488 <p>Copyright·©·1996-2024·<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="8857242628-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="8857242628-2">[</span><span·class="n">Source</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·e88ec5edb5574f249525e8ff785be22e03e977b46848d9679df005a5377b8ef4·...·]-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="7873222943-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="7873222943-2">[</span><span·class="n">Source</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·a8f378b34c96fe22b1b036cde3b96ad758cdf245fd3957d7466a8caba023e049·...·]-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="8857242628-3">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="8857242628-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="7873222943-3">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="7873222943-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="8857242628-4">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="8857242628-5">(</span><span·class="ss">schedulers</span><span·class="p"·data-group-id="8857242628-5">)</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·6747fafd3ed973bda66518ca96259e906e89052e5a62ffae591b10d3f5167fca·...·]-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="7873222943-4">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="7873222943-5">(</span><span·class="ss">schedulers</span><span·class="p"·data-group-id="7873222943-5">)</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·e3287a969a689a356f423a1049cd70a3292981edfbe0de3b94fd8e4ef490fd14·...·]-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="8857242628-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="8857242628-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·630,·SHA:·b656c87375071438ef33713e45f2ad1e38dff86aeec41c760c9b0faf52b456ed·...·]-9">}</span><span·class="p">,</span><span·class="w">530 &gt;·</span><span·class="p"·data-group-id="7873222943-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="7873222943-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·630,·SHA:·891d3a9e0008fc4bfc826e4ddcf81ace3324cbce221e517feaf54b0e8eb97714·...·]-9">}</span><span·class="p">,</span><span·class="w">
531 ······································</span><span·class="p"·data-group-id="8857242628-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="8857242628-11">(</span><span·class="n">Source</span><span·class="p"·data-group-id="885[·...·truncated·by·diffoscope;·len:·168,·SHA:·af090fad439dacd20538975a5540943b7b697918ce73276deadf14aa8880b888·...·]-7">)</span><span·class="p">.</span><span·class="w">531 ······································</span><span·class="p"·data-group-id="7873222943-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="7873222943-11">(</span><span·class="n">Source</span><span·class="p"·data-group-id="787[·...·truncated·by·diffoscope;·len:·168,·SHA:·47be17a201b8d42e2ee4326c94e6df617746578652911d50d64bf03406d26a34·...·]-7">)</span><span·class="p">.</span><span·class="w">
532 </span><span·class="p"·data-group-id="8857242628-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:·f58de871ebd97520afbb623d27166c85839f6e9698f5d80d154bd11907b1a451·...·]-12">}</span><span·class="gp·unselectable">532 </span><span·class="p"·data-group-id="7873222943-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:·9b2b8e03ff1668283749fa2f144869a2b0eb58252810c64b780c51d216f20131·...·]-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="8857242628-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="8857242628-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="7873222943-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="7873222943-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="8857242628-14">(</span><span·class="s">&quot;escript·demo.escript&quot;</span><span·class="p"·data-group-id="8857242628-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="7873222943-14">(</span><span·class="s">&quot;escript·demo.escript&quot;</span><span·class="p"·data-group-id="7873222943-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="8857242628-15">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8857242628-16">[</span><span·class="p"·data-group-id="8857242628-16">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·5e37f528533535cee1f0bd0e8e6983adf21c0a955a9d2ace99f305cba9eff066·...·]-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="7873222943-15">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7873222943-16">[</span><span·class="p"·data-group-id="7873222943-16">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·89292ab8b52bf0b8588a1fa23f179d4736c6e0e765f47caddcb9ca7b7e8b5806·...·]-15">)</span><span·class="p">.</span><span·class="w">
538 </span><span·class="p"·data-group-id="8857242628-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8857242628-18">[</span><span·class="p"·data-group-id="8857242628-19">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">def[·...·truncated·by·diffoscope;·len:·544,·SHA:·3c18def7fee4e90ec5bd15b42dabf0d1d20bc11f84c4f982d0b9ba182bcb2712·...·]-21">}</span><span·class="p">,</span><span·class="w">538 </span><span·class="p"·data-group-id="7873222943-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7873222943-18">[</span><span·class="p"·data-group-id="7873222943-19">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">def[·...·truncated·by·diffoscope;·len:·544,·SHA:·2839beb60c6b199a97affcd135150a94b99f96baf199764a19eb67516c4ce6b0·...·]-21">}</span><span·class="p">,</span><span·class="w">
539 ·····</span><span·class="p"·data-group-id="8857242628-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:·ad8534345ad9698e78a5f47c4a20bef0e6d19072891ee9d7535a84018c7f6a23·...·]-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="7873222943-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:·420aee8f238c5d937fa0604c2d7e55ed1e76fe9f68288133fb36e99887cb75f9·...·]-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="5298312728-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="5298312728-2">]</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·bea67bc1919bd386d93eab94ad3d2cc70f4e133d0c089d21586621d46572118a·...·]-1">)</span><span·class="p">.</span><span·class="w">540 ··················</span><span·class="p"·data-group-id="3279955699-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="3279955699-2">]</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·ed1950cfdd5231d4da9e4c4fb2dbbf3ef459c8746a39bfb4572ef1e73302381a·...·]-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="5298312728-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="5298312728-3">}</span><spa[·...·truncated·by·diffoscope;·len:·554,·SHA:·67c457fe60bf0a974a6319f58ea87f7e3bd37dbc2585eea979d8f7edc3c6ec5e·...·]-4">)</span><span·class="p">.</span><span·class="w">542 &gt;·</span><span·class="p"·data-group-id="3279955699-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="3279955699-3">}</span><spa[·...·truncated·by·diffoscope;·len:·554,·SHA:·df4022826d0ac647049fd759166494a97bfe14df7d3920c8c11b358c6fc37184·...·]-4">)</span><span·class="p">.</span><span·class="w">
543 </span><span·class="p"·data-group-id="5298312728-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="3279955699-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="5298312728-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="3279955699-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="5298312728-7">(</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5298312728-8">[</span><span·class="p"·data-group-id="5298312728-9">{</span><span·class="ss">beam</span><span·cl[·...·truncated·by·diffoscope;·len:·218,·SHA:·4fc7ab30ed2b9f5ee3e743c02c1dc26ec20a967558344b47b6615bf84ae91b7f·...·]-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="3279955699-7">(</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3279955699-8">[</span><span·class="p"·data-group-id="3279955699-9">{</span><span·class="ss">beam</span><span·cl[·...·truncated·by·diffoscope;·len:·218,·SHA:·758d2b5070f3311605bd2f81faa445aa9a8fee49f1f38405292d857980dbe60c·...·]-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="5298312728-10">(</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5298312728-11">[</span><span·class="p"·data-group-id="5298312728-11">]</span><span·class="p"·data-group-id="52[·...·truncated·by·diffoscope;·len:·8,·SHA:·4ba0096b3d395e96f7f02e22bebca17ee70134d035ffcaa0e34debf7a813d1f9·...·]-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="3279955699-10">(</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3279955699-11">[</span><span·class="p"·data-group-id="3279955699-11">]</span><span·class="p"·data-group-id="32[·...·truncated·by·diffoscope;·len:·8,·SHA:·0c272f3123e250fc7289d5fafd6bfb22851a99d5916ebbfb5f46fa2159041840·...·]-10">)</span><span·class="p">.</span><span·class="w">
549 </span><span·class="p"·data-group-id="5298312728-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5298312728-13">[</span><span·class="p"·data-group-id="5298312728-14">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">und[·...·truncated·by·diffoscope;·len:·543,·SHA:·3a21ee8b927b9650b47808c1a7ab4c7e938dcbd009429c18bdce373bdffd6154·...·]-16">}</span><span·class="p">,</span><span·class="w">549 </span><span·class="p"·data-group-id="3279955699-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3279955699-13">[</span><span·class="p"·data-group-id="3279955699-14">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">und[·...·truncated·by·diffoscope;·len:·543,·SHA:·eff680e405597be29cee06bf6db4f67e9fb0836dfab6c26458595f08eda01a80·...·]-16">}</span><span·class="p">,</span><span·class="w">
550 ·····</span><span·class="p"·data-group-id="5298312728-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="3279955699-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="5298312728-17">}</span><span·class="p"·data-group-id="5298312728-13">]</span><span·class="p"·data-group-id="5298312728-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="3279955699-17">}</span><span·class="p"·data-group-id="3279955699-13">]</span><span·class="p"·data-group-id="3279955699-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="5298312728-18">(</span><span·class="s">&quot;escript·demo.beam&quot;</span><span·class="p"·data-group-id="5298312728-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="3279955699-18">(</span><span·class="s">&quot;escript·demo.beam&quot;</span><span·class="p"·data-group-id="3279955699-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="7744355770-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="7744355770-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·219,·SHA:·dc4a62e42a734001ab6a0c244a63e618b904cc06fd8471dedfaa834bae77bbbb·...·]-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="7125418109-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="7125418109-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·219,·SHA:·ba9507d5acaf7a5f6dc57540a8b02b17cf57b984e52898183b46b0aa1f98dc89·...·]-2">)</span><span·class="p">.</span><span·class="w">
556 </span><span·class="p"·data-group-id="7744355770-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><s[·...·truncated·by·diffoscope;·len:·94,·SHA:·ed0f42186a5a153f54e7bcaf437d4f08c6e72e1d2fae9ffd30bdef1f95b1550f·...·]-3">}</span><span·class="gp·unselectable">556 </span><span·class="p"·data-group-id="7125418109-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><s[·...·truncated·by·diffoscope;·len:·94,·SHA:·6ad874c42cac315705648a24ca7f75955adf4308f64ee7071494e902b05c4ab0·...·]-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="7744355770-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="7125418109-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="7744355770-5">[</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="w">558 ·················</span><span·class="p"·data-group-id="7125418109-5">[</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="w">
559 ··················</span><span·class="p"·data-group-id="7744355770-6">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7744355770-7">[</span><span·class="p"·data-group-id="7744355770-8">{</span><span·class="s">&quot;demo.erl&quot;</span><span·c[·...·truncated·by·diffoscope;·len:·115,·SHA:·b91532a8163d8880db84658f624a23d34e0975276d04e4786da5518cfc1e9838·...·]-8">}</span><span·class="p">,</span><span·class="w">559 ··················</span><span·class="p"·data-group-id="7125418109-6">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7125418109-7">[</span><span·class="p"·data-group-id="7125418109-8">{</span><span·class="s">&quot;demo.erl&quot;</span><span·c[·...·truncated·by·diffoscope;·len:·115,·SHA:·5351aeabe234b2b6d0b4b644ac4197c7a8c38ed98811e078b8dc5fc3a2faeebf·...·]-8">}</span><span·class="p">,</span><span·class="w">
560 ·····························</span><span·class="p"·data-group-id="7744355770-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="7744355770-9">}</span><span·class="p"·data-group-id="7744355770-7">]</span><span·[·...·truncated·by·diffoscope;·len:·297,·SHA:·a1a06e8bcfac49df047bb198dbb64f7993fb5dc756e7295e3c1495c9654f4a3c·...·]-4">)</span><span·class="p">.</span><span·class="w">560 ·····························</span><span·class="p"·data-group-id="7125418109-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="7125418109-9">}</span><span·class="p"·data-group-id="7125418109-7">]</span><span·[·...·truncated·by·diffoscope;·len:·297,·SHA:·f6e8c2a9f3a6e6795c70dbec601ebf4a0037c291db88d02eecf6b2fe35885eb9·...·]-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="7744355770-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7744355770-12">[</span><span·class="p"·data-group-id="7744355770-13">{</span><span·class="ss">shebang</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·564,·SHA:·c24201da55e3745e28464b2b9fb152da6cf1699a746e2654405dd31588ffcb41·...·]-15">}</span><span·class="p">,</span><span·class="w">562 &gt;·</span><span·class="p"·data-group-id="7125418109-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7125418109-12">[</span><span·class="p"·data-group-id="7125418109-13">{</span><span·class="ss">shebang</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·564,·SHA:·4520cfc788e13cef943e62352971b425d0467da27c761f48f3f552581c1e9df3·...·]-15">}</span><span·class="p">,</span><span·class="w">
563 ·····</span><span·class="p"·data-group-id="7744355770-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="7744355770-16">}</span><span·class="p"·data-group-id="7744355770-12">]</span><span·class="p"·data-group-id="7744355770-11">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">extract</span><span·class="p"·data-group-id="7744355770-17">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7744355770-18">[</span><span·class="p"·data-group-id="7744355770-18">]</span><span·class="p"·data-group-id="7744355770-17">)</span><span·class="p">.</span><span·class="w"> 
564 </span><span·class="p"·data-group-id="7744355770-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7744355770-20">[</span><span·class="p"·data-group-id="7744355770-21">{</span><span·class="ss">shebang</span><span·[·...·truncated·by·diffoscope;·len:·609,·SHA:·38753e4bb93a5da57e40e5cfd28ec0c91d44258ab335b5b779a51745bd9db073·...·]</span><span·class="w">563 ·····</span><span·class="p"·data-group-id="7125418109-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="7125418109-16">}</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·570,·SHA:·2df050d9f216248c3183b7101b9be0f986259b2b4e4f7470346226eb45c975dd·...·]</span><span·class="w">
 564 </span><span·class="p"·data-group-id="7125418109-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7125418109-20">[</span><span·class="p"·data-group-id="7125418109-21">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">default</span><span·class="p"·data-group-id="7125418109-21">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7125418109-22">{</span><span·class="ss">comment</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p"·data-group-id="7125418109-22">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7125418109-23">{</span><span·class="ss">emu_args</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p"·data-group-id="7125418109-23">}</span><span·class="p">,</span><span·class="w">
565 ·····</span><span·class="p"·data-group-id="7744355770-24">{</span><span·class="p"·data-group-id="7744355770-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="7125418109-24">{</span><span·class="p"·data-group-id="7125418109-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="7744355770-25">}</span><span·class="p">]</span><span·class="p"·data-group-id="7744355770-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="7125418109-25">}</span><span·class="p">]</span><span·class="p"·data-group-id="7125418109-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="7744355770-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="7744355770-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="7125418109-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="7125418109-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="7744355770-27">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="7744355770-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·cla[·...·truncated·by·diffoscope;·len:·1251,·SHA:·793e0c0e4cea70eab9ec54edbd3e2a086113d87da5d84c056f0bdbf176744633·...·]-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="7125418109-27">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="7125418109-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·cla[·...·truncated·by·diffoscope;·len:·1251,·SHA:·e64b4217ebbd6e49af9259285c3b95be27a8a216e7ace11c31a2d310ef571ea4·...·]-27">)</span><span·class="p">.</span><span·class="w">
570 </span><span·class="p"·data-group-id="7744355770-34">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7744355770-35">[</span><span·class="p"·data-group-id="7744355770-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="7125418109-34">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7125418109-35">[</span><span·class="p"·data-group-id="7125418109-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="7744355770-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="7125418109-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="7744355770-38">{</span><span·class="p"·data-group-id="7744355770-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="7744355770-39">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·6c4317245c5f5e329e7e88f548233f9900a8bae5566c04cb97f81329cd0c8af1·...·]-38">}</span><span·class="p">,</span><span·class="w">572 ·················</span><span·class="p"·data-group-id="7125418109-38">{</span><span·class="p"·data-group-id="7125418109-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="7125418109-39">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·c65a5ab60a27decbbef010c55a59b6ea264e9bfc470d6513703e7d4fa60a52af·...·]-38">}</span><span·class="p">,</span><span·class="w">
573 ·················</span><span·class="p"·data-group-id="7744355770-41">{</span><span·class="p"·data-group-id="7744355770-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="7744355770-42">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·141280a9e5cb65764e20689f77d203cdf7361a538d6fb37b8eb7bfc391a9aee2·...·]-41">}</span><span·class="p">,</span><span·class="w">573 ·················</span><span·class="p"·data-group-id="7125418109-41">{</span><span·class="p"·data-group-id="7125418109-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="7125418109-42">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·95b90a04476aec0a20a3939e546308ed8fea8cb833c2902c05d58862c1db1ed1·...·]-41">}</span><span·class="p">,</span><span·class="w">
574 ·················</span><span·class="p"·data-group-id="7744355770-44">{</span><span·class="p"·data-group-id="7744355770-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="7744355770-45">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·572c99b8a330b2da4066a9d7d290734bfbe678a319c3bfe810c75bf591f82cb7·...·]-44">}</span><span·class="p">,</span><span·class="w">574 ·················</span><span·class="p"·data-group-id="7125418109-44">{</span><span·class="p"·data-group-id="7125418109-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="7125418109-45">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·e6f7e2b67ffbbb4af4002b5c8aa523513b06aeda5263648d7248b636f1bb1537·...·]-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="7744355770-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="7125418109-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="7744355770-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="7125418109-36">}</span><span·class="p">,</span><span·class="w">
578 ·····</span><span·class="p"·data-group-id="7744355770-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="7125418109-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="7744355770-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="7125418109-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="7744355770-49">{</span><span·class="p"·data-group-id="7744355770-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="7744355770-50">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·e8e9b3521cc6aa94e877822003a99815c009f7259c35c02beb37dab471ace04a·...·]-49">}</span><span·class="p">,</span><span·class="w">580 ·················</span><span·class="p"·data-group-id="7125418109-49">{</span><span·class="p"·data-group-id="7125418109-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="7125418109-50">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·08cacbda893a83b75117c87c22b4282f37990d8134032f7bda3e316827c1122b·...·]-49">}</span><span·class="p">,</span><span·class="w">
581 ·················</span><span·class="p"·data-group-id="7744355770-52">{</span><span·class="p"·data-group-id="7744355770-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="7744355770-53">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·8d0761c33ff11e850b7f9d6b42b73837eeb01299136ffeaa362b37c53c9f531c·...·]-52">}</span><span·class="p">,</span><span·class="w">581 ·················</span><span·class="p"·data-group-id="7125418109-52">{</span><span·class="p"·data-group-id="7125418109-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="7125418109-53">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·883fb37ba7d0e6982067ee6334695a1cee89302a7b7d563bd2c863cf8079772f·...·]-52">}</span><span·class="p">,</span><span·class="w">
582 ·················</span><span·class="p"·data-group-id="7744355770-55">{</span><span·class="p"·data-group-id="7744355770-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="7744355770-56">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·b05e865128d1f143dd2816420db404314b9d1ff18dffa4ae5cb8007b879c1d13·...·]-55">}</span><span·class="p">,</span><span·class="w">582 ·················</span><span·class="p"·data-group-id="7125418109-55">{</span><span·class="p"·data-group-id="7125418109-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="7125418109-56">}</span>[·...·truncated·by·diffoscope;·len:·298,·SHA:·2c54ab949a425c3ed5874dfa5bc5a362f3033c8b645b1e873bc9607050e474df·...·]-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="7744355770-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="7125418109-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="7744355770-47">}</span><span·class="p"·data-group-id="7744355770-35">]</span><span·class="p"·data-group-id="7744355770-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="7125418109-47">}</span><span·class="p"·data-group-id="7125418109-35">]</span><span·class="p"·data-group-id="7125418109-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="5476758694-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="0314866850-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="5476758694-2">[</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5476758694-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:·a9c8a274bb643c28fcf19b806773704e74d2bfaf53628fa7175ab1110408b5c5·...·]-5">}</span><span·class="p">,</span><span·class="w">618 ·················</span><span·class="p"·data-group-id="0314866850-2">[</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0314866850-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:·d8b256be5808aa80d155860722ba46b5e6f5cdb4105e7d4d851a994fb723395a·...·]-5">}</span><span·class="p">,</span><span·class="w">
619 ······································</span><span·class="p"·data-group-id="5476758694-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="5476758694-6">}</span><span·class="p"·data-group-id="5476758694-4">]</span><span[·...·truncated·by·diffoscope;·len:·296,·SHA:·8fbf841441febb67617236706b10070aacd6b5f566a1178cc87120c364839185·...·]-1">)</span><span·class="p">.</span><span·class="w">619 ······································</span><span·class="p"·data-group-id="0314866850-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="0314866850-6">}</span><span·class="p"·data-group-id="0314866850-4">]</span><span[·...·truncated·by·diffoscope;·len:·296,·SHA:·11aadc09613ca7b2f28a715d4ebdad6afaca28a5894c449b07ec4c277fa6f30b·...·]-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="5476758694-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5476758694-9">[</span><span·class="p"·data-group-id="5476758694-10">{</span><span·class="ss">shebang</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·563,·SHA:·67a3e8b6ba55a0c1451defee577d5a449554c1648c7f82ed8db72c622dc8413f·...·]-12">}</span><span·class="p">,</span><span·class="w">621 &gt;·</span><span·class="p"·data-group-id="0314866850-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0314866850-9">[</span><span·class="p"·data-group-id="0314866850-10">{</span><span·class="ss">shebang</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·563,·SHA:·87d96e6e4f47c5f9c3bc3aa1273d21cdc27c3a99aafcbc7d5cf68c4f43279c9e·...·]-12">}</span><span·class="p">,</span><span·class="w">
622 ·····</span><span·class="p"·data-group-id="5476758694-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="5476758694-13">}</span><span·class="p"·data-group-id="5476758694-9">]</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·68fbb1cdb09780eada9c46bbfa409b27fa07fb92e1eeb9a803992f5f0ffe109f·...·]-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">622 ·····</span><span·class="p"·data-group-id="0314866850-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="0314866850-13">}</span><span·class="p"·data-group-id="0314866850-9">]</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·c042dc5f9935e7a0055ff4389ca5418cb2bf45edda69a32e323f60e6ca414bf1·...·]-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="5476758694-14">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5476758694-15">[</span><span·class="p"·data-group-id="5476758694-15">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·2c223e9160b0ed8dc10f24272e230d98b76f130a2e8e0418c08709cc286a29a6·...·]-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="0314866850-14">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0314866850-15">[</span><span·class="p"·data-group-id="0314866850-15">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·dff92823bcc91be5c967d2e3a2ef2dfa682a6158136e74e60ac8cc9d8c99bc9a·...·]-14">)</span><span·class="p">.</span><span·class="w">
624 </span><span·class="p"·data-group-id="5476758694-16">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5476758694-17">[</span><span·class="p"·data-group-id="5476758694-18">{</span><span·class="p"·data-group-id="5476758694-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="0314866850-16">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0314866850-17">[</span><span·class="p"·data-group-id="0314866850-18">{</span><span·class="p"·data-group-id="0314866850-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="5476758694-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="0314866850-19">}</span><span·class="w">
626 ·····</span><span·class="p"·data-group-id="5476758694-20">{</span><span·class="ss">emu_args</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p"·data-group-id="5476758694-20">}</span><span·class="p">]</span><span·class="p"·data-group-id="5476758694-18">}</span></code></pre>626 ·····</span><span·class="p"·data-group-id="0314866850-20">{</span><span·class="ss">emu_args</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p"·data-group-id="0314866850-20">}</span><span·class="p">]</span><span·class="p"·data-group-id="0314866850-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>683 <p>Copyright·©·1996-2024·<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="6683629065-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6683629065-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:·e71f7731644bfed6483f6f3b62729090001ba00061daa7b0f1a0d06591ca91d3·...·]-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="5959261091-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5959261091-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:·de0ef2d2a577e5cb873b40a490a43de2cda4ef254dc4028da00821ece64cbe3c·...·]-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="6683629065-3">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6683629065-4">{</span><span·class="mi">1</span><span·class="p"·data-group-id="6683629065-4">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·a6b79f8b12c7f01e817c748df46697db57574d7387a430088dd714a6c63e4404·...·]-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="5959261091-3">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5959261091-4">{</span><span·class="mi">1</span><span·class="p"·data-group-id="5959261091-4">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·79a47f7600be428ba6473d51f09efcd25e444092a48f28e4801679855c0cd8ea·...·]-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="6683629065-5">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6683629065-6">{</span><span·class="mi">2</span><span·class="p"·data-group-id="6683629065-6">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·a6b79f8b12c7f01e817c748df46697db57574d7387a430088dd714a6c63e4404·...·]-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="5959261091-5">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5959261091-6">{</span><span·class="mi">2</span><span·class="p"·data-group-id="5959261091-6">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·79a47f7600be428ba6473d51f09efcd25e444092a48f28e4801679855c0cd8ea·...·]-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="6683629065-7">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6683629065-8">{</span><span·class="mi">3</span><span·class="p"·data-group-id="6683629065-8">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·a6b79f8b12c7f01e817c748df46697db57574d7387a430088dd714a6c63e4404·...·]-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="5959261091-7">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5959261091-8">{</span><span·class="mi">3</span><span·class="p"·data-group-id="5959261091-8">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·79a47f7600be428ba6473d51f09efcd25e444092a48f28e4801679855c0cd8ea·...·]-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="4205176129-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="p"·data-group-id="4205176129-2">[</span><span·class="ss">ordered_set</span><span·class="p"·data-group-id="4205176129-2">]</span><span·class="p"·data-group-id="4205176129-1"[·...·truncated·by·diffoscope;·len:·546,·SHA:·b73aa7cb4bb26e6c59d8f795e6656c67610a67126c5660d5754fb0cd248ce873·...·]-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="0443714701-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="p"·data-group-id="0443714701-2">[</span><span·class="ss">ordered_set</span><span·class="p"·data-group-id="0443714701-2">]</span><span·class="p"·data-group-id="0443714701-1"[·...·truncated·by·diffoscope;·len:·546,·SHA:·a8393a8eef98c2c09d13b28aff47fc519eaa2c149806edfcaf3e2b1a5cccc120·...·]-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="4205176129-5">(</span><span·class="n">T</span><span·class="p">,</span><span·class="p"·data-group-id="4205176129-6">{</span><span·class="p"·data-group-id="4205176129-7">[</span><span·class="sc">$5</span><span·class="p">,</span><span·class="sc">$5</span><spa[·...·truncated·by·diffoscope;·len:·387,·SHA:·f6be40813bcf846bb55fd82f0ea2d94c9261147f3ccaf65f8d6544a77d4eaea9·...·]-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="0443714701-5">(</span><span·class="n">T</span><span·class="p">,</span><span·class="p"·data-group-id="0443714701-6">{</span><span·class="p"·data-group-id="0443714701-7">[</span><span·class="sc">$5</span><span·class="p">,</span><span·class="sc">$5</span><spa[·...·truncated·by·diffoscope;·len:·387,·SHA:·627d7582e91c2a1af20503c94aa37455bba510c4f9db0aed223b00663d364fae·...·]-5">)</span><span·class="p">.</span><span·class="w">
243 </span><span·class="p"·data-group-id="4205176129-8">[</span><span·class="p"·data-group-id="4205176129-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="4205176129-9">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·43cf0ba1c651239bd0478e9b0500190cf4b9a7580d3789cb0c7a174a9ab9b755·...·]-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="0443714701-8">[</span><span·class="p"·data-group-id="0443714701-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="0443714701-9">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·4c0bb92242f5d211c3ea3c2ec2eb850cae47697bc21fcfa8a426262377c964f7·...·]-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="6777118076-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="6777118076-2">(</span><span·class="p"·data-group-id="6777118076-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:·7b58d139b8bf93b2d693b0fb1593b3fe080c66851b211d5730809a1e980931a4·...·]-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="6311593599-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="6311593599-2">(</span><span·class="p"·data-group-id="6311593599-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:·267312ebf80bcb93c6274edefa81cfe56d39cef3dc6ca879fd43d5e63a08829d·...·]-1">)</span><span·class="p">.</span><span·class="w">
1940 </span><span·class="p"·data-group-id="6777118076-4">[</span><span·class="p"·data-group-id="6777118076-5">{</span><span·class="p"·data-group-id="6777118076-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="67[·...·truncated·by·diffoscope;·len:·663,·SHA:·dd60d1539285719e3f871b3495af221fd354f34c44b03c42cfc67a94416c569a·...·]-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="6311593599-4">[</span><span·class="p"·data-group-id="6311593599-5">{</span><span·class="p"·data-group-id="6311593599-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="63[·...·truncated·by·diffoscope;·len:·663,·SHA:·e5668f456bd9c34f706cfb0c67a4e7bf254ed9bd0ded6a2a82b5b90060bce4df·...·]-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="3858491490-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3858491490-2">(</span><span·class="p"·data-group-id="3858491490-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:·6a07866eb2d7a31a9379d05af7f5f17fbbc569ebeba00b1d26504542327068cc·...·]-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="9347341439-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="9347341439-2">(</span><span·class="p"·data-group-id="9347341439-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:·fa32e2d7fa6342af35c7ebdda20a73bfa89e482ff89057964cc49ebf2ecf4c7c·...·]-1">)</span><span·class="p">.</span><span·class="w">
1943 </span><span·class="p"·data-group-id="3858491490-4">[</span><span·class="p"·data-group-id="3858491490-5">{</span><span·class="p"·data-group-id="3858491490-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="3[·...·truncated·by·diffoscope;·len:·825,·SHA:·b21194d755348c10564f4fea2341f03f14ec58e95fa3137ed6fd54636bc0da2e·...·]-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="9347341439-4">[</span><span·class="p"·data-group-id="9347341439-5">{</span><span·class="p"·data-group-id="9347341439-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="9[·...·truncated·by·diffoscope;·len:·825,·SHA:·8d204d9c15be40f91d0632e35ae557b8ee72dc4f9dec447581fe2f2a6e5e499b·...·]-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="0741501089-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0741501089-2">(</span><span·class="p"·data-group-id="0741501089-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:·dfbfd9e94c8225bf841a5167558e61c206e7b279316d2090e3fdf22e6c813b54·...·]-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="4901568912-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4901568912-2">(</span><span·class="p"·data-group-id="4901568912-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:·84c9aa4ce5674a9ff2322556507b2895f9f84a4de23adcc3701203dd6b68bff3·...·]-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="0741501089-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="074150[·...·truncated·by·diffoscope;·len:·4,·SHA:·8cf04f0d07191f042b1d11880ab80618c2680e8e03bbacc60f9e31160d4fa87f·...·]-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="4901568912-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="490156[·...·truncated·by·diffoscope;·len:·4,·SHA:·e781b2c55b7dd50d14e90f2b616af651c8ec1d8064db6491b7e0daeea4e4efe8·...·]-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="0741501089-6">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">transform_error</span><span·class="p"·data-group-id="0741501089-6">}</span><span·class="gp·unselectable">1949 </span><span·class="p"·data-group-id="4901568912-6">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">transform_error</span><span·class="p"·data-group-id="4901568912-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="0741501089-7">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0741501089-8">(</span><span·class="p"·data-group-id="0741501089-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:·a40d18869df6780266caf2d71de1c0bab658611201d074086cc7c5663f2c51a4·...·]-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="4901568912-7">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4901568912-8">(</span><span·class="p"·data-group-id="4901568912-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:·cf76adf7a7c19bb4a5044c74b3e945654486243c45b2f8d0e2e2cf6fa372469f·...·]-7">)</span><span·class="p">.</span><span·class="w">
1951 </span><span·class="p"·data-group-id="0741501089-11">[</span><span·class="p"·data-group-id="0741501089-12">{</span><span·class="p"·data-group-id="0741501089-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:·d2d52ac39c24caf1813d47b2f9a69b195a2e5798b2400edcd94ed051655d0858·...·]-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="4901568912-11">[</span><span·class="p"·data-group-id="4901568912-12">{</span><span·class="p"·data-group-id="4901568912-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:·01b2712954e9f36ad1d4a10dd8c27f111a819aa7297f98cb608131259be8c724·...·]-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="9250291104-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="9250291104-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="3389514486-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="3389514486-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="9250291104-2">[</span><span·class="p"·data-group-id="9250291104-3">[</span><span·class="p"·data-group-id="9250291104-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:·eb0a49c24218fc3f87f17b3b71ea4b153c7ba159383473719babf36787974eb8·...·]-2">]</span><span·class="gp·unselectable">2574 </span><span·class="p"·data-group-id="3389514486-2">[</span><span·class="p"·data-group-id="3389514486-3">[</span><span·class="p"·data-group-id="3389514486-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:·a1b92ea956d799719fe00522e5c6c849a9a045776b45b0c8be342c791080821e·...·]-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="9250291104-9">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9250291104-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:·a30cb99fe6589d011aa10f782c702a356ba7508f457affd2310309491ebdc51b·...·]-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="3389514486-9">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3389514486-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:·0cef0e7c24c903a85a2cc8fe61590b1acaa67eebca909743d3b416f70d1ab0a2·...·]-9">)</span><span·class="p">.</span><span·class="w">
2576 </span><span·class="p"·data-group-id="9250291104-11">[</span><span·class="p"·data-group-id="9250291104-12">[</span><span·class="mi">7</span><span·class="p"·data-group-id="9250291104-12">]</span><span·class="p">,</span><span·class="p"·data-group-id="9250291104-13">[</span><span·class="mi">5</sp[·...·truncated·by·diffoscope;·len:·98,·SHA:·ba44baf308b8fe061c3f2b3d1b63a2ba26e548efcd5d78d87edc5d77999181ff·...·]-11">]</span><span·class="gp·unselectable">2576 </span><span·class="p"·data-group-id="3389514486-11">[</span><span·class="p"·data-group-id="3389514486-12">[</span><span·class="mi">7</span><span·class="p"·data-group-id="3389514486-12">]</span><span·class="p">,</span><span·class="p"·data-group-id="3389514486-13">[</span><span·class="mi">5</sp[·...·truncated·by·diffoscope;·len:·98,·SHA:·1a2756b20f0998e7427ccf7895713119496ec1cd065caf82c446bed0d63b85af·...·]-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="9250291104-14">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9250291104-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:·2cd73c6e63b5a6627d2caf922d7aecb0782c81aa73c4824e8f6b6c72b7bb96d2·...·]-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="3389514486-14">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3389514486-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:·24ea43156d65bf348fcee986518847c4d4d40fac2d88bfce30737526d720e20e·...·]-14">)</span><span·class="p">.</span><span·class="w">
2578 </span><span·class="p"·data-group-id="9250291104-16">[</span><span·class="p"·data-group-id="9250291104-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="3389514486-16">[</span><span·class="p"·data-group-id="3389514486-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="0120548823-1">(</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">tab2list</span><span·class="p"·data-group-id="0120548823-2">(</span><span·class="n">Table</span><span·class="p"·data-group-id="0120548823-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="4932526768-1">(</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">tab2list</span><span·class="p"·data-group-id="4932526768-2">(</span><span·class="n">Table</span><span·class="p"·data-group-id="4932526768-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="0120548823-3">(</span><span·class="n">MatchSpec</span><span·class="p"·data-group-id="0120548823-3">)</span><span·class="p"·data-group-id="0120548823-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="4932526768-3">(</span><span·class="n">MatchSpec</span><span·class="p"·data-group-id="4932526768-3">)</span><span·class="p"·data-group-id="4932526768-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="0120548823-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="0120548823-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="4932526768-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="4932526768-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="0788294617-1">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="0788294617-2">[</span><span·class="p"·data-group-id="0788294617-2">]</span><span·class="p"·data-group-id="0788294617-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="5107548607-1">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="5107548607-2">[</span><span·class="p"·data-group-id="5107548607-2">]</span><span·class="p"·data-group-id="5107548607-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="0788294617-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0788294617-4">(</span><span·class="p"·data-group-id="0788294617-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:·00d6503329654c6f066d1401c9fb8c4acc216e012e30b26172b33610404c905d·...·]7-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="5107548607-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5107548607-4">(</span><span·class="p"·data-group-id="5107548607-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:·f0341c136e34d4e1f27cf2e3b5f9fc0e289e85cca4cae7da115b919059476e69·...·]7-3">)</span><span·class="p">,</span><span·class="w">
3202 </span><span·class="p"·data-group-id="0788294617-7">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="0788294617-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:·308,·SHA:·edbdc412d336b9708b1edbe45e267f7c9285bb6158106ceaf5a1a44493af9fe2·...·]7-8">)</span><span·class="p">,</span><span·class="w">3202 </span><span·class="p"·data-group-id="5107548607-7">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="5107548607-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:·308,·SHA:·9d66378404f74d77a3c374702f48e8b013471b4123fc582f37053ac5f40b8c1e·...·]7-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="0788294617-9">(</span><span·class="nf">term_to_binary</span><span·class="p"·data-group-id="0788294617-10">(</span><span·class="n">C</span><span·class="p"·data-group-id="0788294617-10">)</span><span·class="p"·data-group-id="0788294617-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="5107548607-9">(</span><span·class="nf">term_to_binary</span><span·class="p"·data-group-id="5107548607-10">(</span><span·class="n">C</span><span·class="p"·data-group-id="5107548607-10">)</span><span·class="p"·data-group-id="5107548607-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="0788294617-11">(</span><span·class="n">MaybeBroken</span><span·class="p"·data-group-id="0788294617-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="5107548607-11">(</span><span·class="n">MaybeBroken</span><span·class="p"·data-group-id="5107548607-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="7521963912-1">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="7521963912-2">[</span><span·class="p"·data-group-id="7521963912-2">]</span><span·class="p"·data-group-id="7521963912-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="4179385005-1">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="4179385005-2">[</span><span·class="p"·data-group-id="4179385005-2">]</span><span·class="p"·data-group-id="4179385005-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="7521963912-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="7521963912-4">(</span><span·class="p"·data-group-id="7521963912-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:·3ede4222d5a2371a6976d2671e292dbf8bf88ad06ec8079ec042072e039c06f1·...·]-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="4179385005-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4179385005-4">(</span><span·class="p"·data-group-id="4179385005-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:·21fe5b4d3abdce8660f91570072404212746f552d821f71f861b126d759e59f3·...·]-3">)</span><span·class="p">,</span><span·class="w">
3209 </span><span·class="p"·data-group-id="7521963912-7">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="7521963912-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:·753ecc6a81e147ac6288c135dc8588a159c22b99db1196f116ede899162ed192·...·]-8">)</span><span·class="p">,</span><span·class="w">3209 </span><span·class="p"·data-group-id="4179385005-7">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="4179385005-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:·d38b695fb0d72ffd9555446ce57305802facb7a06f454468b8376dbab2fe2540·...·]-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="7521963912-9">(</span><span·class="nf">term_to_binary</span><span·class="p"·data-group-id="7521963912-10">(</span><span·class="n">C</span><span·class="p"·data-group-id="7521963912-10">)</span><span·class="p"·data-group-id="7521963912-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="4179385005-9">(</span><span·class="nf">term_to_binary</span><span·class="p"·data-group-id="4179385005-10">(</span><span·class="n">C</span><span·class="p"·data-group-id="4179385005-10">)</span><span·class="p"·data-group-id="4179385005-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="7521963912-11">(</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">repair_continuation</span><span·class="p"·data-group-id="7521963912-12">(</span><span·class="n">MaybeBroken</span><span·class="p">,</span><span·class="n">MS</span><s[·...·truncated·by·diffoscope;·len:·93,·SHA:·7a135b2eef1442053187f687f473e5d20683e6bd00a196e6cf0039ebbee97f26·...·]-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="4179385005-11">(</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">repair_continuation</span><span·class="p"·data-group-id="4179385005-12">(</span><span·class="n">MaybeBroken</span><span·class="p">,</span><span·class="n">MS</span><s[·...·truncated·by·diffoscope;·len:·93,·SHA:·ea63ae84da2bda9330c7e30e4aaf680bb891f83d0e67f19cc052ecddbf9b0648·...·]-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="8377107006-1">(</span><span·class="n">Log</span><span·class="p"·data-group-id="8377107006-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
199 ····</span><span·class="p"·data-group-id="8377107006-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="8377107006-2">}</span><span·class="w">·</span><span·class="o">=[·...·truncated·by·diffoscope;·len:·767,·SHA:·3cc6f4a48d42ee02328a4dc7c8c191649ca2981c32b470cc0c01d7a946529d8c·...·]</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="0261712499-1">(</span><span·class="n">Log</span><span·class="p"·data-group-id="0261712499-1">)</span[·...·truncated·by·diffoscope;·len:·46,·SHA:·1097a0bea68d65a431edcb4038943364caa12d307d0cd39d47cedc89a660f4e0·...·]</span><span·class="w">
 199 ····</span><span·class="p"·data-group-id="0261712499-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="0261712499-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="0261712499-3">(</span><span·class="p"·data-group-id="0261712499-4">[</span><span·class="p"·data-group-id="0261712499-5">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="n">Log</span><span·class="p"·data-group-id="0261712499-5">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0261712499-6">{</span><span·class="ss">mode</span><span·class="p">,</span><span·class="ss">read_only</span><span·class="p"·data-group-id="0261712499-6">}</span><span·class="p"·data-group-id="0261712499-4">]</span><span·class="p"·data-group-id="0261712499-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="8377107006-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="8377107006-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="0261712499-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="0261712499-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="8377107006-8">(</span><span·class="p"·data-group-id="8377107006-9">[</span><span·class="p"·data-group-id="8377107006-9">]</span><span·class="p"·data-group-id="8377107006-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="0261712499-8">(</span><span·class="p"·data-group-id="0261712499-9">[</span><span·class="p"·data-group-id="0261712499-9">]</span><span·class="p"·data-group-id="0261712499-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="8377107006-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="8377107006-11">{</span><span·class="ss">format</s[·...·truncated·by·diffoscope;·len:·151,·SHA:·acbe398d52818b5aaf7006670a5c12526db89a69f170641cc43a743330d5bed7·...·]-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="0261712499-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="0261712499-11">{</span><span·class="ss">format</s[·...·truncated·by·diffoscope;·len:·151,·SHA:·e87d7cbc8ff0ca817db0e68a047327088ac601bfd702a13816107bbba0085ce6·...·]-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="8377107006-12">(</span><span·class="n">Log</span><span·class="p"·data-group-id="8377107006-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="0261712499-12">(</span><span·class="n">Log</span><span·class="p"·data-group-id="0261712499-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="8377107006-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="8377107006-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="0261712499-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="0261712499-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="8377107006-14">(</span><span·class="ss">close</span><span·class="p"·data-group-id="8377107006-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="0261712499-14">(</span><span·class="ss">close</span><span·class="p"·data-group-id="0261712499-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="8377107006-15">(</span><span·class="ss">read</span><span·class="p"·data-group-id="8377107006-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 ·······</span><span·class="p"·data-group-id="0261712499-15">(</span><span·class="ss">read</span><span·class="p"·data-group-id="0261712499-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="8377107006-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="8377107006-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="0261712499-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="0261712499-16">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
210 ················</span><span·class="p"·data-group-id="8377107006-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="8377107006-17">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">210 ················</span><span·class="p"·data-group-id="0261712499-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="0261712499-17">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
211 ····················</span><span·class="p"·data-group-id="8377107006-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="8377107006-18">}</span><span·class="p">;</span><span·class="w">211 ····················</span><span·class="p"·data-group-id="0261712499-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="0261712499-18">}</span><span·class="p">;</span><span·class="w">
212 ················</span><span·class="p"·data-group-id="8377107006-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="8377107006-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">212 ················</span><span·class="p"·data-group-id="0261712499-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="0261712499-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
213 ····················</span><span·class="p"·data-group-id="8377107006-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="8377107006-21">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·123,·SHA:·d0f3feedc4324f41949c8b9d1d6d69643ff7381fd9b48f83646f2f811d3c36f9·...·]-20">}</span><span·class="p">;</span><span·class="w">213 ····················</span><span·class="p"·data-group-id="0261712499-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="0261712499-21">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·123,·SHA:·f3e510274978dce6b8750d1cd32382a8a20347033157e3e635c530c31ace08b7·...·]-20">}</span><span·class="p">;</span><span·class="w">
214 ················</span><span·class="p"·data-group-id="8377107006-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:·ef316e5e768dd4331fe4c50b84945fb3341f11672112f3c1641bc4f5ceb57995·...·]-22">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 ················</span><span·class="p"·data-group-id="0261712499-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:·122ce6490cfd014cec5b17b35c678cc62cdc5d235614c9c14020aae3ad934466·...·]-22">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
215 ····················</span><span·class="p"·data-group-id="8377107006-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="8377107006-24">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·123,·SHA:·2acfcf34e3c6ff1bb48685c85ba527c6729b2d0ff740a53461bde2d71ad54a62·...·]-23">}</span><span·class="p">;</span><span·class="w">215 ····················</span><span·class="p"·data-group-id="0261712499-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="0261712499-24">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·123,·SHA:·3434f07b0159a06b26bb8b108bf21f29d8d9a0a771e8d2de8424b4d54ab05ac3·...·]-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="8377107006-25">(</span><span·class="n">L</span><span·class="p"·data-group-id="8377107006-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="0261712499-25">(</span><span·class="n">L</span><span·class="p"·data-group-id="0261712499-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="8377107006-26">(</span><span·class="ss">close</span><span·class="p"·data-group-id="8377107006-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="0261712499-26">(</span><span·class="ss">close</span><span·class="p"·data-group-id="0261712499-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="8377107006-27">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="8377107006-28">(</span><span·class="n">L</span><span·class="p"·data-group-id="8377107006-28">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·b97a854d73e888139b1628a1c9fff7ca69623c0ffe0e3cbc0373ec300c417db3·...·]-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="0261712499-27">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="0261712499-28">(</span><span·class="n">L</span><span·class="p"·data-group-id="0261712499-28">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·81a17cf18463f90428ddb9907dbfc85b5a155b38dd032ce2c27bd44995584d13·...·]-27">)</span><span·class="p">;</span><span·class="w">
223 ·······</span><span·class="p"·data-group-id="8377107006-29">(</span><span·class="n">Terms</span><span·class="p"·data-group-id="8377107006-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">223 ·······</span><span·class="p"·data-group-id="0261712499-29">(</span><span·class="n">Terms</span><span·class="p"·data-group-id="0261712499-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="8377107006-30">(</span><span·class="p"·data-group-id="8377107006-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="8377107006-31">]</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·c09c472597ef7d40c53435d0f930797a20727273c500c0595cb2e41c6b8c223a·...·]-30">)</span><span·class="w">224 ············</span><span·class="nf">output</span><span·class="p"·data-group-id="0261712499-30">(</span><span·class="p"·data-group-id="0261712499-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="0261712499-31">]</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·6a84f894d1ec9daeec0471f494dfe67acf78de467fd31df5af8fdaae3b37bd43·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1915 <p>Copyright·©·1996-2024·<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="0761446412-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="0761446412-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·168,·SHA:·02c6f261985ed72312532e63ccc6252e8110a15164a2d16f780d139da4d8259d·...·]-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="6152856341-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="6152856341-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·168,·SHA:·5dac6badf6cbd99b2edff83c603850779f30666a552a5e6a4a847cd400ef015d·...·]-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="0761446412-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="0761446412-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="6152856341-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="6152856341-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="0761446412-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="0761446412-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="6152856341-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="6152856341-4">)</span><span·class="p">.</span><span·class="w">
1036 </span><span·class="p"·data-group-id="0761446412-5">[</span><span·class="p"·data-group-id="0761446412-5">]</span><span·class="gp·unselectable">1036 </span><span·class="p"·data-group-id="6152856341-5">[</span><span·class="p"·data-group-id="6152856341-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="0761446412-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="0761446412-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="6152856341-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="6152856341-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="0761446412-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="0761446412-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="6152856341-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="6152856341-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1139 <p>Copyright·©·1996-2024·<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="1817089568-1">(</span><span·class="p"·data-group-id="1817089568-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="7295168698-1">(</span><span·class="p"·data-group-id="7295168698-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="1817089568-2">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="1817089568-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="7295168698-2">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="7295168698-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="1817089568-3">(</span><span·class="s">&quot;../x&quot;</span><span·class="p"·data-group-id="1817089568-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="7295168698-3">(</span><span·class="s">&quot;../x&quot;</span><span·class="p"·data-group-id="7295168698-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="1817089568-4">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="1817089568-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="7295168698-4">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="7295168698-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="9108323978-1">(</span><span·class="p"·data-group-id="9108323978-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="3841453886-1">(</span><span·class="p"·data-group-id="3841453886-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="9108323978-2">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="9108323978-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="3841453886-2">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="3841453886-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="9108323978-3">(</span><span·class="s">&quot;../x&quot;</span><span·class="p"·data-group-id="9108323978-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="3841453886-3">(</span><span·class="s">&quot;../x&quot;</span><span·class="p"·data-group-id="3841453886-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="9108323978-4">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="9108323978-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="3841453886-4">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="3841453886-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="8361004715-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="8361004715-2">#{</span><[·...·truncated·by·diffoscope;·len:·176,·SHA:·709bc9e7a08260757b04282ae12e92940c06e70edeaacb36f882c43d450c03c6·...·]-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="5434330746-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="5434330746-2">#{</span><[·...·truncated·by·diffoscope;·len:·176,·SHA:·a0e381d4f079f309e2876a7dcdf81707a32a64455c018ee75e4f8a327d9edd39·...·]-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="6447928987-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="6447928987-2">#{</span><[·...·truncated·by·diffoscope;·len:·177,·SHA:·8b3ef13c9d0451cb65512853553fa40bca9a5716b864ccfafaa3594ac2f9d612·...·]-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="1015719376-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="1015719376-2">#{</span><[·...·truncated·by·diffoscope;·len:·177,·SHA:·df47bf8227bfa087cfd9b7db277a9cc692cdc99f3b435cfa705a718b22e23db5·...·]-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="6862813637-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="6862813637-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="1440515071-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="1440515071-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="6862813637-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="6862813637-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="1440515071-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="1440515071-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="6862813637-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="6862813637-4">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·184,·SHA:·c0965d135d2c6eb4ab93864dad9486586b97b12cfcbfb7e501bc9c62f1e75e75·...·]-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="1440515071-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="1440515071-4">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·184,·SHA:·f04615356c9b09e237adf1370dd7dda30f130cccfc8c7fbd9efe8769c1352b03·...·]-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="6862813637-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="6862813637-6">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·182,·SHA:·96f8f5ab977d369c512b61d5b6c812ae3f36d8501fe948173d0880ca718fa90a·...·]-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="1440515071-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="1440515071-6">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·182,·SHA:·a1d05bfd466cf40003d63d8df413b0e72f7abb055d0087d47ff239006508c4e4·...·]-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="6862813637-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="6862813637-8">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·305,·SHA:·7782b33d0334f1a559f844addbfb6529b88ce99eee05b391b82c5ee48657e3dc·...·]-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="1440515071-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="1440515071-8">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·305,·SHA:·51b46d701b3435f4da2aae357c9ad4ddb2dc80a3501a7eb5977105215b782946·...·]-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="6225859544-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="6225859544-2">#{</span>[·...·truncated·by·diffoscope;·len:·177,·SHA:·471f12a00e4108bbd312d129be1ea7f01d51170996577185062f646f58b07f2b·...·]-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="8105861463-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="8105861463-2">#{</span>[·...·truncated·by·diffoscope;·len:·177,·SHA:·ab733a30e4469473474158df7f90079545761084ba498e176db168b037099e28·...·]-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="1169811378-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="1169811378-2">#{</span>[·...·truncated·by·diffoscope;·len:·178,·SHA:·a9b07583fabeca05fb764288103013c8057e0b4f2476e19da41f43ad352a07d1·...·]-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="6009989799-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="6009989799-2">#{</span>[·...·truncated·by·diffoscope;·len:·178,·SHA:·5872ced8caf6c7ebbe7ec6826b5d1f61610acc9f8f47978284c23fe821e059ee·...·]-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="9402362580-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="9402362580-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="0916467515-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="0916467515-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="9402362580-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="9402362580-3">#{</span><span·cl[·...·truncated·by·diffoscope;·len:·330,·SHA:·79c58ac698a508ab6749ad561668d82ddc3d058416811d8f3ae9690a4dd1f117·...·]-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="0916467515-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="0916467515-3">#{</span><span·cl[·...·truncated·by·diffoscope;·len:·330,·SHA:·b95a73a653a778cd19e7263b1f691faab068a47a7d0fb2568c29c78ddcaf6b94·...·]-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="6095287127-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="6095287127-2">#{</span><s[·...·truncated·by·diffoscope;·len:·175,·SHA:·8037f237b51f13eea9451e5780f155320bae6996b96f83fe6988f3c239bc3624·...·]-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="1561323280-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="1561323280-2">#{</span><s[·...·truncated·by·diffoscope;·len:·175,·SHA:·8bebf31fd204c65283f9a591bcb3cf9ab59d3d05c5442c93d9966e21180471af·...·]-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="2141500976-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="2141500976-2">#{</span><s[·...·truncated·by·diffoscope;·len:·176,·SHA:·482c74c852b389e7535da5baab3c0a2987ceb2fdc7e57a15e57469471a9a806a·...·]-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="0577823662-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="0577823662-2">#{</span><s[·...·truncated·by·diffoscope;·len:·176,·SHA:·7f121c4e2be0abc90c4edd4c866ca64ac10d4c2f619db44a79319bf65c075bb3·...·]-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="0905428053-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="0905428053-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="5771992181-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="5771992181-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="0905428053-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="0905428053-3">#{</span><span·class="ss">author</span><spa[·...·truncated·by·diffoscope;·len:·280,·SHA:·a23c39e0d2e81217bb3943ca4de22dfbb13d3e553e3894c60aca9583b554ebfc·...·]-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="5771992181-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="5771992181-3">#{</span><span·class="ss">author</span><spa[·...·truncated·by·diffoscope;·len:·280,·SHA:·de272ce44cee6ed20d81c8eee0da19f6c2e516cd1d13131fc52b5e135106183f·...·]-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="0519774008-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="0519774008-2">#{</span><sp[·...·truncated·by·diffoscope;·len:·174,·SHA:·b595c067409fcf65f3e7d64760f12e3dbace2587e524cc990f083888ebc69a1f·...·]-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="5438487006-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="5438487006-2">#{</span><sp[·...·truncated·by·diffoscope;·len:·174,·SHA:·6b068ff35da1515236b7c9a21b702caa15a8c3153e630f1873c38f93766b2936·...·]-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="5749830239-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="5749830239-2">#{</span><sp[·...·truncated·by·diffoscope;·len:·175,·SHA:·8dd956a0030b1bc633542321fc738bdb3c2604fe94b3f6448bb259919aa017b5·...·]-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="0420471652-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="0420471652-2">#{</span><sp[·...·truncated·by·diffoscope;·len:·175,·SHA:·0c13aef83470a1de007b0aa03176031cd3b4bbf799f9dda63b87db206101d287·...·]-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="2314386681-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="2314386681-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="2697510268-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="2697510268-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="2314386681-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="2314386681-3">#{</span><span·class="ss">author</span><span·[·...·truncated·by·diffoscope;·len:·278,·SHA:·f9373582d437a881de5bbf6b80cc6866bcb1b8b4f4b3c9a9cb9038951f28dc7d·...·]-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="2697510268-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="2697510268-3">#{</span><span·class="ss">author</span><span·[·...·truncated·by·diffoscope;·len:·278,·SHA:·0013b08cf3a55814db63fc3543672f524608fe23835a2bdcad6342053d6a42ef·...·]-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="8168198246-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="8168198246-2">#{</span>[·...·truncated·by·diffoscope;·len:·177,·SHA:·2b72756ab2f30ac228c65d62cbb765c6ad4fc1989360c4886d993980211264ca·...·]-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="3180421765-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="3180421765-2">#{</span>[·...·truncated·by·diffoscope;·len:·177,·SHA:·17050315245d35c05f2c719c9c3d0d20e8a72497f36bafd3637b2cd55c90982d·...·]-1">)</span><span·class="p">.</span><span·class="w">
707 </span><span·class="p"·data-group-id="8168198246-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="3180421765-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="8168198246-3">]</span><span·class="gp·unselectable">708 ·</span><span·class="s">&quot;/usr/share/my_application&quot;</span><span·class="p"·data-group-id="3180421765-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="8168198246-4">(</span><span·class="s">&quot;XDG_CONFIG_DIRS&quot;</span><span·class="p"·data-group-id="8168198246-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="3180421765-4">(</span><span·class="s">&quot;XDG_CONFIG_DIRS&quot;</span><span·class="p"·data-group-id="3180421765-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="8168198246-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="8168198246-6">#{</span>[·...·truncated·by·diffoscope;·len:·177,·SHA:·ad2034aa2ebc3437a8306525c4be36bec41e3b48a2ff8161b1a952289c2febd2·...·]-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="3180421765-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="3180421765-6">#{</span>[·...·truncated·by·diffoscope;·len:·177,·SHA:·ede538144e42d63868c7e14cf332cdde5d65d898cfaa87aa2fe841cd376c0908·...·]-5">)</span><span·class="p">.</span><span·class="w">
712 </span><span·class="p"·data-group-id="8168198246-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="3180421765-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="8168198246-7">]</span><span·class="gp·unselectable">714 ·</span><span·class="s">&quot;/etc/xdg/my_application&quot;</span><span·class="p"·data-group-id="3180421765-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="8168198246-8">(</span><span·class="s">&quot;XDG_CONFIG_DIRS&quot;</span><span·class="p"·data-group-id="8168198246-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="3180421765-8">(</span><span·class="s">&quot;XDG_CONFIG_DIRS&quot;</span><span·class="p"·data-group-id="3180421765-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="8168198246-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="8168198246-10">#{</span[·...·truncated·by·diffoscope;·len:·179,·SHA:·30f6c6aa853f53de1ae980914b5f7142012d6855669bd75f4e39b59f28273754·...·]-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="3180421765-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="3180421765-10">#{</span[·...·truncated·by·diffoscope;·len:·179,·SHA:·1c22cea9841cf9461411bd1ae41df67cf12c0162721e725c6d9c43e765fd7ee9·...·]-9">)</span><span·class="p">.</span><span·class="w">
718 </span><span·class="p"·data-group-id="8168198246-11">[</span><span·class="s">&quot;/etc/xdg/my_application&quot;</span><span·class="p"·data-group-id="8168198246-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:·cafbaba96ae9f55edcb5f9802d55be274bd3f4be9a9af0d961f4f852daa54d57·...·]-1">)</span><span·class="p">.</span><span·class="w">718 </span><span·class="p"·data-group-id="3180421765-11">[</span><span·class="s">&quot;/etc/xdg/my_application&quot;</span><span·class="p"·data-group-id="3180421765-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:·79a07cc750dafe64ab7bcfff6923ed9f036615bc220bcd394d67e07df38351b3·...·]-1">)</span><span·class="p">.</span><span·class="w">
719 </span><span·class="p"·data-group-id="8348257940-3">[</span><span·class="s">&quot;/Library/Application·Support/my_application&quot;</span><span·class="p"·data-group-id="8348257940-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:·11c9de8ef69dcaa9a8902065942cb411ad108f1a89d6fab309dd553948a49593·...·]-1">)</span><span·class="p">.</span><span·class="w">719 </span><span·class="p"·data-group-id="9623787301-3">[</span><span·class="s">&quot;/Library/Application·Support/my_application&quot;</span><span·class="p"·data-group-id="9623787301-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:·6c31d7f4dca36908cdc8ea804d233345d1211e305afaf772d3efe14de111692c·...·]-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="5530192119-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="5530192119-3">#{</span><sp[·...·truncated·by·diffoscope;·len:·174,·SHA:·bc811cfff0731b6c5049c4b04195b18b7990adda70ee950134f983a42fd9e8c6·...·]-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="5047932990-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="5047932990-3">#{</span><sp[·...·truncated·by·diffoscope;·len:·174,·SHA:·6c492da2f054cf70816fa9f97bf4aed1be978b080760d0b0f5c410305c32fc1f·...·]-2">)</span><span·class="p">.</span><span·class="w">
722 </span><span·class="p"·data-group-id="5530192119-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="5047932990-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="5530192119-4">]</span><span·class="gp·unselectable">725 ·</span><span·class="s">&quot;/usr/share/my_application&quot;</span><span·class="p"·data-group-id="5047932990-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="5530192119-5">(</span><span·class="s">&quot;XDG_DATA_DIRS&quot;</span><span·class="p"·data-group-id="5530192119-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="5047932990-5">(</span><span·class="s">&quot;XDG_DATA_DIRS&quot;</span><span·class="p"·data-group-id="5047932990-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="5530192119-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="5530192119-7">#{</span><sp[·...·truncated·by·diffoscope;·len:·174,·SHA:·11843f260f0cc09fd01424db06f0716b5110edb8b038979669c9224862ddd858·...·]-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="5047932990-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="5047932990-7">#{</span><sp[·...·truncated·by·diffoscope;·len:·174,·SHA:·ca50b7d0ef40e879cbbd37be04abdeddac0ae4e465eada30caf147fbe1648491·...·]-6">)</span><span·class="p">.</span><span·class="w">
729 </span><span·class="p"·data-group-id="5530192119-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="5047932990-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="5530192119-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:·434,·SHA:·0f37a6d533166cdb7eb5d771cd785321aa455076c9da59c6c0ee61c444a654df·...·]90-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="5047932990-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:·434,·SHA:·148acd2cb5da2f4bab7c8e7a7d5e7d39055b6e660a69ad72dac825908ba7ebe0·...·]90-1">)</span><span·class="p">.</span><span·class="w">
731 </span><span·class="p"·data-group-id="0051211390-3">[</span><span·class="s">&quot;/Library/Application·Support/my_application&quot;</span><span·class="p"·data-group-id="0051211390-3">]</span></code></pre></li></ul>731 </span><span·class="p"·data-group-id="1761179690-3">[</span><span·class="s">&quot;/Library/Application·Support/my_application&quot;</span><span·class="p"·data-group-id="1761179690-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="8971226215-1">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="8971226215-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="4714816782-1">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="4714816782-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="8971226215-2">(</span><span·class="s">&quot;/usr/foo&quot;</span><span·class="p"·data-group-id="8971226215-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="4714816782-2">(</span><span·class="s">&quot;/usr/foo&quot;</span><span·class="p"·data-group-id="4714816782-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="8971226215-3">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="8971226215-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="4714816782-3">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="4714816782-3">)</span><span·class="p">.</span><span·class="w">
764 </span><span·class="p"·data-group-id="8971226215-4">[</span><span·class="p"·data-group-id="8971226215-4">]</span></code></pre>764 </span><span·class="p"·data-group-id="4714816782-4">[</span><span·class="p"·data-group-id="4714816782-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="3364939177-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="3364939177-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="0334020781-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="0334020781-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="3364939177-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="3364939177-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="0334020781-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="0334020781-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2077 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1610 <p>Copyright·©·1996-2024·<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="1803053506-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="1803053506-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="5120740348-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="5120740348-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="1803053506-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="5120740348-2">(</span><span·class="w">
1358 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="1803053506-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="1803053506-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="5120740348-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="5120740348-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="1803053506-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="1803053506-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="5120740348-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="5120740348-4">)</span><span·class="p">;</span><span·class="w">
1360 ·······</span><span·class="p"·data-group-id="1803053506-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="1803053506-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:·d29c778f945e6d131f54487598dc61ef40428c83f196da00d14e49ad0fce9e76·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1360 ·······</span><span·class="p"·data-group-id="5120740348-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="5120740348-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:·8f9b9f14eafacbd4b33f8eb2079bb58e934c4d128fcfc85a2ed276d03f94745a·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1361 ············</span><span·class="p"·data-group-id="1803053506-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="1803053506-7">}</span><span·class="p">;</span><span·class="w">1361 ············</span><span·class="p"·data-group-id="5120740348-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="5120740348-7">}</span><span·class="p">;</span><span·class="w">
1362 ·······</span><span·class="p"·data-group-id="1803053506-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="1803053506-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1362 ·······</span><span·class="p"·data-group-id="5120740348-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="5120740348-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="1803053506-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="5120740348-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2992 <p>Copyright·©·1996-2024·<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="3973044800-1">(</span><span·class="ss">code_lock</span><span·class="p"·data-group-id="3973044800-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="2433439660-1">(</span><span·class="ss">code_lock</span><span·class="p"·data-group-id="2433439660-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="3973044800-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="3973044800-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="2433439660-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="2433439660-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="3973044800-3">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3973044800-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="2433439660-3">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="2433439660-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="3973044800-4">(</span><span·class="ss">gen_fsm</span><span·class="p"·data-group-id="3973044800-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="2433439660-4">(</span><span·class="ss">gen_fsm</span><span·class="p"·data-group-id="2433439660-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="3973044800-5">(</span><span·class="ss">gen_statem</span><span·class="p"·data-group-id="3973044800-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="2433439660-5">(</span><span·class="ss">gen_statem</span><span·class="p"·data-group-id="2433439660-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="3973044800-6">(</span><span·class="p"·data-group-id="3973044800-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:·247,·SHA:·9af5e820537293abdbba04d2f8ecb1ee9c7e5b6fe9a0f5abe05d53d84b4cfb87·...·]0-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="2433439660-6">(</span><span·class="p"·data-group-id="2433439660-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:·247,·SHA:·8c42a3d2247b0376a957720181b3780d74a23b0d7f9f0b6826b14bb40b0cb292·...·]0-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="3973044800-8">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3973044800-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="2433439660-8">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="2433439660-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="3973044800-9">(</span><span·class="p"·data-group-id="3973044800-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="2433439660-9">(</span><span·class="p"·data-group-id="2433439660-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="3973044800-10">]</span><span·class="p"·data-group-id="3973044800-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="2433439660-10">]</span><span·class="p"·data-group-id="2433439660-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="3973044800-11">(</span><span·class="p"·data-group-id="3973044800-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:·640,·SHA:·333a442f81339bfc09088fca006c433859d9c17d6c32478a48ff88abe31e2d15·...·]0-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="2433439660-11">(</span><span·class="p"·data-group-id="2433439660-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:·640,·SHA:·2dafa155ac39c5200fe6472db4fe11258d62f4e5f0b200145444b064872d5d36·...·]0-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="3973044800-13">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3973044800-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="2433439660-13">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="2433439660-13">)</span><span·class="p">.</span><span·class="w">
161 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="3973044800-14">(</span><span·class="n">Code</span><span·class="p"·data-group-id="3973044800-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="2433439660-14">(</span><span·class="n">Code</span><span·class="p"·data-group-id="2433439660-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="3973044800-15">(</span><span·class="p"·data-group-id="3973044800-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="3973044800-16">}</sp[·...·truncated·by·diffoscope;·len:·375,·SHA:·8a451ebdd0978aeb8362ab69c9b00ed2abf4e372d8532ccad17e007f79e26a93·...·]0-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="2433439660-15">(</span><span·class="p"·data-group-id="2433439660-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="2433439660-16">}</sp[·...·truncated·by·diffoscope;·len:·375,·SHA:·44cfa3ac277b5d8d01585407eee5ccab0dac92ec739c21fd829202a8d15cad22·...·]0-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="3973044800-18">(</span><span·class="n">Code</span><span·class="p"·data-group-id="3973044800-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="2433439660-18">(</span><span·class="n">Code</span><span·class="p"·data-group-id="2433439660-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="3973044800-19">(</span><span·class="p"·data-group-id="3973044800-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="3973044800-20">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·351,·SHA:·c9c543b018dc9895e8e214839374e7873c4ad3cfb37294192936ae2560f144cc·...·]0-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="2433439660-19">(</span><span·class="p"·data-group-id="2433439660-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="2433439660-20">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·351,·SHA:·1f62213a673b991232a62742a80c16d584c1cdcb6de5da8793c7d69ff9ef702d·...·]0-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="3973044800-22">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3973044800-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="2433439660-22">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="2433439660-22">)</span><span·class="p">.</span><span·class="w">
169 </span><span·class="nf">button</span><span·class="p"·data-group-id="3973044800-23">(</span><span·class="n">Digit</span><span·class="p"·data-group-id="3973044800-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="2433439660-23">(</span><span·class="n">Digit</span><span·class="p"·data-group-id="2433439660-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="3973044800-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="3973044800-25">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·120,·SHA:·8e3f261e35d244f402a7b89717a37d2fbb9bfe0eec39ccc480bb07bf9863792b·...·]0-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="2433439660-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="2433439660-25">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·120,·SHA:·09b3257596a3d9473f940143b73860d468bad567cdc67a7d3f3686a314cf4491·...·]0-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="3973044800-26">(</span><span·class="n">Digit</span><span·class="p"·data-group-id="3973044800-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="2433439660-26">(</span><span·class="n">Digit</span><span·class="p"·data-group-id="2433439660-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="3973044800-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="3973044800-28">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="n">Digit</spa[·...·truncated·by·diffoscope;·len:·96,·SHA:·ef1082da28300520ebd52ed98e43bf6d321969c6966cdbc9327e364bc7cee1d1·...·]0-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="2433439660-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="2433439660-28">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="n">Digit</spa[·...·truncated·by·diffoscope;·len:·96,·SHA:·efb1cd8868825c7a2ab48553f4d38bba3be3ca8ae596d4a96c7ace02656f76b9·...·]0-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="3973044800-29">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3973044800-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="2433439660-29">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="2433439660-29">)</span><span·class="p">.</span><span·class="w">
178 </span><span·class="nf">stop</span><span·class="p"·data-group-id="3973044800-30">(</span><span·class="p"·data-group-id="3973044800-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="2433439660-30">(</span><span·class="p"·data-group-id="2433439660-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="3973044800-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="3973044800-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="2433439660-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="2433439660-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="3973044800-32">(</span><span·class="p"·data-group-id="3973044800-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="2433439660-32">(</span><span·class="p"·data-group-id="2433439660-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="3973044800-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="3973044800-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="2433439660-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="2433439660-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="3973044800-34">(</span><span·class="n">Code</span><span·class="p"·data-group-id="3973044800-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="2433439660-34">(</span><span·class="n">Code</span><span·class="p"·data-group-id="2433439660-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="3973044800-35">(</span><span·class="p"·data-group-id="3973044800-35">)</span><span·class="p">,</span><span·class="w">187 ····</span><span·class="nf">do_lock</span><span·class="p"·data-group-id="2433439660-35">(</span><span·class="p"·data-group-id="2433439660-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="3973044800-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:·123,·SHA:·98c6f31339299ff4e2305c4c8e14bb76e343ed9a4206561f087abdd62b37571c·...·]0-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="2433439660-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:·123,·SHA:·80a8b2aad2aa443cc2906ab7a72d937f4eba9aa89c03a9adf79057916050429d·...·]0-36">}</span><span·class="p">,</span><span·class="w">
189 ····</span><span·class="p"·data-group-id="3973044800-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="3973044800-37">}</span><span·class="p">.</span><span·class="w">189 ····</span><span·class="p"·data-group-id="2433439660-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="2433439660-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="3973044800-38">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3973044800-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="2433439660-38">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="2433439660-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="3973044800-39">(</span><span·class="p"·data-group-id="3973044800-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="2433439660-39">(</span><span·class="p"·data-group-id="2433439660-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="3973044800-40">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3973044800-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="2433439660-40">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="2433439660-40">)</span><span·class="p">.</span><span·class="w">
201 </span><span·class="nf">locked</span><span·class="p"·data-group-id="3973044800-41">(</span><span·class="p"·data-group-id="3973044800-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="3973044800-42">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·97,·SHA:·a3942ebdd4dc447acd93103a1e21b29ed39900be4a92ee44b74c4558a2f5cd78·...·]0-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="2433439660-41">(</span><span·class="p"·data-group-id="2433439660-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="2433439660-42">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·97,·SHA:·088b3c7c11bbe1c4593b246665ec6ef67d980e28c913e1167f0188625af600b3·...·]0-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="3973044800-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="3973044800-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="2433439660-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="2433439660-43">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
203 »       </span><span·class="p"·data-group-id="3973044800-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:·14,·SHA:·f24012fe6105acedb9f484c335eebb36772816514431e50df1a8e93837eb112d·...·]0-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">203 »       </span><span·class="p"·data-group-id="2433439660-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:·14,·SHA:·ee30bb81832d3abcf2f6f615018b0d1b02d4c8ae8e133d66d8041bfb80c8788b·...·]0-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
204 »       ····</span><span·class="p"·data-group-id="3973044800-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:·73,·SHA:·02427b3542725e4d2071ae5de8a127ba2ce22452807d6ff5d3faeb7ff4aa022a·...·]0-45">}</span><span·class="p">;</span><span·class="w">204 »       ····</span><span·class="p"·data-group-id="2433439660-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:·73,·SHA:·37bdc35d31fcb855f6aa1328a1b7a2b81e2ed0f8005b2dee5359699dbb15ddab·...·]0-45">}</span><span·class="p">;</span><span·class="w">
205 »       </span><span·class="p"·data-group-id="3973044800-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="3973044800-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">205 »       </span><span·class="p"·data-group-id="2433439660-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="2433439660-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
206 »       ····</span><span·class="p"·data-group-id="3973044800-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="3973044800-47">}</span><span·class="w">206 »       ····</span><span·class="p"·data-group-id="2433439660-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="2433439660-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="3973044800-48">(</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3973044800-49">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="n">Digit</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·149,·SHA:·8b433ea02f89355155fe50dabaf0e5e679faef08a1ae1347b950b51fa7f15eb0·...·]0-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="2433439660-48">(</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2433439660-49">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="n">Digit</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·149,·SHA:·a878974ff759993b2036922be28ebe48f0fe83cfda3d5c99fefe40eef60cbaf7·...·]0-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="3973044800-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="3973044800-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="2433439660-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="2433439660-50">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
211 »       </span><span·class="p"·data-group-id="3973044800-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:·14,·SHA:·f24012fe6105acedb9f484c335eebb36772816514431e50df1a8e93837eb112d·...·]0-51">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">211 »       </span><span·class="p"·data-group-id="2433439660-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:·14,·SHA:·ee30bb81832d3abcf2f6f615018b0d1b02d4c8ae8e133d66d8041bfb80c8788b·...·]0-51">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
212 »       ····</span><span·class="p"·data-group-id="3973044800-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:·73,·SHA:·02427b3542725e4d2071ae5de8a127ba2ce22452807d6ff5d3faeb7ff4aa022a·...·]0-52">}</span><span·class="p">;</span><span·class="w">212 »       ····</span><span·class="p"·data-group-id="2433439660-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:·73,·SHA:·37bdc35d31fcb855f6aa1328a1b7a2b81e2ed0f8005b2dee5359699dbb15ddab·...·]0-52">}</span><span·class="p">;</span><span·class="w">
213 »       </span><span·class="p"·data-group-id="3973044800-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="3973044800-53">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">213 »       </span><span·class="p"·data-group-id="2433439660-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="2433439660-53">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
214 »       ····</span><span·class="p"·data-group-id="3973044800-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="3973044800-54">}</span><span·class="w">214 »       ····</span><span·class="p"·data-group-id="2433439660-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="2433439660-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="3973044800-55">(</span><span·class="p"·data-group-id="3973044800-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="3973044800-56">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·167,·SHA:·df27202d09c113ab5b6fdbbbb2871ec370a87374c3957be82c10e1b1a54b189a·...·]0-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="2433439660-55">(</span><span·class="p"·data-group-id="2433439660-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="2433439660-56">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·167,·SHA:·631104eac27b617b286715461e92bcb0546798a640e81be99873c87682594d59·...·]0-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="3973044800-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="3973044800-57">)</span><span·class="p">;</span><span·class="w">217 ····</span><span·class="nf">handle_call</span><span·class="p"·data-group-id="2433439660-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="2433439660-57">)</span><span·class="p">;</span><span·class="w">
218 </span><span·class="nf">locked</span><span·class="p"·data-group-id="3973044800-58">(</span><span·class="p"·data-group-id="3973044800-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="3973044800-59">}</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·172,·SHA:·aad169d7f5d00b8362da3b9d0fa61d2c17839ffcf14ccb575c6949255db55476·...·]0-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="2433439660-58">(</span><span·class="p"·data-group-id="2433439660-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="2433439660-59">}</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·172,·SHA:·5f9fc157f00ccabdb93faff888966b95362414bafd81ae1970fa1e205d905b3a·...·]0-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="3973044800-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="3973044800-60">)</span><span·class="p">.</span><span·class="w">219 ····</span><span·class="nf">handle_info</span><span·class="p"·data-group-id="2433439660-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="2433439660-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="3973044800-61">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3973044800-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="2433439660-61">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="2433439660-61">)</span><span·class="p">.</span><span·class="w">
227 </span><span·class="nf">open</span><span·class="p"·data-group-id="3973044800-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="3973044800-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="2433439660-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="2433439660-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="3973044800-63">(</span><span·class="p"·data-group-id="3973044800-63">)</span><span·class="p">,</span><span·class="w">228 ·····</span><span·class="nf">do_lock</span><span·class="p"·data-group-id="2433439660-63">(</span><span·class="p"·data-group-id="2433439660-63">)</span><span·class="p">,</span><span·class="w">
229 ····</span><span·class="p"·data-group-id="3973044800-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="3973044800-64">}</span><span·class="p">;</span><span·class="w">229 ····</span><span·class="p"·data-group-id="2433439660-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="2433439660-64">}</span><span·class="p">;</span><span·class="w">
230 </span><span·class="nf">open</span><span·class="p"·data-group-id="3973044800-65">(</span><span·class="p"·data-group-id="3973044800-66">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="3973044800-66">}</span><span·class="p">,</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·68,·SHA:·c3eeda3ae8b045b07ea79ae3342b5b9d1de600c19ca9e31c322b15d2e3bd8068·...·]0-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="2433439660-65">(</span><span·class="p"·data-group-id="2433439660-66">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="2433439660-66">}</span><span·class="p">,</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·68,·SHA:·7adb591acc278a5ae9dd05136bbb667f8baed3a68b52256d3fb6ff97fedc9fd0·...·]0-65">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
231 ····</span><span·class="p"·data-group-id="3973044800-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="3973044800-67">}</span><span·class="p">.</span><span·class="w">231 ····</span><span·class="p"·data-group-id="2433439660-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="2433439660-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="3973044800-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="3973044800-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="2433439660-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="2433439660-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="3973044800-69">(</span><span·class="p"·data-group-id="3973044800-69">)</span><span·class="p">,</span><span·class="w">234 ····</span><span·class="nf">do_lock</span><span·class="p"·data-group-id="2433439660-69">(</span><span·class="p"·data-group-id="2433439660-69">)</span><span·class="p">,</span><span·class="w">
235 ····</span><span·class="p"·data-group-id="3973044800-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="3973044800-70">}</span><span·class="p">;</span><span·class="w">235 ····</span><span·class="p"·data-group-id="2433439660-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="2433439660-70">}</span><span·class="p">;</span><span·class="w">
236 </span><span·class="nf">open</span><span·class="p"·data-group-id="3973044800-71">(</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3973044800-72">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·144,·SHA:·e2222a2344e8a613cf1aecdc52f4ae4a0dcaaa5e4a933030d653213b7c3760ba·...·]0-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="2433439660-71">(</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2433439660-72">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·144,·SHA:·a3f616e4dd468a51865ff0bdd5e11e3c09064ee8910f0313fb9bdfd8cdbb1abd·...·]0-71">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
237 ····</span><span·class="p"·data-group-id="3973044800-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="3973044800-73">}</span><span·class="p">;</span><span·class="w">237 ····</span><span·class="p"·data-group-id="2433439660-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="2433439660-73">}</span><span·class="p">;</span><span·class="w">
238 </span><span·class="nf">open</span><span·class="p"·data-group-id="3973044800-74">(</span><span·class="p"·data-group-id="3973044800-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="3973044800-75">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·167,·SHA:·df27202d09c113ab5b6fdbbbb2871ec370a87374c3957be82c10e1b1a54b189a·...·]0-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="2433439660-74">(</span><span·class="p"·data-group-id="2433439660-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="2433439660-75">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·167,·SHA:·631104eac27b617b286715461e92bcb0546798a640e81be99873c87682594d59·...·]0-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="3973044800-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="3973044800-76">)</span><span·class="p">;</span><span·class="w">239 ····</span><span·class="nf">handle_call</span><span·class="p"·data-group-id="2433439660-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="2433439660-76">)</span><span·class="p">;</span><span·class="w">
240 </span><span·class="nf">open</span><span·class="p"·data-group-id="3973044800-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="3973044800-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="2433439660-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="2433439660-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="3973044800-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="3973044800-78">)</span><span·class="p">.</span><span·class="w">241 ····</span><span·class="nf">handle_info</span><span·class="p"·data-group-id="2433439660-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="2433439660-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="3973044800-79">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3973044800-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="2433439660-79">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="2433439660-79">)</span><span·class="p">.</span><span·class="w">
249 </span><span·class="nf">handle_sync_event</span><span·class="p"·data-group-id="3973044800-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:·113,·SHA:·5ab4a62c2a3f46836202286d542e2242e7e49201b63695a1a4c0f15206fc4a3d·...·]0-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="2433439660-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:·113,·SHA:·826e7fefb936323f1ab75696e9abd32f5e3491d0f637c2d7d5e9c588e9437b2e·...·]0-80">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
250 ····</span><span·class="p"·data-group-id="3973044800-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:·62,·SHA:·a8c686a4d118c43161e5dc8c419b8ec5fb0e706f97d62fc3ba594149dcab6549·...·]0-81">}</span><span·class="p">.</span><span·class="w">250 ····</span><span·class="p"·data-group-id="2433439660-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:·62,·SHA:·9aaca202dd0840d8a7987b75da3b850134925429669c4afa0aa077d53c8dfcde·...·]0-81">}</span><span·class="p">.</span><span·class="w">
  
251 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="3973044800-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="3973044800-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="2433439660-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="2433439660-82">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
252 ····</span><span·class="p"·data-group-id="3973044800-83">{</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3973044800-84">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·444,·SHA:·9b3ce1ccc3862bb68561a5f4f2653aabf18b55f2fe3a08f044faed1aa81a84ac·...·]0-83">}</span><span·class="p">.</span><span·class="w">252 ····</span><span·class="p"·data-group-id="2433439660-83">{</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2433439660-84">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·444,·SHA:·008287dfc56c8ac0de87b5e5e9f97c7c1868e3f4d7273e4e2f6cd2d6c12f3e28·...·]0-83">}</span><span·class="p">.</span><span·class="w">
  
253 </span><span·class="nf">handle_info</span><span·class="p"·data-group-id="3973044800-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="3973044800-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="2433439660-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="2433439660-86">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
254 ····</span><span·class="p"·data-group-id="3973044800-87">{</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3973044800-88">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·523,·SHA:·6e7f249b9b7da4852d1bbc993a252aaba442801ecca7beec534fc95e918900b4·...·]0-87">}</span><span·class="p">.</span><span·class="w">254 ····</span><span·class="p"·data-group-id="2433439660-87">{</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2433439660-88">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·523,·SHA:·258d3b1a79732ee830fc0691bd6c487a2131c445ff8a201b44e5a7a9d8e2b8cb·...·]0-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="8395177668-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="8395177668-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="2604773420-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="2604773420-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="8395177668-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="2604773420-2">(</span><span·class="w">
1350 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="8395177668-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="8395177668-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="2604773420-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="2604773420-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="8395177668-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="8395177668-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="2604773420-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="2604773420-4">)</span><span·class="p">;</span><span·class="w">
1352 ·······</span><span·class="p"·data-group-id="8395177668-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="8395177668-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:·107595c23b05332ad5b9a126885774e3ce0d8b9dbb76e4447f2a3d31351c9b89·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1352 ·······</span><span·class="p"·data-group-id="2604773420-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="2604773420-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:·db0bbac2131b85e19448e4a43ac31328472e266e62db0effa1c44f5c147e96e2·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1353 ············</span><span·class="p"·data-group-id="8395177668-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="8395177668-7">}</span><span·class="p">;</span><span·class="w">1353 ············</span><span·class="p"·data-group-id="2604773420-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="2604773420-7">}</span><span·class="p">;</span><span·class="w">
1354 ·······</span><span·class="p"·data-group-id="8395177668-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="8395177668-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1354 ·······</span><span·class="p"·data-group-id="2604773420-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="2604773420-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="8395177668-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="2604773420-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3007 <p>Copyright·©·1996-2024·<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="7860226135-1">(</span><span·class="ss">pushbutton</span><span·class="p"·data-group-id="7860226135-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="4941744640-1">(</span><span·class="ss">pushbutton</span><span·class="p"·data-group-id="4941744640-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="7860226135-2">(</span><span·class="ss">gen_statem</span><span·class="p"·data-group-id="7860226135-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="4941744640-2">(</span><span·class="ss">gen_statem</span><span·class="p"·data-group-id="4941744640-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="7860226135-3">(</span><span·class="p"·data-group-id="7860226135-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:·8a1d9e5713cd95c83d71433629198c222b1a46d117f0e5c10660235e14cff8c5·...·]-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="4941744640-3">(</span><span·class="p"·data-group-id="4941744640-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:·d68359e61965fde8be74c6a0a677d92cadc4f07d2153fc159b7519d43478c048·...·]-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="7860226135-5">(</span><span·class="p"·data-group-id="7860226135-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:·db687ac996b04b43202e06e980f21e5f7b4ef0905a48c4229c8794d79e004ae3·...·]-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="4941744640-5">(</span><span·class="p"·data-group-id="4941744640-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:·93cc5c8eda2bdd69cc113529082f8726272d157acb515d33a519507e0ec33e5c·...·]-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="7860226135-7">(</span><span·class="p"·data-group-id="7860226135-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:·2013a9639e89bb9af2d11b911f4cd80801b505f54cbbcd017eff1caa892429e5·...·]-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="4941744640-7">(</span><span·class="p"·data-group-id="4941744640-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:·4ef92f2a4fe013a15bd9914d7fb972c987bc13e7196d207526ac3d339b07be4e·...·]-7">)</span><span·class="p">.</span><span·class="w">
  
264 </span><span·class="nf">name</span><span·class="p"·data-group-id="7860226135-9">(</span><span·class="p"·data-group-id="7860226135-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="4941744640-9">(</span><span·class="p"·data-group-id="4941744640-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="7860226135-10">(</span><span·class="p"·data-group-id="7860226135-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="4941744640-10">(</span><span·class="p"·data-group-id="4941744640-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="7860226135-11">(</span><span·class="p"·data-group-id="7860226135-12">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="nf">name</span><span·class="p"·data-group-id="7860226135-13">(</span><span·class="p"·data-group-id="7860226135-13[·...·truncated·by·diffoscope;·len:·518,·SHA:·dd22c993d5c9bd67d42c99fd07f5110c91a3455d4d1b27d5b8ad5d2f0004c27f·...·]-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="4941744640-11">(</span><span·class="p"·data-group-id="4941744640-12">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="nf">name</span><span·class="p"·data-group-id="4941744640-13">(</span><span·class="p"·data-group-id="4941744640-13[·...·truncated·by·diffoscope;·len:·518,·SHA:·c4ca7a2b0797697e77831a50ef81b45bf6c2d7ef4a0c68cd8c707971bda8c591·...·]-11">)</span><span·class="p">.</span><span·class="w">
269 </span><span·class="nf">push</span><span·class="p"·data-group-id="7860226135-16">(</span><span·class="p"·data-group-id="7860226135-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="4941744640-16">(</span><span·class="p"·data-group-id="4941744640-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="7860226135-17">(</span><span·class="nf">name</span><span·class="p"·data-group-id="7860226135-18">(</span><span·class="p"·data-group-id="7860226135-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:·ce2681bcf2dbc81a95846e19f4abce073b14b59743b3397a7bbecbe796f895af·...·]-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="4941744640-17">(</span><span·class="nf">name</span><span·class="p"·data-group-id="4941744640-18">(</span><span·class="p"·data-group-id="4941744640-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:·4ba1a6b20c54fadd997938ab809aac9c590e46af810ab850504878d498fadb93·...·]-17">)</span><span·class="p">.</span><span·class="w">
271 </span><span·class="nf">get_count</span><span·class="p"·data-group-id="7860226135-19">(</span><span·class="p"·data-group-id="7860226135-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="4941744640-19">(</span><span·class="p"·data-group-id="4941744640-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="7860226135-20">(</span><span·class="nf">name</span><span·class="p"·data-group-id="7860226135-21">(</span><span·class="p"·data-group-id="7860226135-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:·0d885c439a9b2771d8554709e94a1654bbc8ab2f49bea174fc18ced1ead36934·...·]-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="4941744640-20">(</span><span·class="nf">name</span><span·class="p"·data-group-id="4941744640-21">(</span><span·class="p"·data-group-id="4941744640-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:·e49ed68709010cc58ff413cc845ffabd9a9ecb2fd3812214cad4c6ce01184c2b·...·]-20">)</span><span·class="p">.</span><span·class="w">
273 </span><span·class="nf">stop</span><span·class="p"·data-group-id="7860226135-22">(</span><span·class="p"·data-group-id="7860226135-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="4941744640-22">(</span><span·class="p"·data-group-id="4941744640-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="7860226135-23">(</span><span·class="nf">name</span><span·class="p"·data-group-id="7860226135-24">(</span><span·class="p"·data-group-id="7860226135-24">)</span><span·class="p"·data-group-id="7860226135-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="4941744640-23">(</span><span·class="nf">name</span><span·class="p"·data-group-id="4941744640-24">(</span><span·class="p"·data-group-id="4941744640-24">)</span><span·class="p"·data-group-id="4941744640-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="7860226135-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:·7520cb80a04ba8ec69fe637442d3cd9100bc40763e7a8261b69ee802a8aa2b79·...·]-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="4941744640-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:·f892a39572c248e1d0937d7146bb4dfadb013a6e16ec299cd9a754d94e35105a·...·]-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="7860226135-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:·1f3af5bd242ad01dba0799d3c8be3da8a9fb011b48ffb55769dbae1cd6fae51a·...·]-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="4941744640-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:·b224299ba14d4f873d74c03b291ea73b5f01afb7ac7f28a5d59a5389bbab9503·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
279 ····</span><span·class="p"·data-group-id="7860226135-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="7860226135-27">}</span><span·class="p">.</span><span·class="w">279 ····</span><span·class="p"·data-group-id="4941744640-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="4941744640-27">}</span><span·class="p">.</span><span·class="w">
280 </span><span·class="nf">init</span><span·class="p"·data-group-id="7860226135-28">(</span><span·class="p"·data-group-id="7860226135-29">[</span><span·class="p"·data-group-id="7860226135-29">]</span><span·class="p"·data-group-id="7860226135-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="4941744640-28">(</span><span·class="p"·data-group-id="4941744640-29">[</span><span·class="p"·data-group-id="4941744640-29">]</span><span·class="p"·data-group-id="4941744640-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="7860226135-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="7860226135-30">}</span><span·class="p">.</span><span·class="w">283 ····</span><span·class="p"·data-group-id="4941744640-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="4941744640-30">}</span><span·class="p">.</span><span·class="w">
284 </span><span·class="nf">callback_mode</span><span·class="p"·data-group-id="7860226135-31">(</span><span·class="p"·data-group-id="7860226135-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="4941744640-31">(</span><span·class="p"·data-group-id="4941744640-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="7860226135-32">(</span><span·class="p"·data-group-id="7860226135-33">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="7860226135-33">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·146,·SHA:·fc1dc726c441821045a26f36d80e78be21b20b2d2a048e407d0d1b334fa4824c·...·]-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="4941744640-32">(</span><span·class="p"·data-group-id="4941744640-33">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="4941744640-33">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·146,·SHA:·f2a7ae71749b3110bac7beed8caf47be0fb3521b00e9c250f61a194ed7431410·...·]-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="7860226135-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:·c31ba7e76cc20b014a037f7d14701b6f783d616dd4ebca84d0a5247f7d605e9e·...·]-34">}</span><span·class="p">;</span><span·class="w">289 ····</span><span·class="p"·data-group-id="4941744640-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:·fc5289b8d758156fbb3e53d82180d76b23bd12e32822acda505d7c75ca8e0f8b·...·]-34">}</span><span·class="p">;</span><span·class="w">
290 </span><span·class="nf">off</span><span·class="p"·data-group-id="7860226135-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="7860226135-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="4941744640-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="4941744640-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="7860226135-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="7860226135-38">)</span><span·class="p">.</span><span·class="w">291 ····</span><span·class="nf">handle_event</span><span·class="p"·data-group-id="4941744640-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="4941744640-38">)</span><span·class="p">.</span><span·class="w">
  
292 </span><span·class="nf">on</span><span·class="p"·data-group-id="7860226135-39">(</span><span·class="p"·data-group-id="7860226135-40">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="7860226135-40">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·146,·SHA:·fc1dc726c441821045a26f36d80e78be21b20b2d2a048e407d0d1b334fa4824c·...·]-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="4941744640-39">(</span><span·class="p"·data-group-id="4941744640-40">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="4941744640-40">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·146,·SHA:·f2a7ae71749b3110bac7beed8caf47be0fb3521b00e9c250f61a194ed7431410·...·]-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="7860226135-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="7860226135-42">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·315,·SHA:·dfcd3f101c7fade555ca857b6250f13d77cd5fc31f1ad65b54d8bc4967c38ce1·...·]-41">}</span><span·class="p">;</span><span·class="w">294 ····</span><span·class="p"·data-group-id="4941744640-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="4941744640-42">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·315,·SHA:·509802ea21ad5416c454889474f6baad9e2638d215ed137852f699456b9dc49e·...·]-41">}</span><span·class="p">;</span><span·class="w">
295 </span><span·class="nf">on</span><span·class="p"·data-group-id="7860226135-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="7860226135-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="4941744640-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="4941744640-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="7860226135-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="7860226135-45">)</span><span·class="p">.</span><span·class="w">296 ····</span><span·class="nf">handle_event</span><span·class="p"·data-group-id="4941744640-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="4941744640-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="7860226135-46">(</span><span·class="p"·data-group-id="7860226135-47">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="7860226135-47">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·151,·SHA:·96cfc3e8f155239409b111c3afcb7352f92c7a0884e721922e4c7b83b17cb403·...·]-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="4941744640-46">(</span><span·class="p"·data-group-id="4941744640-47">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="4941744640-47">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·151,·SHA:·2230b331b36287fccf80a21af2eb256f8c808a1c24ec3299acb7d2b3d2c5254a·...·]-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="7860226135-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="7860226135-49">[</span><span·class="p"·data-group-id="7860226135-50">{</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·264,·SHA:·bdaa7c35e71b39885feb36c15c7fefc8ddbb13461345616236fc67887f73c43e·...·]-48">}</span><span·class="p">;</span><span·class="w">300 ····</span><span·class="p"·data-group-id="4941744640-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="4941744640-49">[</span><span·class="p"·data-group-id="4941744640-50">{</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·264,·SHA:·f732439bbd35b16db892952c973a538123be8200242051731df08e30bf35f226·...·]-48">}</span><span·class="p">;</span><span·class="w">
301 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="7860226135-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="7860226135-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="4941744640-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="4941744640-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="7860226135-52">{</span><span·class="ss">keep_state</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="7860226135-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:·2b58e704b33b20aa5bda8cadc48a2d2cc7ff460be049d1ec54c12a49fb135093·...·]-1">)</span><span·class="p">.</span><span·class="w">303 ····</span><span·class="p"·data-group-id="4941744640-52">{</span><span·class="ss">keep_state</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="4941744640-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:·d24af72c38c153417df7afb0025cef7c518cddbf9a28f3fdadb136bbdc1cda32·...·]-1">)</span><span·class="p">.</span><span·class="w">
304 </span><span·class="p"·data-group-id="1718267017-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="1718267017-2">}</span><span·class="gp·unselectable">304 </span><span·class="p"·data-group-id="2441177162-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="2441177162-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="1718267017-3">(</span><span·class="p"·data-group-id="1718267017-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="2441177162-3">(</span><span·class="p"·data-group-id="2441177162-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="1718267017-4">(</span><span·class="p"·data-group-id="1718267017-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="2441177162-4">(</span><span·class="p"·data-group-id="2441177162-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="1718267017-5">(</span><span·class="p"·data-group-id="1718267017-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="2441177162-5">(</span><span·class="p"·data-group-id="2441177162-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="1718267017-6">(</span><span·class="p"·data-group-id="1718267017-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="2441177162-6">(</span><span·class="p"·data-group-id="2441177162-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="1718267017-7">(</span><span·class="p"·data-group-id="1718267017-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="2441177162-7">(</span><span·class="p"·data-group-id="2441177162-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="1718267017-8">(</span><span·class="p"·data-group-id="1718267017-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="2441177162-8">(</span><span·class="p"·data-group-id="2441177162-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="1718267017-9">(</span><span·class="p"·data-group-id="1718267017-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="2441177162-9">(</span><span·class="p"·data-group-id="2441177162-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="6438461542-1">(</span><span·class="p"·data-group-id="6438461542-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="2183919337-1">(</span><span·class="p"·data-group-id="2183919337-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="6438461542-2">(</span><span·class="p"·data-group-id="6438461542-3">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="6438461542-3">}</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·218,·SHA:·e68dd69a8096e6d1c5d4b7da996877fa182a625833b4aa7eb7e9cabb78b47d1b·...·]-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="2183919337-2">(</span><span·class="p"·data-group-id="2183919337-3">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="2183919337-3">}</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·218,·SHA:·5082d0cf91ee72c9e8804b20c82593cfb24552826e682fcc0331ad878e10399d·...·]-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="6438461542-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:·52211b5b19dc796daa66166e7188fa7bd9ded6367d9d2e69875df1197c7998b0·...·]-4">}</span><span·class="p">;</span><span·class="w">328 ····</span><span·class="p"·data-group-id="2183919337-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:·822f65c81447ca31e0032f9155c412e20a68e4ed074b06f856931cb1866f79ac·...·]-4">}</span><span·class="p">;</span><span·class="w">
329 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="6438461542-7">(</span><span·class="p"·data-group-id="6438461542-8">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="6438461542-8">}</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·217,·SHA:·30d94616806b0041c6ca9d0865d5dfd279b88be0cae626e4d1b41782a97d8ba5·...·]-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="2183919337-7">(</span><span·class="p"·data-group-id="2183919337-8">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="2183919337-8">}</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·217,·SHA:·89c64dd9552ddc6f01c4a187a3748084b8f7f98ad0ba0abe31cbedd6503fe513·...·]-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="6438461542-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="6438461542-10">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·314,·SHA:·41dafe9027f57e4e310b188286fd5bce365bd91dd09c0ab44bcd381881116956·...·]-9">}</span><span·class="p">;</span><span·class="w">331 ····</span><span·class="p"·data-group-id="2183919337-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="2183919337-10">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·314,·SHA:·d6ff2307ac10ca8b8be726674f327bcc2a38a3fcdb43447f9606559e02f9347e·...·]-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="6438461542-12">(</span><span·class="p"·data-group-id="6438461542-13">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="6438461542-13">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·227,·SHA:·72d1f7f6ab86259a03250f318c5546b471d1be69e5be9a80ab05b05021560017·...·]-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="2183919337-12">(</span><span·class="p"·data-group-id="2183919337-13">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="2183919337-13">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·227,·SHA:·6c820dd8b1b7e7da69ae3cb4071a182ca9ad9f013325c557c1bd70b82daf43f1·...·]-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="6438461542-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="6438461542-15">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·316,·SHA:·c267acd2e65c385dce1ceeee87ba1d9d12936cf3a204f4c7f07e98c379c3ed56·...·]-14">}</span><span·class="p">;</span><span·class="w">336 ····</span><span·class="p"·data-group-id="2183919337-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="2183919337-15">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·316,·SHA:·3b6049745d52a8e308d5013acf130221de39181e4b72939604a18ec1522a004c·...·]-14">}</span><span·class="p">;</span><span·class="w">
337 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="6438461542-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:·47aaecb4ef059268e4394acd798449b67b66743b4dd0adce1ca490c8ec1a745a·...·]-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="2183919337-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:·578168c9a0d5e20f270b29978b68223f420c06f2e486da1b5decd9341f919179·...·]-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="6438461542-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="6438461542-18">}</span><span·class="p">.</span></code></pre><h2·id="module-see-also"·class="section-heading">339 ····</span><span·class="p"·data-group-id="2183919337-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="2183919337-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="5200301499-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="5200301499-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="5508813158-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="5508813158-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="5200301499-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="5508813158-2">(</span><span·class="w">
3222 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="5200301499-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="5200301499-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="5508813158-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="5508813158-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="5200301499-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="5200301499-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="5508813158-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="5508813158-4">)</span><span·class="p">;</span><span·class="w">
3224 ·······</span><span·class="p"·data-group-id="5200301499-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="5200301499-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Pass</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·19063c40d3e32afb9210013aae9c250fc8b5bad4c71782cca59f0090925b51ee·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3224 ·······</span><span·class="p"·data-group-id="5508813158-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="5508813158-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Pass</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·e80d86100cf5f774395ae36508d529e2ff743a7726caf822c4ddc77cd74980b5·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3225 ············</span><span·class="p"·data-group-id="5200301499-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="5200301499-7">}</span><span·class="p">;</span><span·class="w">3225 ············</span><span·class="p"·data-group-id="5508813158-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="5508813158-7">}</span><span·class="p">;</span><span·class="w">
3226 ·······</span><span·class="p"·data-group-id="5200301499-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="5200301499-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3226 ·······</span><span·class="p"·data-group-id="5508813158-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="5508813158-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="5200301499-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="5508813158-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2024·<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="9333265813-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="9333265813-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="7353359727-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="7353359727-1">)</span><span·class="p">.</span><span·class="w">
1036 </span><span·class="p"·data-group-id="9333265813-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9333265813-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:·73f5d929661d37dc33998ad123148c50d8691f8f37f6f456e98e49389a412003·...·]-2">}</span></code></pre>1036 </span><span·class="p"·data-group-id="7353359727-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7353359727-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:·eba3c1860596137751a9c7ce96d8deacd66dbc09c28ce175c0d75808922e3746·...·]-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="8614103676-1">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8614103676-2">(</span><span·class="p"·data-group-id="8614103676-3">{</span><span·class="mi">1</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·836,·SHA:·268f5b77af8f6b554563fe75e7ed3a19f11d4c92d83e81f836e74f0951400988·...·]6-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="6171096706-1">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="6171096706-2">(</span><span·class="p"·data-group-id="6171096706-3">{</span><span·class="mi">1</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·836,·SHA:·ab79b75347c20bce949d05a62cd90b1510395060c863eb877a78a5d016187bac·...·]6-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="8614103676-7">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8614103676-8">(</span><span·class="p"·data-group-id="8614103676-9">{</span><span·class="mi">1</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·915,·SHA:·1f8655b09091ce2c7b980983dde74148fc0cd7863f02e050f4e1874d5da524c5·...·]6-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="6171096706-7">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="6171096706-8">(</span><span·class="p"·data-group-id="6171096706-9">{</span><span·class="mi">1</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·915,·SHA:·0eb82237e2257b6575d89b8ebfa25b313b4b7349a28cf3d13eccab38875bc5e9·...·]6-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="8614103676-13">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8614103676-14">(</span><span·class="p"·data-group-id="8614103676-15">{</span><span·class="p"·data-group-id="8614103676-[·...·truncated·by·diffoscope;·len:·1088,·SHA:·85c718f692056c902d9d364ec460b125150334cbd65742b00d867dbb2fa15fde·...·]6-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="6171096706-13">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="6171096706-14">(</span><span·class="p"·data-group-id="6171096706-15">{</span><span·class="p"·data-group-id="6171096706-[·...·truncated·by·diffoscope;·len:·1088,·SHA:·874fb1412de77fb1ca645ca83bb0c4f5c38d83688dc03a87c50add99fe46be28·...·]6-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1812 <p>Copyright·©·1996-2024·<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="1429592974-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="1429592974-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="2305174871-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="2305174871-1">)</span><span·class="p">.</span><span·class="w">
917 </span><span·class="p"·data-group-id="1429592974-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="1[·...·truncated·by·diffoscope;·len:·9,·SHA:·7fd1abd9eb6ee51525363f40f64134046bd2cc152b17d4c03999f5bee60c8353·...·]-2">}</span></code></pre>917 </span><span·class="p"·data-group-id="2305174871-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="2[·...·truncated·by·diffoscope;·len:·9,·SHA:·97905bb0a7a5f817f6aaf0d7a0e572b14e04f644ca91dd7309e7d051cb5eca26·...·]-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="9531150201-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="9531150201-1">)</span><span·[·...·truncated·by·diffoscope;·len:·623,·SHA:·2871b572b346fd11b2eea97a2a9f0d4a58f889a3a84cef0969adb1ad5f483127·...·]-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="9089579333-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="9089579333-1">)</span><span·[·...·truncated·by·diffoscope;·len:·623,·SHA:·17fc759ce99c3a25df4c3e4a74a2d0be9fa1b4e46546fa1457f57262ac0909ba·...·]-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="9531150201-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:·292,·SHA:·50caf23a4392ce8a49e5fc8cd89b7aa976a3c92bcb23456c88ebcce795ef26f3·...·]-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="9089579333-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:·292,·SHA:·96ccea336636b2cf434ea57e07de02abc23a70d69ae3843296806f338960d692·...·]-5">)</span><span·class="p">.</span><span·class="w">
971 </span><span·class="p"·data-group-id="9531150201-7">{</span><span·class="p"·data-group-id="9531150201-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="9531150201-8">}</span>[·...·truncated·by·diffoscope;·len:·177,·SHA:·12240b0d4580c77c1de2f4b8800c99292ca7b83c337b1aeedfa27e41255547e9·...·]-7">}</span></code></pre>971 </span><span·class="p"·data-group-id="9089579333-7">{</span><span·class="p"·data-group-id="9089579333-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="9089579333-8">}</span>[·...·truncated·by·diffoscope;·len:·177,·SHA:·ea767a2e36386dfd94da4aea0e09c8ba805e67cd62129ccf881260f6e456ab60·...·]-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="8999261160-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="8999261160-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·526,·SHA:·f353833ae628a0076e1f7344fcd8c54097a762032950ad0ec3d558fe9c19c3f7·...·]-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="5372718316-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="5372718316-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·526,·SHA:·1f77b0ba6f88fdfff48ccab5da61623419a49038eaeb57065942dbb3d7092f92·...·]-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="8999261160-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="8999261160-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="5372718316-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="5372718316-4">)</span><span·class="p">.</span><span·class="w">
1004 </span><span·class="p"·data-group-id="8999261160-5">{</span><span·class="p"·data-group-id="8999261160-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="8999261160-6">}</span[·...·truncated·by·diffoscope;·len:·1090,·SHA:·8de2cdbf1b378bcf6a549db9ab1c748451e934b705ec9334c9664c3ba4ea1b0c·...·]-2">)</span><span·class="p">.</span><span·class="gp·unselectable">1004 </span><span·class="p"·data-group-id="5372718316-5">{</span><span·class="p"·data-group-id="5372718316-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="5372718316-6">}</span[·...·truncated·by·diffoscope;·len:·1090,·SHA:·f0ee052d20a11472231919d242b84b32e7a687908c74bf2d7a093de84bc6aef4·...·]-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="2038851645-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="2038851645-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="1159881248-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="1159881248-4">)</span><span·class="p">.</span><span·class="w">
1006 </span><span·class="p"·data-group-id="2038851645-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="2038851645-5">}</span></code></pre>1006 </span><span·class="p"·data-group-id="1159881248-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="1159881248-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="0212013688-1">(</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">encode</span><span·class="p"·data-group-id="0212013688-2">(</span><span·class="p"·data-group-id="0212013688-3">#{</span><span·class="ss">foo</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·305,·SHA:·5c7bd101ba754ca8dd09ed1b795f42e367fa121a5d74dbb387f683d57fc63076·...·]-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="5113360583-1">(</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">encode</span><span·class="p"·data-group-id="5113360583-2">(</span><span·class="p"·data-group-id="5113360583-3">#{</span><span·class="ss">foo</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·305,·SHA:·3aa71fda491a05f7ac1bcffe5c866a69d1e2444dccbd21b03bf4f67d2c0c5a11·...·]-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="2931974652-1">(</span><span·class="p"·data-group-id="2931974652-2">[</span><span·class="p"·data-group-id="2931974652-3">{</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="2[·...·truncated·by·diffoscope;·len:·772,·SHA:·57dd102c463507386b530669390546204e720b095f13f2fd5bb2d1c9ea34e182·...·]-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="0178546798-1">(</span><span·class="p"·data-group-id="0178546798-2">[</span><span·class="p"·data-group-id="0178546798-3">{</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="0[·...·truncated·by·diffoscope;·len:·772,·SHA:·84eaece61b8527d8cb6f1a7ffcc083346931792b67030a8e5bfcb543bba551aa·...·]-4">)</span><span·class="p">;</span><span·class="gp·unselectable">
1121 &gt;·</span><span·class="nf">encoder</span><span·class="p"·data-group-id="2931974652-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="2931974652-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·287,·SHA:·6e7aa11fdfcedcfd8bc2a0929613b61bfada1d947bb399520b37d3e3c2d9cd8c·...·]-6">)</span><span·class="p">.</span><span·class="gp·unselectable">1121 &gt;·</span><span·class="nf">encoder</span><span·class="p"·data-group-id="0178546798-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="0178546798-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·287,·SHA:·e5c9f7a20186467c819a2fa22d9358065431896cef24ce297eda75be1d03cbd7·...·]-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="2931974652-7">(</span><span·class="n">Value</span><span·class="p"·data-group-id="2931974652-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:·c58a83fff35a3403fe1132b9409cb7952c3d51fabbcfb0cd6560157d05e2a778·...·]-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="0178546798-7">(</span><span·class="n">Value</span><span·class="p"·data-group-id="0178546798-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:·1d16725500c26dca80a63074ef9bd05b868052937283ac067b5e0803f6598a97·...·]-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="2931974652-11">(</span><span·class="nf">custom_encode</span><span·class="p"·data-group-id="2931974652-12">(</span><span·class="p"·data-group-id="2931974652-13">[</span><span·class="p"·data-group-id="2931974652-14">{</span><span·class="ss">a</span><span·cla[·...·truncated·by·diffoscope;·len:·604,·SHA:·c54c83f201eae68ed71d7da16bd8679b93befbbacd5ce1a38ae33ca00bb561ec·...·]-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="0178546798-11">(</span><span·class="nf">custom_encode</span><span·class="p"·data-group-id="0178546798-12">(</span><span·class="p"·data-group-id="0178546798-13">[</span><span·class="p"·data-group-id="0178546798-14">{</span><span·class="ss">a</span><span·cla[·...·truncated·by·diffoscope;·len:·604,·SHA:·f2dffbb5bea3de9b12e826c2b4a7113d309dc1e8c746f4141ac4951e37897850·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1512 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>460 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1195 <p>Copyright·©·1996-2024·<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="7856593076-1">(</span><span·class="ss">emp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7856593076-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="3237863284-1">(</span><span·class="ss">emp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3237863284-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="7856593076-2">}</span><span·class="p"·data-group-id="7856593076-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:·83fe552e49fb4aca06ff6cdb4d80f10a50dbfd0540d476ab295c54a2255356ae·...·]-2">}</span><span·class="p">,</span><span·class="w">161 ··············</span><span·class="ss">empyear</span><span·class="p"·data-group-id="3237863284-2">}</span><span·class="p"·data-group-id="3237863284-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:·b8c120af56f48eb3f0cd65816d723076fba32df84a1d9fdebec1b6bc64f0ae17·...·]-2">}</span><span·class="p">,</span><span·class="w">
162 ·</span><span·class="p"·data-group-id="6944438689-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:·fe776b87014db25d0086efcb4b055c348fdfb878c87bced97d931afd84a8e3cc·...·]-3">}</span><span·class="p">,</span><span·class="w">162 ·</span><span·class="p"·data-group-id="6144219062-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:·30c001de90206af195923c6753f9d98d7ec03c6cebe46c1793047ee3915a44f8·...·]-3">}</span><span·class="p">,</span><span·class="w">
163 ·</span><span·class="p"·data-group-id="6944438689-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:·db7ed0e797410c3b81dbc97d3f9180ad3198287f168169eb5d05aa98eeae5f06·...·]-4">}</span><span·class="p">,</span><span·class="w">163 ·</span><span·class="p"·data-group-id="6144219062-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:·b61a91f8511891420aa00eceabbe4bd4a5a1db3074db82cac5243d2e990188da·...·]-4">}</span><span·class="p">,</span><span·class="w">
164 ·</span><span·class="p"·data-group-id="6944438689-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:·b96e02c90eb2257946034072971f1f26c230b34314ef4a9c29591fbbe19165e1·...·]-5">}</span><span·class="p">,</span><span·class="w">164 ·</span><span·class="p"·data-group-id="6144219062-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:·5532fa9ba11461cb0b1204ca3aeb1eb60a50d40ff2573164dd5757d7ec7d82f0·...·]-5">}</span><span·class="p">,</span><span·class="w">
165 ·</span><span·class="p"·data-group-id="6944438689-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:·1159fd962bf9b59f7a12be4e0f2981097205f4a76c733a975b405b5517ede5d1·...·]-6">}</span><span·class="p">,</span><span·class="w">165 ·</span><span·class="p"·data-group-id="6144219062-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:·fc11834798c8c8e9af0a5e8620d3b35c4937abd50741b9eef4312b699f3d3711·...·]-6">}</span><span·class="p">,</span><span·class="w">
166 ·</span><span·class="p"·data-group-id="6944438689-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:·ce3a68294a1ecf73cf3065682e1dc9e39e2126be7c9b3fca172db21fce5ebb53·...·]-7">}</span><span·class="p">,</span><span·class="w">166 ·</span><span·class="p"·data-group-id="6144219062-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:·a1aa0ee3910f7a4fb6400c2b09ae7f1976188b4b4ce663c76c3dfa1f6fe809af·...·]-7">}</span><span·class="p">,</span><span·class="w">
167 ·</span><span·class="p"·data-group-id="6944438689-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:·655180fd580d8a47d2c9b68c001b59040fb254a688bd92ea222a4ba399c1d884·...·]-8">}</span><span·class="p">,</span><span·class="w">167 ·</span><span·class="p"·data-group-id="6144219062-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:·d10e02c2a74b9aff9b59883c15c5ee2844fd22d6f606d5ad9782795f35be7dfa·...·]-8">}</span><span·class="p">,</span><span·class="w">
168 ·</span><span·class="p"·data-group-id="6944438689-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:·49730f58432db28c5f7a960fe5555240a222ee0cc246ba47356fbf0f4eb939f8·...·]-9">}</span><span·class="p">,</span><span·class="w">168 ·</span><span·class="p"·data-group-id="6144219062-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:·84945e55526e2610c00643e491c56a0d2eae77e3b8888ff6dc100aac6742486a·...·]-9">}</span><span·class="p">,</span><span·class="w">
169 ·</span><span·class="p"·data-group-id="6944438689-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:·1f4940a9c87425f31b6cdeef48a7cea85dafa918f7f677378eac42992f26e8dd·...·]-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="6144219062-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:·1e5a620ed958916bdfdb3ebc1b73d8226f032f3a000f4d31b3141078b5adebc9·...·]-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="2890616637-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2890616637-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:·f3a1b3590d508141bea277226f8e9ac987e6a0476f764b96813a5aac2ce43e9b·...·]-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="5138529406-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5138529406-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:·c60519530b00ef0ba7cd255b5c971f4d35b8f5a5f5f938a10e133fa9ef75c3fd·...·]-1">)</span><span·class="p">.</span><span·class="w">
171 </span><span·class="p"·data-group-id="2890616637-3">[</span><span·class="p"·data-group-id="2890616637-4">[</span><span·class="s">&quot;011103&quot;</span><span·class="p"·data-group-id="2890616637-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="2890616637-5">[</span><span·clas[·...·truncated·by·diffoscope;·len:·125,·SHA:·91122716855d37469b3266391ca0867f9216dc10b34a81f16449a518b35be366·...·]-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="5138529406-3">[</span><span·class="p"·data-group-id="5138529406-4">[</span><span·class="s">&quot;011103&quot;</span><span·class="p"·data-group-id="5138529406-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="5138529406-5">[</span><span·clas[·...·truncated·by·diffoscope;·len:·125,·SHA:·7b2283315a25767ab82e1c02c4e2b517de0092f13aa984df944e121b1d5e694e·...·]-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="7193776100-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="7193776100-2">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="7193776100-3">{</span><span·class="ss">empno</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·700,·SHA:·0465144f2ea7da9887b3eab2d9cbeb5452feb31524a0fc81ba1a9cdcd85bb1df·...·]-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="9107582531-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="9107582531-2">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="9107582531-3">{</span><span·class="ss">empno</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·700,·SHA:·e1d0144bca45976b9406776ed87b25eccf71a2f0ab13ef036f811e30cba907b1·...·]-4">]</span><span·class="p">;</span><span·class="w">
174 ·············</span><span·class="p"·data-group-id="7193776100-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Acc</span><span·class="p"·data-group-id="7193776100-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="9107582531-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Acc</span><span·class="p"·data-group-id="9107582531-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="7193776100-6">[</span><span·class="p"·data-group-id="7193776100-6">]</span><span·class="p">,</span><span·class="w">176 ··········</span><span·class="p"·data-group-id="9107582531-6">[</span><span·class="p"·data-group-id="9107582531-6">]</span><span·class="p">,</span><span·class="w">
177 ··········</span><span·class="ss">emp_tab</span><span·class="p"·data-group-id="7193776100-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="9107582531-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="9602390889-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9602390889-2">[</span><span·class="p"·data-group-id="9602390889-3">{</span><span·class="o">#</span><span·class="ss">emp</spa[·...·truncated·by·diffoscope;·len:·996,·SHA:·68d1cec77958043fd19e6e031b3311698bb62274220199e7e97ed272f89c8619·...·]-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="5798401238-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5798401238-2">[</span><span·class="p"·data-group-id="5798401238-3">{</span><span·class="o">#</span><span·class="ss">emp</spa[·...·truncated·by·diffoscope;·len:·996,·SHA:·b690398288193e6fe31d457478fc3541dc9caa631b2cb46c9f8bfe65e05ce720·...·]-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="8133209659-1">(</span><span·class="s">&quot;stdlib/include/ms_transform.hrl&quot;</span><span·class="p"·data-group-id="8133209659-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="2829274960-1">(</span><span·class="s">&quot;stdlib/include/ms_transform.hrl&quot;</span><span·class="p"·data-group-id="2829274960-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="8133209659-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="8133209659-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="2829274960-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="2829274960-3">(</span><span·class="w">
194 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="8133209659-4">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="8133209659-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:·9b73faad8f0a38d09e193fde1991d0d3e4fef230d6b348ad39c98e05f6a45162·...·]-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="2829274960-4">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="2829274960-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:·6802af46ad1bb8868c619ff053f2b06a9655b19d9ae117c237d835ecfc7d10a4·...·]-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="8133209659-3">)</span><span·class="p"·data-group-id="8133209659-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="2829274960-3">)</span><span·class="p"·data-group-id="2829274960-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="5641870184-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5641870184-2">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="5641870184-3">{</span><span·class="ss">empno</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·900,·SHA:·2a4bce427c287789b07bb178d8dc998ef80d71e2a1b01cd3fe5a93c7207628da·...·]-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="8293251232-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8293251232-2">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="8293251232-3">{</span><span·class="ss">empno</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·900,·SHA:·d5e2f565d10f5ed15cd0f4f2a390b7ecb905bf699fe473e79235c45fc6056d2a·...·]-4">]</span><span·class="p">;</span><span·class="w">
220 ··················</span><span·class="p"·data-group-id="5641870184-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Acc</span><span·class="p"·data-group-id="5641870184-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="8293251232-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Acc</span><span·class="p"·data-group-id="8293251232-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="5641870184-6">[</span><span·class="p"·data-group-id="5641870184-6">]</span><span·class="p">,</span><span·class="w">222 ··········</span><span·class="p"·data-group-id="8293251232-6">[</span><span·class="p"·data-group-id="8293251232-6">]</span><span·class="p">,</span><span·class="w">
223 ··········</span><span·class="ss">emp_tab</span><span·class="p"·data-group-id="5641870184-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="8293251232-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="6708211259-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6708211259-2">[</span><span·class="p"·data-group-id="6708211259-3">{</span><span·class="o">#</span><span·class="ss">emp</spa[·...·truncated·by·diffoscope;·len:·551,·SHA:·e2c5606f7473d8c749924b0952c5311ef3bc4a8569cc695233e01a83a2d0beb9·...·]-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="0419188437-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0419188437-2">[</span><span·class="p"·data-group-id="0419188437-3">{</span><span·class="o">#</span><span·class="ss">emp</spa[·...·truncated·by·diffoscope;·len:·551,·SHA:·08407aea8e73a97abb7b59fcc3bf8b740debd48b99c683eba40168cce203e57b·...·]-4">}</span><span·class="p">,</span><span·class="w">
226 ·····················</span><span·class="p"·data-group-id="6708211259-5">[</span><span·class="p"·data-group-id="6708211259-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:·9aec4e31bd6c98fbb40c15e8b805732fb249c14f2d976001bdaf661b6e4be5fb·...·]-5">]</span><span·class="p">,</span><span·class="w">226 ·····················</span><span·class="p"·data-group-id="0419188437-5">[</span><span·class="p"·data-group-id="0419188437-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:·a588a81c1caf729e1f529cff005a99ac32d10293351e8fbdbf8143ce18a078e5·...·]-5">]</span><span·class="p">,</span><span·class="w">
227 ·····················</span><span·class="p"·data-group-id="6708211259-7">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="6708211259-7">]</span><span·class="p"·data-group-id="6708211259-3">}</span><span·class="p"·data-group-id="6708211259-2">]</span><span·class="p"·data-group-id="67082112[·...·truncated·by·diffoscope;·len:·2,·SHA:·3e1e967e9b793e908f8eae83c74dba9bcccce6a5535b4b462bd9994537bfe15c·...·]-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="0419188437-7">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0419188437-7">]</span><span·class="p"·data-group-id="0419188437-3">}</span><span·class="p"·data-group-id="0419188437-2">]</span><span·class="p"·data-group-id="04191884[·...·truncated·by·diffoscope;·len:·2,·SHA:·7a61b53701befdae0eeeffaecc73f14e20b537bb0f8b91ad7c2936dc63562b25·...·]-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="8795875901-1">(</span><span·class="s">&quot;stdlib/include/ms_transform.hrl&quot;</span><span·class="p"·data-group-id="8795875901-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="6804060126-1">(</span><span·class="s">&quot;stdlib/include/ms_transform.hrl&quot;</span><span·class="p"·data-group-id="6804060126-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="8795875901-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="8795875901-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="6804060126-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="6804060126-3">(</span><span·class="w">
231 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="8795875901-4">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="8795875901-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:·264,·SHA:·f97888267240c4902ce2d19069ff5b43e9c3b17171c99ea46ebeb263e3486013·...·]-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="6804060126-4">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="6804060126-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:·264,·SHA:·47d3ff34f34aa9b859a213d52d4a8017892e3cef60565c233d7d1a68b96e0779·...·]-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="8795875901-3">)</span><span·class="p"·data-group-id="8795875901-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="6804060126-3">)</span><span·class="p"·data-group-id="6804060126-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="6096977617-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="6096977617-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="5796701791-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="5796701791-2">(</span><span·class="w">
242 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="6096977617-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="6096977617-4">{</span><span·class="ss">empno</span><sp[·...·truncated·by·diffoscope;·len:·362,·SHA:·bc5d57833df05fa94650284b7e0f5fa151a5c8c2daa1ca54420fa84b2446517d·...·]-3">)</span><span·class="w">242 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="5796701791-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="5796701791-4">{</span><span·class="ss">empno</span><sp[·...·truncated·by·diffoscope;·len:·362,·SHA:·cbb355050c7c621c6ff2e6a8b87628b51dca4215a48c57b7953ef153b424e264·...·]-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="6096977617-2">)</span><span·class="p"·data-group-id="6096977617-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="5796701791-2">)</span><span·class="p"·data-group-id="5796701791-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="1768669671-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="1768669671-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="5828281568-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="5828281568-2">(</span><span·class="w">
261 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="1768669671-3">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="1768669671-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:·0586f6c00bc9508a89ef960dec1a10908a94b5337faba6d7b8ab70be576dc7ce·...·]-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="5828281568-3">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="5828281568-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:·32b11cbb2278ba0b31c5707b178668dee77bedb6259e4b1f15033461ff903b02·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
262 ······························</span><span·class="p"·data-group-id="1768669671-6">{</span><span·class="p"·data-group-id="1768669671-7">[</span><span·class="sc">$0</span><span·class="p">|</span><span·class="n">Rest</span><span·class="p"·data-group-id="1768669671-7">]</span><span·class="p">,</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·197,·SHA:·9c9c63961d75020fc0c8322917672c9a4f47b0a19fab189e5796b5f261dca4a8·...·]-6">}</span><span·class="w">262 ······························</span><span·class="p"·data-group-id="5828281568-6">{</span><span·class="p"·data-group-id="5828281568-7">[</span><span·class="sc">$0</span><span·class="p">|</span><span·class="n">Rest</span><span·class="p"·data-group-id="5828281568-7">]</span><span·class="p">,</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·197,·SHA:·2556059ab81a6294b89314e6eaa57a9e6a681a4adef43a6f58bf847d37947749·...·]-6">}</span><span·class="w">
263 ······················</span><span·class="k">end</span><span·class="p"·data-group-id="1768669671-2">)</span><span·class="p"·data-group-id="1768669671-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="5828281568-2">)</span><span·class="p"·data-group-id="5828281568-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="4811974564-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="4811974564-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="2673679047-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="2673679047-2">(</span><span·class="w">
277 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="4811974564-3">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="4811974564-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:·62a523113fec4f85b93e26f732c504b820b6883bf3f4dd419429f75d78835d1e·...·]-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="2673679047-3">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="2673679047-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:·b838b0ef1658b124d7c014a1f226fd43e3cd060369ab46aead3c5f7ac23c62dd·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
278 ······························</span><span·class="p"·data-group-id="4811974564-5">{</span><span·class="ss">guru</span><span·class="p">,</span><span·class="n">E</span><span·class="p"·data-group-id="4811974564-5">}</span><span·class="p">;</span><span·class="w">278 ······························</span><span·class="p"·data-group-id="2673679047-5">{</span><span·class="ss">guru</span><span·class="p">,</span><span·class="n">E</span><span·class="p"·data-group-id="2673679047-5">}</span><span·class="p">;</span><span·class="w">
279 ·························</span><span·class="p"·data-group-id="4811974564-6">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="4811974564-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:·203e2ab9ee212f72e0f763297a0148c8bf4471ce49a7380e133731b77dfd13f9·...·]-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="2673679047-6">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="2673679047-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:·77c933e65cdf1a7418b4502953c1f27ab40660e821a58b6855e9244f12fae7dd·...·]-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="4811974564-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="4811974564-8">}</span><span·class="p">;</span><span·class="w">280 ······························</span><span·class="p"·data-group-id="2673679047-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="2673679047-8">}</span><span·class="p">;</span><span·class="w">
281 ·························</span><span·class="p"·data-group-id="4811974564-9">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="4811974564-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:·28b0d3671a7ca9dca90deb95ab6a75bca36921f38eb1b00e7aa4c25e64e5e178·...·]-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="2673679047-9">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="2673679047-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:·50ebd4c6dbf770774b8df30a27bbed670bf6308c9a13930903590ce258027e4d·...·]-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="5801870270-1">(</span><span·class="p"·data-group-id="5801870270-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="4806981471-1">(</span><span·class="p"·data-group-id="4806981471-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="5801870270-2">(</span><span·class="p">_</span><span·class="p"·data-group-id="5801870270-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="4806981471-2">(</span><span·class="p">_</span><span·class="p"·data-group-id="4806981471-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="0030043156-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="0030043156-1">)</span><span·class="p">.</span></code></pre><p>Another·way·to·disable·the·<[·...·truncated·by·diffoscope;·len:·687,·SHA:·cb32c04bb7db3839249238d6cbe297e94c5921c38132d4e7c3a962ab90342e81·...·]3-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="1259861386-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="1259861386-1">)</span><span·class="p">.</span></code></pre><p>Another·way·to·disable·the·<[·...·truncated·by·diffoscope;·len:·687,·SHA:·534f5662544f77d5b3e111d01e70381191e54cc88b4e5b6984678c20daf2e092·...·]3-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="5799313383-2">(</span><span·class="p"·data-group-id="5799313383-3">[</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="5799313383-3">]</span><span·class="p"·data-group-id="5799313383-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="3127765633-2">(</span><span·class="p"·data-group-id="3127765633-3">[</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="3127765633-3">]</span><span·class="p"·data-group-id="3127765633-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="5799313383-4">(</span><span·class="ss">r</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5799313383-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:·108,·SHA:·bc6d1f321ecfa44bdb58e6f129e396063f5b3e22d9f97be05257b2653076e046·...·]3-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="3127765633-4">(</span><span·class="ss">r</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3127765633-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:·108,·SHA:·3416635782c84f5609fcdfe112a1ff7933752b23bd91b956eaba4e8bd7d1c1e1·...·]3-4">)</span><span·class="p">.</span><span·class="w">
  
200 </span><span·class="nf">f</span><span·class="p"·data-group-id="5799313383-6">(</span><span·class="p"·data-group-id="5799313383-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="3127765633-6">(</span><span·class="p"·data-group-id="3127765633-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="5799313383-7">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="mi">1</span><span·class="p"·data-group-id="5799313383-7">}</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="5799313383-8">{</span><span[·...·truncated·by·diffoscope;·len:·109,·SHA:·ee5a6e7b54eb08b5c8e488055157645699daad5bcd32044b01ff949feca2b5bf·...·]3-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="3127765633-7">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="mi">1</span><span·class="p"·data-group-id="3127765633-7">}</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="3127765633-8">{</span><span[·...·truncated·by·diffoscope;·len:·109,·SHA:·2a7e022f52901a36b509642f143d0bcd3dc4fb89c70124e0f9fc68ec5bc96877·...·]3-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4479 <p>Copyright·©·1996-2024·<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="2247657901-1">(</span><span·class="p"·data-group-id="2247657901-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="2617863438-1">(</span><span·class="p"·data-group-id="2617863438-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="2247657901-2">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2247657901-3">[</span><span·class="p"·data-group-id="2247657901-3">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·62,·SHA:·082f251b37620f49f57ed8ca85868eadcf54ecbd7d9c4f3efe90fbdf3ace6112·...·]-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="2617863438-2">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2617863438-3">[</span><span·class="p"·data-group-id="2617863438-3">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·62,·SHA:·046583888ac2b92d4525e7e2f9c3a4d5197ed171b66d7f59739426e4e0202e00·...·]-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="2247657901-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="2247657901-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="2617863438-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="2617863438-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="2247657901-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="2247657901-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="2617863438-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="2617863438-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="2247657901-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="2247657901-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="2617863438-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="2617863438-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="2247657901-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="2247657901-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="2617863438-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="2617863438-7">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="p"·data-group-id="2247657901-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="2247657901-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="2617863438-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="2617863438-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="1325099204-1">(</span><span·class="p"·data-group-id="1325099204-2">[</span><span·class="p"·data-group-id="1325099204-3">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1325099204-4">[</span><s[·...·truncated·by·diffoscope;·len:·198,·SHA:·9aea63c5ca97672623580767642516a4c7e0af7df175e2cfaf04180912ddb086·...·]-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="6335278805-1">(</span><span·class="p"·data-group-id="6335278805-2">[</span><span·class="p"·data-group-id="6335278805-3">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6335278805-4">[</span><s[·...·truncated·by·diffoscope;·len:·198,·SHA:·b473e216af5019d5a1d09b750a3eaecbc1c237b7624c43eda8d96ce6fc223c1f·...·]-1">)</span><span·class="p">.</span><span·class="w">
539 </span><span·class="p"·data-group-id="1325099204-5">[</span><span·class="p"·data-group-id="1325099204-6">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="1325099204-7">[</span><span·class="p"·data-group-id="1325099204-7">]</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·4b244898daf687b1bfa8426eb24f8c65943188b1c89c007a581aa9d1df576f5d·...·]-5">]</span><span·class="gp·unselectable">539 </span><span·class="p"·data-group-id="6335278805-5">[</span><span·class="p"·data-group-id="6335278805-6">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="6335278805-7">[</span><span·class="p"·data-group-id="6335278805-7">]</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·73df1e25127ab4a1ef36d9079faeaa1643a622d663d811d14a55f550ac42a060·...·]-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="1325099204-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="1325099204-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="6335278805-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="6335278805-8">)</span><span·class="p">.</span><span·class="w">
541 </span><span·class="p"·data-group-id="1325099204-9">[</span><span·class="p"·data-group-id="1325099204-10">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="1325099204-11">[</span><span·class="mi">1</span><span·class="p"·data-group-id="1325099204-11">]</spa[·...·truncated·by·diffoscope;·len:·97,·SHA:·fdacf5f822fe525b4362232fec4369487b1c7b22af3e63cde4ca67bfe570370c·...·]-9">]</span><span·class="gp·unselectable">541 </span><span·class="p"·data-group-id="6335278805-9">[</span><span·class="p"·data-group-id="6335278805-10">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="6335278805-11">[</span><span·class="mi">1</span><span·class="p"·data-group-id="6335278805-11">]</spa[·...·truncated·by·diffoscope;·len:·97,·SHA:·16e739d7c52de3f3c0dbfbca74d1d1339709b3bcc2c22747709c4d7b1b3554a1·...·]-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="1325099204-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="1325099204-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="6335278805-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="6335278805-12">)</span><span·class="p">.</span><span·class="w">
543 </span><span·class="p"·data-group-id="1325099204-13">[</span><span·class="p"·data-group-id="1325099204-14">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="1325099204-15">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·147,·SHA:·380793e33be89cc09290144b65deba3fc52506938e271f462f35598d9479e0b7·...·]-13">]</span><span·class="gp·unselectable">543 </span><span·class="p"·data-group-id="6335278805-13">[</span><span·class="p"·data-group-id="6335278805-14">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="6335278805-15">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·147,·SHA:·4b1f77f792ec422ecc0b1cea566c442aa556be0a68314be9cf1b1a58892e4820·...·]-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="1325099204-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="1325099204-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="6335278805-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="6335278805-16">)</span><span·class="p">.</span><span·class="w">
545 </span><span·class="p"·data-group-id="1325099204-17">[</span><span·class="p"·data-group-id="1325099204-18">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="1325099204-19">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="1325099204-19">]</span><span·class="p"·data-group-id="1325099204-18">}</span><span·class="p">,</span><span·class="p"·data-group-id="1325099204-20">{</span><span·class="ss">y</span><span·class="p">,</span><span·class="p"·data-group-id="1325099204-21">[</span><span·class="mi">3</span><span·class="p"·data-group-id="1325099204-21">]</span><span·class="p"·data-group-id="1325099204-20">}</span><span·class="p"·data-group-id="1325099204-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="4419400572-1">(</span><span·class="p"·data-group-id="4419400572-2">[</span><span·class="p"·data-group-id="4419400572-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="4419400572-3">}</span><span·class="p"·data-group-id="4419400572-2">]</span><span·class="p"·data-group-id="4419400572-1">)</span><span·class="p">.</span><span·class="w"> 
546 </span><span·class="p"·data-group-id="4419400572-4">[</span><span·class="p"·data-group-id="4419400572-5">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">no_list</span><span·class="p"·data-group-id="4419400572-5">}</span><span·class="p"·data-group-id="4419400572-4">]</[·...·truncated·by·diffoscope;·len:·33,·SHA:·b2e352d8309445f25b55be1913f1379d4d74b8b1a31e1190b1cf594ab0bdcba8·...·]">545 </span><span·class="p"·data-group-id="6335278805-17">[</span><span·class="p"·data-group-id="6335278805-18">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="6335278805-19">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·1255,·SHA:·97c9da4503a3e65d979c72385b50ad11861dec1b72adbb7ec54182a69a19175b·...·]">
 546 </span><span·class="p"·data-group-id="6116676104-4">[</span><span·class="p"·data-group-id="6116676104-5">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">no_list</span><span·class="p"·data-group-id="6116676104-5">}</span><span·class="p"·data-group-id="6116676104-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="4419400572-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="4419400572-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="6116676104-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="6116676104-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="7315332097-1">(</span><span·class="p"·data-group-id="7315332097-2">[</span><span·class="p"·data-group-id="7315332097-3">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7315332097-4">[</span><span·class="p"·data-group-id="7315332097-4">]</span><span·class="p"·data-group-id="7315332097-3">}</span><span·class="p"·data-group-id="7315332097-2">]</span><span·class="p"·data-group-id="7315332097-1">)</span><span·class="p">.</span><span·class="w"> 
585 </span><span·class="p"·data-group-id="7315332097-5">[</span><span·class="p"·data-group-id="7315332097-6">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="7315332097-7">[</span><span·class="p"·data-group-id="7315332097[·...·truncated·by·diffoscope;·len:·146,·SHA:·b1a4430c0e178863a3bd2bef0c0c812d3521dc30f0d88258dff4b6ca09b6f492·...·]">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"[·...·truncated·by·diffoscope;·len:·680,·SHA:·b51c904ddebf41fef1a2039ac01895ae127decfb2a8d2384d85b7d1ed72b112a·...·]">
 585 </span><span·class="p"·data-group-id="1631111028-5">[</span><span·class="p"·data-group-id="1631111028-6">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="1631111028-7">[</span><span·class="p"·data-group-id="1631111028-7">]</span><span·class="p"·data-group-id="1631111028-6">}</span><span·class="p"·data-group-id="1631111028-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="7315332097-8">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7315332097-9">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="731[·...·truncated·by·diffoscope;·len:·139,·SHA:·03836f9cdce36f92d8ba682ef76226ccbc63758359636ac4c2af5b45e771cee6·...·]-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="1631111028-8">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1631111028-9">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="163[·...·truncated·by·diffoscope;·len:·139,·SHA:·3f49eb78d9954a21bbfe91c7fab5c6bbc955dfa2c2590a59178b8a622f07d491·...·]-8">)</span><span·class="p">.</span><span·class="w">
587 </span><span·class="p"·data-group-id="7315332097-10">[</span><span·class="p"·data-group-id="7315332097-11">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="7315332097-12">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·147,·SHA:·249b4ec553855ab8892cd8351e17c8fdab02da4367fbc2190ab305bb824eb55a·...·]-10">]</span><span·class="gp·unselectable">587 </span><span·class="p"·data-group-id="1631111028-10">[</span><span·class="p"·data-group-id="1631111028-11">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="1631111028-12">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·147,·SHA:·bc8f981307a6159d485ed999cae9c27a509fe2ad9cdd8ff29d7691d77fd99c02·...·]-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="7315332097-13">(</span><span·class="ss">y</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7315332097-14">[</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="7[·...·truncated·by·diffoscope;·len:·142,·SHA:·aa917d9e84da0b91aeb5341a2b90cca0ee4a45759373aed7b19b8b0aaca8ccd9·...·]-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="1631111028-13">(</span><span·class="ss">y</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1631111028-14">[</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·142,·SHA:·50d70a6cfa8c1f0338df36c6eae71e9988f41f8e837c7f1ca9ffbfba7c40b3fe·...·]-13">)</span><span·class="p">.</span><span·class="w">
589 </span><span·class="p"·data-group-id="7315332097-15">[</span><span·class="p"·data-group-id="7315332097-16">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="7315332097-17">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·510,·SHA:·dbc3137b1ba78baf2efb4c02f7ddc2a654562284ae89a1cd214123a3db7e1e73·...·]-15">]</span></code></pre>589 </span><span·class="p"·data-group-id="1631111028-15">[</span><span·class="p"·data-group-id="1631111028-16">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="1631111028-17">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·510,·SHA:·16780ae891b7e304b765ef9d78eddff435698c139ed6b2f5604a426ac578983b·...·]-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="9677718697-1">(</span><span·class="p"·data-group-id="9677718697-2">[</span><span·class="p"·data-group-id="9677718697-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:·368,·SHA:·ff94638643189c5fc55283657690145dad00a625658fb2612991c50d32e065fa·...·]7-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="3259089357-1">(</span><span·class="p"·data-group-id="3259089357-2">[</span><span·class="p"·data-group-id="3259089357-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:·368,·SHA:·96df6e95567eb09978c23e0125aaf6e01cdadde75a32bf05716370adef190bdc·...·]7-1">)</span><span·class="p">.</span><span·class="w">
618 </span><span·class="p"·data-group-id="9677718697-5">[</span><span·class="p"·data-group-id="9677718697-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9677718697-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·190,·SHA:·93f92ae45ec69eb76cf46b6499062e23a00cc9de73a9618c944c4f5b6842f4a9·...·]7-5">]</span><span·class="gp·unselectable">618 </span><span·class="p"·data-group-id="3259089357-5">[</span><span·class="p"·data-group-id="3259089357-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="3259089357-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·190,·SHA:·d3207d6863ad8caa2041ab17f4eb694e55392a836d74957654554634b8cc1a19·...·]7-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="9677718697-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="9677718697-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="3259089357-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="3259089357-8">)</span><span·class="p">.</span><span·class="w">
620 </span><span·class="p"·data-group-id="9677718697-9">[</span><span·class="p"·data-group-id="9677718697-10">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="9677718697-10">}</span><span·class="p"·data-group-id="9677718697-9">]</span></code></pre>620 </span><span·class="p"·data-group-id="3259089357-9">[</span><span·class="p"·data-group-id="3259089357-10">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3259089357-10">}</span><span·class="p"·data-group-id="3259089357-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="9382901542-1">(</span><span·class="p"·data-group-id="9382901542-2">[</span><span·class="p"·data-group-id="9382901542-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:·e9d1b4e4fa0c064efc56c0701ea573fc5a7363a72ffbefc33838595094084d9c·...·]-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="1892467071-1">(</span><span·class="p"·data-group-id="1892467071-2">[</span><span·class="p"·data-group-id="1892467071-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:·97ec221addb0174cd92cd79e211f1f1d980233eb5c3e831799a4eedd937d45ba·...·]-1">)</span><span·class="p">.</span><span·class="w">
651 </span><span·class="p"·data-group-id="9382901542-5">[</span><span·class="p"·data-group-id="9382901542-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9382901542-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·191,·SHA:·968d845bf2a669cf0140e2d19d5c77d75d6bd2c95a57c121d01eed1f7c7db8ab·...·]-5">]</span><span·class="gp·unselectable">651 </span><span·class="p"·data-group-id="1892467071-5">[</span><span·class="p"·data-group-id="1892467071-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="1892467071-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·191,·SHA:·a7d0de226b4d3d4849f46a7dd78495efe3140efb1078c355a6379cb955fe174d·...·]-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="9382901542-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="9382901542-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="1892467071-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="1892467071-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="9382901542-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="9382901542-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="1892467071-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="1892467071-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="1672702137-1">(</span><span·class="p"·data-group-id="1672702137-2">[</span><span·class="p"·data-group-id="1672702137-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:·8ac423e9a4a9f4a6e3a71718f49caf18ecc863e32d8b739545829471b02110f1·...·]-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="0663602216-1">(</span><span·class="p"·data-group-id="0663602216-2">[</span><span·class="p"·data-group-id="0663602216-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:·78c219459b0acbdd4419b27a1d8dc85fe6b59e6c2c5ce0a8aff1d9ddd3a69b06·...·]-1">)</span><span·class="p">.</span><span·class="w">
683 </span><span·class="p"·data-group-id="1672702137-5">[</span><span·class="p"·data-group-id="1672702137-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="1672702137-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·191,·SHA:·0457716047a20e3ffcac9779b8bcf16a7b0ac263460118fba36c990e05eb8119·...·]-5">]</span><span·class="gp·unselectable">683 </span><span·class="p"·data-group-id="0663602216-5">[</span><span·class="p"·data-group-id="0663602216-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="0663602216-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·191,·SHA:·32c0d866ca3e08a78d489ebcb6aa52c5cb90530126e083898e5808cd3d3364a3·...·]-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="1672702137-8">(</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="1672702137-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="0663602216-8">(</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="0663602216-8">)</span><span·class="p">.</span><span·class="w">
685 </span><span·class="p"·data-group-id="1672702137-9">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="1672702137-9">]</span></code></pre>685 </span><span·class="p"·data-group-id="0663602216-9">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="0663602216-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>
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1093 <p>Copyright·©·1996-2024·<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="3089657161-1">(</span><span·class="ss">my_SUITE</span><span·class="p"·data-group-id="3089657161-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="8891801716-1">(</span><span·class="ss">my_SUITE</span><span·class="p"·data-group-id="8891801716-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="3089657161-2">(</span><span·class="ss">ct_suite</span><span·class="p"·data-group-id="3089657161-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="8891801716-2">(</span><span·class="ss">ct_suite</span><span·class="p"·data-group-id="8891801716-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="3089657161-3">(</span><span·class="p"·data-group-id="3089657161-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:·cb106d6684d579c413dead23d15ad16a1b6870d0c9ae7be17ea609cd5ca7f6e3·...·]-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="8891801716-3">(</span><span·class="p"·data-group-id="8891801716-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:·85d182bbae74d634e26d9e2fff7514eda4db04755f348fd3712b576a9967a82a·...·]-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="3089657161-5">(</span><span·class="p"·data-group-id="3089657161-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:·7b76552068e326aa615abe3109c20acd7a8c64f7671e6ffcb2b4d664b568272d·...·]-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="8891801716-5">(</span><span·class="p"·data-group-id="8891801716-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:·e80e94effdd824b95350cf73a8d17ad6c6aba33d72b80d95a373ec1884e6b008·...·]-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="3089657161-7">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="3089657161-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="8891801716-7">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="8891801716-7">)</span><span·class="p">.</span><span·class="w">
  
170 </span><span·class="nf">groups</span><span·class="p"·data-group-id="3089657161-8">(</span><span·class="p"·data-group-id="3089657161-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="8891801716-8">(</span><span·class="p"·data-group-id="8891801716-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
171 ····</span><span·class="p"·data-group-id="3089657161-9">[</span><span·class="p"·data-group-id="3089657161-10">{</span><span·class="ss">quick</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3089657161-11">[</span><span·class="ss">parallel</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·6ffc4d5cd80b3542748cc009ed915993c0a5a07057adfbcbe05fa11cbf38775a·...·]-11">]</span><span·class="p">,</span><span·class="w">171 ····</span><span·class="p"·data-group-id="8891801716-9">[</span><span·class="p"·data-group-id="8891801716-10">{</span><span·class="ss">quick</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8891801716-11">[</span><span·class="ss">parallel</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·a33cb5741be4927e666dd85a9d6d84c2b700714406618ccf41d7784d4505cdc6·...·]-11">]</span><span·class="p">,</span><span·class="w">
172 ········</span><span·class="p"·data-group-id="3089657161-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:·534c89b9dba33fbd23204033907b8e3244d414604db644f137f2ce6d4b0b0c11·...·]-9">]</span><span·class="p">.</span><span·class="w">172 ········</span><span·class="p"·data-group-id="8891801716-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:·fd525d6e8f04bb0834883a5ae7965ba190ce6205e1c158b1803018f8860cb541·...·]-9">]</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">all</span><span·class="p"·data-group-id="3089657161-13">(</span><span·class="p"·data-group-id="3089657161-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="8891801716-13">(</span><span·class="p"·data-group-id="8891801716-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ····</span><span·class="p"·data-group-id="3089657161-14">[</span><span·class="p"·data-group-id="3089657161-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="3089657161-15">}</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·1aacf89577cabc1be6aefab1426f2f611cd6a96aebb19b6f576dd8e93e136cdf·...·]-14">]</span><span·class="p">.</span><span·class="w">174 ····</span><span·class="p"·data-group-id="8891801716-14">[</span><span·class="p"·data-group-id="8891801716-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="8891801716-15">}</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·79e8e5c9fe347c30d82459503c429c2c581190f8ea458a43479cbe3c14ecac2c·...·]-14">]</span><span·class="p">.</span><span·class="w">
  
175 </span><span·class="nf">basic</span><span·class="p"·data-group-id="3089657161-16">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3089657161-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="3089657161-17[·...·truncated·by·diffoscope;·len:·80,·SHA:·db6d179fa3d55a719cc072c94573fff08f652d06ba731599a17966565cb007de·...·]-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="8891801716-16">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8891801716-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="8891801716-17[·...·truncated·by·diffoscope;·len:·80,·SHA:·44f6f72e17c371e7ab56697f5894c8fb8ef4a75db614551061dd3ee4b897d852·...·]-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
176 ····</span><span·class="p"·data-group-id="3089657161-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="30[·...·truncated·by·diffoscope;·len:·242,·SHA:·220a7441b7b6cf601a086328db29d4dbf9d44c02515c3141dea8f2f42db96608·...·]-19">)</span><span·class="p">,</span><span·class="w">176 ····</span><span·class="p"·data-group-id="8891801716-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="88[·...·truncated·by·diffoscope;·len:·242,·SHA:·f28fb87409e4f62bf14be754f60be87e896a5c26a7ad501e1cdaac322364b508·...·]-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="3089657161-20">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="3089657161-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="8891801716-20">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="8891801716-20">)</span><span·class="p">.</span><span·class="w">
  
178 </span><span·class="nf">args</span><span·class="p"·data-group-id="3089657161-21">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3089657161-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="3089657161-22[·...·truncated·by·diffoscope;·len:·80,·SHA:·db6d179fa3d55a719cc072c94573fff08f652d06ba731599a17966565cb007de·...·]-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="8891801716-21">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8891801716-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="8891801716-22[·...·truncated·by·diffoscope;·len:·80,·SHA:·44f6f72e17c371e7ab56697f5894c8fb8ef4a75db614551061dd3ee4b897d852·...·]-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="3089657161-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="30[·...·truncated·by·diffoscope;·len:·482,·SHA:·0f00c5da413020a423e2dab6b75c3e156f65f7abbadcfd51915aae6004e9a7a0·...·]-24">)</span><span·class="p">,</span><span·class="w">180 ····</span><span·class="p"·data-group-id="8891801716-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="88[·...·truncated·by·diffoscope;·len:·482,·SHA:·a64a739c71922a8026cd0c0f3eab069121b9cf9798dcac94bc37de7fb9786e17·...·]-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="3089657161-26">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="3089657161-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="8891801716-26">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="8891801716-26">)</span><span·class="p">.</span><span·class="w">
  
182 </span><span·class="nf">named</span><span·class="p"·data-group-id="3089657161-27">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3089657161-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="3089657161-28[·...·truncated·by·diffoscope;·len:·80,·SHA:·db6d179fa3d55a719cc072c94573fff08f652d06ba731599a17966565cb007de·...·]-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="8891801716-27">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8891801716-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="8891801716-28[·...·truncated·by·diffoscope;·len:·80,·SHA:·44f6f72e17c371e7ab56697f5894c8fb8ef4a75db614551061dd3ee4b897d852·...·]-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="3089657161-29">(</span><span·class="ss">named_test</span><span·class="p"·data-group-id="3089657161-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="8891801716-29">(</span><span·class="ss">named_test</span><span·class="p"·data-group-id="8891801716-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="3089657161-30">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="3089657161-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="8891801716-30">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="8891801716-30">)</span><span·class="p">.</span><span·class="w">
  
186 </span><span·class="nf">start_node_impl</span><span·class="p"·data-group-id="3089657161-31">(</span><span·class="n">ActualTestCase</span><span·class="p"·data-group-id="3089657161-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="8891801716-31">(</span><span·class="n">ActualTestCase</span><span·class="p"·data-group-id="8891801716-31">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
187 ····</span><span·class="p"·data-group-id="3089657161-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="3089657161-32">}</span><sp[·...·truncated·by·diffoscope;·len:·635,·SHA:·fb42d39b6275b33421a128ddce28648dd4a7fc07606559d0e40544e1d8cffd69·...·]-33">)</span><span·class="p">,</span><span·class="w">187 ····</span><span·class="p"·data-group-id="8891801716-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="8891801716-32">}</span><sp[·...·truncated·by·diffoscope;·len:·635,·SHA:·89711d0782a07aa536771e44f52e69a37fe02f50b7ff895da26d60560e4e4927·...·]-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="3089657161-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:·9a6b9ee50b1ca3fa9c56aa93c0415589adf53e015fc6d39ebe29fc8a7557e4fa·...·]-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="8891801716-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:·53b38d7a504a476b714b0c32b46dc55f852c8d75801705e0d3e8cd2ea5e628b9·...·]-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="3089657161-38">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3089657161-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="3089657161-39[·...·truncated·by·diffoscope;·len:·80,·SHA:·db6d179fa3d55a719cc072c94573fff08f652d06ba731599a17966565cb007de·...·]-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="8891801716-38">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8891801716-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="8891801716-39[·...·truncated·by·diffoscope;·len:·80,·SHA:·44f6f72e17c371e7ab56697f5894c8fb8ef4a75db614551061dd3ee4b897d852·...·]-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="3089657161-40">(</span><span·class="p"·data-group-id="3089657161-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="8891801716-40">(</span><span·class="p"·data-group-id="8891801716-40">)</span><span·class="p">,</span><span·class="w">
193 ····</span><span·class="p"·data-group-id="3089657161-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="3089657161-41">}</span><sp[·...·truncated·by·diffoscope;·len:·458,·SHA:·04187528b0ee539c72f1ed6038108e49d46e4f163a0badd1c7b5be62f4d1a4db·...·]-42">)</span><span·class="p">,</span><span·class="w">193 ····</span><span·class="p"·data-group-id="8891801716-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="8891801716-41">}</span><sp[·...·truncated·by·diffoscope;·len:·458,·SHA:·f15bf0735f5f0b91b5cecb94b710cdb8f7840bf2a7ddcb47ece9269fd6bf51e5·...·]-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="3089657161-44">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="3089657161-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="8891801716-44">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="8891801716-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="3089657161-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="3089657161-45">}</span><s[·...·truncated·by·diffoscope;·len:·758,·SHA:·0fc92f8affe9f70b01d4c065270789e96b13e3ba6145ff361ed560c83095250f·...·]-46">)</span><span·class="p">,</span><span·class="w">196 ····</span><span·class="p"·data-group-id="8891801716-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="8891801716-45">}</span><s[·...·truncated·by·diffoscope;·len:·758,·SHA:·780170accf89ba111bf71eac6afd2006f4c53543da0cee6cbb9fcfb4f7dda012·...·]-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="3089657161-49">(</span><span·class="n">Peer2</span><span·class="p"·data-group-id="3089657161-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="2686719568-1">(</span><span·class="n">Config</span><span·class="p"·data-group-id="2686719568-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="2686719568-2">(</span><span·class="n">Config</span><span·class="p"·data-group-id="2686719568-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="2686719568-3">[</span><span·class="o">?</span><span·class="n">CT_PEER</span><span·class="p"·data-group-id="2686719568-4">(</span><span·clas[·...·truncated·by·diffoscope;·len:·567,·SHA:·41494f632d66a48454d4375b12cee522d5ec2edd036fbc10442bc1be63a048c3·...·]</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="8891801716-49">(</span><span·class="n">Peer2</span><span·class="p"·data-group-id="8891801716-49">)</span><span·class="p">.</span></code></pre><p>The·next·examp[·...·truncated·by·diffoscope;·len:·564,·SHA:·ce84947db3def43f89e22e4a22e02702cdc5ba241e49cc490868b0921d9ef6a2·...·]</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="1292361119-3">[</span><span·class="o">?</span><span·class="n">CT_PEER</span><span·class="p"·data-group-id="1292361119-4">(</span><span·class="p"·data-group-id="1292361119-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="1292361119-6">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1292361119-7">(</span><span·class="p"·data-group-id="1292361119-7">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tag</span><span·class="p"·data-group-id="1292361119-6">}</span><span·class="p"·data-group-id="1292361119-5">}</span><span·class="p"·data-group-id="1292361119-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="2686719568-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="2686719568-8">)</span><span·class="p"·data-group-id="2686719568-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="1292361119-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="1292361119-8">)</span><span·class="p"·data-group-id="1292361119-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="2686719568-9">[</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="2686719568-10">{</span><span·class="ss">tag</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2686719568-11">{</sp[·...·truncated·by·diffoscope;·len:·279,·SHA:·60de5ce7d7537c72d769c6ecb6dbfec0828013d5572f2e42aadbd4dd6bbdfb25·...·]-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="1292361119-9">[</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="1292361119-10">{</span><span·class="ss">tag</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1292361119-11">{</sp[·...·truncated·by·diffoscope;·len:·279,·SHA:·13cd3245676e8735742141d6292306ffbadee5e5f61ce4d7d94884e8b931f97f·...·]-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="2686719568-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="2686719568-12">}</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·67,·SHA:·8f5da41260b5234e7b52cc5d059f21eebfb7640c55443ad9363fe1342aa3d89f·...·]-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="1292361119-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="1292361119-12">}</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·67,·SHA:·10299e2fe056c31e946fe7c3336b2deab45dad9d45b8f3e6d1ad351ac453ded1·...·]-9">]</span><span·class="p">,</span><span·class="w">
203 ····</span><span·class="p"·data-group-id="2686719568-13">[</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="2686719568-14">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="2686719568-14">)</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·409,·SHA:·3ac72f3baf9d6e004dc4277c05a5ef1258760899d3718763c5d2d728e44bc3ce·...·]-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="1292361119-13">[</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="1292361119-14">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="1292361119-14">)</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·409,·SHA:·c128a8faa450543901b5fd33f0719a50d03da73aee7404a9feb48c979e8787f5·...·]-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="7291902323-1">(</span><span·class="s">&quot;ssh&quot;</span><span·class="p"·data-group-id="7291902323-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="3698162066-1">(</span><span·class="s">&quot;ssh&quot;</span><span·class="p"·data-group-id="3698162066-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="7291902323-2">(</span><span·class="p"·data-group-id="7291902323-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="7291902323-4">{</span><span·class="n">Ssh</sp[·...·truncated·by·diffoscope;·len:·331,·SHA:·a5e915051b6ad27f62dcd1a45bc6e21a86f61a0eeacc23d52795544384aab7a0·...·]-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="3698162066-2">(</span><span·class="p"·data-group-id="3698162066-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="3698162066-4">{</span><span·class="n">Ssh</sp[·...·truncated·by·diffoscope;·len:·331,·SHA:·61d845eb2676cf97c433e3dc1b962db93d300e4305ff41920bbb52bfd37ab398·...·]-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="7291902323-3">}</span><span·class="p"·data-group-id="7291902323-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="3698162066-3">}</span><span·class="p"·data-group-id="3698162066-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="6444249421-1">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6444249421-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="6444249421-2">([·...·truncated·by·diffoscope;·len:·77,·SHA:·ccd466a6257641bc45b8b1a7e6c3e6a6cd2614e377663bb30c217a90a5db2a97·...·]-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="8589918239-1">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8589918239-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="8589918239-2">([·...·truncated·by·diffoscope;·len:·77,·SHA:·17f689fd41422a766dfd4d9ae62ea31fcd23b782370350baed52c77bc0cf44a4·...·]-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="6444249421-3">(</span><span·class="s">&quot;docker&quot;</span><span·class="p"·data-group-id="6444249421-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="8589918239-3">(</span><span·class="s">&quot;docker&quot;</span><span·class="p"·data-group-id="8589918239-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="6444249421-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="6444249421-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="8589918239-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="8589918239-4">)</span><span·class="p">,</span><span·class="w">
211 ····</span><span·class="nf">build_release</span><span·class="p"·data-group-id="6444249421-5">(</span><span·class="n">PrivDir</span><span·class="p"·data-group-id="6444249421-5">)</span><span·class="p">,</span><span·class="w">211 ····</span><span·class="nf">build_release</span><span·class="p"·data-group-id="8589918239-5">(</span><span·class="n">PrivDir</span><span·class="p"·data-group-id="8589918239-5">)</span><span·class="p">,</span><span·class="w">
212 ····</span><span·class="nf">build_image</span><span·class="p"·data-group-id="6444249421-6">(</span><span·class="n">PrivDir</span><span·class="p"·data-group-id="6444249421-6">)</span><span·class="p">,</span><span·class="w">212 ····</span><span·class="nf">build_image</span><span·class="p"·data-group-id="8589918239-6">(</span><span·class="n">PrivDir</span><span·class="p"·data-group-id="8589918239-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="6444249421-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="6444249421-7">}</span><span[·...·truncated·by·diffoscope;·len:·247,·SHA:·d9a6f5e7d178c063b396d02f4dd029097f801e542dab467ce1c8f3b910326d05·...·]-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="8589918239-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="8589918239-7">}</span><span[·...·truncated·by·diffoscope;·len:·247,·SHA:·ff2d3ccfbfb682e512b24ceb2f2d89c1e8287c2ce7a127ad3e1a990416192566·...·]-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="6444249421-10">{</span><span·class="n">Docker</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6444249421-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:·24804b53593bffc96b9a9d04ccf82c01908eac5f0aec20ed13b666632431951d·...·]-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="8589918239-10">{</span><span·class="n">Docker</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8589918239-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:·f3585ccbd2c026a4d2980258224a25ed449471e03a3ea6790acead50f6f99847·...·]-8">)</span><span·class="p">,</span><span·class="w">
217 ····</span><span·class="p"·data-group-id="6444249421-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="6444249421-12">}</span><[·...·truncated·by·diffoscope;·len:·252,·SHA:·81da1e4351e654dfbf18c1f1072d67834881f1555aa35fe13badc021908cc6ab·...·]-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="8589918239-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="8589918239-12">}</span><[·...·truncated·by·diffoscope;·len:·252,·SHA:·cf58bfed59c45452ccd58cf8ceace1a62c8c3eb1e9b812136773b2f114c07510·...·]-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="6444249421-15">{</span><span·class="n">Docker</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6444249421-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:·3409ad83914f162a1dd71a2d7e61732c293eddcaa160e5e0e8a8991cce0b8079·...·]-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="8589918239-15">{</span><span·class="n">Docker</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8589918239-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:·343f3849043fd6efdb152307f5c9f7c1ae6bb8d80e74a522b4e03f9400a599dc·...·]-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="6444249421-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="6444249421-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·510,·SHA:·d670a363147c9fd5bea49a33a678b34dd299b8553528cc0d4377e5bdca5c35ff·...·]-18">)</span><span·class="p">,</span><span·class="w">221 ····</span><span·class="p"·data-group-id="8589918239-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="8589918239-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·510,·SHA:·f8425ba0948f1471f14e6ffce41581be9e3a88857df88ca561a935d223549599·...·]-18">)</span><span·class="p">,</span><span·class="w">
222 ····</span><span·class="p"·data-group-id="6444249421-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="6444249421-20">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·372,·SHA:·095e78b5b1884d0b1b51559d6a07408c976efffb0c0573ef58065aa918d6c249·...·]-21">)</span><span·class="p">,</span><span·class="w">222 ····</span><span·class="p"·data-group-id="8589918239-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="8589918239-20">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·372,·SHA:·af891e9f6839d36bd1e27958b9d90fa2b4f7d178457194e1c7e0506382689280·...·]-21">)</span><span·class="p">,</span><span·class="w">
223 ····</span><span·class="p"·data-group-id="6444249421-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="6444249421-22">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·349,·SHA:·0bc52c1d2640df295b14da869dfdff9f45842045d767b10760e422670ae15adf·...·]-23">)</span><span·class="p">,</span><span·class="w">223 ····</span><span·class="p"·data-group-id="8589918239-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="8589918239-22">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·349,·SHA:·d39f0b80d5da82f9bfb602fc9efe03c887b38fadcf29a96d5f436bab1ffe54c4·...·]-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="6444249421-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:·b3612729bdbf6f7d93a5dd94055596c8c30b885be81841cc2c31d443a1f3b3bb·...·]-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="8589918239-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:·d74482e52e11f042b072cb22df62369e3c91c40518d0e8276c47ac87e7366897·...·]-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="6444249421-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:·ff5cca2bbbc3afdf6dbc5d198134b1449cbc1d3213722279b4bf8c7242325912·...·]-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="8589918239-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:·834e3dd0cfae93ac48834bc88ce551172e11ba7f40e147f8ea3962f0d126ac51·...·]-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="6444249421-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:·cd6629dcbfd13abe13dae608cbdd9edfaeb1ff54af341f54e8373d3167027909·...·]-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="8589918239-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:·1b2aadb39c63b6a3350307919c3233680a10f44e30830f6dd438190827a5ed8d·...·]-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="6444249421-32">[</span><span·class="n">Node</span><span·class="p"·data-group-id="6444249421-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:·646a1a61f80309c35426a06191ccae69fb4b86ccac9ec25aaf097bffbe4adbdf·...·]-33">)</span><span·class="p">,</span><span·class="w">230 ····</span><span·class="p"·data-group-id="8589918239-32">[</span><span·class="n">Node</span><span·class="p"·data-group-id="8589918239-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:·8b83b0d71f8a7309a56d67600dad8ab541fdfb4cd47001c01c656eafc815ed14·...·]-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="6444249421-35">(</span><span·class="n">Peer2</span><span·class="p"·data-group-id="6444249421-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="8589918239-35">(</span><span·class="n">Peer2</span><span·class="p"·data-group-id="8589918239-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="6444249421-36">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="6444249421-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="8589918239-36">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="8589918239-36">)</span><span·class="p">.</span><span·class="w">
  
234 </span><span·class="nf">build_release</span><span·class="p"·data-group-id="6444249421-37">(</span><span·class="n">Dir</span><span·class="p"·data-group-id="6444249421-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="8589918239-37">(</span><span·class="n">Dir</span><span·class="p"·data-group-id="8589918239-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="6444249421-38">(</span><span·class="ss">sasl</span><span·class="p"·data-group-id="6444249421-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="8589918239-38">(</span><span·class="ss">sasl</span><span·class="p"·data-group-id="8589918239-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="6444249421-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="6444249421-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="8589918239-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="8589918239-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="6444249421-40">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6444249421-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:·b9dc3bb3d7b3fac47267ffe9db8aaec7d276e33f3587b850a244ec1e1838a9a9·...·]-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="8589918239-40">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8589918239-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:·e8acbcb16cbbee582e1f419acf2e3f4fa5e5202e401dca2234509d829f77c039·...·]-41">}</span><span·class="p">,</span><span·class="w">
240 ········</span><span·class="p"·data-group-id="6444249421-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="6444249421-43">(</span><span·class="s[·...·truncated·by·diffoscope;·len:·112,·SHA:·d8addcdc916a6e558ed5dec8428d2d016ff2c4bf46800bfb1a3d904376713f4f·...·]-42">}</span><span·class="p">,</span><span·class="w">240 ········</span><span·class="p"·data-group-id="8589918239-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="8589918239-43">(</span><span·class="s[·...·truncated·by·diffoscope;·len:·112,·SHA:·01b5f9e9ffe8bafd4b0327aa3c4cba166b8acdad595524f15291ac40f557abfb·...·]-42">}</span><span·class="p">,</span><span·class="w">
241 ········</span><span·class="p"·data-group-id="6444249421-44">[</span><span·class="p"·data-group-id="6444249421-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="6444249421-46">{</span[·...·truncated·by·diffoscope;·len:·691,·SHA:·11cab87a6407db9d5180bd61fe3853a375de0a075a34e74b34474141a0bf73ec·...·]-45">}</span><span·class="w">241 ········</span><span·class="p"·data-group-id="8589918239-44">[</span><span·class="p"·data-group-id="8589918239-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="8589918239-46">{</span[·...·truncated·by·diffoscope;·len:·691,·SHA:·eab07a8480c8f5e2b6453df318e8f9883b9878f4c100bc231686ff30e776f7f0·...·]-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="6444249421-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="6444249421-48">]</[·...·truncated·by·diffoscope;·len:·100,·SHA:·c4e379880461c087d715fbe5d0cf3d08c5b104796f3d6ed890703e5be95a350e·...·]-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="8589918239-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="8589918239-48">]</[·...·truncated·by·diffoscope;·len:·100,·SHA:·0202b671563e95f0075d1aedab1744a1efff7da44bff17eacd03f64ef6afc8e5·...·]-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="6444249421-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="6444249421-50">(</span><span·class="nc">lists</span><span·class="p">:</span><span·clas[·...·truncated·by·diffoscope;·len:·62,·SHA:·cc1554256a9f965171fb8396120cfd2cf5a6ab66a724bcf8b760d1de14d31078·...·]-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="8589918239-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="8589918239-50">(</span><span·class="nc">lists</span><span·class="p">:</span><span·clas[·...·truncated·by·diffoscope;·len:·62,·SHA:·dece11a008b5eb798fd4ae6aa45727183355877ef4d15b0f88beb866a4e40e32·...·]-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="6444249421-52">(</span><span·class="s">&quot;~tp.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6444249421-53">[</span><span·class="n">Release</span><span·class="p"·data-group-id="6444249421-53">]</span><span·cl[·...·truncated·by·diffoscope;·len:·195,·SHA:·c80036a3668959a60799b0d6d3bc010e8d631ba8d4b77b3344a5c00b36402155·...·]-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="8589918239-52">(</span><span·class="s">&quot;~tp.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8589918239-53">[</span><span·class="n">Release</span><span·class="p"·data-group-id="8589918239-53">]</span><span·cl[·...·truncated·by·diffoscope;·len:·195,·SHA:·f146f21326d37371f486964515d03fa568c4bdc3d9b69997f59264810ed3653c·...·]-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="6444249421-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="6444249421-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="8589918239-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="8589918239-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="6444249421-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="6444249421-56">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·292,·SHA:·e07617fe555767498983843259f7a97310144986da6fcf59665e059f33ddcbb3·...·]-57">(</span><span·class="n">RelFileNoExt</span><span·class="p">,</span><span·class="w">247 ····</span><span·class="p"·data-group-id="8589918239-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="8589918239-56">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·292,·SHA:·5458fc27ebe83ed3831376883e4f96578572893fa60d7f740b4a34d4d84551ed·...·]-57">(</span><span·class="n">RelFileNoExt</span><span·class="p">,</span><span·class="w">
248 ········</span><span·class="p"·data-group-id="6444249421-58">[</span><span·class="ss">silent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6444249421-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:·266509acfc26908dc0d5bb4c0ab033b1b2f300a218443aefd56cb46558423662·...·]-57">)</span><span·class="p">,</span><span·class="w">248 ········</span><span·class="p"·data-group-id="8589918239-58">[</span><span·class="ss">silent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8589918239-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:·930994089c85358e80ad69c4044719c63dbfd0d154a5347c20f5827a6928e0d2·...·]-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="6444249421-60">(</span><span·class="n">RelFileNoExt</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6444249421-61">[</span><span·class="p"·data-group-id="6444249421-62">{</span><span·class="ss">erts</span><span·class="p[·...·truncated·by·diffoscope;·len:·375,·SHA:·f7cfec0d7d0eafef91a6828312463df944237b3326b5f815b6f33f06345e4d74·...·]-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="8589918239-60">(</span><span·class="n">RelFileNoExt</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8589918239-61">[</span><span·class="p"·data-group-id="8589918239-62">{</span><span·class="ss">erts</span><span·class="p[·...·truncated·by·diffoscope;·len:·375,·SHA:·3a0cdb0931f15c2ff7115b38a202112ca6b3591e2c58b90e73f96513ba0c3499·...·]-60">)</span><span·class="p">.</span><span·class="w">
  
251 </span><span·class="nf">build_image</span><span·class="p"·data-group-id="6444249421-64">(</span><span·class="n">Dir</span><span·class="p"·data-group-id="6444249421-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="8589918239-64">(</span><span·class="n">Dir</span><span·class="p"·data-group-id="8589918239-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="6444249421-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="6444249421-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="8589918239-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="8589918239-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="6444249421-66">(</span><span·class="ss">version</span><span·class="p"·data-group-id="6444249421-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="8589918239-66">(</span><span·class="ss">version</span><span·class="p"·data-group-id="8589918239-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>516 <p>Copyright·©·1996-2024·<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="1077895235-1">(</span><span·class="ss">my_proc</span><span·class="p"·data-group-id="1077895235-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="0665713177-1">(</span><span·class="ss">my_proc</span><span·class="p"·data-group-id="0665713177-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="1077895235-2">(</span><span·class="p"·data-group-id="1077895235-3">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1077895235-3">]</span><span·class="p"·data-group-id="1077895235-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="0665713177-2">(</span><span·class="p"·data-group-id="0665713177-3">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0665713177-3">]</span><span·class="p"·data-group-id="0665713177-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="1077895235-4">(</span><span·class="p"·data-group-id="1077895235-5">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="1077895235-5">]</span><span·class="p"·data-group-id="1077895235-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="0665713177-4">(</span><span·class="p"·data-group-id="0665713177-5">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="0665713177-5">]</span><span·class="p"·data-group-id="0665713177-4">)</span><span·class="p">.</span><span·class="w">
  
1001 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="1077895235-6">(</span><span·class="p"·data-group-id="1077895235-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="0665713177-6">(</span><span·class="p"·data-group-id="0665713177-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="1077895235-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="1077895235-8">[</span><span·class="nf">self</spa[·...·truncated·by·diffoscope;·len:·202,·SHA:·cb927d11a399380c817fd78aa26be5907f491b001c82ddbabc75335b7e56a01f·...·]-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="0665713177-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="0665713177-8">[</span><span·class="nf">self</spa[·...·truncated·by·diffoscope;·len:·202,·SHA:·eb1d2c6481289d1ac551bc1181913a6a51d1aa7bbdd05475fa67846636998523·...·]-7">)</span><span·class="p">.</span><span·class="w">
  
1003 </span><span·class="nf">init</span><span·class="p"·data-group-id="1077895235-10">(</span><span·class="n">Parent</span><span·class="p"·data-group-id="1077895235-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="0665713177-10">(</span><span·class="n">Parent</span><span·class="p"·data-group-id="0665713177-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="1077895235-11">(</span><span·class="p"·data-group-id="1077895235-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="0665713177-11">(</span><span·class="p"·data-group-id="0665713177-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="1077895235-12">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1077895235-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:·628e52c0e8f40092bf3b5917cb9a90e01e1a15b0c5379c436e927d5873b08a3f·...·]-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="0665713177-12">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0665713177-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:·70a844b9160d72353a6a7c02ae84c3afa06a892b37c555490b2f8d869ca228ab·...·]-12">)</span><span·class="p">;</span><span·class="w">
1007 ········</span><span·class="p"·data-group-id="1077895235-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="1077895235-15">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1007 ········</span><span·class="p"·data-group-id="0665713177-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="0665713177-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="1077895235-16">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="1077895235-16">)</span><span·class="w">1008 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="0665713177-16">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="0665713177-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="1077895235-17">(</span><span·class="p"·data-group-id="1077895235-17">)</span><span·class="p">.</span><span·class="w">1010 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="0665713177-17">(</span><span·class="p"·data-group-id="0665713177-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="9673286174-1">(</span><span·class="ss">my_proc</span><span·class="p"·data-group-id="9673286174-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="7046664456-1">(</span><span·class="ss">my_proc</span><span·class="p"·data-group-id="7046664456-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="9673286174-2">(</span><span·class="p"·data-group-id="9673286174-3">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="9673286174-3">]</span><span·class="p"·data-group-id="9673286174-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="9673286174-4">(</span><span·class="p"·data-group-id="9673286174-5">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="9673286174-5">]</span><span·class="p"·data-group-id="9673286174-4">)</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="7046664456-2">(</span><span·class="p"·data-group-id="7046664456-3">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7046664456-3">]</span><span·class="p"·data-group-id="7046664456-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="7046664456-4">(</span><span·class="p"·data-group-id="7046664456-5">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="7046664456-5">]</span><span·class="p"·data-group-id="7046664456-4">)</span><span·class="p">.</span><span·class="w">
  
1088 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="9673286174-6">(</span><span·class="p"·data-group-id="9673286174-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="7046664456-6">(</span><span·class="p"·data-group-id="7046664456-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="9673286174-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="9673286174-8">[</span><span·class="nf">self</spa[·...·truncated·by·diffoscope;·len:·202,·SHA:·823c7b9ef48936654383319195f325eacd5b5401fe6bff3fa02ac4ed31763fc6·...·]-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="7046664456-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="7046664456-8">[</span><span·class="nf">self</spa[·...·truncated·by·diffoscope;·len:·202,·SHA:·dd1598356d52bfc705886c09fbbb379976a22789e16e36cb1099af15ebdff6bf·...·]-7">)</span><span·class="p">.</span><span·class="w">
  
1090 </span><span·class="nf">init</span><span·class="p"·data-group-id="9673286174-10">(</span><span·class="n">Parent</span><span·class="p"·data-group-id="9673286174-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="7046664456-10">(</span><span·class="n">Parent</span><span·class="p"·data-group-id="7046664456-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="9673286174-11">(</span><span·class="p"·data-group-id="9673286174-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="7046664456-11">(</span><span·class="p"·data-group-id="7046664456-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="9673286174-12">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9673286174-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:·20939a7b105bcdd933dd77bf7c864a584a8ff2b030b4126ab8a2090f15713cb6·...·]-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="7046664456-12">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7046664456-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:·24b783da809d662f943a798470d63655099c5b5e43c0fb7fa5c10192eb8df8f2·...·]-12">)</span><span·class="p">;</span><span·class="w">
1094 ········</span><span·class="p"·data-group-id="9673286174-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="9673286174-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="7046664456-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="7046664456-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="9673286174-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="9673286174-17">{</span><span·class="nb">exit</spa[·...·truncated·by·diffoscope;·len:·175,·SHA:·6944bbf45757dfcaff64fc04fe84eedf91dcf1202307b70741f83ce0327f5c81·...·]-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="7046664456-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="7046664456-17">{</span><span·class="nb">exit</spa[·...·truncated·by·diffoscope;·len:·175,·SHA:·f55946e1d7e34ac0165ecdd667e99a8b70503d4bd76e96e9435c29673fa72940·...·]-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="9673286174-18">(</span><span·class="p"·data-group-id="9673286174-18">)</span><span·class="p">.</span><span·class="w">1097 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="7046664456-18">(</span><span·class="p"·data-group-id="7046664456-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2031 <p>Copyright·©·1996-2024·<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="3320822817-1">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3320822817-2">[</span><span·class="p"·data-group-id="3320822817-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·1837,·SHA:·e3f3de4808285aa6f7b94256dde42c03b7fdd238e4f24895094f1ce173c12ee5·...·]-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="7474852153-1">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7474852153-2">[</span><span·class="p"·data-group-id="7474852153-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·1837,·SHA:·1988a4792520d592b566194f6f1ab5c4dfd55f4f419755a5e3fa0b1e734d92f1·...·]-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="6506701043-1">(</span><span·class="p"·data-group-id="6506701043-2">[</span><span·class="p"·data-group-id="6506701043-3">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6506701043-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="6506701043-4">]</span><span·class="p"·data-group-id="6506701043-3">}</span><span·class="p"·data-group-id="6506701043-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6506701043-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="6506701043-5">]</span><span·class="p"·data-group-id="6506701043-1">)</span><span·class="w"> 
629 </span><span·class="nf">expand</span><span·class="p"·data-group-id="6506701043-6">(</span><span·class="p"·data-group-id="6506701043-7">[</span><span·class="p"·data-group-id="6506701043-8">{</span><span·class="p"·data-group-id="6506701043-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="6506701043-9">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6506701043-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="6506701043-10">]</span><span·class="p"·data-group-id="6506701043-8">}</span><span·class="p"·data-group-id="6506701043-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6506701043-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="6506701043-11">]</span><span·class="p"·data-group-id="6506701043-6">)</span><span·class="w"> 
630 </span><span·class="nf">expand</span><span·class="p"·data-group-id="6506701043-12">(</span><span·class="p"·data-group-id="6506701043-13">[</span><span·class="p"·data-group-id="6506701043-14">{</span><span·class="p"·data-group-id="6506701043-15">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="6506701043-15">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6506701043-16">[</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="6506701043-16">]</span><span·class="p"·data-group-id="6506701043-14">}</span><span·class="p"·data-group-id="6506701043-13">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6506701043-17">[</span><span·class="ss">fie</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6506701043-18">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="6506701043-18">}</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">fum</span><span·class="p"·data-group-id="6506701043-17">]</span><span·class="p"·data-group-id="6506701043-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="6417688901-1">(</span><span·class="p"·data-group-id="6417688901-2">[</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·1333,·SHA:·ff584cc8d6eef976b1d0a4755794c6020f0b68cda6cae3752a56c1d1029c0093·...·]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="60[·...·truncated·by·diffoscope;·len:·915,·SHA:·8c49ba342a7a5b9a0103ca1aa57b8d38f8acfc02632e583e2cd674d92db7038b·...·]
 629 </span><span·class="nf">expand</span><span·class="p"·data-group-id="6084815684-6">(</span><span·class="p"·data-group-id="6084815684-7">[</span><span·class="p"·data-group-id="6084815684-8">{</span><span·class="p"·data-group-id="6084815684-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="6084815684-9">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6084815684-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="6084815684-10">]</span><span·class="p"·data-group-id="6084815684-8">}</span><span·class="p"·data-group-id="6084815684-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6084815684-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="6084815684-11">]</span><span·class="p"·data-group-id="6084815684-6">)</span><span·class="w">
 630 </span><span·class="nf">expand</span><span·class="p"·data-group-id="6084815684-12">(</span><span·class="p"·data-group-id="6084815684-13">[</span><span·class="p"·data-group-id="6084815684-14">{</span><span·class="p"·data-group-id="6084815684-15">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="6084815684-15">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6084815684-16">[</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="6084815684-16">]</span><span·class="p"·data-group-id="6084815684-14">}</span><span·class="p"·data-group-id="6084815684-13">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6084815684-17">[</span><span·class="ss">fie</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6084815684-18">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="6084815684-18">}</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">fum</span><span·class="p"·data-group-id="6084815684-17">]</span><span·class="p"·data-group-id="6084815684-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="5451395361-1">(</span><span·class="p"·data-group-id="5451395361-2">[</span><span·class="p"·data-group-id="5451395361-3">{</span><span·class="p"·data-group-id="5451395361-4">{</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="5451395361-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5451395361-5">[</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="5451395361-5">]</span><span·class="p"·data-group-id="5451395361-3">}</span><span·class="p"·data-group-id="5451395361-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5451395361-6">[</span><span·class="p"·data-group-id="5451395361-7">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="5451395361-7">}</span><span·class="p">,</span><span·class="w">·</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="5451395361-6">]</span><span·class="p"·data-group-id="5451395361-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="4056385311-1">(</span><span·class="p"·data-group-id="4056385311-2">[</span><span·class="p"·data-group-id="4056385311-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:·1f3e02811b32d454b4267ec01398e757ab584266967e6017fa8d5c7d4a495aac·...·]4-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="0804815889-1">(</span><span·class="p"·data-group-id="0804815889-2">[</span><span·class="p"·data-group-id="0804815889-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:·c505d1efddaaa6667873237a34a6c9010ea0fdfe856462190d6c8756f2e2acac·...·]4-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="3467744304-1">(</span><span·class="p"·data-group-id="3467744304-2">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3467744304-3">{</span><span·class="ss">b</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·1354,·SHA:·67d1b81a931007840812b4a25bfdb9c78e52f6516491f3c5bfda4252d6bbdd83·...·]-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="4563592165-1">(</span><span·class="p"·data-group-id="4563592165-2">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4563592165-3">{</span><span·class="ss">b</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·1354,·SHA:·f19c2ddb9bdfbb636e1279ea96426cb977047c77858f267116ed60c357cb5893·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1254 <p>Copyright·©·1996-2024·<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
    
Offset 719, 18 lines modifiedOffset 719, 18 lines modified
719 ······<div·class="specs">719 ······<div·class="specs">
  
720 ··········<pre·translate="no"><span·class="attribute">-spec</span>·all(Pred,·Q·::·<a·href="#t:queue/1">queue</a>(Item))·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()·when·Pred·::·fun((Item)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()).</pre>720 ··········<pre·translate="no"><span·class="attribute">-spec</span>·all(Pred,·Q·::·<a·href="#t:queue/1">queue</a>(Item))·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()·when·Pred·::·fun((Item)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()).</pre>
  
721 ······</div>721 ······</div>
  
722 <p>Returns·<code·class="inline">true</code>·if·<code·class="inline">Pred(Item)</code>·returns·<code·class="inline">true</code>·for·all·items·<code·class="inline">Item</code>·in·<code·class="inline">Q</code>,722 <p>Returns·<code·class="inline">true</code>·if·<code·class="inline">Pred(Item)</code>·returns·<code·class="inline">true</code>·for·all·items·<code·class="inline">Item</code>·in·<code·class="inline">Q</code>,
723 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="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="0932012556-1">(</span><span·class="p"·data-group-id="0932012556-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·cla[·...·truncated·by·diffoscope;·len:·133,·SHA:·73b8ab31726c6b6c322d5cf0837098e5b5c30f40a686f45119ca8c4a5cc6f947·...·]6-1">)</span><span·class="p">.</span><span·class="gp·unselectable">723 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="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="4150910236-1">(</span><span·class="p"·data-group-id="4150910236-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·cla[·...·truncated·by·diffoscope;·len:·133,·SHA:·11729c93cd25abd69558d7ee92bc19ba36cdcbab6c3b0f0d896e56c8cefc18ab·...·]6-1">)</span><span·class="p">.</span><span·class="gp·unselectable">
724 2&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">all</span><span·class="p"·data-group-id="0932012556-3">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="0932012556-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="0932012556-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·313,·SHA:·381ed5d76c348e08a988c6315a4085e8a25c71ce1472339719cab183dd165b44·...·]6-3">)</span><span·class="p">.</span><span·class="w">724 2&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">all</span><span·class="p"·data-group-id="4150910236-3">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="4150910236-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="4150910236-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·313,·SHA:·b2441654db9947c512a5c25bf10adaeb07d5e363f55ba192edef2ea73947174e·...·]6-3">)</span><span·class="p">.</span><span·class="w">
725 </span><span·class="ss">false</span><span·class="gp·unselectable">725 </span><span·class="ss">false</span><span·class="gp·unselectable">
726 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">all</span><span·class="p"·data-group-id="0932012556-5">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="0932012556-6">(</span><span·class="n">E</span><span·class="p"·data-group-id="0932012556-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·313,·SHA:·4ff90e0226167e6f8aebb25b7adab020dd92b3ca49bb6cbc3a3b88b2ef5abddc·...·]6-5">)</span><span·class="p">.</span><span·class="w">726 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">all</span><span·class="p"·data-group-id="4150910236-5">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="4150910236-6">(</span><span·class="n">E</span><span·class="p"·data-group-id="4150910236-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·313,·SHA:·2f4a72b475129526f4dd9734019ce95c799bc4421ee6997fb2aa24932ea2cb21·...·]6-5">)</span><span·class="p">.</span><span·class="w">
727 </span><span·class="ss">true</span></code></pre>727 </span><span·class="ss">true</span></code></pre>
728 ··</section>728 ··</section>
729 </section>729 </section>
730 <section·class="detail"·id="any/2">730 <section·class="detail"·id="any/2">
  
731 ··<div·class="detail-header">731 ··<div·class="detail-header">
732 ····<a·href="#any/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">732 ····<a·href="#any/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 754, 18 lines modifiedOffset 754, 18 lines modified
754 ······<div·class="specs">754 ······<div·class="specs">
  
755 ··········<pre·translate="no"><span·class="attribute">-spec</span>·any(Pred,·Q·::·<a·href="#t:queue/1">queue</a>(Item))·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()·when·Pred·::·fun((Item)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()).</pre>755 ··········<pre·translate="no"><span·class="attribute">-spec</span>·any(Pred,·Q·::·<a·href="#t:queue/1">queue</a>(Item))·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()·when·Pred·::·fun((Item)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()).</pre>
  
756 ······</div>756 ······</div>
  
757 <p>Returns·<code·class="inline">true</code>·if·<code·class="inline">Pred(Item)</code>·returns·<code·class="inline">true</code>·for·at·least·one·item·<code·class="inline">Item</code>·in757 <p>Returns·<code·class="inline">true</code>·if·<code·class="inline">Pred(Item)</code>·returns·<code·class="inline">true</code>·for·at·least·one·item·<code·class="inline">Item</code>·in
758 <code·class="inline">Q</code>,·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="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="7238768531-1">(</span><span·class="p"·data-group-id="7238768531-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·cla[·...·truncated·by·diffoscope;·len:·134,·SHA:·78c3fab05d143e1388d0272502d1f7a8d5c975e92aa885700b8f31be40cbed8f·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">758 <code·class="inline">Q</code>,·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="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="6558480456-1">(</span><span·class="p"·data-group-id="6558480456-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·cla[·...·truncated·by·diffoscope;·len:·134,·SHA:·e5bc330c4622790a751d2ad674873c17ceaa0f3336298e8f814bc6fc13996a4d·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">
759 2&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">any</span><span·class="p"·data-group-id="7238768531-3">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7238768531-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="7238768531-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·315,·SHA:·75b9fa78f9d4e3292d6e6ca8301f89b1eae2af70942ffce3866e799ac677d0b0·...·]-3">)</span><span·class="p">.</span><span·class="w">759 2&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">any</span><span·class="p"·data-group-id="6558480456-3">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="6558480456-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="6558480456-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·315,·SHA:·70d80ff22923d90a6a33fe28ba104afce0a88efcad05d858ef408d4f67a71b0d·...·]-3">)</span><span·class="p">.</span><span·class="w">
760 </span><span·class="ss">false</span><span·class="gp·unselectable">760 </span><span·class="ss">false</span><span·class="gp·unselectable">
761 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">any</span><span·class="p"·data-group-id="7238768531-5">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7238768531-6">(</span><span·class="n">E</span><span·class="p"·data-group-id="7238768531-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·314,·SHA:·b7512913861ac579e8240166845b9003878a72691557cb5135a557205b764cac·...·]-5">)</span><span·class="p">.</span><span·class="w">761 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">any</span><span·class="p"·data-group-id="6558480456-5">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="6558480456-6">(</span><span·class="n">E</span><span·class="p"·data-group-id="6558480456-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·314,·SHA:·264a535169d65ac8e650ec9526a3c0878bc4a7428359dc3bd7caae9c0cfcc433·...·]-5">)</span><span·class="p">.</span><span·class="w">
762 </span><span·class="ss">true</span></code></pre>762 </span><span·class="ss">true</span></code></pre>
763 ··</section>763 ··</section>
764 </section>764 </section>
765 <section·class="detail"·id="delete/2">765 <section·class="detail"·id="delete/2">
  
766 ··<div·class="detail-header">766 ··<div·class="detail-header">
767 ····<a·href="#delete/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">767 ····<a·href="#delete/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 789, 17 lines modifiedOffset 789, 17 lines modified
789 ······<div·class="specs">789 ······<div·class="specs">
  
790 ··········<pre·translate="no"><span·class="attribute">-spec</span>·delete(Item,·Q1)·->·Q2·when·Item·::·T,·Q1·::·<a·href="#t:queue/1">queue</a>(T),·Q2·::·<a·href="#t:queue/1">queue</a>(T),·T·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>790 ··········<pre·translate="no"><span·class="attribute">-spec</span>·delete(Item,·Q1)·->·Q2·when·Item·::·T,·Q1·::·<a·href="#t:queue/1">queue</a>(T),·Q2·::·<a·href="#t:queue/1">queue</a>(T),·T·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
791 ······</div>791 ······</div>
  
792 <p>Returns·a·copy·of·<code·class="inline">Q1</code>·where·the·first·item·matching·<code·class="inline">Item</code>·is·deleted,·if·there792 <p>Returns·a·copy·of·<code·class="inline">Q1</code>·where·the·first·item·matching·<code·class="inline">Item</code>·is·deleted,·if·there
793 is·such·an·item.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="1430357767-1">(</span><span·class="p"·data-group-id="1430357767-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·cla[·...·truncated·by·diffoscope;·len:·134,·SHA:·ee5400b607824aa853b582f50665a0c0b76d43a24b4fe000e75fdb2a37d95e87·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">793 is·such·an·item.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="3974779165-1">(</span><span·class="p"·data-group-id="3974779165-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·cla[·...·truncated·by·diffoscope;·len:·134,·SHA:·1fb7edab11fb30cbffdcd3a629051e1338ec5de439da29e469f8d5a8c86300f0·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">
794 2&gt;·</span><span·class="n">Queue1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="1430357767-3">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Queue</span><span·class="p"·data-group-id="1430357767-3">)</span><span·class="p">.</span><span·class="gp·unselectable">794 2&gt;·</span><span·class="n">Queue1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="3974779165-3">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Queue</span><span·class="p"·data-group-id="3974779165-3">)</span><span·class="p">.</span><span·class="gp·unselectable">
795 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">member</span><span·class="p"·data-group-id="1430357767-4">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Queue1</span><span·class="p"·data-group-id="1430357767-4">)</span><span·class="p">.</span><span·class="w">795 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">member</span><span·class="p"·data-group-id="3974779165-4">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Queue1</span><span·class="p"·data-group-id="3974779165-4">)</span><span·class="p">.</span><span·class="w">
796 </span><span·class="ss">false</span></code></pre>796 </span><span·class="ss">false</span></code></pre>
797 ··</section>797 ··</section>
798 </section>798 </section>
799 <section·class="detail"·id="delete_r/2">799 <section·class="detail"·id="delete_r/2">
  
800 ··<div·class="detail-header">800 ··<div·class="detail-header">
801 ····<a·href="#delete_r/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">801 ····<a·href="#delete_r/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 823, 18 lines modifiedOffset 823, 18 lines modified
823 ······<div·class="specs">823 ······<div·class="specs">
  
824 ··········<pre·translate="no"><span·class="attribute">-spec</span>·delete_r(Item,·Q1)·->·Q2·when·Item·::·T,·Q1·::·<a·href="#t:queue/1">queue</a>(T),·Q2·::·<a·href="#t:queue/1">queue</a>(T),·T·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>824 ··········<pre·translate="no"><span·class="attribute">-spec</span>·delete_r(Item,·Q1)·->·Q2·when·Item·::·T,·Q1·::·<a·href="#t:queue/1">queue</a>(T),·Q2·::·<a·href="#t:queue/1">queue</a>(T),·T·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
825 ······</div>825 ······</div>
  
826 <p>Returns·a·copy·of·<code·class="inline">Q1</code>·where·the·last·item·matching·<code·class="inline">Item</code>·is·deleted,·if·there826 <p>Returns·a·copy·of·<code·class="inline">Q1</code>·where·the·last·item·matching·<code·class="inline">Item</code>·is·deleted,·if·there
827 is·such·an·item.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="5098301278-1">(</span><span·class="p"·data-group-id="5098301278-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·cla[·...·truncated·by·diffoscope;·len:·183,·SHA:·0309ffc9ba06e73b22b25711518067dcff01d52d1146a4416abf525b6d678cb9·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">827 is·such·an·item.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="0520634596-1">(</span><span·class="p"·data-group-id="0520634596-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·cla[·...·truncated·by·diffoscope;·len:·183,·SHA:·309ca19660c7c9522cce5a62c84c2222debd2ad15f7ed13b2df0144754c6ca8a·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">
828 2&gt;·</span><span·class="n">Queue1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">delete_r</span><span·class="p"·data-group-id="5098301278-3">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Queue</span><span·class="p"·data-group-id="5098301278-3">)</span><span·class="p">.</span><span·class="gp·unselectable">828 2&gt;·</span><span·class="n">Queue1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">delete_r</span><span·class="p"·data-group-id="0520634596-3">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Queue</span><span·class="p"·data-group-id="0520634596-3">)</span><span·class="p">.</span><span·class="gp·unselectable">
829 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">to_list</span><span·class="p"·data-group-id="5098301278-4">(</span><span·class="n">Queue1</span><span·class="p"·data-group-id="5098301278-4">)</span><span·class="p">.</span><span·class="w">829 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">to_list</span><span·class="p"·data-group-id="0520634596-4">(</span><span·class="n">Queue1</span><span·class="p"·data-group-id="0520634596-4">)</span><span·class="p">.</span><span·class="w">
830 </span><span·class="p"·data-group-id="5098301278-5">[</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:·28,·SHA:·aa7a752f569a4bfde7410025d0ff9fd66400ea9b797c7ac0186247852b99f579·...·]-5">]</span></code></pre>830 </span><span·class="p"·data-group-id="0520634596-5">[</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:·28,·SHA:·6281d55ee4fcc2e8ee619514d262558eb53f058ed4b71f3b81897f9ba6ea1d18·...·]-5">]</span></code></pre>
831 ··</section>831 ··</section>
832 </section>832 </section>
833 <section·class="detail"·id="delete_with/2">833 <section·class="detail"·id="delete_with/2">
  
834 ··<div·class="detail-header">834 ··<div·class="detail-header">
835 ····<a·href="#delete_with/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">835 ····<a·href="#delete_with/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
836 ······<i·class="ri-link-m"·aria-hidden="true"></i>836 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 862, 18 lines modifiedOffset 862, 18 lines modified
862 ·························Q1·::·<a·href="#t:queue/1">queue</a>(Item),862 ·························Q1·::·<a·href="#t:queue/1">queue</a>(Item),
863 ·························Q2·::·<a·href="#t:queue/1">queue</a>(Item),863 ·························Q2·::·<a·href="#t:queue/1">queue</a>(Item),
864 ·························Item·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>864 ·························Item·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
865 ······</div>865 ······</div>
  
866 <p>Returns·a·copy·of·<code·class="inline">Q1</code>·where·the·first·item·for·which·<code·class="inline">Pred</code>·returns·<code·class="inline">true</code>·is866 <p>Returns·a·copy·of·<code·class="inline">Q1</code>·where·the·first·item·for·which·<code·class="inline">Pred</code>·returns·<code·class="inline">true</code>·is
867 deleted,·if·there·is·such·an·item.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="9778177385-1">(</span><span·class="p"·data-group-id="9778177385-2">[</span><span·class="mi">100</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·c[·...·truncated·by·diffoscope;·len:·185,·SHA:·af3503e3f01d581b60e5035788c25ef593c96b862b5392aee5dd64018340bb90·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">867 deleted,·if·there·is·such·an·item.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="3270284857-1">(</span><span·class="p"·data-group-id="3270284857-2">[</span><span·class="mi">100</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·c[·...·truncated·by·diffoscope;·len:·185,·SHA:·434335c6911aee4e18dc9d9edfec4ffb824b1a400814c71a8b8c3073a28205d2·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">
868 2&gt;·</span><span·class="n">Queue1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">delete_with</span><span·class="p"·data-group-id="9778177385-3">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="9778177385-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="9778177385-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·264,·SHA:·467b2266525a5bb13036f9bc74e3602c4f5dc64d1cc5f743243c666d96ccac1d·...·]-3">)</span><span·class="p">.</span><span·class="gp·unselectable">868 2&gt;·</span><span·class="n">Queue1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">delete_with</span><span·class="p"·data-group-id="3270284857-3">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="3270284857-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="3270284857-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·264,·SHA:·f73ea013c9c7934cdb3ab7c1c83ee4b3d7982b9de2a4bf28d2133d9018af727a·...·]-3">)</span><span·class="p">.</span><span·class="gp·unselectable">
869 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">to_list</span><span·class="p"·data-group-id="9778177385-5">(</span><span·class="n">Queue1</span><span·class="p"·data-group-id="9778177385-5">)</span><span·class="p">.</span><span·class="w">869 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">to_list</span><span·class="p"·data-group-id="3270284857-5">(</span><span·class="n">Queue1</span><span·class="p"·data-group-id="3270284857-5">)</span><span·class="p">.</span><span·class="w">
870 </span><span·class="p"·data-group-id="9778177385-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">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·02925cc8930a82f08265c8ae4bc14426a5aad0e437156563bf0187d20e4f1d9c·...·]-6">]</span></code></pre>870 </span><span·class="p"·data-group-id="3270284857-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">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·8772f9c70137b03b8ca621fd499c1d1c56ddda9cb64b415129255ae46d296818·...·]-6">]</span></code></pre>
871 ··</section>871 ··</section>
872 </section>872 </section>
873 <section·class="detail"·id="delete_with_r/2">873 <section·class="detail"·id="delete_with_r/2">
  
874 ··<div·class="detail-header">874 ··<div·class="detail-header">
875 ····<a·href="#delete_with_r/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">875 ····<a·href="#delete_with_r/2"·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 901, 18 lines modifiedOffset 901, 18 lines modified
901 ···························Q1·::·<a·href="#t:queue/1">queue</a>(Item),901 ···························Q1·::·<a·href="#t:queue/1">queue</a>(Item),
902 ···························Q2·::·<a·href="#t:queue/1">queue</a>(Item),902 ···························Q2·::·<a·href="#t:queue/1">queue</a>(Item),
903 ···························Item·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>903 ···························Item·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
904 ······</div>904 ······</div>
  
905 <p>Returns·a·copy·of·<code·class="inline">Q1</code>·where·the·last·item·for·which·<code·class="inline">Pred</code>·returns·<code·class="inline">true</code>·is905 <p>Returns·a·copy·of·<code·class="inline">Q1</code>·where·the·last·item·for·which·<code·class="inline">Pred</code>·returns·<code·class="inline">true</code>·is
906 deleted,·if·there·is·such·an·item.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="7168919080-1">(</span><span·class="p"·data-group-id="7168919080-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·cla[·...·truncated·by·diffoscope;·len:·185,·SHA:·6c0846792f9655be463cd379d69eaf95c3ca8f6715391347354ae9c5f7449e38·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">906 deleted,·if·there·is·such·an·item.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="9271383256-1">(</span><span·class="p"·data-group-id="9271383256-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·cla[·...·truncated·by·diffoscope;·len:·185,·SHA:·57512a75458c050006823ecc2b4933ccdde640fc093a43cef58777d4aca527ef·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">
907 2&gt;·</span><span·class="n">Queue1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">delete_with</span><span·class="p"·data-group-id="7168919080-3">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7168919080-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="7168919080-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·265,·SHA:·6a594638b02c63e07a74fceda39d4638784ab742dfcd7c433ea0bbb45082aea9·...·]-3">)</span><span·class="p">.</span><span·class="gp·unselectable">907 2&gt;·</span><span·class="n">Queue1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">delete_with</span><span·class="p"·data-group-id="9271383256-3">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="9271383256-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="9271383256-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·265,·SHA:·36a0a8cf86e4d17105a2b4c4a1b0ccf84eb295a12f5c5fe4bfe122ce22cc6b82·...·]-3">)</span><span·class="p">.</span><span·class="gp·unselectable">
908 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">to_list</span><span·class="p"·data-group-id="7168919080-5">(</span><span·class="n">Queue1</span><span·class="p"·data-group-id="7168919080-5">)</span><span·class="p">.</span><span·class="w">908 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">to_list</span><span·class="p"·data-group-id="9271383256-5">(</span><span·class="n">Queue1</span><span·class="p"·data-group-id="9271383256-5">)</span><span·class="p">.</span><span·class="w">
909 </span><span·class="p"·data-group-id="7168919080-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">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·65470860719788ac64db49e935b341ede2e29ed9e4017e2a1d346746f89900e2·...·]-6">]</span></code></pre>909 </span><span·class="p"·data-group-id="9271383256-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">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·d02dfd8fcf6bbb3659ce63d308d997ee4abb5228408cb66f471d44c583e2dfe5·...·]-6">]</span></code></pre>
910 ··</section>910 ··</section>
911 </section>911 </section>
912 <section·class="detail"·id="filter/2">912 <section·class="detail"·id="filter/2">
  
913 ··<div·class="detail-header">913 ··<div·class="detail-header">
914 ····<a·href="#filter/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">914 ····<a·href="#filter/2"·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 935, 27 lines modifiedOffset 935, 27 lines modified
935 ··········<pre·translate="no"><span·class="attribute">-spec</span>·filter(Fun,·Q1·::·<a·href="#t:queue/1">queue</a>(Item))·->·Q2·::·<a·href="#t:queue/1">queue</a>(Item)·when·Fun·::·fun((Item)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()·|·[Item]).</pre>935 ··········<pre·translate="no"><span·class="attribute">-spec</span>·filter(Fun,·Q1·::·<a·href="#t:queue/1">queue</a>(Item))·->·Q2·::·<a·href="#t:queue/1">queue</a>(Item)·when·Fun·::·fun((Item)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()·|·[Item]).</pre>
  
936 ······</div>936 ······</div>
  
937 <p>Returns·a·queue·<code·class="inline">Q2</code>·that·is·the·result·of·calling·<code·class="inline">Fun(Item)</code>·on·all·items·in937 <p>Returns·a·queue·<code·class="inline">Q2</code>·that·is·the·result·of·calling·<code·class="inline">Fun(Item)</code>·on·all·items·in
938 <code·class="inline">Q1</code>.</p><p>If·<code·class="inline">Fun(Item)</code>·returns·<code·class="inline">true</code>,·<code·class="inline">Item</code>·is·copied·to·the·result·queue.·If·it938 <code·class="inline">Q1</code>.</p><p>If·<code·class="inline">Fun(Item)</code>·returns·<code·class="inline">true</code>,·<code·class="inline">Item</code>·is·copied·to·the·result·queue.·If·it
939 returns·<code·class="inline">false</code>,·<code·class="inline">Item</code>·is·not·copied.·If·it·returns·a·list,·the·list·elements939 returns·<code·class="inline">false</code>,·<code·class="inline">Item</code>·is·not·copied.·If·it·returns·a·list,·the·list·elements
940 are·inserted·instead·of·<code·class="inline">Item</code>·in·the·result·queue.</p><p><em>Example·1:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="1767219623-1">(</span><span·class="p"·data-group-id="1767219623-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·cla[·...·truncated·by·diffoscope;·len:·134,·SHA:·7bf60fb16841488c5c118ef44af4c848a52b7407e5c094db95cb2877968f89f9·...·]-1">)</span><span·class="p">.</span><span·class="w">940 are·inserted·instead·of·<code·class="inline">Item</code>·in·the·result·queue.</p><p><em>Example·1:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Queue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="9919684349-1">(</span><span·class="p"·data-group-id="9919684349-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·cla[·...·truncated·by·diffoscope;·len:·134,·SHA:·6c57fbe99c8bd5c7e3b7b4d08b4820e8b2480744824abfa14695c605ad808bd9·...·]-1">)</span><span·class="p">.</span><span·class="w">
941 </span><span·class="p"·data-group-id="1767219623-3">{</span><span·class="p"·data-group-id="1767219623-4">[</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="1767219623-4">]</span><span[·...·truncated·by·diffoscope;·len:·240,·SHA:·d184914ce61fc05ed8da9354f3c43bb4046cbe3336a555e2a0e5480b086ba4ad·...·]-3">}</span><span·class="gp·unselectable">941 </span><span·class="p"·data-group-id="9919684349-3">{</span><span·class="p"·data-group-id="9919684349-4">[</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="9919684349-4">]</span><span[·...·truncated·by·diffoscope;·len:·240,·SHA:·9d7bf389e47c03440e773c095c66dca677de895ebddcfbc16783b52edfd4dad3·...·]-3">}</span><span·class="gp·unselectable">
942 2&gt;·</span><span·class="n">Queue1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">filter</span><span·class="p"·data-group-id="1767219623-6">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="1767219623-7">(</span><span·class="n">E</span><span·class="p"·data-group-id="1767219623-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·314,·SHA:·b7a9f45e916886acd2ddcc56272180ae9b35c0e92d1af93069ade39ec4b0f869·...·]-6">)</span><span·class="p">.</span><span·class="w">942 2&gt;·</span><span·class="n">Queue1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">filter</span><span·class="p"·data-group-id="9919684349-6">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="9919684349-7">(</span><span·class="n">E</span><span·class="p"·data-group-id="9919684349-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·314,·SHA:·68972ceed389f717994bb3623c87b671b1ab8423ea7d08b81df393e606e1a9a4·...·]-6">)</span><span·class="p">.</span><span·class="w">
943 </span><span·class="p"·data-group-id="1767219623-8">{</span><span·class="p"·data-group-id="1767219623-9">[</span><span·class="mi">5</span><span·class="p"·data-group-id="1767219623-9">]</span><span·class="p">,</span><span·class="p"·data-group-id="1767219623-10">[</span><span·class="mi">3</span>[·...·truncated·by·diffoscope;·len:·144,·SHA:·c1a325c9bcffbbf682576b56a4ed8e19f0a3f015cf7b8a7e1cfb9f8dd1f428a7·...·]-8">}</span><span·class="gp·unselectable">943 </span><span·class="p"·data-group-id="9919684349-8">{</span><span·class="p"·data-group-id="9919684349-9">[</span><span·class="mi">5</span><span·class="p"·data-group-id="9919684349-9">]</span><span·class="p">,</span><span·class="p"·data-group-id="9919684349-10">[</span><span·class="mi">3</span>[·...·truncated·by·diffoscope;·len:·144,·SHA:·221e4128b7f7c84abe081e040cf149ce6013c93b5a0f580bf810fa308236cf16·...·]-8">}</span><span·class="gp·unselectable">
944 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">to_list</span><span·class="p"·data-group-id="1767219623-11">(</span><span·class="n">Queue1</span><span·class="p"·data-group-id="1767219623-11">)</span><span·class="p">.</span><span·class="w">944 3&gt;·</span><span·class="nc">queue</span><span·class="p">:</span><span·class="nf">to_list</span><span·class="p"·data-group-id="9919684349-11">(</span><span·class="n">Queue1</span><span·class="p"·data-group-id="9919684349-11">)</span><span·class="p">.</span><span·class="w">
945 </span><span·class="p"·data-group-id="1767219623-12">[</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="1767219623-12">]</span></code></pre><p>So,·<code·class="inline">Fun(Item)</code>·returning·<code·class="inline">[Item]</code>·is·thereby·semantically·equivalent·to945 </span><span·class="p"·data-group-id="9919684349-12">[</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="9919684349-12">]</span></code></pre><p>So,·<code·class="inline">Fun(Item)</code>·returning·<code·class="inline">[Item]</code>·is·thereby·semantically·equivalent·to
946 returning·<code·class="inline">true</code>,·just·as·returning·<code·class="inline">[]</code>·is·semantically·equivalent·to·returning946 returning·<code·class="inline">true</code>,·just·as·returning·<code·class="inline">[]</code>·is·semantically·equivalent·to·returning
Max diff block lines reached; 117046/163599 bytes (71.54%) of diff not shown.
654 B
html2text {}
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="6312072542-1">(</span><span·class="p"·data-group-id="6312072542-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="0997696793-1">(</span><span·class="p"·data-group-id="0997696793-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="6312072542-2">(</span><span·class="p"·data-group-id="6312072542-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:·238,·SHA:·d81b909f8e6fe70bb7580a0523bac274f497f67a14c27cd05c3bdf88033cc720·...·]6-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="0997696793-2">(</span><span·class="p"·data-group-id="0997696793-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:·238,·SHA:·e2290a9eac85020c64205fa50d31c5b535423552fe7178c046ab37d5891f7bc2·...·]6-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="8748189276-2">(</span><span·class="p"·data-group-id="8748189276-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">·</sp[·...·truncated·by·diffoscope;·len:·594,·SHA:·01c60034ea29f30fff28e26c3ceaba21a9daacb2494beae5015c92948119ae00·...·]-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="1717585696-2">(</span><span·class="p"·data-group-id="1717585696-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">·</sp[·...·truncated·by·diffoscope;·len:·594,·SHA:·ae38934a69ef02e4eb27c45c2f667befe52bb275a62db139dc5e0981d4f1a25e·...·]-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="3710601703-3">(</span><span·class="p"·data-group-id="3710601703-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:·5ac8c52c85b44f5a4e2ccf17e3199d3f9775ec886eb1c35cd9138ef84143e9fa·...·]-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="1468289820-3">(</span><span·class="p"·data-group-id="1468289820-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:·bfa45a541f963e8a400f2162fc0d1e3b9bdf9c57b5b536ff9a304d1e3be20aef·...·]-1">)</span><span·class="p">,</span><span·class="w">
208 </span><span·class="p"·data-group-id="6318923474-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="6318923474-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·654,·SHA:·d865b7a72c965ac344026653265d7fc7a202d5793da1d6be207f59f8a31a9096·...·]-1">)</span><span·class="p">,</span><span·class="w">208 </span><span·class="p"·data-group-id="8800569848-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="8800569848-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·654,·SHA:·63eb3a8b038b3629d2ac3becc7d92f5c50c08429bc62b2e292bdb37d3d678f9f·...·]-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="7184431280-2">(</span><span·class="p"·data-group-id="7184431280-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="5149637756-2">(</span><span·class="p"·data-group-id="5149637756-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="7184431280-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="718[·...·truncated·by·diffoscope;·len:·2113,·SHA:·e444424df12639735360323f2071e07ba85215ec45051117d3083c615111a971·...·]-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="5149637756-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="514[·...·truncated·by·diffoscope;·len:·2113,·SHA:·0b4026f40f6c684fd5f4207bf2b3a0299f9d9b92b7b20bedabdf86906c6c36a7·...·]-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="4575429951-1">(</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="4575429951-2">(</span><span·class="mi">256</span><span·class="p"·data-group-id="4575429951-2">)</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·2109,·SHA:·f9c5c5ae134695ab89fb16bf1d978d84e7d66522aff4b4143ecf265656644dfa·...·]6-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="8689388504-1">(</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="8689388504-2">(</span><span·class="mi">256</span><span·class="p"·data-group-id="8689388504-2">)</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·2109,·SHA:·84361941f18e10ded468800b72169d5b74f591f1e5ac2630a10b81f0fe5c4b7b·...·]6-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="7938354940-1">(</span><span·class="p"·data-group-id="7938354940-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="7816176890-1">(</span><span·class="p"·data-group-id="7816176890-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="7938354940-2">(</span><span·class="p"·data-group-id="7938354940-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="7816176890-2">(</span><span·class="p"·data-group-id="7816176890-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="7938354940-3">(</span><span·class="p"·data-group-id="7938354940-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="7816176890-3">(</span><span·class="p"·data-group-id="7816176890-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="3536211843-1">(</span><span·class="p"·data-group-id="3536211843-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="3536211843-2">)</spa[·...·truncated·by·diffoscope;·len:·91,·SHA:·1d2444c24f3deccf535855e8d29f904cf3a7ebe5fc740afe36bb9d54c2629296·...·]3-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="2232263683-1">(</span><span·class="p"·data-group-id="2232263683-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="2232263683-2">)</spa[·...·truncated·by·diffoscope;·len:·91,·SHA:·cae4d0fd5e44e6d7700322f61d6a8ed586707f37be8f4faf4359383314972044·...·]3-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2382 <p>Copyright·©·1996-2024·<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="9178794192-1">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">phash2</span><span·class="p"·data-group-id="9178794192-2">(</span><span·class="p"·data-group-id="9178794192-3">[</span><span·class="nf">node</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·184,·SHA:·9dfdedd30c06336b5807ea7da753b6a2be13d98f4b9e9efcd15280f42e20819b·...·]-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="1884969105-1">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">phash2</span><span·class="p"·data-group-id="1884969105-2">(</span><span·class="p"·data-group-id="1884969105-3">[</span><span·class="nf">node</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·184,·SHA:·7b985db7edfdae54994824e5d6306a69ea516e6ef20a29ae118ea20c44c66226·...·]-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="9178794192-5">(</span><span·class="p"·data-group-id="9178794192-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="1884969105-5">(</span><span·class="p"·data-group-id="1884969105-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="9178794192-6">(</span><span·class="p"·data-group-id="9178794192-6">)</span><span·class="p"·data-group-id="9178794192-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="1884969105-6">(</span><span·class="p"·data-group-id="1884969105-6">)</span><span·class="p"·data-group-id="1884969105-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>638 <p>Copyright·©·1996-2024·<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="7577990810-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="7577990810-2">[</span><span·class="p"·data-group-id="7577990810-3">[·...·truncated·by·diffoscope;·len:·289,·SHA:·281a815c7bc724d308cd52348edcb2a7840d3ab1a773f25238b9e10336b2b6a2·...·]-1">)</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="9589392116-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="9589392116-2">[</span><span·class="p"·data-group-id="9589392116-3">[·...·truncated·by·diffoscope;·len:·289,·SHA:·36bcb159c605ff35d68936d429bca78f8f8b2448d064970a2e43ca7fe528afdb·...·]-1">)</span><span·class="p">.</span><span·class="w">
1379 </span><span·class="p"·data-group-id="7577990810-4">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="7577990810-5">[</span><span·class="s">&quot;abc&quot;</span><span·class="p"·data-group-id="7577990810-5">]</span><span·class="p"·data-group-id="757799[·...·truncated·by·diffoscope;·len:·4,·SHA:·6a8328b1da171410d67e3c0eb4c1904bfc18a4e0c4ef6e76d5bdaab8ae7a72b7·...·]-4">}</span><span·class="gp·unselectable">1379 </span><span·class="p"·data-group-id="9589392116-4">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="9589392116-5">[</span><span·class="s">&quot;abc&quot;</span><span·class="p"·data-group-id="9589392116-5">]</span><span·class="p"·data-group-id="958939[·...·truncated·by·diffoscope;·len:·4,·SHA:·ef13ebc3a57a1b51c17b45fcfef8eef761deab8371cc9e4eca14962d5763123d·...·]-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="7577990810-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="7577990810-7">[</span><span·class="p"·data-group-id="7577990810-8">[·...·truncated·by·diffoscope;·len:·354,·SHA:·6e0d22c0ea19d8bebd0ca7a7f418e27663c77e3081953c43155ccd9f14dfde6c·...·]-6">)</span><span·class="p">.</span><span·class="w">1380 2&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="9589392116-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="9589392116-7">[</span><span·class="p"·data-group-id="9589392116-8">[·...·truncated·by·diffoscope;·len:·354,·SHA:·f41fa33d64f46c258975e52cea03c743523459d9922e564e144be9c98b0e72ce·...·]-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="8207213101-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MP</span><span·class="p"·data-group-id="8207213101-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:·30c50dfd6788dce449f8babcac2578f6be9461839700e049a664d021661844fd·...·]-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="2477171503-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MP</span><span·class="p"·data-group-id="2477171503-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:·ef6ac882382d1ed432104c15c34b4ddecf6a320707369b43715c46c9c4b4c095·...·]-2">)</span><span·class="p">.</span><span·class="w">
2111 </span><span·class="p"·data-group-id="8207213101-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8207213101-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="2477171503-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2477171503-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="8207213101-4">}</span><span·class="p"·data-group-id="8207213101-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="2477171503-4">}</span><span·class="p"·data-group-id="2477171503-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="8207213101-5">(</span><span·class="n">MP</span><span·class="p">,</span><span·class="ss">namelist</span><span·class="p"·data-group-id="8207213101-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="2477171503-5">(</span><span·class="n">MP</span><span·class="p">,</span><span·class="ss">namelist</span><span·class="p"·data-group-id="2477171503-5">)</span><span·class="p">.</span><span·class="w">
2115 </span><span·class="p"·data-group-id="8207213101-6">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="8207213101-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:·c143bacd6350d316578d92105d5dd50652c5a175b0588a3c2c11c7d43e7dfb57·...·]-6">}</span><span·class="gp·unselectable">2115 </span><span·class="p"·data-group-id="2477171503-6">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="2477171503-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:·0b1595bbe06b69b6932c961cc8b0d94ce8481cd72c93a103b6bd1c793ead2a0e·...·]-6">}</span><span·class="gp·unselectable">
2116 3&gt;·</span><span·class="p"·data-group-id="8207213101-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MPD</span><span·class="p"·data-group-id="8207213101-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:·8dec2b24a52c1fdbadbd04127720856f4b85cc94dcb4019f441ee3df4caac191·...·]-9">)</span><span·class="p">.</span><span·class="w">2116 3&gt;·</span><span·class="p"·data-group-id="2477171503-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MPD</span><span·class="p"·data-group-id="2477171503-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:·9c522db397a8ab7d7b6727fbcd9e8f61ae4e680b4f547eccb2913d6f5c901a23·...·]-9">)</span><span·class="p">.</span><span·class="w">
2117 </span><span·class="p"·data-group-id="8207213101-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8207213101-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="2477171503-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2477171503-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="8207213101-12">}</span><span·class="p"·data-group-id="8207213101-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="2477171503-12">}</span><span·class="p"·data-group-id="2477171503-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="8207213101-13">(</span><span·class="n">MPD</span><span·class="p">,</span><span·class="ss">namelist</span><span·class="p"·data-group-id="8207213101-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="2477171503-13">(</span><span·class="n">MPD</span><span·class="p">,</span><span·class="ss">namelist</span><span·class="p"·data-group-id="2477171503-13">)</span><span·class="p">.</span><span·class="w">
2121 </span><span·class="p"·data-group-id="8207213101-14">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="8207213101-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:·cc7597d9be1c47c208e94736c69d73987289424d26303a2702c1ebfea628b11d·...·]-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="2477171503-14">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="2477171503-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:·bf657003cd7c6d4d2fd7e402be48fa639ac6f54c00fc18f4c3fba0ef43c3fd40·...·]-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="7788112673-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MP</span><span·class="p"·data-group-id="7788112673-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:·1e70d451ba2a7a63438ecb44545ca76334411412cb3aeb3c94c371ec59d2a172·...·]-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="5296337852-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MP</span><span·class="p"·data-group-id="5296337852-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:·a8e780576decaf9bec82c4d7b26094b46a5260124736fc69d1db66ce59a4953c·...·]-2">)</span><span·class="p">.</span><span·class="w">
2127 </span><span·class="p"·data-group-id="7788112673-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7788112673-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="5296337852-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5296337852-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="7788112673-4">}</span><span·class="p"·data-group-id="7788112673-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="5296337852-4">}</span><span·class="p"·data-group-id="5296337852-3">}</span><span·class="gp·unselectable">
2130 2&gt;·</span><span·class="p"·data-group-id="7788112673-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="7788112673-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·251,·SHA:·d4de48160a220050c1ef95b15ba8d55171014c7593a4bdb978da72dc0a2a9d29·...·]-6">)</span><span·class="p">.</span><span·class="w">2130 2&gt;·</span><span·class="p"·data-group-id="5296337852-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="5296337852-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·251,·SHA:·c7d0902b17615662e2c0f8908f100f45e366d390d7f08b6a44374be93403fb33·...·]-6">)</span><span·class="p">.</span><span·class="w">
2131 </span><span·class="p"·data-group-id="7788112673-7">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="7788112673-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="7788112673-8">]</span><span·class="p"·data-group-id="7788112673-7">}</span><span·class="gp·unselectable"> 
2132 3&gt;·</span><span·class="p"·data-group-id="7788112673-9">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="n">L</span><span·class="p"·data-group-id="7788112673-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class=[·...·truncated·by·diffoscope;·len:·703,·SHA:·1bf7516cdd43e23f77859ef75ff3ad4c1634adbb8d0d3723f48038f2bdd7216e·...·]">2131 </span><span·class="p"·data-group-id="5296337852-7">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="5296337852-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:·5b79f682e61b7853fc1cb1a6512d7ce0c926944176276ecf9e9a925a612b1a7a·...·]">
 2132 3&gt;·</span><span·class="p"·data-group-id="5296337852-9">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="n">L</span><span·class="p"·data-group-id="5296337852-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="5296337852-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="5296337852-11">[</span><span·class="p"·data-group-id="5296337852-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="5296337852-12">}</span><span·class="p"·data-group-id="5296337852-11">]</span><span·class="p"·data-group-id="5296337852-10">)</span><span·class="p">.</span><span·class="w">
2133 </span><span·class="p"·data-group-id="7788112673-13">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="7788112673-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:·f17b98596e7e53d80a76007ff8bcccf8841cbab5ac9be23338e75d28c27a57bc·...·]-13">}</span><span·class="gp·unselectable">2133 </span><span·class="p"·data-group-id="5296337852-13">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="5296337852-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:·3fa3bbd65a343dfe4c1bde09deae329d8a6c1a680381b67d5ffc08ce367355f5·...·]-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="7788112673-15">(</span><span·class="n">N</span><span·class="p">,</span><span·class="n">L</span><span·class="p"·data-group-id="7788112673-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="5296337852-15">(</span><span·class="n">N</span><span·class="p">,</span><span·class="n">L</span><span·class="p"·data-group-id="5296337852-15">)</span><span·class="p">.</span><span·class="w">
2135 </span><span·class="p"·data-group-id="7788112673-16">[</span><span·class="p"·data-group-id="7788112673-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:·58743278dc47b6a0f19d59a994223be8c15530aed9e0b3e2a358a0c91397978a·...·]-16">]</span></code></pre>2135 </span><span·class="p"·data-group-id="5296337852-16">[</span><span·class="p"·data-group-id="5296337852-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:·06903ae189c09baf37ea2419064b6dc123a8d9620603950d3f6f4c64525d930a·...·]-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="5481614465-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="5481614465-2">[</span><span·class="p"·data-group-id="5481614465-3">{</span><span·class="ss">return</span><span·class="p">,</span><span·class="ss">list</span><span·class="p"·data-group-id="5481614465-3">}</span><span·class="p"·data-group-id="5481614465-2">]</span><span·class="p"·data-group-id="5481614465-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[·...·truncated·by·diffoscope;·len:·567,·SHA:·4ff26cb9f69de7ec04f22b8fea921dc03e54a4d15fe3dd4a4dbc9035dd7e8688·...·]1-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·clas[·...·truncated·by·diffoscope;·len:·647,·SHA:·da879af4c8370e99e010b8a15e57dc67fbe0a5cb359882f02ee33f02bb657d4e·...·]1-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="1652846235-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="1652846235-2">[</span><span·class="p"·data-group-id="1652846235-3">{</span><span·class="ss">return</span><span·class="p">,</span><span·class="ss">list</span><span·class="p"·data-group-id="1652846235-3">}</span><span·class="p"·data-group-id="1652846235-2">]</span><span·class="p"·data-group-id="1652846235-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="8404787453-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="3204630825-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="8404787453-2">(</span><span·class="n">Whole</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8404787453-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:·2e8d0981abea5fa7085fc30f9b79db50e63a3aa12550548c8011f214383f5c8e·...·]-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="3204630825-2">(</span><span·class="n">Whole</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3204630825-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:·bd943444c35bfb646d9758426197c4b6af485c4c6887bfde00f1d80a00075d12·...·]-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="8404787453-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:·b2fc8e73c9309082130426fc6fd68dd893b818261853f542d68043ba46c84c85·...·]-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="3204630825-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:·407f9a7464577ca2423228cdd43a6cd36ec005364564c16ea937f6d2b70e7342·...·]-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="8404787453-5">[</span><span·class="p"·data-group-id="8404787453-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="8404787453-6">}</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·72,·SHA:·32f6b5ef2e5b0d44db146560ff6123dce6ea5c07c82b2ec56d3d04b927357ccb·...·]-1">)</span><span·class="p">.</span><span·class="w">2240 ····</span><span·class="p"·data-group-id="3204630825-5">[</span><span·class="p"·data-group-id="3204630825-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="3204630825-6">}</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·72,·SHA:·f68253e5f8b65554ab6dce977bcd46d643e949de5206911013d5f49bebd345f9·...·]-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="9474458836-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="9474458836-2">[</span><span·class="ss">global</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·69,·SHA:·f8d948d40ac532f8dcf2c0f122cbc1c8e33bd596e82861d0d4b22a4709f82d90·...·]-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="2693100080-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="2693100080-2">[</span><span·class="ss">global</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·69,·SHA:·9930e684b21f085d62721a21b5c3f9d7a5168a82cbf1903872d7ed3b3640b451·...·]-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="8278637259-1">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="8278637259-2">[</span><span·class="p"·data-group-id="8278637259-3">[</span><span·class="p"·data-group-id="8278637259-4">{</span><span·class="mi">0</sp[·...·truncated·by·diffoscope;·len:·2008,·SHA:·ea3104741742bb42b5e7ddad60722cda48890d18b8a7277828abb1cac63469df·...·]-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="3843766332-1">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="3843766332-2">[</span><span·class="p"·data-group-id="3843766332-3">[</span><span·class="p"·data-group-id="3843766332-4">{</span><span·class="mi">0</sp[·...·truncated·by·diffoscope;·len:·2008,·SHA:·79cc4fc94569e90f5ad8ab18c706c32553c8eaee4cc4b25883ac81d255e19064·...·]-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="0465727226-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="0465727226-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="5398420637-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="5398420637-1">)</span><span·class="p">.</span><span·class="w">
2441 </span><span·class="p"·data-group-id="0465727226-2">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="0465727226-3">[</span><span·class="p"·data-group-id="0465727226-4">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">14</span>[·...·truncated·by·diffoscope;·len:·352,·SHA:·ea64a491b233f569ce636cd81cbbddb16081e3271490abfd65c6499a28ae7951·...·]-2">}</span><span·class="gp·unselectable">2441 </span><span·class="p"·data-group-id="5398420637-2">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="5398420637-3">[</span><span·class="p"·data-group-id="5398420637-4">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">14</span>[·...·truncated·by·diffoscope;·len:·352,·SHA:·59b62e50673d26b31348c30768bb5953360e93e802926640d44196db2f8a572b·...·]-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="0465727226-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="0465727226-7">[</span><span·class="p"·data-group-id="0465727226-8[·...·truncated·by·diffoscope;·len:·251,·SHA:·e94a818d60cd1c17d9af6107de4f65a6c55b28551370e6d51b3d5a5d155c6c97·...·]-6">)</span><span·class="p">.</span><span·class="w">2442 2&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="5398420637-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="5398420637-7">[</span><span·class="p"·data-group-id="5398420637-8[·...·truncated·by·diffoscope;·len:·251,·SHA:·497502c11af7eb23a9d0e6efe5f5526f6644d7cdc57e703cedf3f53f52cdaf65·...·]-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">
2444 3&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="0465727226-9">(</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="0465727226-10">[</span><span·class="p"·data-group-id="0465727226-[·...·truncated·by·diffoscope;·len:·316,·SHA:·f500a597ccbcac87fbfbd1dc2af89cee3993562ca4fefa15f6c8057b496e0886·...·]-9">)</span><span·class="p">.</span><span·class="w">2444 3&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="5398420637-9">(</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="5398420637-10">[</span><span·class="p"·data-group-id="5398420637-[·...·truncated·by·diffoscope;·len:·316,·SHA:·31e03579ecb2534a1dda74e111cee8da3c074e69d92fee897bce29e02b707a1f·...·]-9">)</span><span·class="p">.</span><span·class="w">
2445 </span><span·class="p"·data-group-id="0465727226-12">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">match_limit_recursion</span><span·class="p"·data-group-id="0465727226-12">}</span></code></pre><p>This·option·and·option·<code·class="inline">match_limit</code>·are·only·to·be·used·in·rare·cases.2445 </span><span·class="p"·data-group-id="5398420637-12">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">match_limit_recursion</span><span·class="p"·data-group-id="5398420637-12">}</span></code></pre><p>This·option·and·option·<code·class="inline">match_limit</code>·are·only·to·be·used·in·rare·cases.
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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="3041471176-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="3041471176-2">(</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·204,·SHA:·29f65bf30b5c89ccf1070f0b4771d51bd518c83ca0d18964386779baa2e66e81·...·]-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="4462095767-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="4462095767-2">(</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·204,·SHA:·c4d5a7d59f8895ec5e7867e603666926e386b33a02f05e37d61724b8cc3b079a·...·]-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="3041471176-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="3041471176-5">(</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·207,·SHA:·cd322755fd7c19c0a96952db82dc5ffc49ecf15de4e85d63c593dcf3387746b7·...·]-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="4462095767-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="4462095767-5">(</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·207,·SHA:·d9f0d999960c9ccf0875079b4308587d8f9dea6b5f2f5ce190766a2919e6f018·...·]-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="3041471176-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="3041471176-8">(</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·207,·SHA:·5b2437af5e008159af6874c5952956a54d83733b685b34f8e21ee365ba5aa46c·...·]-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="4462095767-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="4462095767-8">(</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·207,·SHA:·824c6e1af18d27490f91d5da3e7c5583f9b1f9185079ae7fc998f31f52e5a7f5·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1227 <p>Copyright·©·1996-2024·<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="2004418847-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="2004418847-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="7792347613-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="7792347613-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="9301758240-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="9301758240-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:·ea6ecdfca81e8e008f2c08525a663911227e4b6b7b924edc77a9703bdae1732d·...·]-3">]</span><span·class="w">237 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="7817968877-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="7817968877-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:·8eddd3321a2238a2589badab80d41dbb7e43d155bc31e372bcb28c28e5ded721·...·]-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="9301758240-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="9301758240-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="7817968877-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="7817968877-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="7575945549-1">(</span><span·class="n">Str</span><span·class="p"·data-group-id="7575945549-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="4784664475-1">(</span><span·class="n">Str</span><span·class="p"·data-group-id="4784664475-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="4652578107-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="4652578107-2">(</span><span·class="n">Str</span><span·class="p"·data-group-id="4652578107-2">)</span><span·class="p"·data-group-id="4652578107-1">}</span><span·class="p">.</span><span·class="w"> 
242 </span><span·class="p"·data-group-id="4652578107-3">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="4652578107-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:·e6e7d4934c4d5725d15fa2e77ee8745b3fba5158c64ec7d1b8889ccefdef2f08·...·]
 242 </span><span·class="p"·data-group-id="2218983781-3">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="2218983781-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="2335877104-1">(</span><span·class="p"·data-group-id="2335877104-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="3911049734-1">(</span><span·class="p"·data-group-id="3911049734-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="2335877104-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="2335877104-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="3911049734-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="3911049734-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="3082053811-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="3082053811-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="2145847797-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="2145847797-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="4439987063-1">(</span><span·class="p"·data-group-id="4439987063-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="1526804680-1">(</span><span·class="p"·data-group-id="1526804680-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="4439987063-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="4439987063-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="1526804680-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="1526804680-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="3471503924-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="3471503924-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="9846175181-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="9846175181-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="2561843598-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="2561843598-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="9231332097-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="9231332097-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="2561843598-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="2561843598-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="9231332097-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="9231332097-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="8055074205-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="8055074205-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="3003963541-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="3003963541-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="6744208170-1">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="6744208170-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="2304800237-1">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="2304800237-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="2599354444-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="2599354444-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="5547948947-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="5547948947-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="2599354444-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="2599354444-2">}</span><span·class="gp·unselectable">270 </span><span·class="p"·data-group-id="5547948947-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="5547948947-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="7821448539-1">(</span><span·class="p"·data-group-id="7821448539-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="2958575924-1">(</span><span·class="p"·data-group-id="2958575924-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="3308371410-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="3308371410-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="2418327964-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="2418327964-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="3308371410-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="3308371410-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="2418327964-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="2418327964-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="6475477029-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="6475477029-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="0024433028-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="0024433028-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="6475477029-2">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="6475477029-2">)</span><span·class="p">.</span><span·class="w">278 18&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="0024433028-2">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="0024433028-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="6511555472-1">(</span><span·class="mi">1</span><span·class="p"·data-group-id="6511555472-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="9400997925-1">(</span><span·class="mi">1</span><span·class="p"·data-group-id="9400997925-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="8210402803-1">(</span><span·class="p"·data-group-id="8210402803-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="1345166950-1">(</span><span·class="p"·data-group-id="1345166950-1">)</span><span·class="p">.</span><span·class="w">
284 </span><span·class="p"·data-group-id="8210402803-2">[</span><span·class="p"·data-group-id="8210402803-3">{</span><span·class="ss">aa</span><span·class="p">,</span><span·class="ss">worked</span><span·class="p"·data-group-id="8210402803-3">}</span><span·class="p"·data-group-id="8210402803-2">]</span><span·class="gp·unselectable">284 </span><span·class="p"·data-group-id="1345166950-2">[</span><span·class="p"·data-group-id="1345166950-3">{</span><span·class="ss">aa</span><span·class="p">,</span><span·class="ss">worked</span><span·class="p"·data-group-id="1345166950-3">}</span><span·class="p"·data-group-id="1345166950-2">]</span><span·class="gp·unselectable">
285 21&gt;·</span><span·class="nf">put</span><span·class="p"·data-group-id="8210402803-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="8210402803-4">)</span><span·class="p">.</span><span·class="w">285 21&gt;·</span><span·class="nf">put</span><span·class="p"·data-group-id="1345166950-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="1345166950-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="8210402803-5">(</span><span·class="mi">2</span><span·class="p"·data-group-id="8210402803-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="1345166950-5">(</span><span·class="mi">2</span><span·class="p"·data-group-id="1345166950-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="6553149740-1">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="6553149740-1">)</span><span·class="p">.</span><span·class="w">293 24&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="8200843772-1">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="8200843772-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="1352663254-1">(</span><span·class="p"·data-group-id="1352663254-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">put</span><span·class="p"·data-group-id="1352663254-2">(</span><span·class="ss">aa</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·8b47fb2f07f3e38c5add9377c4a873b2397a9c49e0225e08ca08aa75875d6f01·...·]-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="9928101007-1">(</span><span·class="p"·data-group-id="9928101007-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">put</span><span·class="p"·data-group-id="9928101007-2">(</span><span·class="ss">aa</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·3b079270f05c5b53814aac7b202a9e39da60b7642113074fdc2506b91d30c697·...·]-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="1352663254-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="1352663254-4">[</span><span·class="mi">1</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·883a232482b5956126bf525d3ea68e6f350bcbf580dfa432c16164e90c0bd2bb·...·]-3">)</span><span·class="p">.</span><span·class="w">297 26&gt;·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="9928101007-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="9928101007-4">[</span><span·class="mi">1</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·536973e592e9eddde3ed88a6fe01d6d39efdbe6f4611254991fde24dad275b78·...·]-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="1352663254-5">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="1352663254-5">)</span><span·class="p">.</span><span·class="w">299 27&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="9928101007-5">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="9928101007-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="7978218687-1">(</span><span·class="s">&quot;hello·hello\n&quot;</span><span·class="p"·data-group-id="7978218687-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="5528669633-1">(</span><span·class="s">&quot;hello·hello\n&quot;</span><span·class="p"·data-group-id="5528669633-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="7978218687-2">(</span><span·class="mi">28</span><span·class="p"·data-group-id="7978218687-2">)</span><span·class="p">.</span><span·class="w">306 29&gt;·</span><span·class="nf">e</span><span·class="p"·data-group-id="5528669633-2">(</span><span·class="mi">28</span><span·class="p"·data-group-id="5528669633-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="7978218687-3">(</span><span·class="mi">28</span><span·class="p"·data-group-id="7978218687-3">)</span><span·class="p">.</span><span·class="w">309 30&gt;·</span><span·class="nf">v</span><span·class="p"·data-group-id="5528669633-3">(</span><span·class="mi">28</span><span·class="p"·data-group-id="5528669633-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="3599608570-1">(</span><span·class="ss">ex</span><span·class="p"·data-group-id="3599608570-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="0262005835-1">(</span><span·class="ss">ex</span><span·class="p"·data-group-id="0262005835-1">)</span><span·class="p">.</span><span·class="w">
315 </span><span·class="p"·data-group-id="3599608570-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">ex</span><span·class="p"·data-group-id="3599608570-2">}</span><span·class="gp·unselectable">315 </span><span·class="p"·data-group-id="0262005835-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">ex</span><span·class="p"·data-group-id="0262005835-2">}</span><span·class="gp·unselectable">
316 32&gt;·</span><span·class="nf">rr</span><span·class="p"·data-group-id="3599608570-3">(</span><span·class="ss">ex</span><span·class="p"·data-group-id="3599608570-3">)</span><span·class="p">.</span><span·class="w">316 32&gt;·</span><span·class="nf">rr</span><span·class="p"·data-group-id="0262005835-3">(</span><span·class="ss">ex</span><span·class="p"·data-group-id="0262005835-3">)</span><span·class="p">.</span><span·class="w">
317 </span><span·class="p"·data-group-id="3599608570-4">[</span><span·class="ss">rec</span><span·class="p"·data-group-id="3599608570-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="0262005835-4">[</span><span·class="ss">rec</span><span·class="p"·data-group-id="0262005835-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="2023027008-1">(</span><span·class="ss">rec</span><span·class="p"·data-group-id="2023027008-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="7995239654-1">(</span><span·class="ss">rec</span><span·class="p"·data-group-id="7995239654-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="2023027008-2">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="p"·data-group-id="2023027008-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:·6f053a09adf9779e899afec34b53239e4d356a6cc4edf48bcf95b4e7194bded7·...·]-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="7995239654-2">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="p"·data-group-id="7995239654-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:·3d4f9aa828d7b5b25ece0a0d30e0a1001f08a6de40ffe700dd1a9ce98cd2cb4e·...·]-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="5243076458-1">{</span><span·class="p"·data-group-id="5243076458-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="3165103216-1">{</span><span·class="p"·data-group-id="3165103216-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="4936028889-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="4936028889-1">}</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="2274283954-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="2274283954-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="4936028889-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·c[·...·truncated·by·diffoscope;·len:·83,·SHA:·22452739f1296d843fe5094cedb4d527ec733eac47370cf15e2c85fb5b71e655·...·]-2">}</span></code></pre><p>Command·35·shows·the·workaround:·explicitly·assign·values·to·record·fields·that324 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="2274283954-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·c[·...·truncated·by·diffoscope;·len:·83,·SHA:·d77493b9ce6e71bd96343cbd512f28baa8087842e7dc918152d55cfacea6953a·...·]-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="4272981061-1">(</span><span·class="nf">v</span><span·class="p"·data-group-id="4272981061-2">(</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="4272981061-2">)</span><span·class="p"·data-group-id="4272981061-1">)</span><span·class="p">.</span><span·class="w">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="9665468450-1">(</span><span·class="nf">v</span><span·class="p"·data-group-id="9665468450-2">(</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="9665468450-2">)</span><span·class="p"·data-group-id="9665468450-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="4272981061-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:·83,·SHA:·3572057e7a78e4343ffa16c385a8460c2f376f78d04cd98991315dc786d04f43·...·]-3">}</span><span·class="w">326 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="9665468450-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:·83,·SHA:·c8fe7725b14e164dbf760d5049bdcdb6abd8a0bbc076e6bdb4362d1ff4a9685a·...·]-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="2982611296-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2982611296-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:·e4a00e039f4d30399b528fb28c97e7f0cb41fd56ee7506acb68a79bdc3092831·...·]-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="1090084307-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1090084307-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:·19354beca6dbe2db3ac892d8c96fd822035d759a02b90476dd4ec53451fe1cde·...·]-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="2105651504-1">{</span><span·class="p"·data-group-id="2105651504-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="2637058570-1">{</span><span·class="p"·data-group-id="2637058570-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="2105651504-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="2105651504-3">[</span><span·class="p"·data-group-id="2105651504-3">]</span><span·class="p"·data-group-id="2[·...·truncated·by·diffoscope;·len:·9,·SHA:·cb02fa54074204b68c66753cd7da3265212d93e460d7d06bbd0fae3cecf076b3·...·]-2">}</span><span·class="w">331 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="2637058570-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="2637058570-3">[</span><span·class="p"·data-group-id="2637058570-3">]</span><span·class="p"·data-group-id="2[·...·truncated·by·diffoscope;·len:·9,·SHA:·b247c92f6aa609e3ebd160fb827881569255ea970b504f9cdcbc0090b352058a·...·]-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="4203126318-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4203126318-2">{</span><span·class="ss">c</span><span·class="p"·data-group-id="4203126318-2">}</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·e699961b9cd788ac3ba99ccd6888b22cc13a8ec8d4969e42a3202579dbba1a0e·...·]-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·class="p">.</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="6764023336-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6764023336-2">{</span><span·class="ss">c</span><span·class="p"·data-group-id="6764023336-2">}</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·9707c6d00582fafae8476dd30e8ce4fe9b04e50dfabf87166f2d63b8d8a77061·...·]-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="4203126318-3">{</span><span·class="p"·data-group-id="4203126318-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="6764023336-3">{</span><span·class="p"·data-group-id="6764023336-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="4203126318-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="4203126318-4">}</span><span·class="w">335 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="6764023336-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="6764023336-4">}</span><span·class="w">
336 </span><span·class="ss">ok</span></code></pre><p>Command·39·and·40·show·that·record·definitions·are·updated·as·side·effects.·The336 </span><span·class="ss">ok</span></code></pre><p>Command·39·and·40·show·that·record·definitions·are·updated·as·side·effects.·The
337 evaluation·of·the·command·fails,·but·the·definition·of·<code·class="inline">rec</code>·has·been·carried337 evaluation·of·the·command·fails,·but·the·definition·of·<code·class="inline">rec</code>·has·been·carried
338 out.</p><p>For·the·next·command,·it·is·assumed·that·<code·class="inline">test1:loop(N)</code>·is·defined·as·follows:</p><p><code·class="inline">loop(N)·-&gt;</code><br/>    <code·class="inline">io:format(&quot;Hello·Number:·~w~n&quot;,·[N]),</code><br/>    <code·class="inline">loop(N+1).</code></p><pre><code·class="text">41&gt;·test1:loop(0).338 out.</p><p>For·the·next·command,·it·is·assumed·that·<code·class="inline">test1:loop(N)</code>·is·defined·as·follows:</p><p><code·class="inline">loop(N)·-&gt;</code><br/>    <code·class="inline">io:format(&quot;Hello·Number:·~w~n&quot;,·[N]),</code><br/>    <code·class="inline">loop(N+1).</code></p><pre><code·class="text">41&gt;·test1:loop(0).
Max diff block lines reached; 23614/75379 bytes (31.33%) 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="1614974975-1">(</span><span·class="s">&quot;abc&quot;</span><span·class="p"·data-group-id="1614974975-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="8655360038-1">(</span><span·class="s">&quot;abc&quot;</span><span·class="p"·data-group-id="8655360038-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="1614974975-2">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="1614974975-2">)</span><span·class="p">.</span><span·class="w">131 2&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="8655360038-2">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="8655360038-2">)</span><span·class="p">.</span><span·class="w">
132 </span><span·class="p"·data-group-id="1614974975-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="1614974975-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="8655360038-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="8655360038-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>238 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1295 <p>Copyright·©·1996-2024·<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="6954476649-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:·dadcfcdea3b77c3b080ec508b3074710937bd5a9b8c3cc905a2acd19365a2906·...·]-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="2248446290-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:·31948556cf7558f1bd7749e20e13ed0c8e61227f26a80293172adc10f63225ce·...·]-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="9649092693-1">(</span><span·class="p"·data-group-id="9649092693-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="7471227418-1">(</span><span·class="p"·data-group-id="7471227418-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="9649092693-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="9649092693-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="7471227418-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="7471227418-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>711 <p>Copyright·©·1996-2024·<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
297 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="7682878576-1">[</span><span·class="n">DEVELOPMENT</span><span·class="p"·data-group-id="7682878576-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="7682878576-2">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">1[·...·truncated·by·diffoscope;·len:·1496,·SHA:·fcd21ba342894f52d0ccc88ae6b55bcccc88487b800ba29a5ec968969f36f142·...·]-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="3607265115-1">[</span><span·class="n">DEVELOPMENT</span><span·class="p"·data-group-id="3607265115-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="3607265115-2">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">1[·...·truncated·by·diffoscope;·len:·1496,·SHA:·0477b9020805a5061326d591213585ed70cb0639927564c529410835fb440b8b·...·]-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="5541035770-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="5541035770-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="0128051236-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="0128051236-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>228 <p>Copyright·©·1996-2024·<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="5049599662-1">(</span><span·class="s">&quot;··sarah··&quot;</span><span·class="p"·data-group-id="5049599662-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="5565033779-1">(</span><span·class="s">&quot;··sarah··&quot;</span><span·class="p"·data-group-id="5565033779-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="5049599662-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="5049599662-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="5565033779-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="5565033779-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="5049599662-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="5049599662-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="5565033779-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="5565033779-3">)</span><span·class="p">.</span><span·class="w">
157 </span><span·class="p"·data-group-id="5049599662-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="5049599662-4">]</span><span·class="gp·unselectable">157 </span><span·class="p"·data-group-id="5565033779-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="5565033779-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="5049599662-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="5049599662-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="5565033779-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="5565033779-5">)</span><span·class="p">.</span><span·class="w">
159 </span><span·class="p"·data-group-id="5049599662-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·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·51b50b81a3b8987040334961a719c9bce29cd8f99596688cf6e8e99db4ebe182·...·]-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="5565033779-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·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·75da9de87e9f13afa6abbae0e093694a7867592a1e1e8957871d5ecd7837adc7·...·]-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="0916113342-1">(</span><span·class="s">&quot;Ω·and··SHARP·S&quot;</span><span·class="p"·data-group-id="0916113342-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="0850959315-1">(</span><span·class="s">&quot;Ω·and··SHARP·S&quot;</span><span·class="p"·data-group-id="0850959315-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="6917922338-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="6917922338-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="8965107293-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="8965107293-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="6917922338-2">(</span><span·class="s">&quot;\nHello\r\r\n&quot;</span><span·class="p"·data-group-id="6917922338-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="8965107293-2">(</span><span·class="s">&quot;\nHello\r\r\n&quot;</span><span·class="p"·data-group-id="8965107293-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="4559845176-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;</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·c7dd6c346eca5183814f1bf09197ca856a8ca3b89802dfd322612dd180633798·...·]-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="7033955767-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;</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·43ad5da3cf0b6c4431a5765247ba200d68390e1e5b21e9b5728aa2b293c42993·...·]-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="4559845176-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="4559845176-3">[·...·truncated·by·diffoscope;·len:·140,·SHA:·75acd78e4a955a1ac2d615a4b0fdad9f8c7c40f72fe724ae43a94c045097bae3·...·]-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="7033955767-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="7033955767-3">[·...·truncated·by·diffoscope;·len:·140,·SHA:·50dbed67ea10fa68d1cc959c28e5d88dcf922b3e87db5cb20e0a5c21acfa64c2·...·]-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="4559845176-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="4559845176-5">[·...·truncated·by·diffoscope;·len:·291,·SHA:·4b821003c93f23bc79e46b031bbf9433fd7ed758b248acb39c5175e03357327b·...·]-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="7033955767-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="7033955767-5">[·...·truncated·by·diffoscope;·len:·291,·SHA:·b5c259c9676ade5b720e6fbcf5b5d974b1d71f100b8595a2bb9f2d0b06a8cb4b·...·]-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="1033747713-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="1033747713-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="7854976886-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="7854976886-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="1033747713-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:·79,·SHA:·b75ad353519f783db0043b95b282c73c739fa4170da6d7e610659619081c009a·...·]-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="7854976886-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:·79,·SHA:·0e902a013f242fde14d03c50188d81ebf10d06b882a7b6e31a838775dfd329b5·...·]-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="1033747713-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:·77,·SHA:·11b3e60b3564c6c0c37f34048e64e7b905be5270e1ee27ad114b3cbbc400be8e·...·]-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="7854976886-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:·77,·SHA:·a21d5d2a6a15de0c8d7aeea64f89f7993bfe8195f1f28d795246d0bc57a0576d·...·]-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="1033747713-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:·16,·SHA:·b35738350a92f254f4177139e5236b59daa9983c31d231d68ba134769902dc19·...·]-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="7854976886-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:·16,·SHA:·f2ed902abcd1e58c67a22441cecb618ba4cc0df6b1ac93bb4fdfa016c124083c·...·]-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="2379361702-1">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="2379361702-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="5592262724-1">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="5592262724-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="2379361702-2">(</span><span·class="p"·data-group-id="2379361702-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="2379361702-3">]</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·2d2b313f98f13cea5e8a1bd4d234ea856529a1e2b07e6b7d29c881d64a45004f·...·]-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="5592262724-2">(</span><span·class="p"·data-group-id="5592262724-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="5592262724-3">]</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·3ee6d444561dbfb03612610781bff9ba215389315869d98034a112148f50702b·...·]-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="7434950697-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="7434950697-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="5580905295-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="5580905295-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="7434950697-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="7434950697-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="5580905295-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="5580905295-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="4198158813-1">(</span><span·class="p"·data-group-id="4198158813-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4198158813-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="4198158813-3">(</span><span·class="p"·data-group-id="4198158813-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="4198158813-4">(</span><span·class="p"·data-group-id="4198158813-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="4198158813-5">(</span><span·class="p"·data-group-id="4198158813-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="4198158813-6">(</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·262,·SHA:·5c9934f84479ee871aa3565112dcdbd19be23c972b8282a3276fc93152bbbc0b·...·]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="9752262660-1">(</span><span·class="p"·data-group-id="9752262660-1">)</span><span·class="w"[·...·truncated·by·diffoscope;·len:·465,·SHA:·e8aa298b1ad520f19af4317c61ec01703948bb36411021708dcfdae7549343bc·...·]
 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="9752262660-4">(</span><span·class="p"·data-group-id="9752262660-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="9752262660-5">(</span><span·class="p"·data-group-id="9752262660-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="9752262660-6">(</span><span·class="p"·data-group-id="9752262660-6">)</span><span·class="p"·data-group-id="9752262660-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="4599154495-1">(</span><span·class="p"·data-group-id="4599154495-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4599154495-2">#{</span><span·class="ss">id</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·173,·SHA:·b6ef50c87c7608b733a5860a491cb2b24a5d740a04b5cb1afd2baca0d0d75f8f·...·]-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="2398411999-1">(</span><span·class="p"·data-group-id="2398411999-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2398411999-2">#{</span><span·class="ss">id</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·173,·SHA:·027e69710843884f0c29c76b71b0d84a6784af96561da221ef645f0512fb3f5f·...·]-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="4599154495-4">(</span><span·class="p"·data-group-id="4599154495-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="2398411999-4">(</span><span·class="p"·data-group-id="2398411999-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="4599154495-5">(</span><span·class="p"·data-group-id="4599154495-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="2398411999-5">(</span><span·class="p"·data-group-id="2398411999-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="4599154495-6">(</span><span·class="p"·data-group-id="4599154495-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="2398411999-6">(</span><span·class="p"·data-group-id="2398411999-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="4599154495-7">(</span><span·class="p"·data-group-id="4599154495-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="2398411999-7">(</span><span·class="p"·data-group-id="2398411999-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="4599154495-8">(</span><span·class="p"·data-group-id="4599154495-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="2398411999-8">(</span><span·class="p"·data-group-id="2398411999-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="4599154495-9">(</span><span·class="p"·data-group-id="4599154495-9">)</span><span·class="p"·data-group-id="4599154495-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="2398411999-9">(</span><span·class="p"·data-group-id="2398411999-9">)</span><span·class="p"·data-group-id="2398411999-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1807 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>420 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2324 <p>Copyright·©·1996-2024·<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="1166392429-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·[·...·truncated·by·diffoscope;·len:·440,·SHA:·65401c6dcb054c17d4dcb3edcf16d36f99c36ec0caf3b0a78f7601a3dd07fdb0·...·]-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="5708181291-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·[·...·truncated·by·diffoscope;·len:·440,·SHA:·af479fb28cbaa9dbe2047213f02059bfba6e34ef2d296ab32c32e0373a767755·...·]-1">)</span><span·class="p">.</span><span·class="w">
147 </span><span·class="p"·data-group-id="1166392429-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="1166392429-4">}</span><span·class="w">147 </span><span·class="p"·data-group-id="5708181291-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="5708181291-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="7442053139-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="7442053139-2">[</span><span·class="ss">foo</span><span[·...·truncated·by·diffoscope;·len:·164,·SHA:·fe84bea3f7af1ad5ee3e8014b86502e9e0f4ca1123c64ef6d31073d1d2902bf1·...·]-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="1837515421-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="1837515421-2">[</span><span·class="ss">foo</span><span[·...·truncated·by·diffoscope;·len:·164,·SHA:·17eedf14b7b198b68246f1c320cbde32a88da8ddfa2f42e6e8d7fead74b28371·...·]-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="7442053139-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="7442053139-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·460,·SHA:·ebc9e5730b12fa5d68230ef643e885f357030e1c156502ce2bb89c77be45a9e0·...·]-4">)</span><span·class="p">,</span><span·class="w">151 </span><span·class="p"·data-group-id="1837515421-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="1837515421-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·460,·SHA:·ef8fd7f40d00add00df6e10b34dd04a19b2e2b493e98c1b5ee1d3c648b2a12e9·...·]-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="7442053139-6">(</span><span·class="n">R</span><span·class="p"·data-group-id="7442053139-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="1837515421-6">(</span><span·class="n">R</span><span·class="p"·data-group-id="1837515421-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="8993434295-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="8993434295-2">(</span><span·class="p"·data-group-id="8993434295-2">)</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·566,·SHA:·0618e7620f3f6aa31d0667c0aa6710c4152f537af90791f45069514f497a1b44·...·]-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="2564183693-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="2564183693-2">(</span><span·class="p"·data-group-id="2564183693-2">)</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·566,·SHA:·4b1cf0deec3527c67dcaa8769da3aa592fafe204d46e72a8bec620883a2b2e3c·...·]-1">)</span><span·class="p">.</span><span·class="w">
182 </span><span·class="p"·data-group-id="8993434295-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="8993434295-5">}</span><span·class="gp·unselectable">182 </span><span·class="p"·data-group-id="2564183693-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="2564183693-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="0583383643-1">(</span><span·class="p"·data-group-id="0583383643-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="3178877494-1">(</span><span·class="p"·data-group-id="3178877494-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="0583383643-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="0583383643-3">(</span><span·class="p"·data-group-id="0583383643-3">)</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·461,·SHA:·bd132e90522d4880ed60c9d68bfdf7f865195c21283bbaa3dce98081a45cf272·...·]-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="3178877494-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="3178877494-3">(</span><span·class="p"·data-group-id="3178877494-3">)</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·461,·SHA:·c97e3e7839869a080564a99be2995aa5513d13158d1afd27b2371b6c0553c6c5·...·]-2">)</span><span·class="p">.</span><span·class="w">
190 </span><span·class="p"·data-group-id="0583383643-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="0583383643-5">}</span><span·class="gp·unselectable">190 </span><span·class="p"·data-group-id="3178877494-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="3178877494-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="1733693720-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="1733693720-2">(</span><span·class="n">Target</span><span·class="p"·data-group-id="1733693720-2">)</s[·...·truncated·by·diffoscope;·len:·778,·SHA:·d073518f914030a57dd47b2c2ba10727831e13118e68b2d06a8b872d293fb391·...·]-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="2326062291-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="2326062291-2">(</span><span·class="n">Target</span><span·class="p"·data-group-id="2326062291-2">)</s[·...·truncated·by·diffoscope;·len:·778,·SHA:·f8f8b16b9b5cf036642919507daa007405397f0ab6d9239cf79f6872f0710e12·...·]-1">)</span><span·class="p">.</span><span·class="w">
194 </span><span·class="p"·data-group-id="1733693720-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="1733693720-6">}</span><span·class="gp·unselectable">194 </span><span·class="p"·data-group-id="2326062291-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="2326062291-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1641 <p>Copyright·©·1996-2024·<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="6029744303-1">(</span><span·class="n">Data</span><span·class="p"·data-group-id="6029744303-1">)</span><span·class="w">·</span><span·class="p">-&gt;</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="2499639372-1">(</span><span·class="n">Data</span><span·class="p"·data-group-id="2499639372-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="6029744303-2">(</span><span·class="n">Data</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p"·data-group-id="6029744303-2">)</span><span·class="w">·</span><span·class="k">of</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="2499639372-2">(</span><span·class="n">Data</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p"·data-group-id="2499639372-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
1076 ······</span><span·class="p"·data-group-id="6029744303-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="6029744303-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1076 ······</span><span·class="p"·data-group-id="2499639372-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="2499639372-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="6029744303-4">(</span><span·class="p"·data-group-id="6029744303-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="2499639372-4">(</span><span·class="p"·data-group-id="2499639372-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="6029744303-5">(</span><span·class="p"·data-group-id="6029744303-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="6029744303-6">]</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·450cf50ac04e48fc927e5ece8fa298a392d58080cb01485b80306fc806fff4b7·...·]-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="2499639372-5">(</span><span·class="p"·data-group-id="2499639372-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="2499639372-6">]</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·88781a5f7ea198d73c4c34f036d835f3eb4c892ef0165176b3f24d537b39b119·...·]-5">)</span><span·class="p">;</span><span·class="w">
1079 ······</span><span·class="p"·data-group-id="6029744303-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="6029744303-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1079 ······</span><span·class="p"·data-group-id="2499639372-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="2499639372-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="6029744303-8">(</span><span·class="n">Encoded</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="6029744303-8">)</span><span·class="p">;</span><span·class="w">1080 ············</span><span·class="nf">handle_error</span><span·class="p"·data-group-id="2499639372-8">(</span><span·class="n">Encoded</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="2499639372-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="7357765272-1">(</span><span·class="p"·data-group-id="7357765272-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="7357765272-3">[</span><[·...·truncated·by·diffoscope;·len:·587,·SHA:·b967fbab5660a60f609997d95880948f9747cf1a05e87097318c86a12b446584·...·]-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="1117794558-1">(</span><span·class="p"·data-group-id="1117794558-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="1117794558-3">[</span><[·...·truncated·by·diffoscope;·len:·587,·SHA:·2df772810ecf9faa437626ef2db41c4883d34f3a26c1da3e5b1f15b0e963cbd2·...·]-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="4452273235-1">(</span><span·class="p"·data-group-id="4452273235-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="4452273235-3">[</span><[·...·truncated·by·diffoscope;·len:·587,·SHA:·04e6f20493d7f85968e32668370a19361b721d5107a549c9232122ccb49ceb53·...·]-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="3691518457-1">(</span><span·class="p"·data-group-id="3691518457-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="3691518457-3">[</span><[·...·truncated·by·diffoscope;·len:·587,·SHA:·d17dc41d14716da98a55160db4ca05ef8aef75e9599a30b3673058112c74ad32·...·]-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="9605143065-1">(</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="p"·data-group-id="9605143065-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="5931424351-1">(</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="p"·data-group-id="5931424351-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="0192564165-1">(</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="p"·data-group-id="0192564165-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="4905701311-1">(</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="p"·data-group-id="4905701311-1">)</span><span·class="p">.</span><span·class="w">
1209 </span><span·class="p"·data-group-id="0192564165-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:·b1e046fdea022c42a4cbd5614206fb00272e9d2baa293ceec6511c20ee29f01d·...·]-2">]</span></code></pre>1209 </span><span·class="p"·data-group-id="4905701311-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:·e9ea0166f5392ac80c169670e90af9fed2347dc8c5f4216b0f0db958e2d3bbac·...·]-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="6131242449-1">(</span><span·class="p"·data-group-id="6131242449-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="6131242449-3">[</span><[·...·truncated·by·diffoscope;·len:·799,·SHA:·f2ff0d94f0752e94091e5d035be0a1b4b4f459f354cf08b90c82c318499774c5·...·]-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="8827709627-1">(</span><span·class="p"·data-group-id="8827709627-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="8827709627-3">[</span><[·...·truncated·by·diffoscope;·len:·799,·SHA:·62cff6a51deb0e082e5be279ba958eb1ddca24f96cd77595a8efe8b29ebaa3cf·...·]-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="7322330926-1">(</span><span·class="p"·data-group-id="7322330926-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="7322330926-3">[</span><s[·...·truncated·by·diffoscope;·len:·798,·SHA:·812012ea0e187be809b0996e981bc306c9b314ce42d6c7a58cd533f8d2232db8·...·]-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="7629955974-1">(</span><span·class="p"·data-group-id="7629955974-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="7629955974-3">[</span><s[·...·truncated·by·diffoscope;·len:·798,·SHA:·90e91df83dd7ff56daaa053c916bbda2a94c7c91a18e24f1992e9de17ca626c2·...·]-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
1305 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_nfkd_binary</span><span·class="p"·data-group-id="7691859383-1">(</span><span·class="p"·data-group-id="7691859383-2">[</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="7691859383-3">[</span><span·class="mi">65299</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·168,·SHA:·93d10572ed6fc4435316ba9962f9d14e29f3068dd48e3f41105766eceae6be82·...·]-1">)</span><span·class="p">.</span><span·class="w">1305 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_nfkd_binary</span><span·class="p"·data-group-id="8575402225-1">(</span><span·class="p"·data-group-id="8575402225-2">[</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="8575402225-3">[</span><span·class="mi">65299</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·168,·SHA:·b5ccbc82db0c03cc3e8f417b11d0376213da3eddbb3d821dadc4ca2866f35986·...·]-1">)</span><span·class="p">.</span><span·class="w">
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="3375437904-1">(</span><span·class="p"·data-group-id="3375437904-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="3375437904-2">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·12,·SHA:·3a0f643edb3e02d6e3d7e7bfc4390f867acf6542587805651649d9249bc8fd2b·...·]04-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="3656952704-1">(</span><span·class="p"·data-group-id="3656952704-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="3656952704-2">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·12,·SHA:·c8321cd0f3d4d2dec9f13920b4fce726f7390a4ccefad0afe8da998ab22b08bf·...·]04-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="3375437904-3">(</span><span·class="p"·data-group-id="3375437904-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="3375437904-4">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·230,·SHA:·a85d094291e5c18ea9b1ef779abec19291b10a4ddcf9f2837686b1303f449b9f·...·]04-5">)</span><span·class="w">343 </span><span·class="nf">chardata</span><span·class="p"·data-group-id="3656952704-3">(</span><span·class="p"·data-group-id="3656952704-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="3656952704-4">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·230,·SHA:·d7e28d985bc8c8747730270f23ef252de14cf4a3ff21900f0fba36cce806cd06·...·]04-5">)</span><span·class="w">
  
344 </span><span·class="nf">charlist</span><span·class="p"·data-group-id="3375437904-6">(</span><span·class="p"·data-group-id="3375437904-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="3375437904-7">(</span><span·class="n[·...·truncated·by·diffoscope;·len:·533,·SHA:·f0ffc39933582b6ee5ccf30527d1bb5ee7701dea2ca6da03aa42bb6cee682dfc·...·]04-10">)</span><span·class="p">,</span><span·class="w">344 </span><span·class="nf">charlist</span><span·class="p"·data-group-id="3656952704-6">(</span><span·class="p"·data-group-id="3656952704-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="3656952704-7">(</span><span·class="n[·...·truncated·by·diffoscope;·len:·533,·SHA:·c6ebed563b63d183b3db4f2188c3573abc5330c878223a605b7ea30e1537621c·...·]04-10">)</span><span·class="p">,</span><span·class="w">
345 ··</span><span·class="nf">unicode_binary</span><span·class="p"·data-group-id="3375437904-11">(</span><span·class="p"·data-group-id="3375437904-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="3375437904-12">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·66,·SHA:·ba985e6fdadd823be68c824dda58559fd3833f120d2d506f2fac3a119b06f7aa·...·]04-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="3656952704-11">(</span><span·class="p"·data-group-id="3656952704-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="3656952704-12">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·66,·SHA:·78bd626880c7eab9f483ade6d261a0ca14b84ad8896b8c4bbd3e3229b29075cb·...·]04-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="3209185083-1">(</span><span·class="p"·data-group-id="3209185083-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="3209185083-2">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·14,·SHA:·b5b90ef77097a48741ce3c9f0307174a85db82c849e5a9b25c8d65a06a69b1f7·...·]3-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="5738400203-1">(</span><span·class="p"·data-group-id="5738400203-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="5738400203-2">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·14,·SHA:·31130bf69454615e107a867abc6b0d22b9d254879b346a923caca99b601bc99e·...·]3-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="3209185083-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:·32,·SHA:·b94919b3222c5eb2a3a237e666f600471ab2dc145c226e4cbe776c25f69ccb70·...·]3-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="5738400203-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:·32,·SHA:·32459b1dc152f459ddc5596dc897264f7cdfa0285ddb2f7dcb8d6410b9df0f17·...·]3-3">)</span><span·class="w">
  
349 </span><span·class="nf">external_chardata</span><span·class="p"·data-group-id="3209185083-4">(</span><span·class="p"·data-group-id="3209185083-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="3209185083-5">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·250,·SHA:·00e827df2d3f9fc7030092c74d3ccce87c48f1947ee08d9fbe87e5e1ec253752·...·]3-6">)</span><span·class="w">349 </span><span·class="nf">external_chardata</span><span·class="p"·data-group-id="5738400203-4">(</span><span·class="p"·data-group-id="5738400203-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="5738400203-5">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·250,·SHA:·eaf3179f4b63fac92482695bbc4d330e9b63076f302ba1c4d9d0d33df37b138f·...·]3-6">)</span><span·class="w">
  
350 </span><span·class="nf">external_charlist</span><span·class="p"·data-group-id="3209185083-7">(</span><span·class="p"·data-group-id="3209185083-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="3209185083-8">(</span><span·class="[·...·truncated·by·diffoscope;·len:·334,·SHA:·3e480e60782bd7215d1f280319424f2c528e77f3c0bab022270d73a66e9457f9·...·]3-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="5738400203-7">(</span><span·class="p"·data-group-id="5738400203-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="5738400203-8">(</span><span·class="[·...·truncated·by·diffoscope;·len:·334,·SHA:·ee75d816f128962c5b90514d88a43d99750407c5a1e254e42aa355519ddef23c·...·]3-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="3209185083-11">(</span><span·class="p"·data-group-id="3209185083-11">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">external_unicode_binary</span><span·class="p"·data-group-id="3209185083-12">(</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·271,·SHA:·2eb4bffea89809bd5c4884c0bc94583920fb99e9af4a5b85a9e6de5640677e82·...·]3-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="5738400203-11">(</span><span·class="p"·data-group-id="5738400203-11">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">external_unicode_binary</span><span·class="p"·data-group-id="5738400203-12">(</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·271,·SHA:·79f884997d39babd43fc00e780a5a38331b1b3f9342465d448e1d92c7c50c183·...·]3-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="2937391444-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="2937391444-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="0210797421-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="0210797421-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="7384223690-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="7384223690-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·6fda49df47dda9509805a5fca98a6dfe0a4d65a2e9e31b6f456333dbac19c117·...·]-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="0512704297-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="0512704297-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·c58cd0e221443150816287f764624ffc9fe126e2965d447bd1f42688e16e47a7·...·]-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="7384223690-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="7384223690-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="0512704297-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="0512704297-6">)</span><span·class="gp·unselectable">
425 1&gt;·</span><span·class="p"·data-group-id="7384223690-7">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="7384223690-7">]</span><span·class="p">.</span><span·class="w">425 1&gt;·</span><span·class="p"·data-group-id="0512704297-7">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="0512704297-7">]</span><span·class="p">.</span><span·class="w">
426 </span><span·class="p"·data-group-id="7384223690-8">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="7384223690-8">]</span><span·class="gp·unselectable">426 </span><span·class="p"·data-group-id="0512704297-8">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="0512704297-8">]</span><span·class="gp·unselectable">
427 2&gt;·</span><span·class="p"·data-group-id="7384223690-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:·cf52f7878aef42f91a929db5e035e5427eae37ee5776d4eac24e48a810a127f5·...·]-9">]</span><span·class="p">.</span><span·class="w">427 2&gt;·</span><span·class="p"·data-group-id="0512704297-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:·2a5792749c2ff61149752f45969b518ec9c05ac808cb5b68d69621aac9c1becd·...·]-9">]</span><span·class="p">.</span><span·class="w">
428 </span><span·class="p"·data-group-id="7384223690-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:·8c6975f10e9057d8d1c14e7d35ef1a66008351bccadaca04a8b7ac96b04dcb5b·...·]-10">]</span><span·class="gp·unselectable">428 </span><span·class="p"·data-group-id="0512704297-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:·2b3f22410cb25f209aa965cde45695e06b3b0f120667bcaa59e9e2155d85fb87·...·]-10">]</span><span·class="gp·unselectable">
429 3&gt;·</span><span·class="p"·data-group-id="7384223690-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="7384223690-11">]</span><span·class="p">.</span><span·class="w">429 3&gt;·</span><span·class="p"·data-group-id="0512704297-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="0512704297-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="1707734193-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="1707734193-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·0c7336312db9c6c26b67ed3bd25dd0520eb841e1941e9ced9445edc6c7faa373·...·]-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="0611437359-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="0611437359-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·566d60519630e71911eadbe3e53d7c71916f1c2a20fef6ccaf880377f084623c·...·]-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="1707734193-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="1707734193-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="0611437359-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="0611437359-6">)</span><span·class="gp·unselectable">
437 1&gt;·</span><span·class="p"·data-group-id="1707734193-7">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="1707734193-7">]</span><span·class="p">.</span><span·class="w">437 1&gt;·</span><span·class="p"·data-group-id="0611437359-7">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="0611437359-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="1707734193-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</spa[·...·truncated·by·diffoscope;·len:·95,·SHA:·5d84e92dca0575bb63b520566f343b0e6ddc306dcdace1f46d115e60afeb7431·...·]-8">]</span><span·class="p">.</span><span·class="w">439 2&gt;·</span><span·class="p"·data-group-id="0611437359-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</spa[·...·truncated·by·diffoscope;·len:·95,·SHA:·b8489079a59ffb2d6cf9099e64eec0e56c3bdb753fc92720aa6ec1bb58ee3ac8·...·]-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="1707734193-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="1707734193-9">]</span><span·class="p">.</span><span·class="w">441 3&gt;·</span><span·class="p"·data-group-id="0611437359-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="0611437359-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="1328990804-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="1328990804-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·7bdbb8c8dda7282cd14b01aaa8465fe0c8a4dbbbdc4ece225a32d31ab014e71a·...·]-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="6129292909-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="6129292909-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·b8911475a6128d3aabda1c94d8742d527b30aa056e43344a8bc61b01eb911a5d·...·]-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="1328990804-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="1328990804-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="6129292909-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="6129292909-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="1328990804-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="1328990804-8">[</span><span·class="p"·data-group-id="1328990804-9">{</span><span·class="p">&[·...·truncated·by·diffoscope;·len:·1128,·SHA:·41e9608945fb50e42f18e918fdea13777e5f08ee54055fce26d33bc558d66299·...·]-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="6129292909-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="6129292909-8">[</span><span·class="p"·data-group-id="6129292909-9">{</span><span·class="p">&[·...·truncated·by·diffoscope;·len:·1128,·SHA:·68c5c4e6eb20c56c7439b154e2d64792ee0cda1416325e8a575884d4b4fe0ab9·...·]-7">)</span><span·class="p">.</span><span·class="w">
457 </span><span·class="p"·data-group-id="1328990804-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:·02bb0858237ec833249964aa3be0cc053db6b9578e115cdbadb86824ef82be43·...·]-10">}</span><span·class="w">457 </span><span·class="p"·data-group-id="6129292909-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:·89e56bb5dfbb2d09624c3f09f059e226608a6ef243d28cb752d4bcbfce4cd762·...·]-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="9758709969-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="9758709969-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·b98acef3030376259ae10ba7459e9ddd82f329eccac8f2c5392b832750becb24·...·]-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="1182010283-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="1182010283-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·ac4cc3035f099b7bbf2555e96ded9a7623d62fe7a21ca96ce8cc8e32fa7ffeeb·...·]-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="9758709969-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="9758709969-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="1182010283-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="1182010283-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="9758709969-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="9758709969-8">[</span><span·class="p"·data-group-id="9758709969-9">{</span><span·class="p">&[·...·truncated·by·diffoscope;·len:·1128,·SHA:·4746df67b043dbc7cd7ac62b90108e31e7a39e88a694453c4f716c91c270c7c0·...·]-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="1182010283-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="1182010283-8">[</span><span·class="p"·data-group-id="1182010283-9">{</span><span·class="p">&[·...·truncated·by·diffoscope;·len:·1128,·SHA:·638350950b74f5b86781ff18cecdb049537fb94c40b7907ca791eb101b09f25a·...·]-7">)</span><span·class="p">.</span><span·class="w">
462 </span><span·class="p"·data-group-id="9758709969-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:·263,·SHA:·ec9c772407428dabecb619ecef8f36c01d9f78091ff4141be775f05887805323·...·]-10">}</span><span·class="w">462 </span><span·class="p"·data-group-id="1182010283-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:·263,·SHA:·a4b94f303e14e30b11dc109263622ab1e5fb3d9a7127e44e431c77986607c085·...·]-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="1266383679-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="1266383679-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·781,·SHA:·1ba062f81c63850593a5fbb19856c66c23f92f02fe1d16b8d273c3ec2b0cac5b·...·]9-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="2042187159-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="2042187159-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·781,·SHA:·ec48e732920717b17d9ac6ec986981196b1422905ecc6ae25e677a5cb03f6676·...·]9-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="1266383679-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="1266383679-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="2042187159-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="2042187159-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="1266383679-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:·146,·SHA:·83c74953fa261e22fd0352fb6f96bc1acbf6bdc7e45f886cfc4d6aae25d83a01·...·]9-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="2042187159-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:·146,·SHA:·710aad2e055fcc0af95d479966b27c018cf5c742bbc42781be1dfea65fba3cc9·...·]9-7">)</span><span·class="p">.</span><span·class="w">
492 </span><span·class="p"·data-group-id="1266383679-9">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="ss">latin1</span><span·class="p"·data-group-id="1266383679-9">}</span><span·class="gp·unselectable">492 </span><span·class="p"·data-group-id="2042187159-9">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="ss">latin1</span><span·class="p"·data-group-id="2042187159-9">}</span><span·class="gp·unselectable">
493 2&gt;·</span><span·class="nf">q</span><span·class="p"·data-group-id="1266383679-10">(</span><span·class="p"·data-group-id="1266383679-10">)</span><span·class="p">.</span><span·class="w">493 2&gt;·</span><span·class="nf">q</span><span·class="p"·data-group-id="2042187159-10">(</span><span·class="p"·data-group-id="2042187159-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="1266383679-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="1266383679-11">)</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·790,·SHA:·bb76b0f90ac0ae2fc34a84849b25e6fd8b6200c5ab79b60063e49a96f7bf0534·...·]9-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="2042187159-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="2042187159-11">)</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·790,·SHA:·dca2cc0472c074b3f0a524ccd64403350d3b90641b19af64b92aebed5f1a1fba·...·]9-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="1266383679-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="1266383679-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="2042187159-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="2042187159-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="1266383679-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:·149,·SHA:·9db7363eb3e597770d2a315c1394f06ebdc2c34cf0414be84741d2dd6e539713·...·]9-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="2042187159-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:·149,·SHA:·6a405712fec94a6c0cb3be24214895ee1d723438570fa01c71574ad140937818·...·]9-17">)</span><span·class="p">.</span><span·class="w">
499 </span><span·class="p"·data-group-id="1266383679-19">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p"·data-group-id="1266383679-19">}</span><span·class="w">499 </span><span·class="p"·data-group-id="2042187159-19">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p"·data-group-id="2042187159-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="4447916021-1">(</span><span·class="p"·data-group-id="4447916021-2">[</span><span·class="p"·data-group-id="4447916021-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:·abf579e926ef7ee6390496bc2017a12bbecf6de96da7f3d8d8003529defadf2a·...·]-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="1952001046-1">(</span><span·class="p"·data-group-id="1952001046-2">[</span><span·class="p"·data-group-id="1952001046-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:·c87f9b01584956dcf85b595342d575f6c0864be009ee6920c2b8e1867700b0a4·...·]-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="4447916021-5">(</span><span·class="p"·data-group-id="4447916021-6">[</span><span·class="p"·data-group-id="4447916021-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:·d9fe4722b48f5e84fd92320a54d84c212d3a03b2ea05aabd98500d2d4419b0c0·...·]-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="1952001046-5">(</span><span·class="p"·data-group-id="1952001046-6">[</span><span·class="p"·data-group-id="1952001046-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:·391d44d398305999cb8e304ce23a45fde0b40009258f7bef7e936cee983577a8·...·]-7">}</span><span·class="p">,</span><span·class="gp·unselectable">
605 2&gt;·</span><span·class="p"·data-group-id="4447916021-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:·1d4fd899920e96e48f941cb5649df9d7288f3c4b090c5edfc64b9fc8e1caae7b·...·]-5">)</span><span·class="p">.</span><span·class="w">605 2&gt;·</span><span·class="p"·data-group-id="1952001046-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:·cb6820829df5d3187f50f8beaf2d4908682c71b0769a64329c6d17e4e4634819·...·]-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="8088942649-1">(</span><span·class="p"·data-group-id="8088942649-2">[</span><span·class="p"·data-group-id="8088942649-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="8088942649-3">}</span><span·class="p">,</span><span·class="p"·data-group-id="8088942649-4">{</span><span·class="s">&quot;city&quot;</span><span·class="p">,</span><span·class="s">&quot;örebro&quot;</span><span·class="p"·data-group-id="8088942649-4">}</span><span·class="p"·data-group-id="8088942649-2">]</span><span·class="p">,</span><span·class="gp·unselectable"> 
652 1&gt;·</span><span·class="p"·data-group-id="8088942649-5">[</span><span·class="p"·data-group-id="8088942649-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-[·...·truncated·by·diffoscope;·len:·170,·SHA:·22d5207e74eb195eca341754a0c82cd95fcfa9db0df3e1507d3029baaeed27ec·...·]">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">[·...·truncated·by·diffoscope;·len:·731,·SHA:·2d2c7878beaee8c32ad319e9ac011bb8ce070a481d316a6a4066a16d98a0f033·...·]">
 652 1&gt;·</span><span·class="p"·data-group-id="4206139215-5">[</span><span·class="p"·data-group-id="4206139215-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="4206139215-6">}</span><span·class="p"·data-group-id="4206139215-5">]</span><span·class="p"·data-group-id="4206139215-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="8088942649-7">(</span><span·class="p"·data-group-id="8088942649-8">[</span><span·class="p"·data-group-id="8088942649-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="8088942649-9">}</span><span·class="p">,</span><span·class="gp·unselectable"> 
655 2&gt;·</span><span·class="p"·data-group-id="8088942649-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:·e69b307db2bb86e45958e2bb9487588345da8a320d2b7955429d02eac052e11d·...·]">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="4206139215-7">(</span><span·class="p"·data-group-id="4206139215-8">[</span><span·class="p"·data-group-id="4206139215-9">{</span><span·class="p"[·...·truncated·by·diffoscope;·len:·316,·SHA:·ae3f7a462e55c8d8fedb476e7cb5a525f866cf580dd417857f4a595c5e4d9da7·...·]">
 655 2&gt;·</span><span·class="p"·data-group-id="4206139215-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="4206139215-10">}</span><span·class="p"·data-group-id="4206139215-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4206139215-11">[</span><span·class="p"·data-group-id="4206139215-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="4206139215-12">}</span><span·class="p"·data-group-id="4206139215-11">]</span><span·class="p"·data-group-id="4206139215-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="3495372208-1">(</span><span·class="s">&quot;foo+bar=1&amp;city=%C3%B6rebro&quot;</span><span·class="p"·data-group-id="3495372208-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="2871806583-1">(</span><span·class="s">&quot;foo+bar=1&amp;city=%C3%B6rebro&quot;</span><span·class="p"·data-group-id="2871806583-1">)</span><span·class="p">.</span><span·class="w">
691 </span><span·class="p"·data-group-id="3495372208-2">[</span><span·class="p"·data-group-id="3495372208-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="3495372208-3">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·249,·SHA:·c35efa0814f69456206052f0f16fe6995be790d14abf81205f9e8d4a8262f782·...·]-2">]</span><span·class="gp·unselectable">691 </span><span·class="p"·data-group-id="2871806583-2">[</span><span·class="p"·data-group-id="2871806583-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="2871806583-3">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·249,·SHA:·a29282c74d07fb1ac22521cefc4332985f505c6b9f68dde3f00a7d2227db4b7d·...·]-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="3495372208-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="3495372208-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="2871806583-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="2871806583-5">)</span><span·class="p">.</span><span·class="w">
693 </span><span·class="p"·data-group-id="3495372208-6">[</span><span·class="p"·data-group-id="3495372208-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;[·...·truncated·by·diffoscope;·len:·86,·SHA:·db98ab569be12c249942e25900c574a224017daf42dc496ee86f926081cce6a3·...·]-7">}</span><span·class="p">,</span><span·class="w">693 </span><span·class="p"·data-group-id="2871806583-6">[</span><span·class="p"·data-group-id="2871806583-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;[·...·truncated·by·diffoscope;·len:·86,·SHA:·36f3bf2a4a71ffb05f4c519b436c00dafb3e345033873ea951b27119fd16bdcc·...·]-7">}</span><span·class="p">,</span><span·class="w">
694 ·</span><span·class="p"·data-group-id="3495372208-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:·329,·SHA:·dc400c80d25798da635f2b6f393a601dbe7b3ca57356c7f11d6c78adae66d18f·...·]-6">]</span></code></pre>694 ·</span><span·class="p"·data-group-id="2871806583-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:·329,·SHA:·2679808d130886c69d274863f1b67d2adcdd88057b5250f609fd980b46cf7fe4·...·]-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="8680967999-1">(</span><span·class="s">&quot;/a/b/c/./../../g&quot;</span><span·class="p"·data-group-id="8680967999-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="0577723040-1">(</span><span·class="s">&quot;/a/b/c/./../../g&quot;</span><span·class="p"·data-group-id="0577723040-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="8680967999-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="8680967999-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="0577723040-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="0577723040-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="8680967999-3">(</span><span·class="s">&quot;http://localhost:80&quot;</span><span·class="p"·data-group-id="8680967999-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="0577723040-3">(</span><span·class="s">&quot;http://localhost:80&quot;</span><span·class="p"·data-group-id="0577723040-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="8680967999-4">(</span><span·class="p"·data-group-id="8680967999-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="0577723040-4">(</span><span·class="p"·data-group-id="0577723040-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="8680967999-5">}</span><span·class="p"·data-group-id="8680967999-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="0577723040-5">}</span><span·class="p"·data-group-id="0577723040-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="4064398481-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="4064398481-2">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="4064398481-2">]</[·...·truncated·by·diffoscope;·len:·46,·SHA:·84edcfcba42d8f8a1fbce7ebc2408e1e1f8ff0e78e3d9bdd2590e3b2135ba31d·...·]-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="2445490650-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="2445490650-2">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="2445490650-2">]</[·...·truncated·by·diffoscope;·len:·46,·SHA:·4abfba1706dbe689d1fb5e4f078f11741827201a4ccd1ff8a4df40b440ff0b80·...·]-1">)</span><span·class="p">.</span><span·class="w">
773 </span><span·class="p"·data-group-id="4064398481-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="4064398481-3">}</span><span·class="gp·unselectable">773 </span><span·class="p"·data-group-id="2445490650-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="2445490650-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="4064398481-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="4064398481-5">[</span><span·class="ss">r[·...·truncated·by·diffoscope;·len:·110,·SHA:·1160759eeea852141778f25085c2dfd979673e2f36ba9a61b79f51eb8b6fa365·...·]-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="2445490650-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="2445490650-5">[</span><span·class="ss">r[·...·truncated·by·diffoscope;·len:·110,·SHA:·8811b3588b9f6d08b76b1d2d37800b2bf2bc2d5c3eef1418c99602ebfb29104a·...·]-4">)</span><span·class="p">.</span><span·class="w">
775 </span><span·class="p"·data-group-id="4064398481-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:·c4001cea1c61f2f70d910e9a76ff60a6edb39cb9daae6b2f625b10cb71bd59f3·...·]-6">}</span><span·class="gp·unselectable">775 </span><span·class="p"·data-group-id="2445490650-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:·09a9e4db0197a0df8866b59c6652b8888573268f41f09255dfb6f3dd7fa4792b·...·]-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="4064398481-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="4064398481-8">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="4064398481-8">[·...·truncated·by·diffoscope;·len:·49,·SHA:·13230069c9c3e7305d780c0cb237421317bbf5ea0dfab50b5aa4756ad27affac·...·]-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="2445490650-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="2445490650-8">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="2445490650-8">[·...·truncated·by·diffoscope;·len:·49,·SHA:·19df714a0cb649523cb72c848d309e6764d3e1f657a94b91267315eef9d00dbb·...·]-7">)</span><span·class="p">.</span><span·class="w">
777 </span><span·class="p"·data-group-id="4064398481-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:·a428646702c8d9a343128474bccc9579a8de076840d82ad6cfd9c3d4d0665de6·...·]-9">}</span><span·class="gp·unselectable">777 </span><span·class="p"·data-group-id="2445490650-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:·c812d8244624c655aeed05ae0e9a444dbff383acefd88582eff4bb039aec0a9d·...·]-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="4064398481-10">(</span><span·class="p"·data-group-id="4064398481-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="2445490650-10">(</span><span·class="p"·data-group-id="2445490650-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="4064398481-11">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4064398481-12">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="4064398481-12">]</span><span·class="p"·data-group-id="4064398481-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="2445490650-11">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2445490650-12">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="2445490650-12">]</span><span·class="p"·data-group-id="2445490650-10">)</span><span·class="p">.</span><span·class="w">
780 </span><span·class="p"·data-group-id="4064398481-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:·afd751076be9dc9cd99c8c5f668af2a6007306fffd6664e3c46afd41ea358511·...·]-13">}</span></code></pre>780 </span><span·class="p"·data-group-id="2445490650-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:·c40d0cee76170d9320482a01f89910820a0ced87de15663787e28cc709a38921·...·]-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="6848445574-1">(</span><span·class="s">&quot;foo://user@example.com:8042/over/there?name=ferret#nose&quot;</span><span·class="p"·data-group-id="6848445574-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="1369883843-1">(</span><span·class="s">&quot;foo://user@example.com:8042/over/there?name=ferret#nose&quot;</span><span·class="p"·data-group-id="1369883843-1">)</span><span·class="p">.</span><span·class="w">
812 </span><span·class="p"·data-group-id="6848445574-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="1369883843-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="6848445574-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="1369883843-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="6848445574-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="6848445574-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="1369883843-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="1369883843-3">)</span><span·class="p">.</span><span·class="w">
816 </span><span·class="p"·data-group-id="6848445574-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="1369883843-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="6848445574-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="1369883843-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">
  
Max diff block lines reached; 42472/84480 bytes (50.27%) 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="2130890443-1">(</span><span·class="s">&quot;http://cities/örebro?foo·bar&quot;</span><span·class="p"·data-group-id="2130890443-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="1196484114-1">(</span><span·class="s">&quot;http://cities/örebro?foo·bar&quot;</span><span·class="p"·data-group-id="1196484114-1">)</span><span·class="p">.</span><span·class="w">
198 ··</span><span·class="p"·data-group-id="2130890443-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="2130890443-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="1196484114-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="1196484114-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="2273954284-1">(</span><span·class="p"·data-group-id="2273954284-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="2089178828-1">(</span><span·class="p"·data-group-id="2089178828-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="2273954284-2">}</span><span·class="p"·data-group-id="2273954284-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="2089178828-2">}</span><span·class="p"·data-group-id="2089178828-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="1560614298-1">(</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="1560614298-2">(</span><span·class="s">&quot;http://cities/%C3%B6rebro?foo%20bar&quot;</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·69,·SHA:·3525ffd113b88de064afbcc58949111b173d28dc804c941e7b42ae0f05d74e2c·...·]8-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="6943949448-1">(</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="6943949448-2">(</span><span·class="s">&quot;http://cities/%C3%B6rebro?foo%20bar&quot;</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·69,·SHA:·b558dd1652c68313410ad0e73067fa839283c01c0faf3da663ac5208cabc7c88·...·]8-1">)</span><span·class="p">.</span><span·class="w">
208 ··</span><span·class="p"·data-group-id="1560614298-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="6943949448-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="1560614298-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="6943949448-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="7987195622-1">(</span><span·class="p"·data-group-id="7987195622-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="1007182958-1">(</span><span·class="p"·data-group-id="1007182958-1">)</span><span·class="p">.</span><span·class="w">
233 ····</span><span·class="p"·data-group-id="7987195622-2">[</span><span·class="p"·data-group-id="7987195622-3">{</span><span·class="ss">scheme</span><span·class="p">,</span><span·class="w">233 ····</span><span·class="p"·data-group-id="1007182958-2">[</span><span·class="p"·data-group-id="1007182958-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="7987195622-3">}</span><span·class="p">,</span><span·class="w">234 ·····</span><span·class="s">&quot;+-.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&quot;</span><span·class="p"·data-group-id="1007182958-3">}</span><span·class="p">,</span><span·class="w">
235 ····</span><span·class="p"·data-group-id="7987195622-4">{</span><span·class="ss">userinfo</span><span·class="p">,</span><span·class="w">235 ····</span><span·class="p"·data-group-id="1007182958-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="7987195622-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="1007182958-4">}</span><span·class="p">,</span><span·class="w">
237 ····</span><span·class="p"·data-group-id="7987195622-5">{</span><span·class="ss">host</span><span·class="p">,</span><span·class="w">237 ····</span><span·class="p"·data-group-id="1007182958-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="7987195622-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="1007182958-5">}</span><span·class="p">,</span><span·class="w">
239 ····</span><span·class="p"·data-group-id="7987195622-6">{</span><span·class="ss">ipv4</span><span·class="p">,</span><span·class="s">&quot;.0123456789&quot;</span><span·class="p"·data-group-id="7987195622-6">}</span><span·class="p">,</span><span·class="w">239 ····</span><span·class="p"·data-group-id="1007182958-6">{</span><span·class="ss">ipv4</span><span·class="p">,</span><span·class="s">&quot;.0123456789&quot;</span><span·class="p"·data-group-id="1007182958-6">}</span><span·class="p">,</span><span·class="w">
240 ····</span><span·class="p"·data-group-id="7987195622-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="7987195622-7">}</span><span·class="p">,</span><span·class="w">240 ····</span><span·class="p"·data-group-id="1007182958-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="1007182958-7">}</span><span·class="p">,</span><span·class="w">
241 ····</span><span·class="p"·data-group-id="7987195622-8">{</span><span·class="ss">regname</span><span·class="p">,</span><span·class="w">241 ····</span><span·class="p"·data-group-id="1007182958-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="7987195622-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="1007182958-8">}</span><span·class="p">,</span><span·class="w">
243 ····</span><span·class="p"·data-group-id="7987195622-9">{</span><span·class="ss">path</span><span·class="p">,</span><span·class="w">243 ····</span><span·class="p"·data-group-id="1007182958-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="7987195622-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="1007182958-9">}</span><span·class="p">,</span><span·class="w">
245 ····</span><span·class="p"·data-group-id="7987195622-10">{</span><span·class="k">query</span><span·class="p">,</span><span·class="w">245 ····</span><span·class="p"·data-group-id="1007182958-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="7987195622-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="1007182958-10">}</span><span·class="p">,</span><span·class="w">
247 ····</span><span·class="p"·data-group-id="7987195622-11">{</span><span·class="ss">fragment</span><span·class="p">,</span><span·class="w">247 ····</span><span·class="p"·data-group-id="1007182958-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="7987195622-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="1007182958-11">}</span><span·class="p">,</span><span·class="w">
249 ····</span><span·class="p"·data-group-id="7987195622-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="7987195622-12">}</span><span·class="p">,</span><span·class="w">249 ····</span><span·class="p"·data-group-id="1007182958-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="1007182958-12">}</span><span·class="p">,</span><span·class="w">
250 ····</span><span·class="p"·data-group-id="7987195622-13">{</span><span·class="ss">unreserved</span><span·class="p">,</span><span·class="w">250 ····</span><span·class="p"·data-group-id="1007182958-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="7987195622-13">}</span><span·class="p"·data-group-id="7987195622-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="1007182958-13">}</span><span·class="p"·data-group-id="1007182958-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="1218699125-1">(</span><span·class="p"·data-group-id="1218699125-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:·c89c0bb3df2a4f0ae2bc68f15ac20e926ef5f72d064aa7af54661303c83e8eed·...·]-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="8246371870-1">(</span><span·class="p"·data-group-id="8246371870-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:·dffcd342ebb90df6a017e64b83275853cd137644554ae1ccd161f28e4ec32b8f·...·]-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="0200382555-1">(</span><span·class="s">&quot;http://%6C%6Fcal%23host/%F6re%26bro%20&quot;</span><span·class="p"·data-group-id="0200382555-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="9710290057-1">(</span><span·class="s">&quot;http://%6C%6Fcal%23host/%F6re%26bro%20&quot;</span><span·class="p"·data-group-id="9710290057-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="0200382555-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="0200382555-3">[</span><span·class="ss">return_map</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·0d6faa170f18ff5e1531eb094458162e9790b38d7dcb611a48f9d63fcbeb2e82·...·]-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="9710290057-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="9710290057-3">[</span><span·class="ss">return_map</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·bfdb01348b6d1e639b224eb35687b1bab963405b75393b59e3cb1602ee64ecfe·...·]-2">)</span><span·class="p">.</span><span·class="w">
267 ····</span><span·class="p"·data-group-id="0200382555-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="9710290057-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="0200382555-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="9710290057-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="8974983174-1">(</span><span·class="s">&quot;local%23host&quot;</span><span·class="p"·data-group-id="8974983174-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="7775443711-1">(</span><span·class="s">&quot;local%23host&quot;</span><span·class="p"·data-group-id="7775443711-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="8974983174-2">(</span><span·class="s">&quot;/%F6re%26bro%20&quot;</span><span·class="p"·data-group-id="8974983174-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="7775443711-2">(</span><span·class="s">&quot;/%F6re%26bro%20&quot;</span><span·class="p"·data-group-id="7775443711-2">)</span><span·class="p">.</span><span·class="w">
275 ····</span><span·class="p"·data-group-id="8974983174-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:·7629d88fdb22dded9325881efa1fd75f06fdca55decb2af630f547a375a7da09·...·]-3">}</span><span·class="w">275 ····</span><span·class="p"·data-group-id="7775443711-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:·632dbd0a0a6a2fb6e9c0ec353ae2d2928ab12f7a9f52c3da4b7e7e03b31ed95d·...·]-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="8974983174-4">(</span><span·class="p"·data-group-id="8974983174-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="7775443711-4">(</span><span·class="p"·data-group-id="7775443711-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="8974983174-5">}</span><span·class="p"·data-group-id="8974983174-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="7775443711-5">}</span><span·class="p"·data-group-id="7775443711-4">)</span><span·class="p">.</span><span·class="w">
278 ····</span><span·class="p"·data-group-id="8974983174-6">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="p"·data-group-id="8974983174-7">{</span><span·class="ss">invalid</span><span·class="p">,</span><span·class="p"·data-group-id="8974983174-8">{</span><span·class="ss">pat[·...·truncated·by·diffoscope;·len:·455,·SHA:·586d99d102e80da4196c1e59a4101e92c87aa89929e4299b984ee36f5735bbe0·...·]-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="7775443711-6">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="p"·data-group-id="7775443711-7">{</span><span·class="ss">invalid</span><span·class="p">,</span><span·class="p"·data-group-id="7775443711-8">{</span><span·class="ss">pat[·...·truncated·by·diffoscope;·len:·455,·SHA:·7248e206829167c2a12ed231e51064e6ea1a3a6e1cac11bfe9e4f753a5bad366·...·]-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="0830342855-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="0830342855-2">[</span><span·class="p"·data-group-id="0830342855-3">{</span><span·class="ss">in_encoding</[·...·truncated·by·diffoscope;·len:·230,·SHA:·0b973350559c8b70119279b249af274164d79d94a189434d2dbdf215fe0cf712·...·]-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="3205203334-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="3205203334-2">[</span><span·class="p"·data-group-id="3205203334-3">{</span><span·class="ss">in_encoding</[·...·truncated·by·diffoscope;·len:·230,·SHA:·b6107d526998f7fce10e2c0de724b7c5528eb9bc4193caf9b1987d63cc56dff9·...·]-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="0830342855-4">(</span><span·class="s">&quot;/%C3%B6re%26bro%20&quot;</span><span·class="p"·data-group-id="0830342855-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="3205203334-4">(</span><span·class="s">&quot;/%C3%B6re%26bro%20&quot;</span><span·class="p"·data-group-id="3205203334-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="5134264267-1">(</span><span·class="s">&quot;http://%6C%6Fcal%23host/%C3%B6re%26bro%20&quot;</span><span·class="p"·data-group-id="5134264267-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="1862049826-1">(</span><span·class="s">&quot;http://%6C%6Fcal%23host/%C3%B6re%26bro%20&quot;</span><span·class="p"·data-group-id="1862049826-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="5134264267-2">(</span><span·class="s">&quot;http://local#host/öre&amp;bro·&quot;</span><span·class="p"·data-group-id="5134264267-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="1862049826-2">(</span><span·class="s">&quot;http://local#host/öre&amp;bro·&quot;</span><span·class="p"·data-group-id="1862049826-2">)</span><span·class="p">.</span><span·class="w">
289 ····</span><span·class="p"·data-group-id="5134264267-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="5134264267-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="1862049826-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="1862049826-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>383 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>919 <p>Copyright·©·1996-2024·<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="8110466501-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8110466501-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:·8af5480b0be0c2d548925784b06d2ce2376d141b77f18a76455ad6fa0035b55f·...·]-3">)</span><span·class="p">.</span><span·class="w">1004 &gt;·</span><span·class="p"·data-group-id="4662457695-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4662457695-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:·ee15eb364b95be78f0916cf8811c02cc9174dabb091d625b2d187cc5d77e250b·...·]-3">)</span><span·class="p">.</span><span·class="w">
1005 </span><span·class="p"·data-group-id="8110466501-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8110466501-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="4662457695-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4662457695-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="8110466501-9">}</span><span·class="p"·data-group-id="8110466501-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="4662457695-9">}</span><span·class="p"·data-group-id="4662457695-8">}</span><span·class="gp·unselectable">
1008 &gt;·</span><span·class="p"·data-group-id="8110466501-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="8110466501-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·1787,·SHA:·2383312e8708701ed31f9c39facd866a8908df00fc2be3887844c8340a0af2cb·...·]-11">)</span><span·class="p">.</span><span·class="w">1008 &gt;·</span><span·class="p"·data-group-id="4662457695-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="4662457695-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·1787,·SHA:·fbf8a70d8650fb96e37ce3f4d4c11c29b267ec5885a316efcd582517d3b3be7f·...·]-11">)</span><span·class="p">.</span><span·class="w">
1009 </span><span·class="p"·data-group-id="8110466501-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8110466501-20">[</span><span·class="p"·data-group-id="8110466501-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="4662457695-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4662457695-20">[</span><span·class="p"·data-group-id="4662457695-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="8110466501-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="4662457695-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="8110466501-23">{</span><span·class="p"·data-group-id="8110466501-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="8110466501-24">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·e57126adf29db5d616e7dd770cfd335a22f8878e5d35d0e1139fbb2be9bc1cf3·...·]-23">}</span><span·class="p">,</span><span·class="w">1011 ·················</span><span·class="p"·data-group-id="4662457695-23">{</span><span·class="p"·data-group-id="4662457695-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="4662457695-24">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·27ff42a3a646aa7a197ebbfc183719426451d9f0646bca7bd497dccfee0fad76·...·]-23">}</span><span·class="p">,</span><span·class="w">
1012 ·················</span><span·class="p"·data-group-id="8110466501-26">{</span><span·class="p"·data-group-id="8110466501-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="8110466501-27">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·0513d5316f0813de5612ea703f50016044f897bf122de7ba67e0e0e451e7cce8·...·]-26">}</span><span·class="p">,</span><span·class="w">1012 ·················</span><span·class="p"·data-group-id="4662457695-26">{</span><span·class="p"·data-group-id="4662457695-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="4662457695-27">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·b9038fe5597738083d900b7b4f93823446cb49ef6440f39ae8409d598d7aba66·...·]-26">}</span><span·class="p">,</span><span·class="w">
1013 ·················</span><span·class="p"·data-group-id="8110466501-29">{</span><span·class="p"·data-group-id="8110466501-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="8110466501-30">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·e2fc8e32ae80fdc21e61dca5a8d6e7bb73a401ae1f58827891fe0c325b6dc9c8·...·]-29">}</span><span·class="p">,</span><span·class="w">1013 ·················</span><span·class="p"·data-group-id="4662457695-29">{</span><span·class="p"·data-group-id="4662457695-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="4662457695-30">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·ba6b61128dcb54abe1c40916ca95ebd29dfe936db9816678b41e6df353221d52·...·]-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="8110466501-22">}</span><span·class="p"·data-group-id="8110466501-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="4662457695-22">}</span><span·class="p"·data-group-id="4662457695-21">}</span><span·class="p">,</span><span·class="w">
1015 ·····</span><span·class="p"·data-group-id="8110466501-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="4662457695-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="8110466501-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="4662457695-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="8110466501-34">{</span><span·class="p"·data-group-id="8110466501-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="8110466501-35">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·688cac3ceaa85737be88bd1d822fa2e8db748d45598561f3aaad886a386fc894·...·]-34">}</span><span·class="p">,</span><span·class="w">1017 ·················</span><span·class="p"·data-group-id="4662457695-34">{</span><span·class="p"·data-group-id="4662457695-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="4662457695-35">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·11efbb67e90f06b306d62e2e6bb1981460d296af266203e4fea69ef770948af3·...·]-34">}</span><span·class="p">,</span><span·class="w">
1018 ·················</span><span·class="p"·data-group-id="8110466501-37">{</span><span·class="p"·data-group-id="8110466501-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="8110466501-38">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·780641ae743fd067d4e445c10dbe211805b5084cce003a2895400fb6df3ca728·...·]-37">}</span><span·class="p">,</span><span·class="w">1018 ·················</span><span·class="p"·data-group-id="4662457695-37">{</span><span·class="p"·data-group-id="4662457695-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="4662457695-38">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·2d3462a1b43052a87f79622ec6eb6715006c63b9f72a854555ae28a2846a252c·...·]-37">}</span><span·class="p">,</span><span·class="w">
1019 ·················</span><span·class="p"·data-group-id="8110466501-40">{</span><span·class="p"·data-group-id="8110466501-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="8110466501-41">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·1b458d105ff08f80c8e911d67fa737a74159d936adad9f7cfe7293487146dc53·...·]-40">}</span><span·class="p">,</span><span·class="w">1019 ·················</span><span·class="p"·data-group-id="4662457695-40">{</span><span·class="p"·data-group-id="4662457695-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="4662457695-41">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·17eaba5365ab3be2dd7e6acad6a69b5d5d837f3f151694a3f359720788133c9f·...·]-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="8110466501-33">}</span><span·class="p"·data-group-id="8110466501-32">}</span><span·class="p"·data-group-id="8110466501-20">]</span><span·class="p"·data-group-id="8110466501-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="4662457695-33">}</span><span·class="p"·data-group-id="4662457695-32">}</span><span·class="p"·data-group-id="4662457695-20">]</span><span·class="p"·data-group-id="4662457695-19">}</span><span·class="gp·unselectable">
1021 &gt;·</span><span·class="p"·data-group-id="8110466501-43">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8110466501-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:·afd762cf8ced127ae5acbc4a441cbfcbd892ba36eb7d907372d37f211f05bf6d·...·]-45">)</span><span·class="p">.</span><span·class="w">1021 &gt;·</span><span·class="p"·data-group-id="4662457695-43">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4662457695-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:·4087c85c11647b27946da139615b92927c32cd1208617f501658f8e981fec7c6·...·]-45">)</span><span·class="p">.</span><span·class="w">
1022 </span><span·class="p"·data-group-id="8110466501-48">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8110466501-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="4662457695-48">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4662457695-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="8110466501-49">}</span><span·class="p"·data-group-id="8110466501-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="4662457695-49">}</span><span·class="p"·data-group-id="4662457695-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="8110466501-50">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8110466501-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:·0a08a460dcd96aa5242ae15f66c4d15db6625a16e73f7e70a0af440d3b028b74·...·]-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="4662457695-50">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4662457695-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:·46256b2ec474980991c751298c1ef62f52e1b975a5190a5b7b5539ee597b1306·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1617 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>144 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>263 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>182 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>914 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>467 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1024 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>402 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>12529 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2605 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1799 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>226 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>899 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1196 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>142 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v3.23 v3.2
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·syntax_tools[q···················]6 Search·documentation·of·syntax_tools[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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
622 B
./usr/share/doc/erlang-doc/html/lib/tftp-1.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-9725401D.js21 dist/search_data-EE1E1476.js
22 dist/sidebar_items-A7F4F075.js22 dist/sidebar_items-A7F4F075.js
23 getting_started.html23 getting_started.html
24 index.html24 index.html
25 introduction.html25 introduction.html
26 notes.html26 notes.html
27 search.html27 search.html
28 tftp.html28 tftp.html
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>195 <p>Copyright·©·1996-2024·<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="5037059115-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="5037059115-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="5037059115-2">(</span><span·class="p"·data-group-id="5037059115-3">[</span><span·class="p"·data-group-id="5037059115-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="5037059115-4">}</span><span·class="p"·data-group-id="5037059115-3">]</span><span·class="p"·data-group-id="5037059115-2">)</span><span·class="p">.</span><span·class="w"> 
151 ······</span><span·class="p"·data-group-id="5037059115-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:·75927c0f237bb7258a2e8a57190afa8ffbf8d633a69d2906e9f5e77b0cf39283·...·]">)</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:·96d7193e31abccda16898a80ee4b7ec5f8bfc8de0a4c0f8057fea11de9e6b0a1·...·]">)</span><span·class="p">.</span><span·class="w">
 151 ······</span><span·class="p"·data-group-id="7028847805-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="7028847805-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="6819595913-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="6819595913-2">[</span><span·class="p"·data-group-id="6819595913-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="6819595913-3">}</span><span·class="p"·data-group-id="6819595913-2">]</span><span·class="p"·data-group-id="6819595913-1">)</span><span·class="p">.</span><span·class="w">
152 ······</span><span·class="p"·data-group-id="5390388909-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="5390388909-4">}</span></code></pre>152 ······</span><span·class="p"·data-group-id="6819595913-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="6819595913-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>192 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>196 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>289 <p>Copyright·©·1996-2024·<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.74 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.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-9725401D.js"></script>124 <script·src="dist/search_data-EE1E1476.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v1.23 v1.2
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·tftp[q···················]6 Search·documentation·of·tftp[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>897 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>312 <p>Copyright·©·1996-2024·<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-039E86C6.js28 dist/search_data-98D0A8CC.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>261 <p>Copyright·©·1996-2024·<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="5821870076-1">(</span><span·class="p"·data-group-id="5821870076-2">[</span><span·class="ss">calls</span><span·class="p"·data-group-id="5821870076-2">]</span><span·class="p"·data-group-id="5821870076-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="3859855679-1">(</span><span·class="p"·data-group-id="3859855679-2">[</span><span·class="ss">calls</span><span·class="p"·data-group-id="3859855679-2">]</span><span·class="p"·data-group-id="3859855679-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="1033767914-1">(</span><span·class="p"·data-group-id="1033767914-2">[</span><span·class="ss">calls</span><span·class="p"·data-group-id="1033767914-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:·b0c7fb235a5d2c9ef53c7fdb7ae998af4d0b88152892dd17b67b8e7407642801·...·]-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="0973580572-1">(</span><span·class="p"·data-group-id="0973580572-2">[</span><span·class="ss">calls</span><span·class="p"·data-group-id="0973580572-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:·cc24114239997bdc9ca5255ae085de17f39f2c42223470521e52cf9ca3fcc9f1·...·]-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="0041191440-1">(</span><span·class="p"·data-group-id="0041191440-2">[</span><span·class="ss">html</span><span·class="p"·data-group-id="0041191440-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0041191440-3">[</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·ec3f87f790afca3608da041dbbdd174239bbc43ccf5e1279e83704401ead5486·...·]-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="1448269075-1">(</span><span·class="p"·data-group-id="1448269075-2">[</span><span·class="ss">html</span><span·class="p"·data-group-id="1448269075-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1448269075-3">[</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·f54e59fa8f8c6009cf9670fa86d0d4dc413667de214de1a8f6437dc3bd84e5ad·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2706 <p>Copyright·©·1996-2024·<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="6270630173-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="62706[·...·truncated·by·diffoscope;·len:·651,·SHA:·5a6ca74ac9f768dcfe2e3d99063dcd8985f0a062e13d46b7587a805e46f31268·...·]-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="0831856863-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="08318[·...·truncated·by·diffoscope;·len:·651,·SHA:·269d7967bd5a9549e2a940ff4720d0df44b03c50897aec4e50e34bddeb810ee2·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1112 <p>Copyright·©·1996-2024·<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="0306766258-1">(</span><span·class="p"·data-group-id="0306766258-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="0306766258-2">(</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·a6b4eb4149c3225b043eed686d53e04807881406f1809541b805933aef8eeec9·...·]-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="0233530651-1">(</span><span·class="p"·data-group-id="0233530651-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="0233530651-2">(</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·06894f983c20d6526c00081a6547aa63eccff4e9873ac3ed93f5af2d446e6680·...·]-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="0306766258-3">(</span><span·class="p"·data-group-id="0306766258-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="0233530651-3">(</span><span·class="p"·data-group-id="0233530651-3">)</span><span·class="p">.</span><span·class="w">
162 </span><span·class="p"·data-group-id="0306766258-4">{</span><span·class="mi">539</span><span·class="p">,</span><span·class="w">162 </span><span·class="p"·data-group-id="0233530651-4">{</span><span·class="mi">539</span><span·class="p">,</span><span·class="w">
163 ·</span><span·class="p"·data-group-id="0306766258-5">[</span><span·class="p"·data-group-id="0306766258-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="0233530651-5">[</span><span·class="p"·data-group-id="0233530651-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="0306766258-7">[</span><span·class="p"·data-group-id="0306766258-8">{</span><span·class="p"·data-group-id="0306766258-9">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">prep_check</span><span·class="p">,</span><span·class="mi">1[·...·truncated·by·diffoscope;·len:·151,·SHA:·1f08ee65e00aeb4e7198873a6d80fc12de88196cb312fc3ac1357eecb42e01fa·...·]-8">}</span><span·class="p">,</span><span·class="w">164 ·········</span><span·class="p"·data-group-id="0233530651-7">[</span><span·class="p"·data-group-id="0233530651-8">{</span><span·class="p"·data-group-id="0233530651-9">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">prep_check</span><span·class="p">,</span><span·class="mi">1[·...·truncated·by·diffoscope;·len:·151,·SHA:·3be43ca82c5674f8c7caf8dfcf75d79938751f58b183f2e1b4f33da204a2b287·...·]-8">}</span><span·class="p">,</span><span·class="w">
165 ··········</span><span·class="p"·data-group-id="0306766258-10">{</span><span·class="p"·data-group-id="0306766258-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="0306766258-[·...·truncated·by·diffoscope;·len:·103,·SHA:·2f776dda713a51f2f2d1995957ea808e3cb37dbd9ab724c033811bf1dad7d06f·...·]-10">}</span><span·class="p">,</span><span·class="w">165 ··········</span><span·class="p"·data-group-id="0233530651-10">{</span><span·class="p"·data-group-id="0233530651-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="0233530651-[·...·truncated·by·diffoscope;·len:·103,·SHA:·23bf3459d03227571b72d77a0859b3023cede03c2397078363721347413e30d6·...·]-10">}</span><span·class="p">,</span><span·class="w">
166 ··········</span><span·class="p"·data-group-id="0306766258-12">{</span><span·class="p"·data-group-id="0306766258-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="0306766258-[·...·truncated·by·diffoscope;·len:·103,·SHA:·0ef6cf4ca64ca7e4900c9f12f63a7eac12b30d9e678f7cfd5b8585e3cc8f135b·...·]-12">}</span><span·class="p">,</span><span·class="w">166 ··········</span><span·class="p"·data-group-id="0233530651-12">{</span><span·class="p"·data-group-id="0233530651-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="0233530651-[·...·truncated·by·diffoscope;·len:·103,·SHA:·c441350949c19b91088d5ec5a2d66d8665f3c8fed85bb5e14257a05c3a06c8f0·...·]-12">}</span><span·class="p">,</span><span·class="w">
167 ··········</span><span·class="p"·data-group-id="0306766258-14">{</span><span·class="p"·data-group-id="0306766258-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="0306766[·...·truncated·by·diffoscope;·len:·106,·SHA:·75351234b19cbce76295fa2289f04438e7b4023c0eb7f06033418eb5c7b1aa51·...·]-14">}</span><span·class="p">,</span><span·class="w">167 ··········</span><span·class="p"·data-group-id="0233530651-14">{</span><span·class="p"·data-group-id="0233530651-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="0233530[·...·truncated·by·diffoscope;·len:·106,·SHA:·bfeef6a271e6b7461100e446d4ec5a1b8180ed9c71fcb11ef08ff85c7e0d38f6·...·]-14">}</span><span·class="p">,</span><span·class="w">
168 ··········</span><span·class="p"·data-group-id="0306766258-16">{</span><span·class="p"·data-group-id="0306766258-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="0306766258-1[·...·truncated·by·diffoscope;·len:·101,·SHA:·f2235e2847be98a4aee0712e0b8b1abcda02a2cac82c7ce8f206b5a94cc9c41e·...·]-16">}</span><span·class="p">,</span><span·class="w">168 ··········</span><span·class="p"·data-group-id="0233530651-16">{</span><span·class="p"·data-group-id="0233530651-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="0233530651-1[·...·truncated·by·diffoscope;·len:·101,·SHA:·1a556d3fd587e047a853e03b3204db02ae226b73b035d987cc1b45612378765c·...·]-16">}</span><span·class="p">,</span><span·class="w">
169 ··········</span><span·class="p"·data-group-id="0306766258-18">{</span><span·class="p"·data-group-id="0306766258-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="03067662[·...·truncated·by·diffoscope;·len:·105,·SHA:·d01193318c56e6a0059440b27bd89f2f5a5d0377f24f169aea642a3899ce437d·...·]-18">}</span><span·class="p">,</span><span·class="w">169 ··········</span><span·class="p"·data-group-id="0233530651-18">{</span><span·class="p"·data-group-id="0233530651-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="02335306[·...·truncated·by·diffoscope;·len:·105,·SHA:·6f3f71f7a8c6c0266296d94f5d84b5d5c59ce9fde1b8524480aebaa1ea2b446b·...·]-18">}</span><span·class="p">,</span><span·class="w">
170 ··········</span><span·class="p"·data-group-id="0306766258-20">{</span><span·class="p"·data-group-id="0306766258-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="0306766258-21">}</[·...·truncated·by·diffoscope;·len:·95,·SHA:·641d7156b89befd15296e58fd99b63e3c3d430b34e8461c65b0cab5f904b61ff·...·]-20">}</span><span·class="p">,</span><span·class="w">170 ··········</span><span·class="p"·data-group-id="0233530651-20">{</span><span·class="p"·data-group-id="0233530651-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="0233530651-21">}</[·...·truncated·by·diffoscope;·len:·95,·SHA:·e7bb1261ca62369ab3009aa7725cf195723db8b8a246bf1d3283f56329dc3132·...·]-20">}</span><span·class="p">,</span><span·class="w">
171 ··········</span><span·class="p"·data-group-id="0306766258-22">{</span><span·class="p"·data-group-id="0306766258-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="0306766258-23">}</s[·...·truncated·by·diffoscope;·len:·94,·SHA:·975592813e6a0e7880548b56c12cf659e9ee3755a8f6dd8e7770a8f54538a76f·...·]-22">}</span><span·class="p">,</span><span·class="w">171 ··········</span><span·class="p"·data-group-id="0233530651-22">{</span><span·class="p"·data-group-id="0233530651-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="0233530651-23">}</s[·...·truncated·by·diffoscope;·len:·94,·SHA:·fc5a72236220ef0fe4af5e9d15600057e369525edaf608b763ea5126d9662054·...·]-22">}</span><span·class="p">,</span><span·class="w">
172 ··········</span><span·class="p"·data-group-id="0306766258-24">{</span><span·class="p"·data-group-id="0306766258-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="030676625[·...·truncated·by·diffoscope;·len:·104,·SHA:·94116ecabbd61c6bd800bea0e6e485b5b7bc93a57c1824ef67f9ecb92e4c7297·...·]-24">}</span><span·class="p">,</span><span·class="w">172 ··········</span><span·class="p"·data-group-id="0233530651-24">{</span><span·class="p"·data-group-id="0233530651-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="023353065[·...·truncated·by·diffoscope;·len:·104,·SHA:·6d1f35c3eadb5ed7a6277160df8f16983e6bfc0afcec7af728dec2d637575710·...·]-24">}</span><span·class="p">,</span><span·class="w">
173 ··········</span><span·class="p"·data-group-id="0306766258-26">{</span><span·class="p"·data-group-id="0306766258-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="0306766258[·...·truncated·by·diffoscope;·len:·103,·SHA:·e9b3f6a36a51e0c86d944d349a524d96b616c73698288dda753612203c3bbf98·...·]-26">}</span><span·class="p">,</span><span·class="w">173 ··········</span><span·class="p"·data-group-id="0233530651-26">{</span><span·class="p"·data-group-id="0233530651-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="0233530651[·...·truncated·by·diffoscope;·len:·103,·SHA:·52a57059d4f94859ded1cebe300929846873916afbd1daf967eedac91c5c95ef·...·]-26">}</span><span·class="p">,</span><span·class="w">
174 ··········</span><span·class="p"·data-group-id="0306766258-28">{</span><span·class="p"·data-group-id="0306766258-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="0306766258-29"[·...·truncated·by·diffoscope;·len:·99,·SHA:·0ecef7262d707ae37096c7bbf393ca7bf306e1e6c15d96c8b3ca5fe770c75520·...·]-28">}</span><span·class="p">,</span><span·class="w">174 ··········</span><span·class="p"·data-group-id="0233530651-28">{</span><span·class="p"·data-group-id="0233530651-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="0233530651-29"[·...·truncated·by·diffoscope;·len:·99,·SHA:·9a5a3b0f57d07fe83cace69fb42225ec70e24cb6dbb950c964008bc014859eb0·...·]-28">}</span><span·class="p">,</span><span·class="w">
175 ··········</span><span·class="p"·data-group-id="0306766258-30">{</span><span·class="p"·data-group-id="0306766258-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-grou[·...·truncated·by·diffoscope;·len:·119,·SHA:·154f20aba63825f505a0ef070420c5e8f46846657932a435df8c8cbd2df6c7a3·...·]-30">}</span><span·class="p">,</span><span·class="w">175 ··········</span><span·class="p"·data-group-id="0233530651-30">{</span><span·class="p"·data-group-id="0233530651-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-grou[·...·truncated·by·diffoscope;·len:·119,·SHA:·167e2f9ba7f12b697c7303536dbdb5eebf22b263c88ead3536b5dc52e4af4f89·...·]-30">}</span><span·class="p">,</span><span·class="w">
176 ··········</span><span·class="p"·data-group-id="0306766258-32">{</span><span·class="p"·data-group-id="0306766258-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-grou[·...·truncated·by·diffoscope;·len:·226,·SHA:·23975a83fc1a8d8792a314187caa5026d826a9c2d80fd2a77b5a2463125fcc9f·...·]-6">}</span><span·class="p">,</span><span·class="w">176 ··········</span><span·class="p"·data-group-id="0233530651-32">{</span><span·class="p"·data-group-id="0233530651-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-grou[·...·truncated·by·diffoscope;·len:·226,·SHA:·02090ca1e150cf0f9930fe0b1b818e7e37bfc871a3ab0d97f2b523ed72bdcf66·...·]-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="0306766258-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="0306766258-35">[</span><span·class="p"·data-group-id="0306766258-36">{</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·437,·SHA:·a68cfe5b451785124df2d13a821ba3f10a2c7498386ba84d85240e3a1f2863ab·...·]-34">}</span><span·class="p">,</span><span·class="w">182 ··</span><span·class="p"·data-group-id="0233530651-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="0233530651-35">[</span><span·class="p"·data-group-id="0233530651-36">{</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·437,·SHA:·1429989f5622639eab89d77dae68f57350711cb43cd150f08809c2108a0d3761·...·]-34">}</span><span·class="p">,</span><span·class="w">
183 ··</span><span·class="p"·data-group-id="0306766258-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="0306766258-39">[</span><span·class="p"·data-group-id="0306766258-40">{</span><span·class="p"·data-group-id="0306766258-41">{</span><span·class="ss">otp_internal</span><span·class="p">,</span><span·class="ss">obsolete</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="0306766258-41">}</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="0306766258-40">}</span><span·class="p"·data-group-id="0306766258-39">]</span><span·class="p"·data-group-id="0306766258-38">}</span><span·class="p">,</span><span·class="w"> 
184 ··</span><span·class="p"·data-group-id="0306766258-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="0306766258-43">[</span><span·class="p"·data-group-id="0306766258-44">{</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·418,·SHA:·0450bc70891a9680a81ddaaf45eccb453f96df9afc49c581b6002eba763aa10e·...·]">}</span><span·class="p">,</span><span·class="w">183 ··</span><span·class="p"·data-group-id="0233530651-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="0233530651-39">[</span><span·class="p"·data-group-id="0233530651-40">{</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·433,·SHA:·fd0cff20086f2988a9fbfb99e2462bc6af9041d81b5f126fb83bfcfc0416bf6d·...·]">}</span><span·class="p">,</span><span·class="w">
 184 ··</span><span·class="p"·data-group-id="0233530651-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="0233530651-43">[</span><span·class="p"·data-group-id="0233530651-44">{</span><span·class="p"·data-group-id="0233530651-45">{</span><span·class="ss">maps</span><span·class="p">,</span><span·class="ss">from_list</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="0233530651-45">}</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="0233530651-44">}</span><span·class="p"·data-group-id="0233530651-43">]</span><span·class="p"·data-group-id="0233530651-42">}</span><span·class="p">,</span><span·class="w">
185 ··</span><span·class="p"·data-group-id="0306766258-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="0306766258-47">[</span><span·class="p"·data-group-id="0306766258-48">{</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·532,·SHA:·6095fb8d48e41c0ed08ecc23d16dc63824bd3d336fb2b69703896445aa1716cb·...·]-4">}</span><span·class="gp·unselectable">185 ··</span><span·class="p"·data-group-id="0233530651-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="0233530651-47">[</span><span·class="p"·data-group-id="0233530651-48">{</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·532,·SHA:·6160b23db27bba10fc393cbf662a2ed22964ca42d3042cefe594052f8ef0a03a·...·]-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="0306766258-50">(</span><span·class="ss">cprof</span><span·class="p"·data-group-id="0306766258-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="0233530651-50">(</span><span·class="ss">cprof</span><span·class="p"·data-group-id="0233530651-50">)</span><span·class="p">.</span><span·class="w">
187 </span><span·class="p"·data-group-id="0306766258-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="0306766258-52">[</span><span·class="p"·data-group-id="0306766258-53">{</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·830,·SHA:·740ef4f872918948b68c7e05efe2e3dc024c1ce7c9e93f6197e729f49fa3c527·...·]-51">}</span><span·class="gp·unselectable">187 </span><span·class="p"·data-group-id="0233530651-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="0233530651-52">[</span><span·class="p"·data-group-id="0233530651-53">{</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·830,·SHA:·6f613d7fea22fac56522090a233d7da7fc1d51f203bdfd228f65eac3b9f04674·...·]-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="0306766258-57">(</span><span·class="p"·data-group-id="0306766258-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="0233530651-57">(</span><span·class="p"·data-group-id="0233530651-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="0619251224-1">(</span><span·class="p"·data-group-id="0619251224-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:·419,·SHA:·19b7d117d881b76232fc7d69f6b181d188eac916a49c4ee82b5705b5b36aa491·...·]-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="2811938998-1">(</span><span·class="p"·data-group-id="2811938998-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:·419,·SHA:·ce9587ba65f419eb8b3ed66f145ed86cbe0caf1b538bfa2ac3c3417e6fb2a137·...·]-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="0619251224-4">(</span><span·class="ss">calendar</span><span·class="p"·data-group-id="0619251224-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="2811938998-4">(</span><span·class="ss">calendar</span><span·class="p"·data-group-id="2811938998-4">)</span><span·class="p">.</span><span·class="w">
201 </span><span·class="p"·data-group-id="0619251224-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="2811938998-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="0619251224-6">[</span><span·class="p"·data-group-id="0619251224-7">{</span><span·class="p"·data-group-id="0619251224-8">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">last_day_of_the_month1</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·166,·SHA:·0c6d69eb16a9784ca2e281d0e49e3f3f56b6a43eb0fe7b18747c3ec649678fdb·...·]-7">}</span><span·class="p">,</span><span·class="w">202 ··········</span><span·class="p"·data-group-id="2811938998-6">[</span><span·class="p"·data-group-id="2811938998-7">{</span><span·class="p"·data-group-id="2811938998-8">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">last_day_of_the_month1</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·166,·SHA:·7068fec7a25c0c7f6d0465a3f21d8d26d27bf319db030f377df541d9958ac78e·...·]-7">}</span><span·class="p">,</span><span·class="w">
203 ···········</span><span·class="p"·data-group-id="0619251224-9">{</span><span·class="p"·data-group-id="0619251224-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:·114,·SHA:·b61e23f3388205a4a7dc7e0422b48d77216244bc75de4f0624986f86533453fb·...·]-9">}</span><span·class="p">,</span><span·class="w">203 ···········</span><span·class="p"·data-group-id="2811938998-9">{</span><span·class="p"·data-group-id="2811938998-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:·114,·SHA:·d515f04481b02e930af80dd21e58f6938fe3368c8b40cfff6deb364b6e49c971·...·]-9">}</span><span·class="p">,</span><span·class="w">
204 ···········</span><span·class="p"·data-group-id="0619251224-11">{</span><span·class="p"·data-group-id="0619251224-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="061925[·...·truncated·by·diffoscope;·len:·107,·SHA:·38fbcac21e1c25fb1035406791a0cc2091a9f0ad07387163bcc9790838c02893·...·]-11">}</span><span·class="p">,</span><span·class="w">204 ···········</span><span·class="p"·data-group-id="2811938998-11">{</span><span·class="p"·data-group-id="2811938998-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="281193[·...·truncated·by·diffoscope;·len:·107,·SHA:·8135ee655b87d20debc75e6acf9891beb2d72ed78bec1f8cc207cc535311069f·...·]-11">}</span><span·class="p">,</span><span·class="w">
205 ···········</span><span·class="p"·data-group-id="0619251224-13">{</span><span·class="p"·data-group-id="0619251224-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="0619251[·...·truncated·by·diffoscope;·len:·106,·SHA:·2c33f0a8179b5e3458c503301f33684b95f0c8f12eac70690f3d94486a76c93c·...·]-13">}</span><span·class="p">,</span><span·class="w">205 ···········</span><span·class="p"·data-group-id="2811938998-13">{</span><span·class="p"·data-group-id="2811938998-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="2811938[·...·truncated·by·diffoscope;·len:·106,·SHA:·d31a60fb7376b74327debe89e7adfac7403506c88b74846ef267bc0528da16b2·...·]-13">}</span><span·class="p">,</span><span·class="w">
206 ···········</span><span·class="p"·data-group-id="0619251224-15">{</span><span·class="p"·data-group-id="0619251224-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="0619251224-16">}<[·...·truncated·by·diffoscope;·len:·96,·SHA:·cc2ce35abea01d24a297754c3e01ad56937079734202d74b1c9a65294f7f24e7·...·]-15">}</span><span·class="p">,</span><span·class="w">206 ···········</span><span·class="p"·data-group-id="2811938998-15">{</span><span·class="p"·data-group-id="2811938998-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="2811938998-16">}<[·...·truncated·by·diffoscope;·len:·96,·SHA:·86f68449faac42471528a1094acf32d78884cfa598ac09adc90cd8e6c09e8e69·...·]-15">}</span><span·class="p">,</span><span·class="w">
207 ···········</span><span·class="p"·data-group-id="0619251224-17">{</span><span·class="p"·data-group-id="0619251224-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="0619251224-18">}<[·...·truncated·by·diffoscope;·len:·96,·SHA:·cc2ce35abea01d24a297754c3e01ad56937079734202d74b1c9a65294f7f24e7·...·]-17">}</span><span·class="p">,</span><span·class="w">207 ···········</span><span·class="p"·data-group-id="2811938998-17">{</span><span·class="p"·data-group-id="2811938998-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="2811938998-18">}<[·...·truncated·by·diffoscope;·len:·96,·SHA:·86f68449faac42471528a1094acf32d78884cfa598ac09adc90cd8e6c09e8e69·...·]-17">}</span><span·class="p">,</span><span·class="w">
208 ···········</span><span·class="p"·data-group-id="0619251224-19">{</span><span·class="p"·data-group-id="0619251224-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="0619251224-20">}<[·...·truncated·by·diffoscope;·len:·96,·SHA:·cc2ce35abea01d24a297754c3e01ad56937079734202d74b1c9a65294f7f24e7·...·]-19">}</span><span·class="p">,</span><span·class="w">208 ···········</span><span·class="p"·data-group-id="2811938998-19">{</span><span·class="p"·data-group-id="2811938998-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="2811938998-20">}<[·...·truncated·by·diffoscope;·len:·96,·SHA:·86f68449faac42471528a1094acf32d78884cfa598ac09adc90cd8e6c09e8e69·...·]-19">}</span><span·class="p">,</span><span·class="w">
209 ···········</span><span·class="p"·data-group-id="0619251224-21">{</span><span·class="p"·data-group-id="0619251224-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="0619[·...·truncated·by·diffoscope;·len:·109,·SHA:·4271001c048bc24a6d1c7b0a5e2987421e1519cd7368a91633f7d0b7cb721617·...·]-21">}</span><span·class="p">,</span><span·class="w">209 ···········</span><span·class="p"·data-group-id="2811938998-21">{</span><span·class="p"·data-group-id="2811938998-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="2811[·...·truncated·by·diffoscope;·len:·109,·SHA:·f94a0aefc140a3bfb5b3f7d8c8b062cd80d4db9f40cab25c3cfdf85e9354856f·...·]-21">}</span><span·class="p">,</span><span·class="w">
210 ···········</span><span·class="p"·data-group-id="0619251224-23">{</span><span·class="p"·data-group-id="0619251224-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-i[·...·truncated·by·diffoscope;·len:·223,·SHA:·074d3701667278b5700ce4736d3f69f1ac7aa9e1194d2751bbb1a1e98b1e4580·...·]-5">}</span><span·class="gp·unselectable">210 ···········</span><span·class="p"·data-group-id="2811938998-23">{</span><span·class="p"·data-group-id="2811938998-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-i[·...·truncated·by·diffoscope;·len:·223,·SHA:·39c28b9d8f94f062890b75f241cece169f4a91574e0553101d89ea01f7cbc61d·...·]-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="0619251224-25">(</span><span·class="p"·data-group-id="0619251224-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="2811938998-25">(</span><span·class="p"·data-group-id="2811938998-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="1555470728-1">(</span><span·class="ss">sort</span><span·class="p"·data-group-id="1555470728-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="1555470728-2">(</span><span·class="p"·data-group-id="1555470728-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:·efbd20cff5c2121af2e7c8b20918f23d263db1eba2d1f813327ae1e9ba83e7d6·...·]">)</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="6062460295-1">(</span><span·class="ss">sort</span><span·class="p"·data-group-id="6062460295-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="6062460295-2">(</span><span·class="p"·data-group-id="6062460295-3">[</span><span·class="ss">do</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="6062460295-3">]</span><span·class="p"·data-group-id="6062460295-2">)</span><span·class="p">.</span><span·class="w">
  
223 </span><span·class="nf">do</span><span·class="p"·data-group-id="1555470728-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="1555470728-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="6062460295-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="6062460295-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="1555470728-5">(</span><span·class="p"·data-group-id="1555470728-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="6062460295-5">(</span><span·class="p"·data-group-id="6062460295-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="1555470728-6">(</span><span·class="p"·data-group-id="1555470728-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="6062460295-6">(</span><span·class="p"·data-group-id="6062460295-6">)</span><span·class="p">,</span><span·class="w">
226 ····</span><span·class="nf">do</span><span·class="p"·data-group-id="1555470728-7">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1555470728-8">[</span><span·class="p"·data-group-id="1555470728-8">]</span><span·class="p"·data-group-id="1555470728-7">)</span><span·class="p">.</span><span·class="w">226 ····</span><span·class="nf">do</span><span·class="p"·data-group-id="6062460295-7">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6062460295-8">[</span><span·class="p"·data-group-id="6062460295-8">]</span><span·class="p"·data-group-id="6062460295-7">)</span><span·class="p">.</span><span·class="w">
  
227 </span><span·class="nf">do</span><span·class="p"·data-group-id="1555470728-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="1555470728-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="6062460295-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="6062460295-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="1555470728-10">(</span><span·class="n">L</span><span·class="p"·data-group-id="1555470728-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="6062460295-10">(</span><span·class="n">L</span><span·class="p"·data-group-id="6062460295-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="1555470728-11">(</span><span·class="p"·data-group-id="1555470728-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="6062460295-11">(</span><span·class="p"·data-group-id="6062460295-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="1555470728-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="1555470728-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="6062460295-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="6062460295-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="1555470728-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="1555470728-14">[</span><span·class="nc">rand</span><span·class="p">:</span><span·[·...·truncated·by·diffoscope;·len:·717,·SHA:·712d73804ebd0996d94dac898b3d69515f7bab82e969fb669b99ee320239fa86·...·]-1">)</span><span·class="p">.</span><span·class="w">232 ····</span><span·class="nf">do</span><span·class="p"·data-group-id="6062460295-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="6062460295-14">[</span><span·class="nc">rand</span><span·class="p">:</span><span·[·...·truncated·by·diffoscope;·len:·717,·SHA:·6c80a5d0afde704c857da8933c18687087668f5cdd102a2ad164b31127666ddc·...·]-1">)</span><span·class="p">.</span><span·class="w">
233 </span><span·class="p"·data-group-id="2150837116-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">sort</span><span·class="p"·data-group-id="2150837116-2">}</span><span·class="gp·unselectable">233 </span><span·class="p"·data-group-id="8518636651-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">sort</span><span·class="p"·data-group-id="8518636651-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="2150837116-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="2150837116-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="8518636651-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="8518636651-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="2150837116-4">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="2150837116-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="8518636651-4">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="8518636651-4">)</span><span·class="p">.</span><span·class="w">
237 </span><span·class="p"·data-group-id="2150837116-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:·825954d8c5d546fc0029175637af50d36222b8116a614d04ff164d3ecd5c2a01·...·]-5">]</span><span·class="gp·unselectable">237 </span><span·class="p"·data-group-id="8518636651-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:·fccf6990658da3f9ea364897dd48318f8ddd638f413b4b9f45f09589775eb7b9·...·]-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="2150837116-6">(</span><span·class="p"·data-group-id="2150837116-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="8518636651-6">(</span><span·class="p"·data-group-id="8518636651-6">)</span><span·class="p">.</span><span·class="w">
239 </span><span·class="p"·data-group-id="2150837116-7">{</span><span·class="mi">13180</span><span·class="p">,</span><span·class="w">239 </span><span·class="p"·data-group-id="8518636651-7">{</span><span·class="mi">13180</span><span·class="p">,</span><span·class="w">
240 ·</span><span·class="p"·data-group-id="2150837116-8">[</span><span·class="p"·data-group-id="2150837116-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="8518636651-8">[</span><span·class="p"·data-group-id="8518636651-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="2150837116-10">[</span><span·class="p"·data-group-id="2150837116-11">{</span><span·class="p"·data-group-id="2150837116-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:·cede4f86bcec737ac02b796892144505e042c1a14ca781a645b549c15be1850c·...·]-11">}</span><span·class="p">,</span><span·class="w">241 ·········</span><span·class="p"·data-group-id="8518636651-10">[</span><span·class="p"·data-group-id="8518636651-11">{</span><span·class="p"·data-group-id="8518636651-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:·631552dce5480facbb5b635fc26e7ddb8e2dcae1f1926cf39252a4d8f35241a3·...·]-11">}</span><span·class="p">,</span><span·class="w">
242 ··········</span><span·class="p"·data-group-id="2150837116-13">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-14[·...·truncated·by·diffoscope;·len:·102,·SHA:·f226faca2eaeb74148e42fdd58d8880c701b747eee4c1bea75d133e5a8811139·...·]-13">}</span><span·class="p">,</span><span·class="w">242 ··········</span><span·class="p"·data-group-id="8518636651-13">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-14[·...·truncated·by·diffoscope;·len:·102,·SHA:·0d2e1f6a5b1a5460991a58dc09b40fb3fdac8a0e8d3c6009e5627d1f40d3adac·...·]-13">}</span><span·class="p">,</span><span·class="w">
243 ··········</span><span·class="p"·data-group-id="2150837116-15">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-16">[·...·truncated·by·diffoscope;·len:·100,·SHA:·1701536dc52e84a9cca9a4e7e7ad17034fbe72d20f5e90512293825518c879dc·...·]-15">}</span><span·class="p">,</span><span·class="w">243 ··········</span><span·class="p"·data-group-id="8518636651-15">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-16">[·...·truncated·by·diffoscope;·len:·100,·SHA:·e41788ce98d0486555d5afd0209166cbc457b62209810b48263b42a312ecbefd·...·]-15">}</span><span·class="p">,</span><span·class="w">
244 ··········</span><span·class="p"·data-group-id="2150837116-17">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-18"[·...·truncated·by·diffoscope;·len:·101,·SHA:·baf7aea49425dcbbc9328c567fc831579b6e2a40a60d86c4d7d3ac7bf60572c4·...·]-17">}</span><span·class="p">,</span><span·class="w">244 ··········</span><span·class="p"·data-group-id="8518636651-17">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-18"[·...·truncated·by·diffoscope;·len:·101,·SHA:·f3a8a8a461f7f573d80b69f0f37e47ed99cc5b503ad3e9c9557f0700290f6539·...·]-17">}</span><span·class="p">,</span><span·class="w">
245 ··········</span><span·class="p"·data-group-id="2150837116-19">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-20"[·...·truncated·by·diffoscope;·len:·101,·SHA:·55ce222b755decee39ea9585406800300eced7b8ea62a44bbe12310a396fc5c0·...·]-19">}</span><span·class="p">,</span><span·class="w">245 ··········</span><span·class="p"·data-group-id="8518636651-19">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-20"[·...·truncated·by·diffoscope;·len:·101,·SHA:·0729c95f90a12823738685406d1e4b50c0e7685f43234f596069eb751de7b2bb·...·]-19">}</span><span·class="p">,</span><span·class="w">
246 ··········</span><span·class="p"·data-group-id="2150837116-21">{</span><span·class="p"·data-group-id="2150837116-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="2150837116[·...·truncated·by·diffoscope;·len:·105,·SHA:·b80b8bec7ba93f8f1a4073bc2b5b5a7c17bff8d6c0f82fed081f6e01e01e96e5·...·]-21">}</span><span·class="p">,</span><span·class="w">246 ··········</span><span·class="p"·data-group-id="8518636651-21">{</span><span·class="p"·data-group-id="8518636651-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="8518636651[·...·truncated·by·diffoscope;·len:·105,·SHA:·1e85165aad63773f1f907dd150ec8c821bd0048eed75b5b28832ecfd62a7709e·...·]-21">}</span><span·class="p">,</span><span·class="w">
247 ··········</span><span·class="p"·data-group-id="2150837116-23">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-24[·...·truncated·by·diffoscope;·len:·102,·SHA:·4bfebebbf93dbe6f2b2c4d75d430dbafbad727dafeb79c243a1480991635cd27·...·]-23">}</span><span·class="p">,</span><span·class="w">247 ··········</span><span·class="p"·data-group-id="8518636651-23">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-24[·...·truncated·by·diffoscope;·len:·102,·SHA:·e16241079d4b0ccfd61065f58006e59b8ef23efb9462d036f1f04a492eef07e8·...·]-23">}</span><span·class="p">,</span><span·class="w">
248 ··········</span><span·class="p"·data-group-id="2150837116-25">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-[·...·truncated·by·diffoscope;·len:·104,·SHA:·34dc2766aa2723b6a813483abe52561f722f62fd5c03a8ebfdc9b9dc3f077e78·...·]-25">}</span><span·class="p">,</span><span·class="w">248 ··········</span><span·class="p"·data-group-id="8518636651-25">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-[·...·truncated·by·diffoscope;·len:·104,·SHA:·fffe19345a503a8cbdad337f9322614b0b804f395dbdae5dedf84ca2cd752fa4·...·]-25">}</span><span·class="p">,</span><span·class="w">
249 ··········</span><span·class="p"·data-group-id="2150837116-27">{</span><span·class="p"·data-group-id="2150837116-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="2150837116[·...·truncated·by·diffoscope;·len:·105,·SHA:·501d9fa62904b18f877afcb63184aa0b7528c8b2091812dddcf985e67b3e2b4c·...·]-27">}</span><span·class="p">,</span><span·class="w">249 ··········</span><span·class="p"·data-group-id="8518636651-27">{</span><span·class="p"·data-group-id="8518636651-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="8518636651[·...·truncated·by·diffoscope;·len:·105,·SHA:·8cf2468c5cdb02a21f63f2de2885acf84a557f95a8b8614792de6d112ad4160a·...·]-27">}</span><span·class="p">,</span><span·class="w">
250 ··········</span><span·class="p"·data-group-id="2150837116-29">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-[·...·truncated·by·diffoscope;·len:·104,·SHA:·a45b84cd0dae910cc3fd6c4ea8e846b1ef867992f659d80e7b2c85b3f636b04b·...·]-29">}</span><span·class="p">,</span><span·class="w">250 ··········</span><span·class="p"·data-group-id="8518636651-29">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-[·...·truncated·by·diffoscope;·len:·104,·SHA:·d5740d9d84f3c88b2d6b68ab8816797d717e9e19491fb9a528810b4ca4eccc2e·...·]-29">}</span><span·class="p">,</span><span·class="w">
251 ··········</span><span·class="p"·data-group-id="2150837116-31">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-32"[·...·truncated·by·diffoscope;·len:·101,·SHA:·5f489edc509299c2526e214fb49f3d946baea0b014fbab297a4a5b6f2b111d47·...·]-31">}</span><span·class="p">,</span><span·class="w">251 ··········</span><span·class="p"·data-group-id="8518636651-31">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-32"[·...·truncated·by·diffoscope;·len:·101,·SHA:·4b44402fba241f029f68080708f5c2e0d7fb8402e6bea703a560cf4142d9899b·...·]-31">}</span><span·class="p">,</span><span·class="w">
252 ··········</span><span·class="p"·data-group-id="2150837116-33">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-34"[·...·truncated·by·diffoscope;·len:·101,·SHA:·7eaa933c5d63c07a75bdd6ceb8d2a9f6a9eda18a1a115515db58a69d4454e959·...·]-33">}</span><span·class="p">,</span><span·class="w">252 ··········</span><span·class="p"·data-group-id="8518636651-33">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-34"[·...·truncated·by·diffoscope;·len:·101,·SHA:·5235358f95c7450209c60c9346de3cddd0e486274b6386f91978c0510e39e212·...·]-33">}</span><span·class="p">,</span><span·class="w">
253 ··········</span><span·class="p"·data-group-id="2150837116-35">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-36">[·...·truncated·by·diffoscope;·len:·100,·SHA:·a1d60e80239b20b4b1c6a81419040ac599dcdcec7cfed8659b020aaba07c5a81·...·]-35">}</span><span·class="p">,</span><span·class="w">253 ··········</span><span·class="p"·data-group-id="8518636651-35">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-36">[·...·truncated·by·diffoscope;·len:·100,·SHA:·00f643b9d641180e77521ce7bc8acf0ff3f4bbaa59b1b78ac9ab826a8fedd1a6·...·]-35">}</span><span·class="p">,</span><span·class="w">
254 ··········</span><span·class="p"·data-group-id="2150837116-37">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-38[·...·truncated·by·diffoscope;·len:·101,·SHA:·63fdcbf306c3a7a14e271b52266f65604d61c5cf925ac471c8c02240c4a7a4f4·...·]-37">}</span><span·class="p">,</span><span·class="w">254 ··········</span><span·class="p"·data-group-id="8518636651-37">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-38[·...·truncated·by·diffoscope;·len:·101,·SHA:·affae6ef72ba6429b6ef5ed03d8a8284de43e5f3a37a8ad66262a3a0ff8db7f9·...·]-37">}</span><span·class="p">,</span><span·class="w">
255 ··········</span><span·class="p"·data-group-id="2150837116-39">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-40">[·...·truncated·by·diffoscope;·len:·99,·SHA:·16b668138749176796efa84dca72858d51ee5cc71b087a4891929f4ba4d1f947·...·]-39">}</span><span·class="p">,</span><span·class="w">255 ··········</span><span·class="p"·data-group-id="8518636651-39">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-40">[·...·truncated·by·diffoscope;·len:·99,·SHA:·9598d9d012fad824d4c8e304e6d5f21dafded07a849883c5c50c8d6ddd9627a3·...·]-39">}</span><span·class="p">,</span><span·class="w">
256 ··········</span><span·class="p"·data-group-id="2150837116-41">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-42[·...·truncated·by·diffoscope;·len:·101,·SHA:·dd5404e55d7ba80efd8af33b261911517385b12514c2d145611b1b274e97836f·...·]-41">}</span><span·class="p">,</span><span·class="w">256 ··········</span><span·class="p"·data-group-id="8518636651-41">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-42[·...·truncated·by·diffoscope;·len:·101,·SHA:·57d51533494a3307a09c310e66e6631a31c9d2ccf0225a73a7388374c12534a1·...·]-41">}</span><span·class="p">,</span><span·class="w">
257 ··········</span><span·class="p"·data-group-id="2150837116-43">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-44">}[·...·truncated·by·diffoscope;·len:·98,·SHA:·53468718a0aecb1dab5fcca08e08071e00642b6a9492c5cc0f42012b8b9e7d49·...·]-43">}</span><span·class="p">,</span><span·class="w">257 ··········</span><span·class="p"·data-group-id="8518636651-43">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-44">}[·...·truncated·by·diffoscope;·len:·98,·SHA:·3b3649061eb7e36fda58ca4401b88945651ef9a932f3fa78a8649b83aad31532·...·]-43">}</span><span·class="p">,</span><span·class="w">
258 ··········</span><span·class="p"·data-group-id="2150837116-45">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-46">[·...·truncated·by·diffoscope;·len:·98,·SHA:·7a27a5923ccac15fd0c1aca5d08d58e811ee12ba12b0efb974c95ca5ccd4aa07·...·]-45">}</span><span·class="p">,</span><span·class="w">258 ··········</span><span·class="p"·data-group-id="8518636651-45">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-46">[·...·truncated·by·diffoscope;·len:·98,·SHA:·253a79a5c118476520f038fa4cdaa4b6a91f83b37455065f5a1b1ba810c51b16·...·]-45">}</span><span·class="p">,</span><span·class="w">
259 ··········</span><span·class="p"·data-group-id="2150837116-47">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-48">}</[·...·truncated·by·diffoscope;·len:·203,·SHA:·3031b6c861b9222698e2541f9cce6978df6376ea5c0f8015c4b212089c64e860·...·]-9">}</span><span·class="p">,</span><span·class="w">259 ··········</span><span·class="p"·data-group-id="8518636651-47">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-48">}</[·...·truncated·by·diffoscope;·len:·203,·SHA:·cc91428281cbcb12ef178a848fe171793ac30079439d64227849975a541412e0·...·]-9">}</span><span·class="p">,</span><span·class="w">
260 ··</span><span·class="p"·data-group-id="2150837116-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="8518636651-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="2150837116-50">[</span><span·class="p"·data-group-id="2150837116-51">{</span><span·class="p"·data-group-id="2150837116-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:·8b9b8b0abd491c5d6f45133fa94fbd10ebc4fa48293f3b750cb2e3f49ab2943b·...·]-51">}</span><span·class="p">,</span><span·class="w">261 ········</span><span·class="p"·data-group-id="8518636651-50">[</span><span·class="p"·data-group-id="8518636651-51">{</span><span·class="p"·data-group-id="8518636651-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:·2ade673c0350922e3cc325a292533d7431cd3463daf682d7770a71ebe093f881·...·]-51">}</span><span·class="p">,</span><span·class="w">
262 ·········</span><span·class="p"·data-group-id="2150837116-53">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-54">}[·...·truncated·by·diffoscope;·len:·100,·SHA:·7b1bd66b94d1e25c2b480529d79966ea5ee1918b365c34ae6b3cbd01cf6d9c47·...·]-53">}</span><span·class="p">,</span><span·class="w">262 ·········</span><span·class="p"·data-group-id="8518636651-53">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-54">}[·...·truncated·by·diffoscope;·len:·100,·SHA:·8130a6fac405dcbbb043136795bc985f0df9bfd0582efb26dd398cd07da0939c·...·]-53">}</span><span·class="p">,</span><span·class="w">
263 ·········</span><span·class="p"·data-group-id="2150837116-55">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-56">[·...·truncated·by·diffoscope;·len:·101,·SHA:·49991070cb3d3c92c4f24458929953ca22479a5f4e99ba2c9c0c8fc418b7af6a·...·]-55">}</span><span·class="p">,</span><span·class="w">263 ·········</span><span·class="p"·data-group-id="8518636651-55">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-56">[·...·truncated·by·diffoscope;·len:·101,·SHA:·f0e03c5de716e40db66962c5d7da02f6402ac3b1bf41f27459ad4e1ec9705db8·...·]-55">}</span><span·class="p">,</span><span·class="w">
264 ·········</span><span·class="p"·data-group-id="2150837116-57">{</span><span·class="p"·data-group-id="2150837116-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="2150837116-58">[·...·truncated·by·diffoscope;·len:·101,·SHA:·49991070cb3d3c92c4f24458929953ca22479a5f4e99ba2c9c0c8fc418b7af6a·...·]-57">}</span><span·class="p">,</span><span·class="w">264 ·········</span><span·class="p"·data-group-id="8518636651-57">{</span><span·class="p"·data-group-id="8518636651-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="8518636651-58">[·...·truncated·by·diffoscope;·len:·101,·SHA:·f0e03c5de716e40db66962c5d7da02f6402ac3b1bf41f27459ad4e1ec9705db8·...·]-57">}</span><span·class="p">,</span><span·class="w">
265 ·········</span><span·class="p"·data-group-id="2150837116-59">{</span><span·class="p"·data-group-id="2150837116-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="2150837116[·...·truncated·by·diffoscope;·len:·214,·SHA:·bd3d90368e9416197ab30ab83d954662d755cda362ff63cb3f6910d2beddb574·...·]-49">}</span><span·class="p">,</span><span·class="w">265 ·········</span><span·class="p"·data-group-id="8518636651-59">{</span><span·class="p"·data-group-id="8518636651-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="8518636651[·...·truncated·by·diffoscope;·len:·214,·SHA:·2c29fd75f5cd79806418b85d05141584cbbb91da4e56956ae3d4abb56b5ddab2·...·]-49">}</span><span·class="p">,</span><span·class="w">
266 ··</span><span·class="p"·data-group-id="2150837116-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="8518636651-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="2150837116-62">[</span><span·class="p"·data-group-id="2150837116-63">{</span><span·class="p"·data-group-id="2150837116-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:·aa8b325c5f1d1e6a585ecd679421aad0ed9623908508a4343788ead18b911096·...·]-63">}</span><span·class="p">,</span><span·class="w">267 ··········</span><span·class="p"·data-group-id="8518636651-62">[</span><span·class="p"·data-group-id="8518636651-63">{</span><span·class="p"·data-group-id="8518636651-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:·ce31298f6dc2d2423e8932d89cbeb1435e166a142586f916624db20d4791ae18·...·]-63">}</span><span·class="p">,</span><span·class="w">
268 ···········</span><span·class="p"·data-group-id="2150837116-65">{</span><span·class="p"·data-group-id="2150837116-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="21508371[·...·truncated·by·diffoscope;·len:·105,·SHA:·0f932a64ec0bc957ce1ce6fa0c900d1cde0ac17f1f1ab169760f575fd57cd5c1·...·]-65">}</span><span·class="p">,</span><span·class="w">268 ···········</span><span·class="p"·data-group-id="8518636651-65">{</span><span·class="p"·data-group-id="8518636651-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="85186366[·...·truncated·by·diffoscope;·len:·105,·SHA:·2dab7d1937ae269b16671fff94fcb76449b48950b948231b9f247d2f0e5c5801·...·]-65">}</span><span·class="p">,</span><span·class="w">
269 ···········</span><span·class="p"·data-group-id="2150837116-67">{</span><span·class="p"·data-group-id="2150837116-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:·6895e5219425c1e0043ca9ac37a653087ea66dd813dc7778a01e0280bde1ef20·...·]-61">}</span><span·class="p">,</span><span·class="w">269 ···········</span><span·class="p"·data-group-id="8518636651-67">{</span><span·class="p"·data-group-id="8518636651-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:·3276b869ef9a6419959cd0b6a7de9d7be5020e67e2291866793c4fed9c5dc07a·...·]-61">}</span><span·class="p">,</span><span·class="w">
270 ··</span><span·class="p"·data-group-id="2150837116-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="2150837116-70">[</span><span·class="p"·data-group-id="2150837116-71">{</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·415,·SHA:·713195c262d6c19354bbb860ee5f0ccab3b9d1d2d99a940dab425026c3f476f4·...·]-69">}</span><span·class="p">,</span><span·class="w">270 ··</span><span·class="p"·data-group-id="8518636651-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="8518636651-70">[</span><span·class="p"·data-group-id="8518636651-71">{</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·415,·SHA:·dc6a9e40aa2b5874d2866238b0083719fc0f21389d94a2e746bb8b6a04b02a7e·...·]-69">}</span><span·class="p">,</span><span·class="w">
271 ··</span><span·class="p"·data-group-id="2150837116-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="2150837116-74">[</span><span·class="p"·data-group-id="2150837116-75">{</span><span·class="p"[·...·truncated·by·diffoscope;·len:·545,·SHA:·1734bd3826175d93f1124862d356614d103d65efef7b7bfebf7ea86a1043cebc·...·]-7">}</span><span·class="gp·unselectable">271 ··</span><span·class="p"·data-group-id="8518636651-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="8518636651-74">[</span><span·class="p"·data-group-id="8518636651-75">{</span><span·class="p"[·...·truncated·by·diffoscope;·len:·545,·SHA:·6555e740aba5119c4b1fe2e2fc9c0b891b14e4e336fcf3d21a275fa117263b25·...·]-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="2150837116-77">(</span><span·class="p"·data-group-id="2150837116-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="8518636651-77">(</span><span·class="p"·data-group-id="8518636651-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1012 <p>Copyright·©·1996-2024·<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="0677061935-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="0677061935-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="0677061935-2">(</span><[·...·truncated·by·diffoscope;·len:·137,·SHA:·2683aab8a68d3b82023bb048f92ca101e480a6561fe084c9f4507dea51f8269c·...·]-2">)</span><span·class="p">.</span><span·class="w">213 </span><span·class="nf">sum</span><span·class="p"·data-group-id="6883129260-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="6883129260-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="6883129260-2">(</span><[·...·truncated·by·diffoscope;·len:·137,·SHA:·583bee58564be68edd307e7a28ef1ed665e6f23048ba128497d7945b047dc33b·...·]-2">)</span><span·class="p">.</span><span·class="w">
214 </span><span·class="nf">sum</span><span·class="p"·data-group-id="0677061935-3">(</span><span·class="p"·data-group-id="0677061935-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="0677061935-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·462,·SHA:·fd0f6c76e6688828d6cb37aaa81cc4e1d20648a3594dc20f659bdc06b0a6093e·...·]-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="6883129260-3">(</span><span·class="p"·data-group-id="6883129260-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="6883129260-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·462,·SHA:·6f4b33028323196915a2710378ef9558543dcb7934f4b1fa1fec335a8909c4af·...·]-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="0677061935-6">(</span><span·class="p"·data-group-id="0677061935-7">[</span><span·class="p"·data-group-id="0677061935-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="0677061935-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="6883129260-6">(</span><span·class="p"·data-group-id="6883129260-7">[</span><span·class="p"·data-group-id="6883129260-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="6883129260-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="0677061935-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="0677061935-9">(</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·eee6db543cacf88ec489c36a54d24cd73213fb6a82d52899f834f047d790c7ac·...·]-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="6883129260-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="6883129260-9">(</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·c9eed236d8c495472e2187e7a087540078f3efe35b8de34020c16034ffeef4ce·...·]-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="0677061935-10">(</span><span·class="p"·data-group-id="0677061935-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="6883129260-10">(</span><span·class="p"·data-group-id="6883129260-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="0677061935-11">(</span><span·class="p"·data-group-id="0677061935-11">)</span><span·class="w">·</span><span·class="p"·data-group-id="0677061935-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="6883129260-11">(</span><span·class="p"·data-group-id="6883129260-11">)</span><span·class="w">·</span><span·class="p"·data-group-id="6883129260-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="0677061935-12">(</span><span·class="n">L</span><span·class="p"·data-group-id="0677061935-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="0677061935-13">(</spa[·...·truncated·by·diffoscope;·len:·140,·SHA:·0ff2dbdd7627a7242a1e56011f312228dce728f67ca7702cc8cb3b03bafb26b4·...·]-13">)</span><span·class="p">.</span><span·class="w">221 </span><span·class="nf">sum</span><span·class="p"·data-group-id="6883129260-12">(</span><span·class="n">L</span><span·class="p"·data-group-id="6883129260-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="6883129260-13">(</spa[·...·truncated·by·diffoscope;·len:·140,·SHA:·48ce419551c619ce873f8b25cba59d47d50665e2b5d5f15909142b01bf8a1e82·...·]-13">)</span><span·class="p">.</span><span·class="w">
222 </span><span·class="nf">sum</span><span·class="p"·data-group-id="0677061935-14">(</span><span·class="p"·data-group-id="0677061935-15">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="0677061935-15">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·467,·SHA:·55f7d076f4ef37a23975b737e1d791e84d4c7f919f021cf5ecd34de45039cdcf·...·]-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="6883129260-14">(</span><span·class="p"·data-group-id="6883129260-15">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="6883129260-15">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·467,·SHA:·c20219952c419304313801f32a56f98fb114d0996078651f0992e7d78dc575d2·...·]-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="0677061935-17">(</span><span·class="p"·data-group-id="0677061935-18">[</span><span·class="p"·data-group-id="0677061935-18">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="0677061935-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="6883129260-17">(</span><span·class="p"·data-group-id="6883129260-18">[</span><span·class="p"·data-group-id="6883129260-18">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="6883129260-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="0677061935-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="0677061935-20">(</[·...·truncated·by·diffoscope;·len:·46,·SHA:·9eceae5dcec08b56f0ff2c660026ae007c4fae9799ded647c8195bc1ed6361fc·...·]-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="6883129260-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="6883129260-20">(</[·...·truncated·by·diffoscope;·len:·46,·SHA:·cb779283f8c0f8d2f20ca250f4b657013bdb42ee08050a750ecf93c72c371d94·...·]-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="0677061935-21">(</span><span·class="p"·data-group-id="0677061935-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="6883129260-21">(</span><span·class="p"·data-group-id="6883129260-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="0677061935-22">(</span><span·class="p"·data-group-id="0677061935-22">)</span><span·class="w">·</span><span·class="p"·data-group-id="0677061935-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="6883129260-22">(</span><span·class="p"·data-group-id="6883129260-22">)</span><span·class="w">·</span><span·class="p"·data-group-id="6883129260-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>356 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>332 <p>Copyright·©·1996-2024·<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="0446857929-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="0446857929-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="8269892508-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="8269892508-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="0446857929-2">(</span><span·class="p"·data-group-id="0446857929-3">[</span><span·class="ss">create_file_slow</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="0446857929-3">]</span><span·class="p"·data-group-id="04468579[·...·truncated·by·diffoscope;·len:·2,·SHA:·35135aaa6cc23891b40cb3f378c53a17a1127210ce60e125ccf03efcfdaec458·...·]-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="8269892508-2">(</span><span·class="p"·data-group-id="8269892508-3">[</span><span·class="ss">create_file_slow</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="8269892508-3">]</span><span·class="p"·data-group-id="82698925[·...·truncated·by·diffoscope;·len:·2,·SHA:·323783be9a53a31e158ec9600626a4703e99f4e183bc1acb8772cbdf5c3a1ece·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
180 </span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="0446857929-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="0446857929-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·145,·SHA:·f9e9d51046f6641b7f2ff369444627dc509245bacf441e3e0afff2810dc77871·...·]-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="8269892508-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="8269892508-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·145,·SHA:·c3d43ae24060ed17fbbece0bd2fef1b6c707b7d0c7571432debe9f0e45e4c765·...·]-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="0446857929-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="0446857929-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">181 ····</span><span·class="p"·data-group-id="8269892508-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="8269892508-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="0446857929-7">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0446857929-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:·1def2439796093feed03ba1c5200dba9702d03c17abd2d200bf5e79339c1b4ba·...·]-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="8269892508-7">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8269892508-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:·bd89a1f8b7a47dcca8c0cc3105615685b33c2de2d733a9aa4d55dbd7aeed0eb0·...·]-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="0446857929-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="8269892508-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="0446857929-10">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="0446857929-11">(</span><span·class="n">X</span><span·class="p"·data-group-id="0446857929-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="8269892508-10">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8269892508-11">(</span><span·class="n">X</span><span·class="p"·data-group-id="8269892508-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="0446857929-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="0446857929-12">)</span><span·class="p"·data-group-id="0446857929-10">)</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·c4086b49fea57884a7dfc59100df158e41560b08ba857afd06d8a0d0428655fb·...·]-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="8269892508-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="8269892508-12">)</span><span·class="p"·data-group-id="8269892508-10">)</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·c18443e793e16417e57eee6c3dfa6593cd338f23960d92c00ca95700caaad7a2·...·]-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="0446857929-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="0446857929-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="8269892508-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="8269892508-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="0446857929-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="0446857929-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="8269892508-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="8269892508-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="0446857929-15">(</span><span·class="n">FD</span><span·class="p"·data-group-id="0446857929-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="8269892508-15">(</span><span·class="n">FD</span><span·class="p"·data-group-id="8269892508-15">)</span><span·class="p">.</span><span·class="w">
  
192 </span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="0446857929-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="0446857929-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="8269892508-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="8269892508-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="0446857929-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="0446857929-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="8269892508-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="8269892508-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="0446857929-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:·fccab5f9f080d62cd5f3f7630b1570724c8652f215ad60eb0b79ecd548c872f4·...·]-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="8269892508-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:·a5a3485aa5b4471ccc955e0fd28ec1d5455363c0b3618ec63a30360b6cc88664·...·]-18">)</span><span·class="p">,</span><span·class="w">
196 ····</span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="0446857929-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:·b89541ee7230674f471593598249f78f054061c29cccb21392af92330f243e28·...·]-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="8269892508-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:·960cd66f3afc71abb313ab4029b3e9d658774b37bfbf941373b6f455dea1bdcf·...·]-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="3384361128-3">(</span><span·class="p"·data-group-id="3384361128-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="3769641176-3">(</span><span·class="p"·data-group-id="3769641176-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="3384361128-4">(</span><span·class="p"·data-group-id="3384361128-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="3769641176-4">(</span><span·class="p"·data-group-id="3769641176-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="1763982210-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="7386943316-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="1763982210-2">[</span><span·class="p"·data-group-id="1763982210-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="1763982210-3">}</span><span·class="p">,</span><span·class="w">200 ·</span><span·class="p"·data-group-id="7386943316-2">[</span><span·class="p"·data-group-id="7386943316-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="7386943316-3">}</span><span·class="p">,</span><span·class="w">
201 ··</span><span·class="p"·data-group-id="1763982210-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="1763982210-4">}</span><span·class="p">,</span><span·class="w">201 ··</span><span·class="p"·data-group-id="7386943316-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="7386943316-4">}</span><span·class="p">,</span><span·class="w">
202 ··</span><span·class="p"·data-group-id="1763982210-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="1763982210-5">}</span><span·class="p">,</span><span·class="w">202 ··</span><span·class="p"·data-group-id="7386943316-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="7386943316-5">}</span><span·class="p">,</span><span·class="w">
203 ··</span><span·class="p"·data-group-id="1763982210-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="1763982210-6">}</span><span·class="p"·data-group-id="1763982210-2">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·ac364c88203ea36ca74ac74cae43fea3c19249f981a31260279a485c59561554·...·]-1">}</span><span·class="p">.</span><span·class="w">203 ··</span><span·class="p"·data-group-id="7386943316-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="7386943316-6">}</span><span·class="p"·data-group-id="7386943316-2">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·c3ab1b69c4be535570dd3137f5a8bfade13a2684113160019413f542c09b3ecc·...·]-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="1763982210-7">[</span><span·class="p"·data-group-id="1763982210-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:·7f8265a836624f60b63cc3ad3d9b4c17445080a98f79f198eb91cf6b08240d56·...·]-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="7386943316-7">[</span><span·class="p"·data-group-id="7386943316-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:·bbe8861b3f2eedaa3f2864e484d46e81740d49b8d3b27e801082ab1de4dbbad5·...·]-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="7938848105-1">[</span><span·class="p"·data-group-id="7938848105-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:·223,·SHA:·d765d2cbeec3e819825f179d164bef8da3ea821b743e6c03176e77e597c279cd·...·]-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="6408738813-1">[</span><span·class="p"·data-group-id="6408738813-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:·223,·SHA:·3ee3f7765cee7b2bb0f31d45c742473073f97457c2d0b4728a5729ec8418321f·...·]-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="0101995620-1">{</span><span·class="p"·data-group-id="0101995620-2">[</span><span·class="p"·data-group-id="0101995620-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:·06e2c7f9ae090784d3480e7bcdc5257688084c9ee4c068b1409c282d68959c90·...·]-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="3158112539-1">{</span><span·class="p"·data-group-id="3158112539-2">[</span><span·class="p"·data-group-id="3158112539-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:·76d546a4f1a34a5c25c8344e0d9ff21bf0d8f45d44de2f13be65d66f81eb466f·...·]-2">]</span><span·class="p">,</span><span·class="w">
218 ·</span><span·class="p"·data-group-id="0101995620-4">{</span><span·class="w">·</span><span·class="p"·data-group-id="0101995620-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:·2b3c42d51f4785f477d36b80058dd900afb10b021326210132a53d3cf5fd5036·...·]-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="3158112539-4">{</span><span·class="w">·</span><span·class="p"·data-group-id="3158112539-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:·dff4643b6ffc22e547b4b1761da5a1e3331830ea5d3615108afc4992f337bb26·...·]-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="0101995620-6">[</span><span·class="p"·data-group-id="0101995620-7">{</span><span·class="p"·data-group-id="0101995620-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:·f5ae9539a9580cfb939348e6bcb21d18c0b5e26f1721630c4a90ab8156834fdd·...·]-7">}</span><span·class="p">,</span><span·class="w">219 ·</span><span·class="p"·data-group-id="3158112539-6">[</span><span·class="p"·data-group-id="3158112539-7">{</span><span·class="p"·data-group-id="3158112539-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:·8e0a62e503b25e6138c2131eaac4f54c8d3c377812715ca8257e072b249e2ea5·...·]-7">}</span><span·class="p">,</span><span·class="w">
220 ··</span><span·class="p"·data-group-id="0101995620-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:·a8032a30375135cf266dd13aca4939e7caffd68e16528386ad1aa377669be7a6·...·]-1">}</span><span·class="p">.</span><span·class="w">220 ··</span><span·class="p"·data-group-id="3158112539-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:·4129ac5e0b3296d061b27429a0e447ff968f12cd02950d5ef55f598e74066e5d·...·]-1">}</span><span·class="p">.</span><span·class="w">
  
221 </span><span·class="p"·data-group-id="0101995620-10">{</span><span·class="p"·data-group-id="0101995620-11">[</span><span·class="p"·data-group-id="0101995620-12">{</span><span·class="p"·data-group-id="0101995620-13">{</span><span·class="ss">fprof</span><span·class="p">,</span><span·class="ss">a[·...·truncated·by·diffoscope;·len:·464,·SHA:·9856aa7c8a4cdfdf9c4ad0cb0a49e4c9ad2aef6cb3ef43da238e8f4f58668ca2·...·]-11">]</span><span·class="p">,</span><span·class="w">221 </span><span·class="p"·data-group-id="3158112539-10">{</span><span·class="p"·data-group-id="3158112539-11">[</span><span·class="p"·data-group-id="3158112539-12">{</span><span·class="p"·data-group-id="3158112539-13">{</span><span·class="ss">fprof</span><span·class="p">,</span><span·class="ss">a[·...·truncated·by·diffoscope;·len:·464,·SHA:·214ed18066527ce7de2c9389e4f7a1f0cc3bdc1e276ff7e59c43b05d3094d5e2·...·]-11">]</span><span·class="p">,</span><span·class="w">
222 ·</span><span·class="p"·data-group-id="0101995620-14">{</span><span·class="w">·</span><span·class="p"·data-group-id="0101995620-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:·ab3d67c1759e822ff94ed07356d971a1e64253a5eeb41ba3eacb8cc3ffad0d2f·...·]-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="3158112539-14">{</span><span·class="w">·</span><span·class="p"·data-group-id="3158112539-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:·c5198664adfbe283b4cd011183944f407ee71bd54cc17172316fe93443cd8216·...·]-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="0101995620-16">[</span><span·class="p"·data-group-id="0101995620-17">{</span><span·class="p"·data-group-id="0101995620-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:·40062ab425cc6b552e4311828de45e6e7ebb36302d7dcbaf6ba6d1ca166b6770·...·]-17">}</span><span·class="p">,</span><span·class="w">223 ·</span><span·class="p"·data-group-id="3158112539-16">[</span><span·class="p"·data-group-id="3158112539-17">{</span><span·class="p"·data-group-id="3158112539-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:·ee4b266ef9b8b657da872dbdadabe43a04ba7133e18e0806ccc71b4cbb07b82b·...·]-17">}</span><span·class="p">,</span><span·class="w">
224 ··</span><span·class="p"·data-group-id="0101995620-19">{</span><span·class="p"·data-group-id="0101995620-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="01019956[·...·truncated·by·diffoscope;·len:·302,·SHA:·112b4a0ffcb81d1665acfbb3d4102468d0ab097be67f00bdf10b1ba84af92fec·...·]-19">}</span><span·class="p">,</span><span·class="w">224 ··</span><span·class="p"·data-group-id="3158112539-19">{</span><span·class="p"·data-group-id="3158112539-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="31581125[·...·truncated·by·diffoscope;·len:·302,·SHA:·abc61ce17ec86a716792968235c091f88d4aba07acf867c598b904748460aa23·...·]-19">}</span><span·class="p">,</span><span·class="w">
225 ··</span><span·class="p"·data-group-id="0101995620-21">{</span><span·class="p"·data-group-id="0101995620-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="0101995620-22">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·ac3e497a9e341718a001903a22fb64294e1963f046167cd64d06f5ac9318e632·...·]-21">}</span><span·class="p">,</span><span·class="w">225 ··</span><span·class="p"·data-group-id="3158112539-21">{</span><span·class="p"·data-group-id="3158112539-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="3158112539-22">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·ffbb5222be4e2426dd118a3d1a925dd88f637aaf385ec1ac983172f6cb738506·...·]-21">}</span><span·class="p">,</span><span·class="w">
226 ··</span><span·class="p"·data-group-id="0101995620-23">{</span><span·class="p"·data-group-id="0101995620-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="0101995620-24">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·b2c118dc772626417822c861c75fa6c8dd3da45177d05f587ff93c2f0860371b·...·]-23">}</span><span·class="p">,</span><span·class="w">226 ··</span><span·class="p"·data-group-id="3158112539-23">{</span><span·class="p"·data-group-id="3158112539-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="3158112539-24">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·d88a52382b4faeb92f9747b99b4a23e4c77841b857ce6fa79c401319db185719·...·]-23">}</span><span·class="p">,</span><span·class="w">
227 ··</span><span·class="p"·data-group-id="0101995620-25">{</span><span·class="p"·data-group-id="0101995620-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="0101995620-26">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·99c087976080286d6adecdbba0b312df36f4a0b9e30b9f84c93185488cb8dcf8·...·]-25">}</span><span·class="p">,</span><span·class="w">227 ··</span><span·class="p"·data-group-id="3158112539-25">{</span><span·class="p"·data-group-id="3158112539-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="3158112539-26">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·cdaec3716914aec10aeb67ebfa0af4b0f10ba9877c5ab1bf1508595c5295035c·...·]-25">}</span><span·class="p">,</span><span·class="w">
228 ··</span><span·class="p"·data-group-id="0101995620-27">{</span><span·class="p"·data-group-id="0101995620-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="0101995620-28">}</[·...·truncated·by·diffoscope;·len:·410,·SHA:·fa17b7670cd7a6f0f0c29d14ca3a2b756d7081ed450474061dbbd42f73ae48ca·...·]-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="3158112539-27">{</span><span·class="p"·data-group-id="3158112539-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="3158112539-28">}</[·...·truncated·by·diffoscope;·len:·410,·SHA:·2385fe9de17fcba4b111865e153dd10d8cac74d7d808a8769c14ed8d4af1c47a·...·]-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="4823260816-1">{</span><span·class="p"·data-group-id="4823260816-2">[</span><span·class="p"·data-group-id="4823260816-3">{</span><span·class="p"·data-group-id="4823260816-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_[·...·truncated·by·diffoscope;·len:·405,·SHA:·53ae0d18ad4fcbf26ba31afc7ce8956153d2cfc6e8911ba2f7c5031188abffda·...·]-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="7589178281-1">{</span><span·class="p"·data-group-id="7589178281-2">[</span><span·class="p"·data-group-id="7589178281-3">{</span><span·class="p"·data-group-id="7589178281-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_[·...·truncated·by·diffoscope;·len:·405,·SHA:·d0c60c8a124f3bb22a321199115d5f415b9c3c8fe36d0d5717ae8dc46796979f·...·]-3">}</span><span·class="p">,</span><span·class="w">
250 ··</span><span·class="p"·data-group-id="4823260816-5">{</span><span·class="p"·data-group-id="4823260816-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="4823260816[·...·truncated·by·diffoscope;·len:·352,·SHA:·1529ef98692c8e07e0f12b889127d8f29adc9edbea39f4251d85571769aef5b4·...·]-2">]</span><span·class="p">,</span><span·class="w">250 ··</span><span·class="p"·data-group-id="7589178281-5">{</span><span·class="p"·data-group-id="7589178281-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="7589178281[·...·truncated·by·diffoscope;·len:·352,·SHA:·d54a9b27f46cef932b0de27df69dca81d480b75c05026789a0ad70d6801e69cb·...·]-2">]</span><span·class="p">,</span><span·class="w">
251 ·</span><span·class="p"·data-group-id="4823260816-7">{</span><span·class="w">·</span><span·class="p"·data-group-id="4823260816-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:·b255821e00c1b393fd287605e10b21a1bedd0ecef5ffe4e7c1212a72d7354390·...·]-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="7589178281-7">{</span><span·class="w">·</span><span·class="p"·data-group-id="7589178281-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:·4a10d970df679fad3465f61b4d678c7bfa99f3d329cf941dd339925ccab6a8f4·...·]-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="4823260816-9">[</span><span·class="p"·data-group-id="4823260816-10">{</span><span·class="p"·data-group-id="4823260816-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:·8dce1a5629b15ea2f31a71c36fc5ea980989e0897c45503b6708471d01d9e4b3·...·]-10">}</span><span·class="p">,</span><span·class="w">252 ·</span><span·class="p"·data-group-id="7589178281-9">[</span><span·class="p"·data-group-id="7589178281-10">{</span><span·class="p"·data-group-id="7589178281-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:·84e1e050003ccb0fdaebf7fab456e72b5fb2150046aac69c47c349bf9a7d9104·...·]-10">}</span><span·class="p">,</span><span·class="w">
253 ··</span><span·class="p"·data-group-id="4823260816-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:·6b972e36ea524416be8c6074db3ff2a4a50628a4c557917fca5d1bb4f7b61941·...·]-12">}</span><span·class="p">,</span><span·class="w">253 ··</span><span·class="p"·data-group-id="7589178281-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:·44ad66b01139f5542233c710bdc44f24e0d410d68c757d1d1064ece83e729a8d·...·]-12">}</span><span·class="p">,</span><span·class="w">
254 ··</span><span·class="p"·data-group-id="4823260816-13">{</span><span·class="p"·data-group-id="4823260816-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="48232608[·...·truncated·by·diffoscope;·len:·409,·SHA:·1e9e000d1508120fe93d5c584b9c4219be41cca1cfa0b69b64a77586fa1defab·...·]-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="7589178281-13">{</span><span·class="p"·data-group-id="7589178281-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="75891782[·...·truncated·by·diffoscope;·len:·409,·SHA:·2d39c8323cd8133f50c62f855e9e6f921a26fe0c29cd7fc468dfea15d8a245ed·...·]-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="3713872651-1">{</span><span·class="p"·data-group-id="3713872651-2">[</span><span·class="p"·data-group-id="3713872651-3">{</span><span·class="p"·data-group-id="3713872651-4">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">write</[·...·truncated·by·diffoscope;·len:·404,·SHA:·b31f3ff5bede1ba368a04614dc6fbbcf11c18ac1e642eb520c732b1dd7f1e952·...·]-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="3070437113-1">{</span><span·class="p"·data-group-id="3070437113-2">[</span><span·class="p"·data-group-id="3070437113-3">{</span><span·class="p"·data-group-id="3070437113-4">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">write</[·...·truncated·by·diffoscope;·len:·404,·SHA:·3b1a82c3eb8a05fdca2708e3793d657948b170e60aaee0316397a41abc647a34·...·]-3">}</span><span·class="p">,</span><span·class="w">
263 ··</span><span·class="p"·data-group-id="3713872651-5">{</span><span·class="p"·data-group-id="3713872651-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="3713872651-[·...·truncated·by·diffoscope;·len:·298,·SHA:·c05e1f9969f961d65462c635e0c3a3abe10ca1e54935ca1e618f2bf48d0b1ba8·...·]-5">}</span><span·class="p">,</span><span·class="w">263 ··</span><span·class="p"·data-group-id="3070437113-5">{</span><span·class="p"·data-group-id="3070437113-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="3070437113-[·...·truncated·by·diffoscope;·len:·298,·SHA:·04d26b1c3199fb5a288f69c2a0abb120b2eaaac7338be8b16debc5a49f89e7cd·...·]-5">}</span><span·class="p">,</span><span·class="w">
264 ··</span><span·class="p"·data-group-id="3713872651-7">{</span><span·class="p"·data-group-id="3713872651-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="3713872651[·...·truncated·by·diffoscope;·len:·298,·SHA:·2382fa99b4b33a7dd466ca76ff8322373e9c48728dfada4b191ffc34b319295e·...·]-7">}</span><span·class="p">,</span><span·class="w">264 ··</span><span·class="p"·data-group-id="3070437113-7">{</span><span·class="p"·data-group-id="3070437113-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="3070437113[·...·truncated·by·diffoscope;·len:·298,·SHA:·9009e3fb720850619621c0c22c57e388cb11fa52004fe754cc6eebc47ec0e0e6·...·]-7">}</span><span·class="p">,</span><span·class="w">
265 ··</span><span·class="p"·data-group-id="3713872651-9">{</span><span·class="p"·data-group-id="3713872651-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="3713[·...·truncated·by·diffoscope;·len:·300,·SHA:·63980b8d11273dc0fca4fc1d0f854f17877e66d945ac4584125d2fbf05106013·...·]-9">}</span><span·class="p">,</span><span·class="w">265 ··</span><span·class="p"·data-group-id="3070437113-9">{</span><span·class="p"·data-group-id="3070437113-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="3070[·...·truncated·by·diffoscope;·len:·300,·SHA:·0c30907d3f1555f3c16b485d812fe553ecdd22e80828ae0fff40f31a98001c71·...·]-9">}</span><span·class="p">,</span><span·class="w">
266 ··</span><span·class="p"·data-group-id="3713872651-11">{</span><span·class="p"·data-group-id="3713872651-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="3713872651-12">}</sp[·...·truncated·by·diffoscope;·len:·301,·SHA:·1448758a62426a8ff7ab0a662ef6cdbfa4548f9d97c1271bed9d3657574c65da·...·]-11">}</span><span·class="p">,</span><span·class="w">266 ··</span><span·class="p"·data-group-id="3070437113-11">{</span><span·class="p"·data-group-id="3070437113-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="3070437113-12">}</sp[·...·truncated·by·diffoscope;·len:·301,·SHA:·6f662d0f38e45f028a5f79a7df68a5bd85d29da86311be9c5a3983007f8e81a0·...·]-11">}</span><span·class="p">,</span><span·class="w">
267 ··</span><span·class="p"·data-group-id="3713872651-13">{</span><span·class="p"·data-group-id="3713872651-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="3713872651-14"[·...·truncated·by·diffoscope;·len:·301,·SHA:·508ea890e439c54a73f18559e65d6e044ff0ef794c81ad51b159b775d643d475·...·]-13">}</span><span·class="p">,</span><span·class="w">267 ··</span><span·class="p"·data-group-id="3070437113-13">{</span><span·class="p"·data-group-id="3070437113-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="3070437113-14"[·...·truncated·by·diffoscope;·len:·301,·SHA:·3f6bb670feae6fa1c4abab79f9961cf28ba8b4a1321771aebd69484069ab2416·...·]-13">}</span><span·class="p">,</span><span·class="w">
268 ··</span><span·class="p"·data-group-id="3713872651-15">{</span><span·class="p"·data-group-id="3713872651-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="3713872651[·...·truncated·by·diffoscope;·len:·301,·SHA:·ba30cfec6d2b9aadc8cca53bca0c2933c09c8326c81f6598ac8f98b3c1122097·...·]-15">}</span><span·class="p">,</span><span·class="w">268 ··</span><span·class="p"·data-group-id="3070437113-15">{</span><span·class="p"·data-group-id="3070437113-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="3070437113[·...·truncated·by·diffoscope;·len:·301,·SHA:·215c0f192b9c9880db24c8cc4aaf54de9fa051a96cf08323bd325c60795dd245·...·]-15">}</span><span·class="p">,</span><span·class="w">
269 ··</span><span·class="p"·data-group-id="3713872651-17">{</span><span·class="p"·data-group-id="3713872651-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="37138726[·...·truncated·by·diffoscope;·len:·301,·SHA:·8d4ed957a82913690972adbb8305bc16f01049254d0b5710f650cbdec442baeb·...·]-17">}</span><span·class="p">,</span><span·class="w">269 ··</span><span·class="p"·data-group-id="3070437113-17">{</span><span·class="p"·data-group-id="3070437113-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="30704371[·...·truncated·by·diffoscope;·len:·301,·SHA:·41c096c96a035904c27d7ff69fdc4e1338dfdcb7d7d13d2ea8a79c1c17bba780·...·]-17">}</span><span·class="p">,</span><span·class="w">
270 ··</span><span·class="p"·data-group-id="3713872651-19">{</span><span·class="p"·data-group-id="3713872651-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:·301,·SHA:·b38ea88a916f87e74d05758c1c2e518310a7d5d42f685556a51d712ff184eafc·...·]-19">}</span><span·class="p">,</span><span·class="w">270 ··</span><span·class="p"·data-group-id="3070437113-19">{</span><span·class="p"·data-group-id="3070437113-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:·301,·SHA:·e3a46facf568097f12d73ca7d127767857b863895b14bc1ae636d402ca6af033·...·]-19">}</span><span·class="p">,</span><span·class="w">
271 ··</span><span·class="p"·data-group-id="3713872651-21">{</span><span·class="p"·data-group-id="3713872651-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:·311,·SHA:·3474ddbc1848a6955124d8f71da01abb818c0e444a04dcd2ce33f8904bf3b41c·...·]-21">}</span><span·class="p">,</span><span·class="w">271 ··</span><span·class="p"·data-group-id="3070437113-21">{</span><span·class="p"·data-group-id="3070437113-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:·311,·SHA:·11a954fb013ca3ecd7cfd298ba91cbc59c7ddd517180de33faa5b17f01e2d0d2·...·]-21">}</span><span·class="p">,</span><span·class="w">
272 ··</span><span·class="p"·data-group-id="3713872651-23">{</span><span·class="p"·data-group-id="3713872651-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="3713872651-24">}</sp[·...·truncated·by·diffoscope;·len:·301,·SHA:·6ea8eada3b9d59df3f05ddcbe433d3b7a86c734cb7d45097ac887f46e0968e5b·...·]-23">}</span><span·class="p">,</span><span·class="w">272 ··</span><span·class="p"·data-group-id="3070437113-23">{</span><span·class="p"·data-group-id="3070437113-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="3070437113-24">}</sp[·...·truncated·by·diffoscope;·len:·301,·SHA:·2b0cee841dcfcc1e3701e8439973b4429bd0bab1dbdf69f9a928295cad064312·...·]-23">}</span><span·class="p">,</span><span·class="w">
273 ··</span><span·class="p"·data-group-id="3713872651-25">{</span><span·class="p"·data-group-id="3713872651-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:·310,·SHA:·a650e893a5ea078de57a09eab76ad4d065a41afa73e3f9b81d4d3b419543bb6f·...·]-25">}</span><span·class="p">,</span><span·class="w">273 ··</span><span·class="p"·data-group-id="3070437113-25">{</span><span·class="p"·data-group-id="3070437113-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:·310,·SHA:·85e0b79c6be9bfa0cf445d646bb1316d5d4496b8db26438262822d5d417d6a2e·...·]-25">}</span><span·class="p">,</span><span·class="w">
274 ··</span><span·class="p"·data-group-id="3713872651-27">{</span><span·class="p"·data-group-id="3713872651-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="3713872[·...·truncated·by·diffoscope;·len:·301,·SHA:·53f8fdbfa1dec20c076b62626ef3aaf9aa55ea2415b288f9fa94a3d14eb03613·...·]-27">}</span><span·class="p">,</span><span·class="w">274 ··</span><span·class="p"·data-group-id="3070437113-27">{</span><span·class="p"·data-group-id="3070437113-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="3070437[·...·truncated·by·diffoscope;·len:·301,·SHA:·43f3220587baf1ec2cb713e8728655711dc6c23c1b6352eac24e1ebcb0cdf50c·...·]-27">}</span><span·class="p">,</span><span·class="w">
275 ··</span><span·class="p"·data-group-id="3713872651-29">{</span><span·class="p"·data-group-id="3713872651-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="371[·...·truncated·by·diffoscope;·len:·301,·SHA:·5cf8dbcf76125b216a8b00a99a3385e20f1d818eef00896c2b3dc886961d1f4d·...·]-29">}</span><span·class="p">,</span><span·class="w">275 ··</span><span·class="p"·data-group-id="3070437113-29">{</span><span·class="p"·data-group-id="3070437113-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="307[·...·truncated·by·diffoscope;·len:·301,·SHA:·4840df99cffcb9da54d8cec64025f08a1b0381d8e328ae5658830fee07ec7584·...·]-29">}</span><span·class="p">,</span><span·class="w">
276 ··</span><span·class="p"·data-group-id="3713872651-31">{</span><span·class="p"·data-group-id="3713872651-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="3713872651-32">}[·...·truncated·by·diffoscope;·len:·301,·SHA:·974bb50dec31868dfe42689dee493b45c799a7fe7593451691e28bdc5cf83cfb·...·]-31">}</span><span·class="p">,</span><span·class="w">276 ··</span><span·class="p"·data-group-id="3070437113-31">{</span><span·class="p"·data-group-id="3070437113-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="3070437113-32">}[·...·truncated·by·diffoscope;·len:·301,·SHA:·0bbb1da3ba11937db1b669b1488e52efcfa8f4d5ee0a5a29e2c889a2bf988e71·...·]-31">}</span><span·class="p">,</span><span·class="w">
277 ··</span><span·class="p"·data-group-id="3713872651-33">{</span><span·class="p"·data-group-id="3713872651-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="3713872[·...·truncated·by·diffoscope;·len:·355,·SHA:·171b57fee5c3840518e739173e1f146134895cbfc5c439c14f1969408a90fb8f·...·]-2">]</span><span·class="p">,</span><span·class="w">277 ··</span><span·class="p"·data-group-id="3070437113-33">{</span><span·class="p"·data-group-id="3070437113-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="3070437[·...·truncated·by·diffoscope;·len:·355,·SHA:·f11ce087219ad1e6a286c1d7767565b9cf5c93235031e541d40e504639608f83·...·]-2">]</span><span·class="p">,</span><span·class="w">
278 ·</span><span·class="p"·data-group-id="3713872651-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:·125,·SHA:·2a9e81d0535e9067c678d6e0d1618f93c715249784f7c340025c2d6fe78dab6b·...·]-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="3070437113-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:·125,·SHA:·fb914b38719d86f4e4f2456b0b409fa9ea1bad3c13279de3175c226d189afc06·...·]-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="3713872651-36">[</span><span·class="w">·</span><span·class="p"·data-group-id="3713872651-36">]</span><span·class="p"·data-group-id="3713872651-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="3070437113-36">[</span><span·class="w">·</span><span·class="p"·data-group-id="3070437113-36">]</span><span·class="p"·data-group-id="3070437113-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="5307307991-1">{</span><span·class="p"·data-group-id="5307307991-2">[</span><span·class="p"·data-group-id="5307307991-3">{</span><span·class="p"·data-group-id="5307307991-4">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">d[·...·truncated·by·diffoscope;·len:·405,·SHA:·4f54ded9b115819ade8649ed7aac71bc14b6d41aa12348e8ab8180c9a8ee6f50·...·]-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="0449782418-1">{</span><span·class="p"·data-group-id="0449782418-2">[</span><span·class="p"·data-group-id="0449782418-3">{</span><span·class="p"·data-group-id="0449782418-4">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">d[·...·truncated·by·diffoscope;·len:·405,·SHA:·8270d3ccbe2824209a5d3ac3fd427b1efa2b937b4326ac63c8ada1cd923138a3·...·]-3">}</span><span·class="p">,</span><span·class="w">
286 ··</span><span·class="p"·data-group-id="5307307991-5">{</span><span·class="p"·data-group-id="5307307991-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="5307307991-6">}[·...·truncated·by·diffoscope;·len:·299,·SHA:·3675f8b5043b285984038a17e631ed774c8de63a62a1665e632a280b40dfb133·...·]-5">}</span><span·class="p">,</span><span·class="w">286 ··</span><span·class="p"·data-group-id="0449782418-5">{</span><span·class="p"·data-group-id="0449782418-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="0449782418-6">}[·...·truncated·by·diffoscope;·len:·299,·SHA:·13869040ea990148aa49d16c6f59081d9d74e5190e38209deeca42f22f7d07c6·...·]-5">}</span><span·class="p">,</span><span·class="w">
287 ··</span><span·class="p"·data-group-id="5307307991-7">{</span><span·class="p"·data-group-id="5307307991-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="5307307991-8">}</span[·...·truncated·by·diffoscope;·len:·352,·SHA:·a474fd9adfbbab5c5394c0749df14c991abc6d61351994ab8c1013cff55d7c37·...·]-2">]</span><span·class="p">,</span><span·class="w">287 ··</span><span·class="p"·data-group-id="0449782418-7">{</span><span·class="p"·data-group-id="0449782418-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="0449782418-8">}</span[·...·truncated·by·diffoscope;·len:·352,·SHA:·2cf468e07cd2a0f5e2509f37e38dc28d26eceb722b65acbd3431377740113353·...·]-2">]</span><span·class="p">,</span><span·class="w">
288 ·</span><span·class="p"·data-group-id="5307307991-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:·e99a5a6969c0a2bcd7f1cf31247c0991bddd39c1e36289376b21bab23f7d9af7·...·]-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="0449782418-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:·0cac5b9ec9043271fddfa3485da9e330df14e05929987d89a3ce0ef09d6b83f1·...·]-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="5307307991-10">[</span><span·class="w">·</span><span·class="p"·data-group-id="5307307991-10">]</span><span·class="p"·data-group-id="5307307991-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="0449782418-10">[</span><span·class="w">·</span><span·class="p"·data-group-id="0449782418-10">]</span><span·class="p"·data-group-id="0449782418-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="6973602434-1">{</span><span·class="p"·data-group-id="6973602434-2">[</span><span·class="p"·data-group-id="6973602434-3">{</span><span·class="p"·data-group-id="6973602434-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_[·...·truncated·by·diffoscope;·len:·405,·SHA:·dcc7ba10be85d064e0c52ef7081fe12b51a516324b80d8a5c1479fcc80b84bfb·...·]-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="4113805680-1">{</span><span·class="p"·data-group-id="4113805680-2">[</span><span·class="p"·data-group-id="4113805680-3">{</span><span·class="p"·data-group-id="4113805680-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_[·...·truncated·by·diffoscope;·len:·405,·SHA:·a9dab48b8490259fc90090a1eea96624ffc44a81c01d794b933ce8ad2d2c1d68·...·]-3">}</span><span·class="p">,</span><span·class="w">
295 ··</span><span·class="p"·data-group-id="6973602434-5">{</span><span·class="p"·data-group-id="6973602434-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="6973602434[·...·truncated·by·diffoscope;·len:·352,·SHA:·f7e6a2f8252c3e61d3da5a667932a3932388f6b75836548a7c364903f75cd9d4·...·]-2">]</span><span·class="p">,</span><span·class="w">295 ··</span><span·class="p"·data-group-id="4113805680-5">{</span><span·class="p"·data-group-id="4113805680-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="4113805680[·...·truncated·by·diffoscope;·len:·352,·SHA:·47c104650db6fbc7d923855402734339b51804f84d748cb0f32c133b91f4108a·...·]-2">]</span><span·class="p">,</span><span·class="w">
296 ·</span><span·class="p"·data-group-id="6973602434-7">{</span><span·class="w">·</span><span·class="p"·data-group-id="6973602434-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:·48a0debcaa836e04e0fc5dfecb5d2341fac53828b0cd4d68c823dd6ed992d8a6·...·]-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="4113805680-7">{</span><span·class="w">·</span><span·class="p"·data-group-id="4113805680-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:·ba64e32a021ca144fc3b47ac917d813ea4d39bef1b53799b2b71314ffc31a3dc·...·]-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="6973602434-9">[</span><span·class="p"·data-group-id="6973602434-10">{</span><span·class="p"·data-group-id="6973602434-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:·1bb44334b71bfbfa2551d7044a98fd73581996e9618f07cbe625dd4428811ee7·...·]-10">}</span><span·class="p">,</span><span·class="w">297 ·</span><span·class="p"·data-group-id="4113805680-9">[</span><span·class="p"·data-group-id="4113805680-10">{</span><span·class="p"·data-group-id="4113805680-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:·cbeb4dda0592b2e7c8a8954c1026fd8f60a3667fef99bbfdcd5c38926d487a50·...·]-10">}</span><span·class="p">,</span><span·class="w">
298 ··</span><span·class="p"·data-group-id="6973602434-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:·0de7402fcf2b0ea868957e250645d4734d2ef6f0ee1c0b1a18ac0ae9196b29e6·...·]-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="4113805680-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:·6ef72acd0e2a63996ef5b1a05170bbc7e140f717fba1db25f30be5fb0721199a·...·]-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="7376602979-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="7376602979-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·201,·SHA:·9fccb2ff25500b0bf19115c489dc9c7cc0f4fa229228c32015cbb581f9dd96ac·...·]-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="0105645486-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="0105645486-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·201,·SHA:·9907f82f922c0480d1bb085a2f784c792f08bc0f19b0804c91a84f1faefa31e2·...·]-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="7376602979-3">(</span><span·class="p"·data-group-id="7376602979-4">[</span><span·class="ss">start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7376602979-5">{</span><span·class="ss">tracer</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·203,·SHA:·ba4ede3bb6e020b05dcd53287c5bd6b369af17e7990edec21fcc7d1bc1f41724·...·]-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="0105645486-3">(</span><span·class="p"·data-group-id="0105645486-4">[</span><span·class="ss">start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0105645486-5">{</span><span·class="ss">tracer</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·203,·SHA:·d1902588c23ae90a0c2f1ff45d4b8b9a5321739f7fda2bc70fa04b7e46ef5541·...·]-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="7376602979-6">(</span><span·class="ss">stop</span><span·class="p"·data-group-id="7376602979-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="0105645486-6">(</span><span·class="ss">stop</span><span·class="p"·data-group-id="0105645486-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>232 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1858 <p>Copyright·©·1996-2024·<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="4381981745-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">15.0</span><span·class="p"·data-group-id="4381981745-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="4381981745-2">[</span><span·class="mi">64</spa[·...·truncated·by·diffoscope;·len:·1287,·SHA:·b630c39127b1c03f7f317c447d30977641429403af060b1e487fbaf9c727bfa2·...·]-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="3715316061-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">15.0</span><span·class="p"·data-group-id="3715316061-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="3715316061-2">[</span><span·class="mi">64</spa[·...·truncated·by·diffoscope;·len:·1287,·SHA:·fadce5700978d9e59c17069005b3df474831212df73e0a0102fa95180d6d4dcb·...·]-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="4381981745-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:·94c77d91221f7e95245e7a0c8443818962e70fe7be37d2b73ef1cbc911dfbc4d·...·]-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="3715316061-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:·b76ca83ce2dcc9b386afccc3acdde06e066b0d06312155d2042a8f75b7868627·...·]-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="4381981745-10">[</span><span·class="p"·data-group-id="4381981745-11">{</span><span·class="ss">db_nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4381981745-12">[</span><span·class="nf">node</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·1155,·SHA:·4feeb04bcfe0797fae18c4df0bf4e433afe5c6663989bd6cd36152c49de2fc0b·...·]-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="3715316061-10">[</span><span·class="p"·data-group-id="3715316061-11">{</span><span·class="ss">db_nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3715316061-12">[</span><span·class="nf">node</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·1155,·SHA:·b48a1af589954834e68e9e86a47bd69d48fce72583d0181479c1e439e19d3cbc·...·]-17">}</span><span·class="p">,</span><span·class="w">
239 ····</span><span·class="p"·data-group-id="4381981745-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="4381981745-20">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"[·...·truncated·by·diffoscope;·len:·465,·SHA:·74eb1bf85fd01e8efefb47d3a478e24a26e2c03f3ae5640a75be0c2f935154d5·...·]-22">}</span><span·class="p">,</span><span·class="w">239 ····</span><span·class="p"·data-group-id="3715316061-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="3715316061-20">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"[·...·truncated·by·diffoscope;·len:·465,·SHA:·366e29a9dc61847a21f6131231b1dee2c0c85b337c34acab84af6adcb60e9664·...·]-22">}</span><span·class="p">,</span><span·class="w">
240 ····</span><span·class="p"·data-group-id="4381981745-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="4381981745-23">}</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·519,·SHA:·c445d7c007afe8133ae2af733a3bca4cc6efd22b63ca90643e468687c427a6b7·...·]-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="3715316061-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="3715316061-23">}</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·519,·SHA:·627c4b0fa7bdb7861566dd16f694775148a4446eba656f02c0fd6a426c8a3202·...·]-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="4381981745-26">(</span><span·class="p"·data-group-id="4381981745-27">[</span><span·class="p"·data-group-id="4381981745-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:·d8b06227dc17230e4d09294cd965cc17789ee391fd682a4fc0e5c96b6b3835d5·...·]-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="3715316061-26">(</span><span·class="p"·data-group-id="3715316061-27">[</span><span·class="p"·data-group-id="3715316061-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:·ec822f84405f36b211fbe69f058b634dd72dc62dc4b1f02cac7c15b888c7e3a0·...·]-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="7395472222-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="7395472222-2">(</span><span·class="p"·data-group-id="7395472222-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:·9d969124b917e53a7aab3017c7989d8d0a5959a24ff991f7ce069f4a93bd7670·...·]-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="5179391636-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5179391636-2">(</span><span·class="p"·data-group-id="5179391636-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:·3f8571c2728900e2959f8053ae081bfac805d9359ac7599f4d7120cdb5c05006·...·]-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="7395472222-7">}</span><span·class="p">|</span><span·class="n">Conf</span><span·class="p"·data-group-id="7395472222-6">]</span><span·class="p"·data-group-id="7395472222-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tps</span><sp[·...·truncated·by·diffoscope;·len:·138,·SHA:·2e5d95999e5589b17ee9042b651a66d93ea0719efd24517f3141e50f164de9d8·...·]-1">)</span><span·class="p">.</span><span·class="w">248 ····</span><span·class="ss">true</span><span·class="p"·data-group-id="5179391636-7">}</span><span·class="p">|</span><span·class="n">Conf</span><span·class="p"·data-group-id="5179391636-6">]</span><span·class="p"·data-group-id="5179391636-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tps</span><sp[·...·truncated·by·diffoscope;·len:·138,·SHA:·ae79046387481c32158db1670d6ae6f53a97a02a3da8ec95aff462fda44cfded·...·]-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="8887793851-1">(</span><span·class="ss">big</span><span·class="p"·data-group-id="8887793851-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="7281456513-1">(</span><span·class="ss">big</span><span·class="p"·data-group-id="7281456513-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="8887793851-2">(</span><span·class="p"·data-group-id="8887793851-3">[</span><span·class="ss">bang</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="8887793851-3">]</span><span·class="p"·data-group-id="8887793851-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="7281456513-2">(</span><span·class="p"·data-group-id="7281456513-3">[</span><span·class="ss">bang</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="7281456513-3">]</span><span·class="p"·data-group-id="7281456513-2">)</span><span·class="p">.</span><span·class="w">
  
355 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="8887793851-4">(</span><span·class="p"·data-group-id="8887793851-5">[</span><span·class="p"·data-group-id="8887793851-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8887793851-6">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·143,·SHA:·d2122176ce01027e014e7a6b62c6589820aa448a8f2cd3c896d9737341d02164·...·]-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="7281456513-4">(</span><span·class="p"·data-group-id="7281456513-5">[</span><span·class="p"·data-group-id="7281456513-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-6">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·143,·SHA:·9ee370dccbcd1c01c6de7aafb66c7a6905148d9442731e214970f9665c2c611a·...·]-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="8887793851-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="8887793851-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">357 »       </span><span·class="p"·data-group-id="7281456513-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="7281456513-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="8887793851-8">(</span><span·class="n">Procs</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8887793851-9">[</span><span·class="p"·data-group-id="8887793851-9">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·68,·SHA:·ea679ad1e6ca0fae6ff7c97650b516cea58e7b6506c1a202087a3428050578f3·...·]-8">)</span><span·class="w">358 »       ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="7281456513-8">(</span><span·class="n">Procs</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-9">[</span><span·class="p"·data-group-id="7281456513-9">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·68,·SHA:·716730e723efb900efabcb6ea5fdebb5a160bc834deba290113614f5a85d5982·...·]-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="8887793851-10">(</span><span·class="p"·data-group-id="8887793851-11">[</span><span·class="p"·data-group-id="8887793851-11">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8887793851-12">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·149,·SHA:·1e85baad1369c697d8e4c43692263cdc70f916d3b29fb702f225c9c10279927b·...·]-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="7281456513-10">(</span><span·class="p"·data-group-id="7281456513-11">[</span><span·class="p"·data-group-id="7281456513-11">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-12">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·149,·SHA:·254e4028ab43c4e84b3a1d04597a7c7ee162554eaef669cc748a65b383994de9·...·]-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="8887793851-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="8887793851-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·406,·SHA:·b990338a7dd82cc9913f03b376f5fe4d70e2c1d7c9824d11766c08db51586c84·...·]-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="7281456513-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="7281456513-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·406,·SHA:·63847ebd2f87d349ebb050272751406ca09482162963ffe1f334a51f324d1812·...·]-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="8887793851-16">(</span><span·class="p"·data-group-id="8887793851-17">[</span><span·class="p"·data-group-id="8887793851-17">]</span><span·class="p">,</span><span·class="p"·data-group-id="8887793851-18">[</span><span·class="p"·data-group-id="8887793851-18">][·...·truncated·by·diffoscope;·len:·101,·SHA:·f59670e1de8c5ab041ea3b657b1ce9669ece571f8170751539653511911700c9·...·]-16">)</span><span·class="p">;</span><span·class="w">362 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="7281456513-16">(</span><span·class="p"·data-group-id="7281456513-17">[</span><span·class="p"·data-group-id="7281456513-17">]</span><span·class="p">,</span><span·class="p"·data-group-id="7281456513-18">[</span><span·class="p"·data-group-id="7281456513-18">][·...·truncated·by·diffoscope;·len:·101,·SHA:·b18b1ba4ad67940d601652e09a721dfa99becaf3360ca1425b22352cdd25285d·...·]-16">)</span><span·class="p">;</span><span·class="w">
363 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="8887793851-19">(</span><span·class="p"·data-group-id="8887793851-20">[</span><span·class="p"·data-group-id="8887793851-20">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8887793851-21">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·151,·SHA:·f90629acbd20d5b8225bedce5696d296d524305e20799115fe97e788ff8c09ed·...·]-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="7281456513-19">(</span><span·class="p"·data-group-id="7281456513-20">[</span><span·class="p"·data-group-id="7281456513-20">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-21">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·151,·SHA:·b2f644e82508f3da69cebad82df77af762ae694be6c5f18aabdf02719bfd95f4·...·]-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="8887793851-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="8887793851-23">(</span><span·class="p"·data-group-id="8887793851-23">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·bec85c4051a8283a4a22cfdc6d487cb4c9ba900dab7b55eb6b4331c3f6d80549·...·]-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="7281456513-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="7281456513-23">(</span><span·class="p"·data-group-id="7281456513-23">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·093483c9891ab1354877d5575457e52450e435683aeac093ff1c792c8c40122b·...·]-22">}</span><span·class="p">,</span><span·class="w">
365 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="8887793851-24">(</span><span·class="p"·data-group-id="8887793851-25">[</span><span·class="p"·data-group-id="8887793851-25">]</span><span·class="p">,</span><span·class="p"·data-group-id="8887793851-26">[</span><span·class="p"·data-group-id="8887793851-26">][·...·truncated·by·diffoscope;·len:·101,·SHA:·f59670e1de8c5ab041ea3b657b1ce9669ece571f8170751539653511911700c9·...·]-24">)</span><span·class="p">;</span><span·class="w">365 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="7281456513-24">(</span><span·class="p"·data-group-id="7281456513-25">[</span><span·class="p"·data-group-id="7281456513-25">]</span><span·class="p">,</span><span·class="p"·data-group-id="7281456513-26">[</span><span·class="p"·data-group-id="7281456513-26">][·...·truncated·by·diffoscope;·len:·101,·SHA:·b18b1ba4ad67940d601652e09a721dfa99becaf3360ca1425b22352cdd25285d·...·]-24">)</span><span·class="p">;</span><span·class="w">
366 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="8887793851-27">(</span><span·class="p"·data-group-id="8887793851-28">[</span><span·class="p"·data-group-id="8887793851-28">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8887793851-29">[</span><span·class="n">Po</spa[·...·truncated·by·diffoscope;·len:·328,·SHA:·9f609091011c82b4221be877fb44d292d2629f641160bba5ad4b22c7d19f0f9a·...·]-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="7281456513-27">(</span><span·class="p"·data-group-id="7281456513-28">[</span><span·class="p"·data-group-id="7281456513-28">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-29">[</span><span·class="n">Po</spa[·...·truncated·by·diffoscope;·len:·328,·SHA:·8e25b7ecf7cd16612b577e51a96e0a87cc9986108fd5529d849a6c9c4393c618·...·]-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="8887793851-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="8887793851-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">368 »       </span><span·class="p"·data-group-id="7281456513-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="7281456513-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="8887793851-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="8887793851-32">(</span><span·class="p"·data-group-id="8887793851-32">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·bec85c4051a8283a4a22cfdc6d487cb4c9ba900dab7b55eb6b4331c3f6d80549·...·]-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="7281456513-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="7281456513-32">(</span><span·class="p"·data-group-id="7281456513-32">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·093483c9891ab1354877d5575457e52450e435683aeac093ff1c792c8c40122b·...·]-31">}</span><span·class="p">,</span><span·class="w">
370 »       ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="8887793851-33">(</span><span·class="p"·data-group-id="8887793851-34">[</span><span·class="p"·data-group-id="8887793851-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="8887793851-33">)</span><span·class="p">;</span><span·class="w"> 
371 »       </span><span·class="p"·data-group-id="8887793851-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="8887793851-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="8887793851-36">(</span><span·class="p"·data-group-id="8887793851-37">[</span><span·class="p"·data-group-id="8887793851-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:·75,·SHA:·08537978a0963b79d6e2a8096ebafcb6dfb6d4aaeb40ab3b3c0654f928a4fa35·...·]</span><span·class="w">370 »       ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="7281456513-33">(</span><span·class="p"·data-group-id="7281456513-34">[</span><span·class="p"·data-group-id="7281456513-34">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pongers</span><span·class="p">,</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·103,·SHA:·600328bb40500e1986d923beff3e024eb43b388349a50487dbedd8fbbebb63e7·...·]</span><span·class="w">
 371 »       </span><span·class="p"·data-group-id="7281456513-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="7281456513-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="7281456513-36">(</span><span·class="p"·data-group-id="7281456513-37">[</span><span·class="p"·data-group-id="7281456513-37">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pos</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ReportTo</span><span·class="p"·data-group-id="7281456513-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="8887793851-38">(</span><span·class="p"·data-group-id="8887793851-39">[</span><span·class="n">Pi</span><span·class="p">|</span><span·class="n">Pis</span><span·class="p"·data-group-id="8887793851-39">]</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="8887793851-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="8887793851-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="888[·...·truncated·by·diffoscope;·len:·508,·SHA:·9e2e47d77be2efb49810d053c992aab2d5ce9ed250a54cc8709484fac19b1e7d·...·]</span><span·class="w">374 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="7281456513-38">(</span><span·class="p"·data-group-id="7281456513-39">[</span><span·class="n">Pi</span><span·class="p">|</span><span·class="n">Pis</span><span·class="p"·data-group-id="72814[·...·truncated·by·diffoscope;·len:·274,·SHA:·12d91cd0cb68297c90f5584213e1571a1dd4200254db8889b57a3eabc300e6c0·...·]</span><span·class="w">
 375 ····</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-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="7281456513-40">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-41">{</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="7281456513-42">(</span><span·class="p"·data-group-id="7281456513-42">)</span><span·class="p"·data-group-id="7281456513-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="8887793851-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="8887793851-44">(</span><span·class="p"·data-group-id="8887793851-44">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·bec85c4051a8283a4a22cfdc6d487cb4c9ba900dab7b55eb6b4331c3f6d80549·...·]-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="7281456513-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="7281456513-44">(</span><span·class="p"·data-group-id="7281456513-44">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·093483c9891ab1354877d5575457e52450e435683aeac093ff1c792c8c40122b·...·]-43">}</span><span·class="p">,</span><span·class="w">
379 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="8887793851-45">(</span><span·class="n">Pis</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8887793851-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:·861439de642ac497cec0b11b03bb4a1703dab8b05ce21b9ee60f915c0b0cf2b0·...·]-45">)</span><span·class="p">.</span><span·class="w">379 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="7281456513-45">(</span><span·class="n">Pis</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-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:·e3890121553d4593564e520ee90f4a7df9b73f62b632f13c0f3f11dcd3e0c650·...·]-45">)</span><span·class="p">.</span><span·class="w">
  
380 </span><span·class="nf">spawn_procs</span><span·class="p"·data-group-id="8887793851-47">(</span><span·class="n">N</span><span·class="p"·data-group-id="8887793851-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="7281456513-47">(</span><span·class="n">N</span><span·class="p"·data-group-id="7281456513-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="8887793851-48">[</span><span·class="p"·data-group-id="8887793851-48">]</span><span·class="p">;</span><span·class="w">381 ····</span><span·class="p"·data-group-id="7281456513-48">[</span><span·class="p"·data-group-id="7281456513-48">]</span><span·class="p">;</span><span·class="w">
382 </span><span·class="nf">spawn_procs</span><span·class="p"·data-group-id="8887793851-49">(</span><span·class="n">N</span><span·class="p"·data-group-id="8887793851-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="7281456513-49">(</span><span·class="n">N</span><span·class="p"·data-group-id="7281456513-49">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
383 ····</span><span·class="p"·data-group-id="8887793851-50">[</span><span·class="nf">spawn_link</span><span·class="p"·data-group-id="8887793851-51">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8887793851-52">(</span><span·class="p"·data-group-id="888779385[·...·truncated·by·diffoscope;·len:·953,·SHA:·3c212cf5ee27f28ab845d9facf5e40c9d187891300a55bba66b977438b406157·...·]-50">]</span><span·class="p">.</span><span·class="w">383 ····</span><span·class="p"·data-group-id="7281456513-50">[</span><span·class="nf">spawn_link</span><span·class="p"·data-group-id="7281456513-51">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-52">(</span><span·class="p"·data-group-id="728145651[·...·truncated·by·diffoscope;·len:·953,·SHA:·59f8a6ed659e2595c7203bc78f4cb30c7c191ff16e82a97abf6b13a169b4378e·...·]-50">]</span><span·class="p">.</span><span·class="w">
  
384 </span><span·class="nf">send_procs</span><span·class="p"·data-group-id="8887793851-57">(</span><span·class="p"·data-group-id="8887793851-58">[</span><span·class="p"·data-group-id="8887793851-58">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="8887793851-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="7281456513-57">(</span><span·class="p"·data-group-id="7281456513-58">[</span><span·class="p"·data-group-id="7281456513-58">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="7281456513-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="8887793851-59">(</span><span·class="p"·data-group-id="8887793851-60">[</span><span·class="n">P</span><span·class="p">|</span><span·class="n">Ps</span><span·class="p"·data-group-id="8887793851-60">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·63,·SHA:·af685edebd6e1ed1fa1da049a703572f017a87a10e8ce421fef841a14909a8df·...·]-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="7281456513-59">(</span><span·class="p"·data-group-id="7281456513-60">[</span><span·class="n">P</span><span·class="p">|</span><span·class="n">Ps</span><span·class="p"·data-group-id="7281456513-60">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·63,·SHA:·06f92d3652ad2eeddd0221da02c244370179e5f8bd79a532a77275400e6dcab9·...·]-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="8887793851-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="8887793851-61">)</span><span·class="p">.</span><span·class="w">388 ····</span><span·class="nf">send_procs</span><span·class="p"·data-group-id="7281456513-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="7281456513-61">)</span><span·class="p">.</span><span·class="w">
  
389 </span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="8887793851-62">(</span><span·class="p"·data-group-id="8887793851-63">[</span><span·class="p"·data-group-id="8887793851-63">]</span><span·class="p"·data-group-id="8887793851-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="7281456513-62">(</span><span·class="p"·data-group-id="7281456513-63">[</span><span·class="p"·data-group-id="7281456513-63">]</span><span·class="p"·data-group-id="7281456513-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="8887793851-64">(</span><span·class="p"·data-group-id="8887793851-65">[</span><span·class="n">M</span><span·class="p">|</span><span·class="n">Ms</span><span·class="p"·data-group-id="8887793851-65">]</span><span·class="p"·data-group-id="8887793851-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="7281456513-64">(</span><span·class="p"·data-group-id="7281456513-65">[</span><span·class="n">M</span><span·class="p">|</span><span·class="n">Ms</span><span·class="p"·data-group-id="7281456513-65">]</span><span·class="p"·data-group-id="7281456513-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="8887793851-66">(</span><span·class="n">Ms</span><span·class="p"·data-group-id="8887793851-66">)</span><span·class="w">394 »       ····</span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="7281456513-66">(</span><span·class="n">Ms</span><span·class="p"·data-group-id="7281456513-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="8887793851-67">(</span><span·class="n">N</span><span·class="p"·data-group-id="8887793851-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="8887793851-68">(</[·...·truncated·by·diffoscope;·len:·70,·SHA:·7f6251235b5228aafb7809316d62720065608b3cbb7555b17e218c191c3f9708·...·]-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="7281456513-67">(</span><span·class="n">N</span><span·class="p"·data-group-id="7281456513-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="7281456513-68">(</[·...·truncated·by·diffoscope;·len:·70,·SHA:·63bd96c653a7286e1d0478cef5dba4fae5a3a8deccfb5cd82d7445e023779556·...·]-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="8887793851-69">(</span><span·class="n">N</span><span·class="p"·data-group-id="8887793851-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="7281456513-69">(</span><span·class="n">N</span><span·class="p"·data-group-id="7281456513-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="8887793851-70">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8887793851-71">(</span><span·class="n">P</span><span·class="p"·data-group-id="8887793851-71">)</span><span·class="w">·</span><span·class="p">-&gt;</spa[·...·truncated·by·diffoscope;·len:·401,·SHA:·2b408a2ce788c46ed06bd8d8e7d3244fbc05d7cface00c10eaf31eca32128b15·...·]-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="7281456513-70">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-71">(</span><span·class="n">P</span><span·class="p"·data-group-id="7281456513-71">)</span><span·class="w">·</span><span·class="p">-&gt;</spa[·...·truncated·by·diffoscope;·len:·401,·SHA:·04587e60b04442815af1a1c067e8bfdc82019d791bf361b04ae11f490cab1f26·...·]-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="8887793851-73">(</span><span·class="p"·data-group-id="8887793851-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="7281456513-73">(</span><span·class="p"·data-group-id="7281456513-73">)</span><span·class="p">,</span><span·class="w">
400 ····</span><span·class="nf">send_procs</span><span·class="p"·data-group-id="8887793851-74">(</span><span·class="n">Procs</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8887793851-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:·bd3e15aacffd756e025e5f1398095fdb5afb657c56cd31bcb19d0da851fc51a5·...·]-74">)</span><span·class="p">,</span><span·class="w">400 ····</span><span·class="nf">send_procs</span><span·class="p"·data-group-id="7281456513-74">(</span><span·class="n">Procs</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-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:·45ff318eeb3a532a6e673bcbd63d29169acd5d636cdd330004821b1a43a93b40·...·]-74">)</span><span·class="p">,</span><span·class="w">
401 ····</span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="8887793851-77">(</span><span·class="n">RMsgs</span><span·class="p"·data-group-id="8887793851-77">)</span><span·class="p">,</span><span·class="w">401 ····</span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="7281456513-77">(</span><span·class="n">RMsgs</span><span·class="p"·data-group-id="7281456513-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="8887793851-78">(</span><span·class="p"·data-group-id="8887793851-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="7281456513-78">(</span><span·class="p"·data-group-id="7281456513-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="8887793851-79">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8887793851-80">(</span><span·class="n">P</span><span·class="p"·data-group-id="8887793851-80">)</span><span·class="w">·</span><span·class="p">-&gt;</spa[·...·truncated·by·diffoscope;·len:·431,·SHA:·f34b3ac73430985aa91bd3f5cf26624da982d9666f647e413fce0c4ec2a30366·...·]-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="7281456513-79">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7281456513-80">(</span><span·class="n">P</span><span·class="p"·data-group-id="7281456513-80">)</span><span·class="w">·</span><span·class="p">-&gt;</spa[·...·truncated·by·diffoscope;·len:·431,·SHA:·24463d88e92069a406085dbcc8b5913a501380ee1af8a33378dd19a0179833c9·...·]-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="8887793851-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="8887793851-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="7281456513-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="7281456513-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>464 <p>Copyright·©·1996-2024·<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="3595034996-1">{</span><span·class="ss">&#39;file1&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="3595034996-2">[</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="p"·data-group-id="3595034996-3">{</span><span·c[·...·truncated·by·diffoscope;·len:·230,·SHA:·8d8a78c80b0f63d6a5302597b70490b5449ffcffcf81d4a04b23d801a576d5a7·...·]-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="1501267524-1">{</span><span·class="ss">&#39;file1&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1501267524-2">[</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="p"·data-group-id="1501267524-3">{</span><span·c[·...·truncated·by·diffoscope;·len:·230,·SHA:·9bda225234fcba970735f319164e84336c46fe18687dbb19c9974ef3c97370a6·...·]-1">}</span><span·class="p">.</span><span·class="w">
146 </span><span·class="p"·data-group-id="3595034996-4">{</span><span·class="ss">&#39;*&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="3595034996-5">[</span><span·class="ss">debug_info</span><span·class="p"·data-group-id="3595034996-5">]</span><span·class="p"·data-group-id="3595[·...·truncated·by·diffoscope;·len:·6,·SHA:·62689dafcd673b848c772f2ec79b70b303a9b1419616570c3de82d976bf1e2ea·...·]-4">}</span><span·class="p">.</span></code></pre><h2·id="module-see-also"·class="section-heading">146 </span><span·class="p"·data-group-id="1501267524-4">{</span><span·class="ss">&#39;*&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1501267524-5">[</span><span·class="ss">debug_info</span><span·class="p"·data-group-id="1501267524-5">]</span><span·class="p"·data-group-id="1501[·...·truncated·by·diffoscope;·len:·6,·SHA:·ce268e6a89df89cbeefab9bac0acd48923dbc34e38849e185cdbbc404746047d·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>391 <p>Copyright·©·1996-2024·<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="6837564099-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="6837564099-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="7813067192-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="7813067192-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="6837564099-2">(</span><span·class="p"·data-group-id="6837564099-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:·b902bb70b3bb5f1a9b24edefd080183301a28794b090fbe6bc8ffa839f868535·...·]-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="7813067192-2">(</span><span·class="p"·data-group-id="7813067192-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:·faf07800faf83df89ff0a1b01026180efacbcdec0d45d3e76167e0bdadb4b2d1·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
142 </span><span·class="nf">bar</span><span·class="p"·data-group-id="6837564099-4">(</span><span·class="p"·data-group-id="6837564099-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:·39e7d8c5bb4a21d6a3dd8a89a65016769c4a5e2bc91627242f22dfcc2eca42a6·...·]-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="7813067192-4">(</span><span·class="p"·data-group-id="7813067192-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:·1a6a1fa32b866e143590cc1268ceee73f4041008886042d5bb4d90bc04904ca9·...·]-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="6445652245-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="6445652245-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="0183940678-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="0183940678-1">)</span><span·class="p">.</span><span·class="w">
144 </span><span·class="p"·data-group-id="6445652245-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">foo</span><span·class="p"·data-group-id="6445652245-2">}</span><span·class="gp·unselectable">144 </span><span·class="p"·data-group-id="0183940678-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">foo</span><span·class="p"·data-group-id="0183940678-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="6445652245-3">(</span><span·class="p"·data-group-id="6445652245-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="0183940678-3">(</span><span·class="p"·data-group-id="0183940678-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="6445652245-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="6445652245-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="0183940678-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="0183940678-4">)</span><span·class="p">.</span><span·class="w">
148 </span><span·class="p"·data-group-id="6445652245-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6445652245-6">[</span><span·class="p"·data-group-id="6445652245-7">{</span><span·class="p"·data-group-id="6445652245-8">{</span><span·class="ss">foo</spa[·...·truncated·by·diffoscope;·len:·977,·SHA:·1f692578baee60fa3e02cbde507a827b0204465ef0af00f2cbb96bc91f6e6bac·...·]-5">}</span><span·class="gp·unselectable">148 </span><span·class="p"·data-group-id="0183940678-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0183940678-6">[</span><span·class="p"·data-group-id="0183940678-7">{</span><span·class="p"·data-group-id="0183940678-8">{</span><span·class="ss">foo</spa[·...·truncated·by·diffoscope;·len:·977,·SHA:·61b1f694d033c32d037aa9c48060ae316f565bcf46fac5880a098ef6bac98faa·...·]-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="6445652245-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="6445652245-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="0183940678-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="0183940678-13">)</span><span·class="p">.</span><span·class="w">
150 </span><span·class="p"·data-group-id="6445652245-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6445652245-15">[</span><span·class="p"·data-group-id="6445652245-16">{</span><span·class="p"·data-group-id="6445652245-17">{</span><span·class="ss">foo<[·...·truncated·by·diffoscope;·len:·1071,·SHA:·7651c14f2238a05d8e3925749b72a055307141d702a1ec11971ca1f8b3403392·...·]-1">)</span><span·class="p">.</span><span·class="w">150 </span><span·class="p"·data-group-id="0183940678-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0183940678-15">[</span><span·class="p"·data-group-id="0183940678-16">{</span><span·class="p"·data-group-id="0183940678-17">{</span><span·class="ss">foo<[·...·truncated·by·diffoscope;·len:·1071,·SHA:·639e6f917fab62463ddaed53bdcd3693aca2e32351e9133a837df7d87728309a·...·]-1">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="p"·data-group-id="3099719735-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">foo</span><span·class="p"·data-group-id="3099719735-2">}</span><span·class="gp·unselectable">151 </span><span·class="p"·data-group-id="8431520620-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">foo</span><span·class="p"·data-group-id="8431520620-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="3099719735-3">(</span><span·class="p"·data-group-id="3099719735-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="8431520620-3">(</span><span·class="p"·data-group-id="8431520620-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="3099719735-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="3099719735-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="8431520620-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="8431520620-4">)</span><span·class="p">.</span><span·class="w">
155 </span><span·class="p"·data-group-id="3099719735-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3099719735-6">[</span><span·class="p"·data-group-id="3099719735-7">{</span><span·class="p"·data-group-id="3099719735-8">{</span><span·class="ss">foo</spa[·...·truncated·by·diffoscope;·len:·455,·SHA:·1b9be45ea23e08922f7f77ecc21c9c116b78ce563c4506f67bd135ab02df7a2c·...·]-5">}</span><span·class="gp·unselectable">155 </span><span·class="p"·data-group-id="8431520620-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8431520620-6">[</span><span·class="p"·data-group-id="8431520620-7">{</span><span·class="p"·data-group-id="8431520620-8">{</span><span·class="ss">foo</spa[·...·truncated·by·diffoscope;·len:·455,·SHA:·36d8293b026611d266fddc128799919676e632304b4534589aadb5a0bf1dded3·...·]-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="3099719735-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="3099719735-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="8431520620-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="8431520620-10">)</span><span·class="p">.</span><span·class="w">
157 </span><span·class="p"·data-group-id="3099719735-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3099719735-12">[</span><span·class="p"·data-group-id="3099719735-13">{</span><span·class="p"·data-group-id="3099719735-14">{</span><span·class="ss">foo<[·...·truncated·by·diffoscope;·len:·307,·SHA:·480c1bc62aa758e86c2a7ee367df13f62dfee32f3f18a1a38b2c145f50e3d4dc·...·]-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="8431520620-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8431520620-12">[</span><span·class="p"·data-group-id="8431520620-13">{</span><span·class="p"·data-group-id="8431520620-14">{</span><span·class="ss">foo<[·...·truncated·by·diffoscope;·len:·307,·SHA:·d1928a86a5d3d84a59419eb7af77052913d0d0f140db8218a966200334919832·...·]-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="1303034341-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="1303034341-2">[</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·458,·SHA:·0d08c3f2356866d9f5299c0846622a3f5a8ba7a37906a58164b04dad8734dfca·...·]-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="2623238485-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="2623238485-2">[</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·458,·SHA:·e794c47b32737893ded322a7b66f46cb7c9b9502a64fdbde05c219ca45101ea3·...·]-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="1303034341-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="2623238485-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="1303034341-5">[</span><span·class="mf">100.00</span><span·class="p"·data-group-id="1303034341-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="2623238485-5">[</span><span·class="mf">100.00</span><span·class="p"·data-group-id="2623238485-5">]</span><span·class="w">
174 ····························</span><span·class="mi">32</span><span·class="w">············</span><span·class="p"·data-group-id="1303034341-6">[</span><span·class="w">·</span><span·class="mf">100.0</span><span·class="p"·data-group-id="1303034341-6">]</span><span·class="w">174 ····························</span><span·class="mi">32</span><span·class="w">············</span><span·class="p"·data-group-id="2623238485-6">[</span><span·class="w">·</span><span·class="mf">100.0</span><span·class="p"·data-group-id="2623238485-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1503 <p>Copyright·©·1996-2024·<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-039E86C6.js"></script>124 <script·src="dist/search_data-98D0A8CC.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v4.03 v4.0
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·tools[q···················]6 Search·documentation·of·tools[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>805 <p>Copyright·©·1996-2024·<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
808 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/tools.epub
4.44 KB
zipinfo {}
Max HTML report size reached
94.5 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
2.35 KB
OEBPS/content.opf
2.31 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
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3727 <p>Copyright·©·1996-2024·<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="8461841902-1">(</span><span·class="ss">my_module</span><span·class="p"·data-group-id="8461841902-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="2942921122-1">(</span><span·class="ss">my_module</span><span·class="p"·data-group-id="2942921122-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="8461841902-2">(</span><span·class="p"·data-group-id="8461841902-3">[</span><span·class="ss">t</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="8461841902-3">]</span><span·class="p"·data-group-id="8461841902-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="2942921122-2">(</span><span·class="p"·data-group-id="2942921122-3">[</span><span·class="ss">t</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="2942921122-3">]</span><span·class="p"·data-group-id="2942921122-2">)</span><span·class="p">.</span><span·class="w">
  
146 </span><span·class="nf">t</span><span·class="p"·data-group-id="8461841902-4">(</span><span·class="n">A</span><span·class="p"·data-group-id="8461841902-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="2942921122-4">(</span><span·class="n">A</span><span·class="p"·data-group-id="2942921122-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="8461841902-5">(</span><span·class="n">A</span><span·class="p"·data-group-id="8461841902-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="2942921122-5">(</span><span·class="n">A</span><span·class="p"·data-group-id="2942921122-5">)</span><span·class="p">.</span><span·class="w">
  
148 </span><span·class="nf">t2</span><span·class="p"·data-group-id="8461841902-6">(</span><span·class="p">_</span><span·class="p"·data-group-id="8461841902-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="2942921122-6">(</span><span·class="p">_</span><span·class="p"·data-group-id="2942921122-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="7571346160-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="7571346160-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="1043812323-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="1043812323-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="7571346160-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="7571346160-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="1043812323-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="1043812323-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="5567176169-1">(</span><span·class="ss">my_module</span><span·class="p"·data-group-id="5567176169-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="3562940842-1">(</span><span·class="ss">my_module</span><span·class="p"·data-group-id="3562940842-1">)</span><span·class="w">
157 </span><span·class="p"·data-group-id="5567176169-2">[</span><span·class="p"·data-group-id="5567176169-3">{</span><span·class="ss">deprecated</span><span·class="p">,</span><span·class="p"·data-group-id="5567176169-4">[</span><span·class="p"·data-group-id="5567176169-4">]</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·f7796fe7e408e041d89f61049cb86765c96c2be429201c2bdaeab69ef6848f57·...·]-3">}</span><span·class="p">,</span><span·class="w">157 </span><span·class="p"·data-group-id="3562940842-2">[</span><span·class="p"·data-group-id="3562940842-3">{</span><span·class="ss">deprecated</span><span·class="p">,</span><span·class="p"·data-group-id="3562940842-4">[</span><span·class="p"·data-group-id="3562940842-4">]</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·b50e91e0b64dae976ce159ee0d1fc71ac85707d772f98fc5fee5d3c7102f3ef7·...·]-3">}</span><span·class="p">,</span><span·class="w">
158 ·</span><span·class="p"·data-group-id="5567176169-5">{</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="p"·data-group-id="5567176169-6">[</span><span·class="p"·data-group-id="5567176169-7">{</span><span·class="p"·data-group-id="5567176169-8">{</span><span·class="ss">m[·...·truncated·by·diffoscope;·len:·575,·SHA:·17bbbd2c7f68b460beaaf00aef8fee4bf60fd054e42493394e5562ec7f339b52·...·]-5">}</span><span·class="p">,</span><span·class="w">158 ·</span><span·class="p"·data-group-id="3562940842-5">{</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="p"·data-group-id="3562940842-6">[</span><span·class="p"·data-group-id="3562940842-7">{</span><span·class="p"·data-group-id="3562940842-8">{</span><span·class="ss">m[·...·truncated·by·diffoscope;·len:·575,·SHA:·b91f27267fb87c9cd1d3144c599e8e41f79022200ef3b61c342b14d53c5e27c8·...·]-5">}</span><span·class="p">,</span><span·class="w">
159 ·</span><span·class="p"·data-group-id="5567176169-10">{</span><span·class="ss">unused</span><span·class="p">,</span><span·class="p"·data-group-id="5567176169-11">[</span><span·class="p"·data-group-id="5567176169-12">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="s[·...·truncated·by·diffoscope;·len:·264,·SHA:·3aecfc774e25a411e32d92d685ab0117e3167b3311e9d2a36e6a2bd5d1430720·...·]-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="3562940842-10">{</span><span·class="ss">unused</span><span·class="p">,</span><span·class="p"·data-group-id="3562940842-11">[</span><span·class="p"·data-group-id="3562940842-12">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="s[·...·truncated·by·diffoscope;·len:·264,·SHA:·f6939d728225b2f77e3899d3c8de7437c300e435e514ba675ff48626ccab0976·...·]-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="1456606014-1">(</span><span·class="ss">s</span><span·class="p"·data-group-id="1456606014-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="8538641483-1">(</span><span·class="ss">s</span><span·class="p"·data-group-id="8538641483-1">)</span><span·class="p">.</span><span·class="w">
175 </span><span·class="p"·data-group-id="1456606014-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="1456606014-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="8538641483-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="8538641483-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="1266449475-1">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1266449475-2">[</span><span·class="p"·data-group-id="1266449475-3">{</span><span·class="ss">verbose</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·415,·SHA:·2dd9c5c87094268e0da9888278c59c0ed1787a52b92c34daf34266c895406140·...·]-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="9801447900-1">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9801447900-2">[</span><span·class="p"·data-group-id="9801447900-3">{</span><span·class="ss">verbose</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·415,·SHA:·7e299bd0c1d1aa381c6462a8a6586a1d2ea7fb6919f215ed97bc6e4565ab67a0·...·]-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="1266449475-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="1266449475-6">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·326,·SHA:·4c4658ad9c208cdab87b48b822e26b6258948682f8d693566e10dcb4c336f022·...·]-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="9801447900-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="9801447900-6">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·326,·SHA:·51c9b605aed38431a825f150777665e09fbc37a5bf75926f90b86440dfdabc32·...·]-5">)</span><span·class="p">.</span><span·class="w">
184 </span><span·class="p"·data-group-id="1266449475-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">otp</span><span·class="p"·data-group-id="1266449475-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="9801447900-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">otp</span><span·class="p"·data-group-id="9801447900-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="3363703221-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="3363703221-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="1994040303-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="1994040303-1">)</span><span·class="p">.</span><span·class="w">
187 </span><span·class="p"·data-group-id="3363703221-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3363703221-3">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="3363[·...·truncated·by·diffoscope;·len:·457,·SHA:·9693a1086a020f7c48b77d99d48593e25bab4cb0c37f71e56ddcac59c5414478·...·]-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="1994040303-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1994040303-3">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="1994[·...·truncated·by·diffoscope;·len:·457,·SHA:·a1f949da58b28b54101e789b3d6a06183f5c30b1fb6fc442eb7c2a9e0a4f4411·...·]-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="4103708578-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="4103708578-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="9621479873-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="9621479873-1">)</span><span·class="p">.</span><span·class="w">
195 </span><span·class="p"·data-group-id="4103708578-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4103708578-3">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="4103708578-3">]</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·1b7dd18b25b80e01ad6cc4d7fdb31250a3bf7280242f2963d78f5853602018f1·...·]-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="9621479873-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9621479873-3">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="9621479873-3">]</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·5b72d446e464fad3862bf5be79e45ba6e1f6045e84e9dcbc67dab2f255370702·...·]-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="3085402676-1">(</span><span·class="ss">s</span><span·class="p"·data-group-id="3085402676-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="9835353735-1">(</span><span·class="ss">s</span><span·class="p"·data-group-id="9835353735-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="3085402676-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="3085402676-3">(</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·31be437b9096004413d918246cad5e5ec79a455a4e91f822d1d12cef5cd5201a·...·]-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="9835353735-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="9835353735-3">(</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·da4b736e334fb6671fab6ae6ea20d3079322eae3a497a3dfc7090664df96295b·...·]-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="6691592026-1">(</span><span·class="n">S</span><span·class="p"·data-group-id="6691592026-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="0435507384-1">(</span><span·class="n">S</span><span·class="p"·data-group-id="0435507384-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
272 ··</span><span·class="p"·data-group-id="6691592026-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="6691592026-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·285,·SHA:·341958475a5dc101398d9ec0157feb0b1f4bc03ba829c69a40424588c69154bc·...·]-3">)</span><span·class="p">,</span><span·class="w">272 ··</span><span·class="p"·data-group-id="0435507384-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="0435507384-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·285,·SHA:·69edc1766f5e6aa947e401891d502c15316eefe885a891ca0a1b809a2b5ff7ed·...·]-3">)</span><span·class="p">,</span><span·class="w">
273 ··</span><span·class="p"·data-group-id="6691592026-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="6691592026-4">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·270,·SHA:·a3a12df7ac798b795fcd51f454032033e548f9dc444972ada3dccb546d09a9ba·...·]-5">)</span><span·class="p">,</span><span·class="w">273 ··</span><span·class="p"·data-group-id="0435507384-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="0435507384-4">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·270,·SHA:·d0a0f0b6e1767dffce9f5602f18ee8da1b6d2ef1ea18b5641a1d104cf9a397d5·...·]-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="6691592026-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="6691592026-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="0435507384-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="0435507384-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="6691592026-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="6691592026-8">[</span><span·class="n">M</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·3b4c581ffcdbde007aee7261dff4027a7b9b6c782051bca9d4ff55a91609c357·...·]-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="0435507384-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="0435507384-8">[</span><span·class="n">M</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·f203dbd91855eb05789bcdb91e2bba2f1fb5679067245ab60745b13226034198·...·]-7">)</span><span·class="p">,</span><span·class="w">
276 ······</span><span·class="p"·data-group-id="6691592026-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="6691592026-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·450,·SHA:·deff1d7430b9b141d3c0ac3458a451a9708a813bd475694ece4c45e129e25882·...·]-10">)</span><span·class="p">,</span><span·class="w">276 ······</span><span·class="p"·data-group-id="0435507384-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="0435507384-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·450,·SHA:·e9f930008a93f80860c609c57926a513712a546bd69d40838ec10752dee08bb1·...·]-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="6691592026-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="6691592026-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="0435507384-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="0435507384-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="6691592026-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="6691592026-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="0435507384-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="0435507384-13">)</span><span·class="p">,</span><span·class="w">
281 ··</span><span·class="p"·data-group-id="6691592026-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="6691592026-14">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·291,·SHA:·ab6d2766ae6dd84c96246d0cb6fc10edccd547d9041445a83a0980a9622268e1·...·]-15">)</span><span·class="p">,</span><span·class="w">281 ··</span><span·class="p"·data-group-id="0435507384-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="0435507384-14">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·291,·SHA:·16427d187f62be423f04bc9496d389570992bc3fd64b66b3f50edf7a0608997e·...·]-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="6691592026-16">(</span><span·class="p"·data-group-id="6691592026-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="6691592026-17">)</span><[·...·truncated·by·diffoscope;·len:·138,·SHA:·31ebb7acc93ff8fa5db3a70a3ce3a48a7b433dbf09fe7eefc16ad6bfaeff31e4·...·]-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="0435507384-16">(</span><span·class="p"·data-group-id="0435507384-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="0435507384-17">)</span><[·...·truncated·by·diffoscope;·len:·138,·SHA:·d13367a4c61a1f21ef2f9cff09b370dac3d9a9c7d1021525d9183540d745a27a·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>355 <p>Copyright·©·1996-2024·<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
616 B
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/.build.gz
490 B
.build
    
Offset 15, 15 lines modifiedOffset 15, 15 lines modified
15 dist/lato-latin-300-normal-YUMVEFOL.woff215 dist/lato-latin-300-normal-YUMVEFOL.woff2
16 dist/lato-latin-400-normal-W7754I4D.woff216 dist/lato-latin-400-normal-W7754I4D.woff2
17 dist/lato-latin-700-normal-2XVSBPG4.woff217 dist/lato-latin-700-normal-2XVSBPG4.woff2
18 dist/lato-latin-ext-300-normal-VPGGJKJL.woff218 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
19 dist/lato-latin-ext-400-normal-N27NCBWW.woff219 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
20 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff220 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
21 dist/remixicon-NKANDIL5.woff221 dist/remixicon-NKANDIL5.woff2
22 dist/search_data-5EDC2149.js22 dist/search_data-BCBBB6C1.js
23 dist/sidebar_items-B612F7DF.js23 dist/sidebar_items-B612F7DF.js
24 gl.html24 gl.html
25 glu.html25 glu.html
26 index.html26 index.html
27 notes.html27 notes.html
28 search.html28 search.html
29 wx.html29 wx.html
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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2323 <p>Copyright·©·1996-2024·<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="7286255900-1">(</span><span·class="p"·data-group-id="7286255900-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="1934063988-1">(</span><span·class="p"·data-group-id="1934063988-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="7286255900-2">(</span><span·class="ss">wxVERTICAL</span><span·class="p"·data-group-id="7286255900-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="1934063988-2">(</span><span·class="ss">wxVERTICAL</span><span·class="p"·data-group-id="1934063988-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="1436985186-1">(</span><span·class="p"·data-group-id="1436985186-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="4814379451-1">(</span><span·class="p"·data-group-id="4814379451-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="1436985186-2">(</span><span·class="n">MyWin</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1436985186-3">[</span><span·class="p"·data-group-id="1436985186-4">{</span><span·class="ss">dir</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·204,·SHA:·cf3f2fc55dabe20ec08935b6649fff4c6585adc87e836f5d6f37c989a35e88cd·...·]-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="4814379451-2">(</span><span·class="n">MyWin</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4814379451-3">[</span><span·class="p"·data-group-id="4814379451-4">{</span><span·class="ss">dir</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·204,·SHA:·88f584f93e8219245b9acb5b9a449a0a4728bb481c14dcff6b586a0e05f59463·...·]-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="1436985186-5">(</span><span·class="n">MyWin</span><span·class="p"·data-group-id="1436985186-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="4814379451-5">(</span><span·class="n">MyWin</span><span·class="p"·data-group-id="4814379451-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="6577828901-1">(</span><span·class="p"·data-group-id="6577828901-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="8602544920-1">(</span><span·class="p"·data-group-id="8602544920-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="6577828901-2">(</span><span·class="nc">wx</span><span·class="p">:</span><span·class="nf">null</span><span·class="p"·data-group-id="6577828901-3">(</span><span·class="p"·data-group-id="6577828901-3">)</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·309,·SHA:·6aae404daf382d051795fe7d5d5f99fb2e7901016e4f1b8b8bee3bb20f598bfa·...·]-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="8602544920-2">(</span><span·class="nc">wx</span><span·class="p">:</span><span·class="nf">null</span><span·class="p"·data-group-id="8602544920-3">(</span><span·class="p"·data-group-id="8602544920-3">)</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·309,·SHA:·95c5279db22de98fd902d935aebc82468e59bac7e31419b303ad4035117da6ac·...·]-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="6577828901-5">(</span><span·class="p"·data-group-id="6577828901-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="8602544920-5">(</span><span·class="p"·data-group-id="8602544920-5">)</span><span·class="p">,</span><span·class="w">
201 ··</span><span·class="nf">spawn</span><span·class="p"·data-group-id="6577828901-6">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="6577828901-7">(</span><span·class="p"·data-group-id="6577828901-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="8602544920-6">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8602544920-7">(</span><span·class="p"·data-group-id="8602544920-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="6577828901-8">(</span><span·class="n">Env</span><span·class="p"·data-group-id="6577828901-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="8602544920-8">(</span><span·class="n">Env</span><span·class="p"·data-group-id="8602544920-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="6577828901-6">)</span><span·class="p">,</span><span·class="w">205 ········</span><span·class="k">end</span><span·class="p"·data-group-id="8602544920-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>309 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>41050 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1822 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1071 <p>Copyright·©·1996-2024·<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.74 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.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-5EDC2149.js"></script>124 <script·src="dist/search_data-BCBBB6C1.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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2024·<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 {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v2.4.23 v2.4.2
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·wx[q···················]6 Search·documentation·of·wx[q···················]
7 Settings7 Settings
8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n8 Search·HexDocs·_\x8D_\x8o_\x8w_\x8n_\x8l_\x8o_\x8a_\x8d_\x8·_\x8e_\x8P_\x8u_\x8b_\x8·_\x8v_\x8e_\x8r_\x8s_\x8i_\x8o_\x8n
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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
776 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
704 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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1466 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>559 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>436 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>364 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>429 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>478 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1465 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>818 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1437 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>561 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4064 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>316 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>473 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1391 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>546 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>440 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>961 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>486 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>358 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>755 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>575 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>413 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>915 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1401 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1047 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>396 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>978 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>771 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>524 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>365 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>654 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1365 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>327 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>812 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>315 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>571 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>551 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>519 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>572 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>361 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1307 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>701 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>413 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>334 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1186 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>488 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4085 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>401 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>274 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>352 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>579 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>958 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>520 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>576 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>710 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>303 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>444 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>363 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>600 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>662 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>397 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>933 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>362 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>580 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>585 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>526 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>845 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>372 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1229 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>857 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>441 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>651 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>360 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1255 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>227 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>436 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>557 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>463 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>732 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1106 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>225 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2211 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>225 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>625 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>721 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>356 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1181 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>226 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>711 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>8479 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1151 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1098 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>439 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>317 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>398 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>609 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>397 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>550 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>434 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>348 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>318 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>396 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>650 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>740 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>486 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>954 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>362 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1361 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>454 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>601 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>360 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>554 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3818 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>975 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>304 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>865 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>971 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>607 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>822 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3235 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>842 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1277 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>675 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>594 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1363 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1386 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>653 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>408 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>822 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>475 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>308 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>455 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2253 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1460 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>451 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1442 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>366 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>492 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>366 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>309 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2098 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>399 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>444 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>635 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>853 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>948 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>366 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>351 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>442 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1489 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>323 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>312 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>638 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>384 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>492 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>364 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>876 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>783 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>510 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>514 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>356 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>224 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>520 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>528 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1096 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>436 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1277 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1042 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>723 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1216 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>495 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>386 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1133 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>584 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1214 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>455 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>696 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>791 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>319 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>817 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>417 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>406 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1102 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>518 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>401 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>484 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>410 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2347 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>751 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1692 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>951 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>686 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>739 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>397 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>449 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>525 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1348 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>572 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>501 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>405 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>562 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>619 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1080 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>526 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>17699 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1235 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>309 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>447 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>441 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>497 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>298 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1851 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2533 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>488 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>480 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>576 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2078 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>509 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1363 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3671 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>645 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1560 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1044 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2352 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>491 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>8285 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>307 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>321 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>307 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1494 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1299 <p>Copyright·©·1996-2024·<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="6815892775-1">(</span><span·class="ss">myDialog</span><span·class="p"·data-group-id="6815892775-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="9087329368-1">(</span><span·class="ss">myDialog</span><span·class="p"·data-group-id="9087329368-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="6815892775-2">(</span><span·class="p"·data-group-id="6815892775-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:·ceab732517d724b5527430bd26f6b2d4e758b87bdc1a262505b17d93d55fe7ec·...·]-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="9087329368-2">(</span><span·class="p"·data-group-id="9087329368-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:·bede077507291f1427cf7184c5ddb5a9aa01d5586821370abbd8e8c09a6a4234·...·]-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="6815892775-4">(</span><span·class="p"·data-group-id="6815892775-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="9087329368-4">(</span><span·class="p"·data-group-id="9087329368-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="6815892775-5">]</span><span·class="p"·data-group-id="6815892775-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="9087329368-5">]</span><span·class="p"·data-group-id="9087329368-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="6815892775-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="6815892775-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="9087329368-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="9087329368-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="6815892775-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="6815892775-8">[</span><span·class="n">Parent</span><span·class="p">,</span><span·class="n">Id</span><s[·...·truncated·by·diffoscope;·len:·246,·SHA:·fa3c2efe2e4b5557a81b03df8712e35206b0c25ceaa0a683b7b9be62b7e20afd·...·]-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="9087329368-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="9087329368-8">[</span><span·class="n">Parent</span><span·class="p">,</span><span·class="n">Id</span><s[·...·truncated·by·diffoscope;·len:·246,·SHA:·e260a1904208a8026ef0f1b6449a066c8f8fa81ed34a67db2b910a3b6458c9ca·...·]-7">)</span><span·class="p">.</span><span·class="w">
  
147 ··</span><span·class="nf">show</span><span·class="p"·data-group-id="6815892775-10">(</span><span·class="n">Dialog</span><span·class="p"·data-group-id="6815892775-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="9087329368-10">(</span><span·class="n">Dialog</span><span·class="p"·data-group-id="9087329368-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="6815892775-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="6815892775-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="9087329368-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="9087329368-11">)</span><span·class="p">.</span><span·class="w">
  
149 ··</span><span·class="nf">destroy</span><span·class="p"·data-group-id="6815892775-12">(</span><span·class="n">Dialog</span><span·class="p"·data-group-id="6815892775-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="9087329368-12">(</span><span·class="n">Dialog</span><span·class="p"·data-group-id="9087329368-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="6815892775-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="6815892775-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="9087329368-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="9087329368-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="6815892775-14">(</span><span·class="p"·data-group-id="6815892775-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="6815892775-15">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·ca7509b3593e5d426c52408e6ccd5201eeb6cf88dd3161e0215e6b289e7138c8·...·]-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="9087329368-14">(</span><span·class="p"·data-group-id="9087329368-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="9087329368-15">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·4e86f430f16b0328bc6ed1eb15a2aba4765a1ec3548b15912f5f561052baec16·...·]-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="6815892775-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:·8fb05278b30ede801f0dec43457b350694431adc3812e37bdfe5578852e95810·...·]-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="9087329368-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:·57199993a9ff310c71033ef4d77bae51cf1709369a5654564f45e1ac23b742d7·...·]-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="6815892775-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="6815892775-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="9087329368-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="9087329368-18">)</span><span·class="p">,</span><span·class="w">
156 ·····</span><span·class="p"·data-group-id="6815892775-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="6815892775-19">}</span><span·class="p">.</span><span·class="w">156 ·····</span><span·class="p"·data-group-id="9087329368-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="9087329368-19">}</span><span·class="p">.</span><span·class="w">
  
157 ··</span><span·class="nf">handle_call</span><span·class="p"·data-group-id="6815892775-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:·1267389ad6b9f6377d705cf515edc6947096be1961b0a728b6b65293bfaf2d33·...·]-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="9087329368-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:·18dab9c391f1bf1c4dfb001825bac37322e5877ed2066aaca7f3b3b1cfb05199·...·]-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="6815892775-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="6815892775-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="9087329368-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="9087329368-21">)</span><span·class="p">,</span><span·class="w">
159 ·····</span><span·class="p"·data-group-id="6815892775-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="6815892775-22">}</span><span·class="p">;</span><span·class="w">159 ·····</span><span·class="p"·data-group-id="9087329368-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="9087329368-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="6815892775-23">(</span><span·class="o">#</span><span·class="ss">wx</span><span·class="p"·data-group-id="6815892775-24">{</span><span·class="p"·data-group-id="6815892775-24">}</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·2c52ddedf7b934a50e2fc693093d0ab7608e25b02f1b7550184273ef1b6deeea·...·]-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="9087329368-23">(</span><span·class="o">#</span><span·class="ss">wx</span><span·class="p"·data-group-id="9087329368-24">{</span><span·class="p"·data-group-id="9087329368-24">}</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·003a78718884bcc5317e8c4109cc36839db42541042beb83d46255bb5bd2b8df·...·]-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="6815892775-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="6815892775-26">[</span><span·class="p"·data-group-id="6815892775-26">]</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·637d01dd24969c489892d2ce60787195eae362578be07d7a43f7b15a7c693f32·...·]-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="9087329368-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="9087329368-26">[</span><span·class="p"·data-group-id="9087329368-26">]</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·5a82cb62125774014128e7276e8e304f5376d4eafb04e08638edb01eced1533a·...·]-25">)</span><span·class="p">,</span><span·class="w">
163 ·····</span><span·class="p"·data-group-id="6815892775-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="6815892775-27">}</span><span·class="p">;</span><span·class="w">163 ·····</span><span·class="p"·data-group-id="9087329368-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="9087329368-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1372 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>144 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>236 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1295 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>142 <p>Copyright·©·1996-2024·<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-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2024·_\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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1138 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>555 <p>Copyright·©·1996-2024·<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="4896470578-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="4896470578-2">(</span><span·class="p"·data-group-id="4896470578-2">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·494,·SHA:·46f8c41589524e24995f117f128724029958533a4e48174349cbeb4c3616dedf·...·]-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="7156564733-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="7156564733-2">(</span><span·class="p"·data-group-id="7156564733-2">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·494,·SHA:·f84b8345d6daba1c80b96df3b5726d977dc6a7a260c9b6c7eab901f45108132d·...·]-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="0228702094-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="0228702094-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="1469530255-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="1469530255-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="0228702094-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="0228702094-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="1469530255-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="1469530255-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="0228702094-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="0228702094-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="1469530255-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="1469530255-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="0228702094-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="0228702094-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="1469530255-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="1469530255-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="4651017301-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="4651017301-2">(</span><span·class="p"·data-group-id="4651017301-2">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·490,·SHA:·5e501cb8c97b37b6feae674e6e9df15748abf2f66ad181c0331c3b721f096b8d·...·]-3">}</span></code></pre><p>The·hook·function·is·called·when·the·processor·has·parsed·a·complete·entity.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="4406689335-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="4406689335-2">(</span><span·class="p"·data-group-id="4406689335-2">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·490,·SHA:·455546dc1ebbf625f8effbaa1efc59317a97b026a88e080643ae4823ef3f7e82·...·]-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="8778023013-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="8778023013-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">155 Format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="7897165848-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="7897165848-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="8778023013-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8778023013-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="7897165848-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="7897165848-2">)</span><span·class="p">,</span><span·class="w">
157 ···</span><span·class="p"·data-group-id="8778023013-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="8778023013-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class=[·...·truncated·by·diffoscope;·len:·242,·SHA:·46bff18713afabb15e40f84a1d2561626f095017bf3fb71fe13e332dddec1d7e·...·]-4">)</span><span·class="p">,</span><span·class="w">157 ···</span><span·class="p"·data-group-id="7897165848-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="7897165848-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class=[·...·truncated·by·diffoscope;·len:·242,·SHA:·8634e0041e16dbb38aa796f5a86b5e277ebaf5747b0f49407539fb6d9312204f·...·]-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="8778023013-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="8778023013-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="7897165848-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="7897165848-5">)</span><span·class="p">,</span><span·class="w">
159 ···</span><span·class="p"·data-group-id="8778023013-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="8778023013-6">}</span><span·class="w">159 ···</span><span·class="p"·data-group-id="7897165848-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="7897165848-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="8472197581-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="8472197581-2">(</span><span·class="p"·data-group-id="8472197581-2">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·494,·SHA:·58630537b49071f573c72a2a47f05d1a166795c399f1a2dbea4094ae935b0f86·...·]-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="4714465535-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="4714465535-2">(</span><span·class="p"·data-group-id="4714465535-2">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·494,·SHA:·833451fb814adcc43550d135aad4894af317ddee2d7d98935066511caa3e4a8d·...·]-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="2995017611-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2995017611-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:·279c2883a04cd136930455c3f9e861a9621932da96398ca800e101fcee6cd721·...·]-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">165 ···</span><span·class="p"·data-group-id="4892823776-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4892823776-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:·27f0f02e54d1a91a715dabf324001add0c37f6d3ac1f894eae47f9b58d7341cd·...·]-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
166 ···</span><span·class="p"·data-group-id="2995017611-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2995017611-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:·a7957ed03c89fedc2a15284b2947df22ce66828875d5e22ac8d3663202dc6770·...·]-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">166 ···</span><span·class="p"·data-group-id="4892823776-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4892823776-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:·aa4d61b87556d4b6773c838e0744c93bdb61856db1d4356f16098132796c3b1a·...·]-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
167 ···</span><span·class="p"·data-group-id="2995017611-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="299501761[·...·truncated·by·diffoscope;·len:·331,·SHA:·c9dbb92000c3b8b0045cf0a42d917ca6395bcfca9aec7433d38240ceb907fc57·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">167 ···</span><span·class="p"·data-group-id="4892823776-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="489282377[·...·truncated·by·diffoscope;·len:·331,·SHA:·660d078b3700ab5657e9847ef059a082cc072340d96f4a03e5c5afaa27bb21ad·...·]-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="9976271787-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="9976271787-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="4007189749-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="4007189749-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="9976271787-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="9976271787-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="1524780346-1">{</span><span·class="ss">continuation_fun</span><span·class[·...·truncated·by·diffoscope;·len:·803,·SHA:·40537019c10d0cec5f45d6ff20909c3d52f8a1f4c3bf309dc4b39fa1ed7c985a·...·]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="4007189749-3">(</span><span·class="n">URI</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·215,·SHA:·046b3bba4040f9b157441e5651af67b7b819b05e1f6a91460bac8337fd4c9bca·...·]
 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="9822795213-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="9822795213-2">(</span><span·class="p"·data-group-id="9822795213-2">)</span><span·class="p"·data-group-id="9822795213-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9822795213-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="9822795213-4">(</span><span·class="p"·data-group-id="9822795213-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ContinuationState</span><span·class="p"·data-group-id="9822795213-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="4570601735-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="4570601735-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="9009620880-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="9009620880-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="4570601735-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="4570601735-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="9009620880-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="9009620880-2">)</span><span·class="p">,</span><span·class="w">
173 ···</span><span·class="p"·data-group-id="4570601735-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="4570601735-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·165,·SHA:·ea9e5b22b7d1ef6ecd0e33fc8da1713af8ab9443f5ef9a7643389da9e5480f39·...·]-4">)</span><span·class="p">,</span><span·class="w">173 ···</span><span·class="p"·data-group-id="9009620880-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="9009620880-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·165,·SHA:·931cda30070006af40e87f696130754d4f3226bed09eeb675421b7106b4dab3b·...·]-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="4570601735-5">[</span><span·class="p"·data-group-id="4570601735-5">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 ······</span><span·class="p"·data-group-id="9009620880-5">[</span><span·class="p"·data-group-id="9009620880-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="4570601735-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="4570601735-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="9009620880-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="9009620880-6">)</span><span·class="p">,</span><span·class="w">
177 ·········</span><span·class="n">Exception</span><span·class="p"·data-group-id="4570601735-7">(</span><span·class="n">GlobalState2</span><span·class="p"·data-group-id="4570601735-7">)</span><span·class="p">;</span><span·class="w">177 ·········</span><span·class="n">Exception</span><span·class="p"·data-group-id="9009620880-7">(</span><span·class="n">GlobalState2</span><span·class="p"·data-group-id="9009620880-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="4570601735-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="4570601735-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·171,·SHA:·4676f17c4e681a082028305be82fe9451e85610afcbd4129088f09d4e60f59ed·...·]-9">)</span><span·class="p">,</span><span·class="w">179 ·········</span><span·class="p"·data-group-id="9009620880-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="9009620880-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·171,·SHA:·edb98eb412f49a8f2cfaaa4cb97937e999ce3f14aaeadbc567042ee14453109d·...·]-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="4570601735-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="4570601735-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="9009620880-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="9009620880-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="4570601735-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="4570601735-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="9009620880-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="9009620880-11">)</span><span·class="p">,</span><span·class="w">
182 ·········</span><span·class="n">Continue</span><span·class="p"·data-group-id="4570601735-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="4570601735-12">)</span><span·class="w">182 ·········</span><span·class="n">Continue</span><span·class="p"·data-group-id="9009620880-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="9009620880-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="6601697128-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-i[·...·truncated·by·diffoscope;·len:·484,·SHA:·b5b706a9fc608d37b54564f2f34195aa31ed772765d769595ec5d37c421dbb61·...·]-1">}</span><span·class="w">·</span><span·class="p">|</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="9998831431-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-i[·...·truncated·by·diffoscope;·len:·484,·SHA:·fec446a2ffc77fe410e3328e8044eddeaaa923ba6abd91171d047cfa59a5654d·...·]-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
185 </span><span·class="p"·data-group-id="6601697128-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=[·...·truncated·by·diffoscope;·len:·117,·SHA:·c071351118fd6dcd7a78fcd76b7d700d2788c01128a9165f6d427b4a33e9ae9e·...·]-4">}</span></code></pre><p>The·rules·functions·take·care·of·storing·scanner·information·in·a·rules185 </span><span·class="p"·data-group-id="9998831431-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=[·...·truncated·by·diffoscope;·len:·117,·SHA:·4d6028829bb2dd2688e1a4cae3b2d09a7d1cd1f4633c3b00d8630b3560361d75·...·]-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="4431765719-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:·8442c5a972383417b99a17c0c3896c30d59e2b1f43c5202665b86011c8560301·...·]-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="7095108578-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:·56f48a2778d80a6842591cafe2585a0a86aa7f5d32ee93c4dd558c90d3706b93·...·]-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="4431765719-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="4431765719-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="7095108578-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="7095108578-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="3101132858-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="3101132858-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="5345056805-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="5345056805-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="3101132858-2">[</span><span·class="n">Elem</span><span·class="p"·data-group-id="3101132858-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="5345056805-2">[</span><span·class="n">Elem</span><span·class="p"·data-group-id="5345056805-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="3101132858-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="3101132858-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="5345056805-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="5345056805-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="4683161824-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="4683161824-2">(</span><span·class="p"·data-group-id="4683161824-2">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·e04c02384677705d570087eb7c649d94762fc8af3fc53e02c74ccf9519ac202c·...·]-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="5037373807-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="5037373807-2">(</span><span·class="p"·data-group-id="5037373807-2">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·c8c907375780f9ea6743db7e1f40e23ea3d217f51c123c076aea37144274816f·...·]-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="9270782131-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="9270782131-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="8783000626-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="8783000626-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
206 ···</span><span·class="p"·data-group-id="9270782131-2">{</span><span·class="p"·data-group-id="9270782131-3">[</span><span·class="n">ParsedEntity</span><span·class="p">|</span><span·class="n">Acc</span><span·class="p"·data-group-id="9270782131-3">]</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·80,·SHA:·8bb6f040c25444457fe77415342f73cc82f20a5b202ed83153a08687b4ee71b1·...·]-2">}</span><span·class="p">.</span><span·class="w">206 ···</span><span·class="p"·data-group-id="8783000626-2">{</span><span·class="p"·data-group-id="8783000626-3">[</span><span·class="n">ParsedEntity</span><span·class="p">|</span><span·class="n">Acc</span><span·class="p"·data-group-id="8783000626-3">]</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·80,·SHA:·3eb3a7bcd990a4138a5f946ad6227472f425a7d80489aadf455ee49108074dfa·...·]-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="9270782131-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="9270782131-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="8783000626-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="8783000626-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
209 ···</span><span·class="p"·data-group-id="9270782131-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="9270782131-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="8783000626-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="8783000626-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="5142580988-1">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="5142580988-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="0852670566-1">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="0852670566-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="9785893402-1">(</span><span·class="ss">tmp</span><span·class="p"·data-group-id="9785893402-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="8706475633-1">(</span><span·class="ss">tmp</span><span·class="p"·data-group-id="8706475633-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="9785893402-2">(</span><span·class="s">&quot;xmerl.hrl&quot;</span><span·class="p"·data-group-id="9785893402-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="8706475633-2">(</span><span·class="s">&quot;xmerl.hrl&quot;</span><span·class="p"·data-group-id="8706475633-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="9785893402-3">(</span><span·class="p"·data-group-id="9785893402-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:·9ac2621b526c16c7caa4566edf2d7711ae47e1b8903c1244a5f065701a593f96·...·]-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="8706475633-3">(</span><span·class="p"·data-group-id="8706475633-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:·a2b9847de120952c803251b753e6eb2e1cf71ff54661021a474a4f7265ad23a9·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
226 </span><span·class="nf">file1</span><span·class="p"·data-group-id="9785893402-5">(</span><span·class="n">F</span><span·class="p"·data-group-id="9785893402-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:·761ce0383588a28236423b60be82bbf6f1338324fe055c90e2a32bc70b605841·...·]-6">)</span><span·class="p">.</span><span·class="w">226 </span><span·class="nf">file1</span><span·class="p"·data-group-id="8706475633-5">(</span><span·class="n">F</span><span·class="p"·data-group-id="8706475633-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:·0159da0543c6f38c006dc1fed7c001f3510711be5a6b834b93787fb79065e43a·...·]-6">)</span><span·class="p">.</span><span·class="w">
  
227 </span><span·class="nf">file2</span><span·class="p"·data-group-id="9785893402-7">(</span><span·class="n">F</span><span·class="p"·data-group-id="9785893402-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:·9ffcc97343f7c0fb2f85122f8f31253743cf23e1efaa75a8bcbabde21da885a3·...·]-8">)</span><span·class="p">.</span><span·class="w">227 </span><span·class="nf">file2</span><span·class="p"·data-group-id="8706475633-7">(</span><span·class="n">F</span><span·class="p"·data-group-id="8706475633-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:·b2bb810b2678dabe0055378daa8066cb7204f719137173cf0ae3de8154672113·...·]-8">)</span><span·class="p">.</span><span·class="w">
  
228 </span><span·class="nf">file3</span><span·class="p"·data-group-id="9785893402-11">(</span><span·class="n">F</span><span·class="p"·data-group-id="9785893402-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:·49baf6f073834443b350811e8c134387a5875cc62a9257ca185a36effadaf3b5·...·]-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="8706475633-11">(</span><span·class="n">F</span><span·class="p"·data-group-id="8706475633-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:·65a66e0493a61f1499df5019852fe85e40a4c1b1ed9f27b805faead941b93d67·...·]-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="9785893402-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="8706475633-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="9785893402-15">[</span><span·class="p"·data-group-id="9785893402-16">{</span><span·class="ss">space</span><span·class="p">,</span><span·class="ss">normalize</span><span·class="p"·data-group-id="9785893402-16">}</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·263,·SHA:·8334d213796d213a3fe951e92607f17d6775f5e893c10dde7ac85ecf9e555434·...·]-15">]</span><span·class="p">)</span><span·class="p">.</span></code></pre>230 </span><span·class="p"·data-group-id="8706475633-15">[</span><span·class="p"·data-group-id="8706475633-16">{</span><span·class="ss">space</span><span·class="p">,</span><span·class="ss">normalize</span><span·class="p"·data-group-id="8706475633-16">}</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·263,·SHA:·732020b7a384be4bfa15a614720ae306345d90cb79561e7356aca25ff681facd·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>279 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>797 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1148 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>501 <p>Copyright·©·1996-2024·<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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>367 <p>Copyright·©·1996-2024·<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 {}
    
Offset 83, 8 lines modifiedOffset 83, 8 lines modified
83 becomes·in·Erlang:83 becomes·in·Erlang:
84 ··template(E·=·#xmlElement{·parents=[{'doc',_}|_],·name='title'})·->84 ··template(E·=·#xmlElement{·parents=[{'doc',_}|_],·name='title'})·->
85 ····["<h1>",85 ····["<h1>",
86 ·····xslapply(fun·template/1,·E),86 ·····xslapply(fun·template/1,·E),
87 ·····"</h1>"];87 ·····"</h1>"];
88 Search·HexDocs88 Search·HexDocs
89 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_\x8e89 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
90 Copyright·©·1996-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B90 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
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="9607462882-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="9607462882-2">{</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·630,·SHA:·f79dbe90ebf96876925960e0d52511c04123c7685c62039a8f19c06d8b302385·...·]-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="3708170025-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="3708170025-2">{</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·630,·SHA:·584b80756da3e197830771e78f3e4d197bdb31f031ae1b729fca4e13b2edb4a7·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
139 ····</span><span·class="p"·data-group-id="9607462882-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="3708170025-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="9607462882-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:·8a2663f0282bc66d8d3050d08b778f049f84006c04e1520b208c0d34cd7d7f0c·...·]-6">)</span><span·class="p">,</span><span·class="w">140 ·········</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="3708170025-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:·aaca8a19b4c8553bb9087d149403149f935fa3340ba61e3ad2d4ccaac9e6fabd·...·]-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="9607462882-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="3708170025-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="6834337191-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="6834337191-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·158,·SHA:·ecf431fa78553891758bc117d71a55c7e91c6bf5b08dce1a4bf4a86b3d76cb9c·...·]-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="5110370625-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="5110370625-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·158,·SHA:·c3ed6c9272614aeab5bf7d160c1893a435333c2b9104d2d679cb2a4a2273e10b·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
144 ····</span><span·class="p"·data-group-id="6834337191-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="6834337191-4">(</span><span·class="nf">s[·...·truncated·by·diffoscope;·len:·426,·SHA:·3b717b056cebe0604f8cc796b85f9a77b892ce2a4939c5f3f790bcf7423f9606·...·]-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="5110370625-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="5110370625-4">(</span><span·class="nf">s[·...·truncated·by·diffoscope;·len:·426,·SHA:·e22e0a9127952b9581e1cf47499391028dc9c754a810d3a89ff217bc92ef6aea·...·]-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="1639116431-1">(</span><span·class="s">&quot;xmerl.hrl&quot;</span><span·class="p"·data-group-id="1639116431-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="5833505130-1">(</span><span·class="s">&quot;xmerl.hrl&quot;</span><span·class="p"·data-group-id="5833505130-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="1639116431-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="5833505130-2">(</span><span·class="ss">xmerl_xs</span><span·class="p">,</span><span·class="w">
206 ····</span><span·class="p"·data-group-id="1639116431-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:·380,·SHA:·67949f013519436103b3c05d9a76c37285e22844ece5af34c1f8c4777f942d07·...·]-2">)</span><span·class="p">.</span><span·class="w">206 ····</span><span·class="p"·data-group-id="5833505130-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:·380,·SHA:·cc1d8b824ecaa2d4b63697ded72a61209950c3ed020d7d051693b429189d61e7·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
207 </span><span·class="nf">doctype</span><span·class="p"·data-group-id="1639116431-4">(</span><span·class="p"·data-group-id="1639116431-4">)</span><span·class="p">-&gt;</span><span·class="w">207 </span><span·class="nf">doctype</span><span·class="p"·data-group-id="5833505130-4">(</span><span·class="p"·data-group-id="5833505130-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="1639116431-5">(</span><span·class="n">Doc</span><span·class="p"·data-group-id="1639116431-5">)</span><span·class="p">-&gt;</span><span·class="w">210 </span><span·class="nf">process_xml</span><span·class="p"·data-group-id="5833505130-5">(</span><span·class="n">Doc</span><span·class="p"·data-group-id="5833505130-5">)</span><span·class="p">-&gt;</span><span·class="w">
211 ····</span><span·class="nf">template</span><span·class="p"·data-group-id="1639116431-6">(</span><span·class="n">Doc</span><span·class="p"·data-group-id="1639116431-6">)</span><span·class="p">.</span><span·class="w">211 ····</span><span·class="nf">template</span><span·class="p"·data-group-id="5833505130-6">(</span><span·class="n">Doc</span><span·class="p"·data-group-id="5833505130-6">)</span><span·class="p">.</span><span·class="w">
  
212 </span><span·class="nf">template</span><span·class="p"·data-group-id="1639116431-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="1639116431-8">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·156,·SHA:·f35fd76750342418ada3a926a870f881a61ac195b2e15a312d9cc112a6152416·...·]-7">)</span><span·class="p">-&gt;</span><span·class="w">212 </span><span·class="nf">template</span><span·class="p"·data-group-id="5833505130-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="5833505130-8">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·156,·SHA:·3cc4451f2939e9acdc931acac5a4bd7f0cfbf8f6186fc67b903cdf14187175d5·...·]-7">)</span><span·class="p">-&gt;</span><span·class="w">
213 ····</span><span·class="p"·data-group-id="1639116431-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="5833505130-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="1639116431-10">(</span><span·class="p"·data-group-id="1639116431-10">)</span><span·class="p">,</span><span·class="w">214 ······</span><span·class="nf">doctype</span><span·class="p"·data-group-id="5833505130-10">(</span><span·class="p"·data-group-id="5833505130-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="1639116431-11">(</span><span·class="nf">select</span><span·class="p"·data-group-id="1639116431-12">(</span><span·class="s">&quot;title&quot;</span><span·class="p">,</span><span·class="n">E</span><span·class="p"·data-group-id="1639116431-12">)</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·f1152ee41660e38a0effab62a881e13c6c51ba70f99dd10b08eca29ad10e6b34·...·]-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="5833505130-11">(</span><span·class="nf">select</span><span·class="p"·data-group-id="5833505130-12">(</span><span·class="s">&quot;title&quot;</span><span·class="p">,</span><span·class="n">E</span><span·class="p"·data-group-id="5833505130-12">)</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·9e5be2885369820bae6979469e89c9baffc496e854f6f7684046c1cb243eed80·...·]-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="1639116431-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·7e6152c8a3903feb62981662206570eee4be0b8377c6765782b963a89b2edcd1·...·]-13">)</span><span·class="p">,</span><span·class="w">220 ······</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="5833505130-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·c3a309f6501a606251bf6eedeb834237489742d26455db45b41e2136b16993fa·...·]-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="1639116431-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="5833505130-9">]</span><span·class="p">;</span><span·class="w">
  
  
223 </span><span·class="nf">template</span><span·class="p"·data-group-id="1639116431-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="1639116431-15">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·637,·SHA:·462c8a5bd4a39b0ebf22ef394edaa970665353ea64b47cd270834e9b9808c0bc·...·]-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="5833505130-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="5833505130-15">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·637,·SHA:·da40ab14f51dd8cf1f20b8b6913d07f8a3085ef5b47745a1121de66025aa9643·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
224 ····</span><span·class="p"·data-group-id="1639116431-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="5833505130-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="1639116431-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·7e6152c8a3903feb62981662206570eee4be0b8377c6765782b963a89b2edcd1·...·]-19">)</span><span·class="p">,</span><span·class="w">225 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="5833505130-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·c3a309f6501a606251bf6eedeb834237489742d26455db45b41e2136b16993fa·...·]-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="1639116431-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="5833505130-18">]</span><span·class="p">;</span><span·class="w">
  
227 </span><span·class="nf">template</span><span·class="p"·data-group-id="1639116431-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="1639116431-21">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·641,·SHA:·25a5fa45be5e254d6e3bc676b5412adb858f3d6157a9c239aaf37cb6fe22be00·...·]-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="5833505130-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="5833505130-21">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·641,·SHA:·24fdf445e7e39b301ade53c56d6aaece8e0e62683c3536691df0855d7c2e0052·...·]-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 ····</span><span·class="p"·data-group-id="1639116431-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="5833505130-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="1639116431-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·7e6152c8a3903feb62981662206570eee4be0b8377c6765782b963a89b2edcd1·...·]-25">)</span><span·class="p">,</span><span·class="w">229 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="5833505130-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·c3a309f6501a606251bf6eedeb834237489742d26455db45b41e2136b16993fa·...·]-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="1639116431-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="5833505130-24">]</span><span·class="p">;</span><span·class="w">
  
231 </span><span·class="nf">template</span><span·class="p"·data-group-id="1639116431-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="1639116431-27">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·641,·SHA:·6f4b25e979ac8be369a171136c32fd8d89a948d65fede49f0ffa29e9d61d7184·...·]-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="5833505130-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="5833505130-27">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·641,·SHA:·bb0bea9bde2d4041bd7c6f6eec2f3af85e4b1e7511ff5aa4a844dd34bd8f336f·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 ····</span><span·class="p"·data-group-id="1639116431-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="5833505130-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="1639116431-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·7e6152c8a3903feb62981662206570eee4be0b8377c6765782b963a89b2edcd1·...·]-31">)</span><span·class="p">,</span><span·class="w">233 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="5833505130-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·c3a309f6501a606251bf6eedeb834237489742d26455db45b41e2136b16993fa·...·]-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="1639116431-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="5833505130-30">]</span><span·class="p">;</span><span·class="w">
  
235 </span><span·class="nf">template</span><span·class="p"·data-group-id="1639116431-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="1639116431-33">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·184,·SHA:·a7c4db9e5df98e6303b913704d1b8a0c56399173036d0a5bbfb557cbddec2e62·...·]-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="5833505130-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="5833505130-33">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·184,·SHA:·e84fbdca1ce51807cc5ffbd02fb16605b7476f626fd18e746c8418a4f501d68b·...·]-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
236 ····</span><span·class="p"·data-group-id="1639116431-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="1639116431-35">(</span><span·class="w">·</span><span·class="k">fun</span><span[·...·truncated·by·diffoscope;·len:·360,·SHA:·1bc6d637a666ab8428366f9badaac33e35c3104ead4239ba17d05be136fb5fbc·...·]-34">]</span><span·class="p">;</span><span·class="w">236 ····</span><span·class="p"·data-group-id="5833505130-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="5833505130-35">(</span><span·class="w">·</span><span·class="k">fun</span><span[·...·truncated·by·diffoscope;·len:·360,·SHA:·a0aa53d06f976741734913df47bfe445547b47e33c652f444083641ff7b85255·...·]-34">]</span><span·class="p">;</span><span·class="w">
  
237 </span><span·class="nf">template</span><span·class="p"·data-group-id="1639116431-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="1639116431-37">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·184,·SHA:·baead5e47e1566cc2bf4775f79cb0e32611d0b39df9ded236b8b81ad9c51415e·...·]-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="5833505130-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="5833505130-37">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·184,·SHA:·685b581fc68d0d177549d56c9e4579aee2085d63a18e7807e08c67bfc408bd8a·...·]-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
238 ····</span><span·class="p"·data-group-id="1639116431-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="5833505130-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="1639116431-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·7e6152c8a3903feb62981662206570eee4be0b8377c6765782b963a89b2edcd1·...·]-39">)</span><span·class="p">,</span><span·class="w">240 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="5833505130-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·c3a309f6501a606251bf6eedeb834237489742d26455db45b41e2136b16993fa·...·]-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="1639116431-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="5833505130-38">]</span><span·class="p">;</span><span·class="w">
  
242 </span><span·class="nf">template</span><span·class="p"·data-group-id="1639116431-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="1639116431-41">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·184,·SHA:·79c01a111a445f600d999fec10eff25d4f7eced61d883762187661934d2fa33b·...·]-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="5833505130-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="5833505130-41">{</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·184,·SHA:·f3858541ca99568a402849bdd7a9fef86baf015cba4b31f198d9929b6bdb4c24·...·]-40">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
243 ····</span><span·class="p"·data-group-id="1639116431-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="1639116431-43">(</span><span·class="w">·</span><span·class="k">fun</span><spa[·...·truncated·by·diffoscope;·len:·362,·SHA:·0406eac3f44d95e2c5dc74cea3a20275e2b975eb09f7815adc2f29c9b186c17a·...·]-42">]</span><span·class="p">;</span><span·class="w">243 ····</span><span·class="p"·data-group-id="5833505130-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="5833505130-43">(</span><span·class="w">·</span><span·class="k">fun</span><spa[·...·truncated·by·diffoscope;·len:·362,·SHA:·e03717e4e55100f1929fa68c07fdd46ceae18c2303f7e206cb550f6119082023·...·]-42">]</span><span·class="p">;</span><span·class="w">
  
244 </span><span·class="nf">template</span><span·class="p"·data-group-id="1639116431-44">(</span><span·class="n">E</span><span·class="p"·data-group-id="1639116431-44">)</span><span·class="p">-&gt;</span><span·class="w">244 </span><span·class="nf">template</span><span·class="p"·data-group-id="5833505130-44">(</span><span·class="n">E</span><span·class="p"·data-group-id="5833505130-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="1639116431-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·7e6152c8a3903feb62981662206570eee4be0b8377c6765782b963a89b2edcd1·...·]-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="5833505130-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·[·...·truncated·by·diffoscope;·len:·35,·SHA:·c3a309f6501a606251bf6eedeb834237489742d26455db45b41e2136b16993fa·...·]-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="1719430971-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="1719430971-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·158,·SHA:·e0e2032a9dcd607795f33b853a37875a608096826de43f7fcf8fdc3a5d5c8bd3·...·]1-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="6013089461-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="6013089461-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·158,·SHA:·1e4cc5ce2eed390b05be0f6fec0176f14bb16388b461484f69e90da722a7ac5c·...·]1-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
277 ····</span><span·class="p"·data-group-id="1719430971-3">{</span><span·class="n">Lines</span><span·class="p">,</span><span·class="n">LineNo</span><span·class="p"·data-group-id="1719430971-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span[·...·truncated·by·diffoscope;·len:·653,·SHA:·bdc04e38c0ffc1ceade3b5f1787ed4fb5dc797a855ce82de85bb192ee8f6425b·...·]1-4">)</span><span·class="p">,</span><span·class="w">277 ····</span><span·class="p"·data-group-id="6013089461-3">{</span><span·class="n">Lines</span><span·class="p">,</span><span·class="n">LineNo</span><span·class="p"·data-group-id="6013089461-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span[·...·truncated·by·diffoscope;·len:·653,·SHA:·4b444b973b8ff2bd90e8e5bbd7377813bce431a8f8e4860106c99316aa9bb26c·...·]1-4">)</span><span·class="p">,</span><span·class="w">
278 ····</span><span·class="p"·data-group-id="1719430971-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:·19,·SHA:·885468e2fa01deb5b15467e03a9fb300e85f84b20c50467ec1cc06610dfd41ea·...·]1-6">]</span><span·class="p">.</span><span·class="w">278 ····</span><span·class="p"·data-group-id="6013089461-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:·19,·SHA:·38b271dbf6d93f0268dc5ee41dcdd16d2e626de3348a3d1e69523f7eab96243a·...·]1-6">]</span><span·class="p">.</span><span·class="w">
  
279 </span><span·class="nf">template_pos</span><span·class="p"·data-group-id="1719430971-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="1719430971-8">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·228,·SHA:·f4828ca28753137cdde3368b7e02c93d38db52c660c8f3d806f5dd33062b4215·...·]1-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="6013089461-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="6013089461-8">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·228,·SHA:·770ad8fcc7db2ee86ec2730fc8fb8287c8988aa2fe75f6802fe924669e94053f·...·]1-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
280 ····</span><span·class="p"·data-group-id="1719430971-9">{</span><span·class="p"·data-group-id="1719430971-10">[</span><span·class="nf">indent_line</span><span·class="p"·data-group-id="1719430971-11">(</span><span·class="n">P</span><span·class="w">·</span><span·class="ow">rem</span><span·class="w">[·...·truncated·by·diffoscope;·len:·794,·SHA:·51376a560818312570c53846dad768dcb2c584b089e46925a4a86cddeed92fb7·...·]1-9">}</span><span·class="p">.</span><span·class="w">280 ····</span><span·class="p"·data-group-id="6013089461-9">{</span><span·class="p"·data-group-id="6013089461-10">[</span><span·class="nf">indent_line</span><span·class="p"·data-group-id="6013089461-11">(</span><span·class="n">P</span><span·class="w">·</span><span·class="ow">rem</span><span·class="w">[·...·truncated·by·diffoscope;·len:·794,·SHA:·f8a8cd55409968f21e2018230747fbc7718dae5b79cc8fc238db8c29a0ad34fb·...·]1-9">}</span><span·class="p">.</span><span·class="w">
  
281 </span><span·class="nf">indent_line</span><span·class="p"·data-group-id="1719430971-13">(</span><span·class="mi">0</span><span·class="p"·data-group-id="1719430971-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="6013089461-13">(</span><span·class="mi">0</span><span·class="p"·data-group-id="6013089461-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="1719430971-14">(</span><span·class="p">_</span><span·class="p"·data-group-id="1719430971-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="6013089461-14">(</span><span·class="p">_</span><span·class="p"·data-group-id="6013089461-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="1467736906-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="1467736906-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·257,·SHA:·aba4ed80f2ed0f2f4fbb8116387815849b051294cde4874f09557b32c131d1e1·...·]-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="4051428705-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="4051428705-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·257,·SHA:·efb308d032b666914e156ddab40a9b8c1a1ece7ad52bc9a097f3a5c57b00c60c·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
286 ····</span><span·class="p"·data-group-id="1467736906-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="1467736906-4">(</span><span·class="nf">select</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·236,·SHA:·d180c81de5d7ef42ed5ba0d284e4213f43f14e9dd69c6ea8516930981c06fd87·...·]-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="4051428705-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="4051428705-4">(</span><span·class="nf">select</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·236,·SHA:·fc03da718b6de91b7f9495258d1ac1a342c152f3a0243e8013928dd776fbb444·...·]-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="1467736906-6">(</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="1467736906-7">(</span><span·class="n">A</span><span·class="p"·data-group-id="1467736906-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·423,·SHA:·50ae1a5bf775160b55f90a5fe4846b1d65a44e60246d523a95eeea0cbe11222b·...·]-6">)</span><span·class="p">,</span><span·class="w">287 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4051428705-6">(</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="4051428705-7">(</span><span·class="n">A</span><span·class="p"·data-group-id="4051428705-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·423,·SHA:·0ce7e4d662e690f568351b94aa04f28e35c86aab89415b80f51ece75a3297f57·...·]-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="1467736906-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="4051428705-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="5636499858-1">{</span><span·class="n">E</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="5636499858-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:·ecfd2f197908638917827bec90b78ae1d57b023165af4a720f1b2184fef21906·...·]-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="9343171309-1">{</span><span·class="n">E</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="9343171309-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:·e8b36fac3efac03452ea40a44aaf9f0f7b20854f10ca0edd0fa7629a2e65a6a7·...·]-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="5636499858-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="5636499858-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:·715769a63793acff18e07a0e38e57a8b276eb0e51e6aaf3739d9d3ebd95b67c2·...·]-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="9343171309-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="9343171309-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:·231c2f53f3c44272f67ffdad4ecff836d05f7a642993112688de6848aa6dd970·...·]-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="5636499858-5">{</span><span·class="n">E2</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="5636499858-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:·ab6342e0a85b56f38a1b82922fe13b2780444d13eb7253d1821dfeea78e85abe·...·]-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="9343171309-5">{</span><span·class="n">E2</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="9343171309-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:·7543775e0386886240928d2fd7f8a3307380d8ce4b07a3abc0b168dcaa12db54·...·]-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-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>835 <p>Copyright·©·1996-2024·<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
127 KB
./usr/share/doc/erlang-doc/html/doc/dist/search_data-B63DDADF.js vs.
./usr/share/doc/erlang-doc/html/doc/dist/search_data-4825F052.js
Files 96% similar despite different names
127 KB
js-beautify {}
Max HTML report size reached
2.44 MB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/dist/search_data-D123FCA0.js vs.
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/dist/search_data-BB699C42.js
Files 99% similar despite different names
2.44 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
100 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/dist/search_data-9403A99F.js vs.
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/dist/search_data-1474772F.js
Files 98% similar despite different names
99.9 KB
js-beautify {}
Max HTML report size reached
145 KB
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/dist/search_data-009BAE67.js vs.
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/dist/search_data-1DB1C954.js
Files 98% similar despite different names
144 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
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
88.6 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/dist/search_data-DB37E87B.js vs.
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/dist/search_data-81BBEE61.js
Files 99% similar despite different names
88.4 KB
js-beautify {}
Max HTML report size reached
57.4 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/dist/search_data-F6750343.js vs.
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/dist/search_data-73EEAED9.js
Files 98% similar despite different names
57.2 KB
js-beautify {}
Max HTML report size reached
96.7 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/dist/search_data-074FBB44.js vs.
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/dist/search_data-62425A17.js
Files 99% similar despite different names
96.4 KB
js-beautify {}
Max HTML report size reached
1.27 MB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/dist/search_data-19AC09E1.js vs.
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/dist/search_data-69618D8B.js
Files 98% similar despite different names
1.27 MB
js-beautify {}
Max HTML report size reached
241 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/dist/search_data-45F0B0B3.js vs.
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/dist/search_data-98BCB65F.js
Files 98% similar despite different names
241 KB
js-beautify {}
Max HTML report size reached
410 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/dist/search_data-69A0CECD.js vs.
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/dist/search_data-9BFFF869.js
Files 99% similar despite different names
410 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
127 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/dist/search_data-97D4011A.js vs.
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/dist/search_data-AD845681.js
Files 98% similar despite different names
126 KB
js-beautify {}
Max HTML report size reached
245 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/dist/search_data-E998F0E5.js vs.
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/dist/search_data-118C23D3.js
Files 99% similar despite different names
245 KB
js-beautify {}
Max HTML report size reached
106 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/dist/search_data-A7BB32CF.js vs.
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/dist/search_data-780E66E8.js
Files 98% similar despite different names
106 KB
js-beautify {}
Max HTML report size reached
1010 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/dist/search_data-1BE8F222.js vs.
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/dist/search_data-0F5832B4.js
Files 98% similar despite different names
1010 KB
js-beautify {}
Max HTML report size reached
26.7 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/dist/search_data-9725401D.js vs.
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/dist/search_data-EE1E1476.js
Files 98% similar despite different names
26.5 KB
js-beautify {}
Max HTML report size reached
351 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/dist/search_data-039E86C6.js vs.
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/dist/search_data-98D0A8CC.js
Files 99% similar despite different names
351 KB
js-beautify {}
Max HTML report size reached
2.89 MB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/dist/search_data-5EDC2149.js vs.
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/dist/search_data-BCBBB6C1.js
Files 96% similar despite different names
2.89 MB
js-beautify {}
Max HTML report size reached
15.3 KB
erlang-edoc_27.0.1+dfsg-3_i386.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·····1696·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1696·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
14.9 KB
erlang-eldap_27.0.1+dfsg-3_i386.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······984·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0······984·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_i386.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_i386.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_i386.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_i386.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···112088·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···112124·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
15.0 KB
erlang-megaco_27.0.1+dfsg-3_i386.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·····2640·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··3683456·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··3683476·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)···214572·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)···214572·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)···206380·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)···206380·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_i386.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·····1740·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1740·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.5 KB
erlang-observer_27.0.1+dfsg-3_i386.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·····2248·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····2252·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_i386.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····69760·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0····69772·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)····58964·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)····58964·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_i386.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···110924·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···110944·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)····13780·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)····13780·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)····13784·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)····13784·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
20.0 KB
erlang-parsetools_27.0.1+dfsg-3_i386.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···209308·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
19.5 KB
data.tar.xz
19.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
5.02 KB
./usr/lib/erlang/lib/parsetools-2.6/ebin/leex.beam
    
Offset 5869, 19 lines modifiedOffset 5869, 19 lines modified
00016ec0:·740a·6060·6074·0000·0001·7705·7469·746c··t.```t....w.titl00016ec0:·740a·6060·6074·0000·0001·7705·7469·746c··t.```t....w.titl
00016ed0:·656d·0000·0019·4765·6e65·7261·7465·6420··em....Generated·00016ed0:·656d·0000·0019·4765·6e65·7261·7465·6420··em....Generated·
00016ee0:·5363·616e·6e65·7220·4578·706f·7274·7368··Scanner·Exportsh00016ee0:·5363·616e·6e65·7220·4578·706f·7274·7368··Scanner·Exportsh
00016ef0:·0568·0377·0866·756e·6374·696f·6e77·0674··.h.w.functionw.t00016ef0:·0568·0377·0866·756e·6374·696f·6e77·0674··.h.w.functionw.t
00016f00:·6f6b·656e·7361·0268·0262·0000·017d·6101··okensa.h.b...}a.00016f00:·6f6b·656e·7361·0268·0262·0000·017d·6101··okensa.h.b...}a.
00016f10:·6c00·0000·016d·0000·0013·746f·6b65·6e73··l....m....tokens00016f10:·6c00·0000·016d·0000·0013·746f·6b65·6e73··l....m....tokens
00016f20:·2843·6f6e·742c·2043·6861·7273·296a·7704··(Cont,·Chars)jw.00016f20:·2843·6f6e·742c·2043·6861·7273·296a·7704··(Cont,·Chars)jw.
00016f30:·6e6f·6e65·7400·0000·0277·0574·6974·6c65··nonet....w.title00016f30:·6e6f·6e65·7400·0000·0277·0565·7175·6976··nonet....w.equiv
 00016f40:·6d00·0000·1674·6f6b·656e·7328·436f·6e74··m....tokens(Cont
 00016f50:·2c20·4368·6172·732c·2031·2977·0574·6974··,·Chars,·1)w.tit
00016f40:·6d00·0000·1947·656e·6572·6174·6564·2053··m....Generated·S00016f60:·6c65·6d00·0000·1947·656e·6572·6174·6564··lem....Generated
00016f50:·6361·6e6e·6572·2045·7870·6f72·7473·7705··canner·Exportsw.00016f70:·2053·6361·6e6e·6572·2045·7870·6f72·7473···Scanner·Exports
00016f60:·6571·7569·766d·0000·0016·746f·6b65·6e73··equivm....tokens 
00016f70:·2843·6f6e·742c·2043·6861·7273·2c20·3129··(Cont,·Chars,·1) 
00016f80:·6805·6803·7708·6675·6e63·7469·6f6e·7705··h.h.w.functionw.00016f80:·6805·6803·7708·6675·6e63·7469·6f6e·7705··h.h.w.functionw.
00016f90:·746f·6b65·6e61·0368·0262·0000·014b·6102··tokena.h.b...Ka.00016f90:·746f·6b65·6e61·0368·0262·0000·014b·6102··tokena.h.b...Ka.
00016fa0:·6c00·0000·016d·0000·001c·746f·6b65·6e28··l....m....token(00016fa0:·6c00·0000·016d·0000·001c·746f·6b65·6e28··l....m....token(
00016fb0:·436f·6e74·2c20·4368·6172·732c·2053·7461··Cont,·Chars,·Sta00016fb0:·436f·6e74·2c20·4368·6172·732c·2053·7461··Cont,·Chars,·Sta
00016fc0:·7274·4c6f·6329·6a74·0000·0001·6d00·0000··rtLoc)jt....m...00016fc0:·7274·4c6f·6329·6a74·0000·0001·6d00·0000··rtLoc)jt....m...
00016fd0:·0265·6e6d·0000·0296·5468·6973·2069·7320··.enm....This·is·00016fd0:·0265·6e6d·0000·0296·5468·6973·2069·7320··.enm....This·is·
00016fe0:·6120·7265·2d65·6e74·7261·6e74·2063·616c··a·re-entrant·cal00016fe0:·6120·7265·2d65·6e74·7261·6e74·2063·616c··a·re-entrant·cal
Offset 5928, 19 lines modifiedOffset 5928, 19 lines modified
00017270:·0000·0177·0574·6974·6c65·6d00·0000·1947··...w.titlem....G00017270:·0000·0177·0574·6974·6c65·6d00·0000·1947··...w.titlem....G
00017280:·656e·6572·6174·6564·2053·6361·6e6e·6572··enerated·Scanner00017280:·656e·6572·6174·6564·2053·6361·6e6e·6572··enerated·Scanner
00017290:·2045·7870·6f72·7473·6805·6803·7708·6675···Exportsh.h.w.fu00017290:·2045·7870·6f72·7473·6805·6803·7708·6675···Exportsh.h.w.fu
000172a0:·6e63·7469·6f6e·7705·746f·6b65·6e61·0268··nctionw.tokena.h000172a0:·6e63·7469·6f6e·7705·746f·6b65·6e61·0268··nctionw.tokena.h
000172b0:·0262·0000·0149·6101·6c00·0000·016d·0000··.b...Ia.l....m..000172b0:·0262·0000·0149·6101·6c00·0000·016d·0000··.b...Ia.l....m..
000172c0:·0012·746f·6b65·6e28·436f·6e74·2c20·4368··..token(Cont,·Ch000172c0:·0012·746f·6b65·6e28·436f·6e74·2c20·4368··..token(Cont,·Ch
000172d0:·6172·7329·6a77·046e·6f6e·6574·0000·0002··ars)jw.nonet....000172d0:·6172·7329·6a77·046e·6f6e·6574·0000·0002··ars)jw.nonet....
 000172e0:·7705·6571·7569·766d·0000·0015·746f·6b65··w.equivm....toke
 000172f0:·6e28·436f·6e74·2c20·4368·6172·732c·2031··n(Cont,·Chars,·1
000172e0:·7705·7469·746c·656d·0000·0019·4765·6e65··w.titlem....Gene00017300:·2977·0574·6974·6c65·6d00·0000·1947·656e··)w.titlem....Gen
 00017310:·6572·6174·6564·2053·6361·6e6e·6572·2045··erated·Scanner·E
000172f0:·7261·7465·6420·5363·616e·6e65·7220·4578··rated·Scanner·Ex 
00017300:·706f·7274·7377·0565·7175·6976·6d00·0000··portsw.equivm... 
00017310:·1574·6f6b·656e·2843·6f6e·742c·2043·6861··.token(Cont,·Cha 
00017320:·7273·2c20·3129·6805·6803·7708·6675·6e63··rs,·1)h.h.w.func00017320:·7870·6f72·7473·6805·6803·7708·6675·6e63··xportsh.h.w.func
00017330:·7469·6f6e·7706·7374·7269·6e67·6102·6802··tionw.stringa.h.00017330:·7469·6f6e·7706·7374·7269·6e67·6102·6802··tionw.stringa.h.
00017340:·6200·0001·2561·026c·0000·0001·6d00·0000··b...%a.l....m...00017340:·6200·0001·2561·026c·0000·0001·6d00·0000··b...%a.l....m...
00017350:·1873·7472·696e·6728·5374·7269·6e67·2c20··.string(String,·00017350:·1873·7472·696e·6728·5374·7269·6e67·2c20··.string(String,·
00017360:·5374·6172·744c·6f63·296a·7400·0000·016d··StartLoc)jt....m00017360:·5374·6172·744c·6f63·296a·7400·0000·016d··StartLoc)jt....m
00017370:·0000·0002·656e·6d00·0001·5953·6361·6e73··....enm...YScans00017370:·0000·0002·656e·6d00·0001·5953·6361·6e73··....enm...YScans
00017380:·2060·5374·7269·6e67·6020·616e·6420·7265···`String`·and·re00017380:·2060·5374·7269·6e67·6020·616e·6420·7265···`String`·and·re
00017390:·7475·726e·7320·6569·7468·6572·2061·6c6c··turns·either·all00017390:·7475·726e·7320·6569·7468·6572·2061·6c6c··turns·either·all
Offset 5966, 19 lines modifiedOffset 5966, 19 lines modified
000174d0:·6d65·642e·7400·0000·0177·0574·6974·6c65··med.t....w.title000174d0:·6d65·642e·7400·0000·0177·0574·6974·6c65··med.t....w.title
000174e0:·6d00·0000·1947·656e·6572·6174·6564·2053··m....Generated·S000174e0:·6d00·0000·1947·656e·6572·6174·6564·2053··m....Generated·S
000174f0:·6361·6e6e·6572·2045·7870·6f72·7473·6805··canner·Exportsh.000174f0:·6361·6e6e·6572·2045·7870·6f72·7473·6805··canner·Exportsh.
00017500:·6803·7708·6675·6e63·7469·6f6e·7706·7374··h.w.functionw.st00017500:·6803·7708·6675·6e63·7469·6f6e·7706·7374··h.w.functionw.st
00017510:·7269·6e67·6101·6802·6200·0001·2461·016c··ringa.h.b...$a.l00017510:·7269·6e67·6101·6802·6200·0001·2461·016c··ringa.h.b...$a.l
00017520:·0000·0001·6d00·0000·0e73·7472·696e·6728··....m....string(00017520:·0000·0001·6d00·0000·0e73·7472·696e·6728··....m....string(
00017530:·5374·7269·6e67·296a·7704·6e6f·6e65·7400··String)jw.nonet.00017530:·5374·7269·6e67·296a·7704·6e6f·6e65·7400··String)jw.nonet.
00017540:·0000·0277·0574·6974·6c65·6d00·0000·1947··...w.titlem....G00017540:·0000·0277·0565·7175·6976·6d00·0000·1173··...w.equivm....s
00017550:·656e·6572·6174·6564·2053·6361·6e6e·6572··enerated·Scanner 
00017560:·2045·7870·6f72·7473·7705·6571·7569·766d···Exportsw.equivm 
00017570:·0000·0011·7374·7269·6e67·2853·7472·696e··....string(Strin00017550:·7472·696e·6728·5374·7269·6e67·2c20·3129··tring(String,·1)
 00017560:·7705·7469·746c·656d·0000·0019·4765·6e65··w.titlem....Gene
 00017570:·7261·7465·6420·5363·616e·6e65·7220·4578··rated·Scanner·Ex
00017580:·672c·2031·296a·0000·4c69·6e65·0000·0549··g,·1)j..Line...I00017580:·706f·7274·736a·0000·4c69·6e65·0000·0549··portsj..Line...I
00017590:·0000·0000·0000·0000·0000·02ad·0000·0261··...............a00017590:·0000·0000·0000·0000·0000·02ad·0000·0261··...............a
000175a0:·0000·0000·2924·2939·2949·296c·297d·29a6··....)$)9)I)l)}).000175a0:·0000·0000·2924·2939·2949·296c·297d·29a6··....)$)9)I)l)}).
000175b0:·29af·29b2·29b3·29b4·29b5·29b6·29ba·29d3··).).).).).).).).000175b0:·29af·29b2·29b3·29b4·29b5·29b6·29ba·29d3··).).).).).).).).
000175c0:·492f·4930·4931·4934·4935·4936·4937·4939··I/I0I1I4I5I6I7I9000175c0:·492f·4930·4931·4934·4935·4936·4937·4939··I/I0I1I4I5I6I7I9
000175d0:·493e·4940·4941·4942·4944·4945·4946·495b··I>I@IAIBIDIEIFI[000175d0:·493e·4940·4941·4942·4944·4945·4946·495b··I>I@IAIBIDIEIFI[
000175e0:·4966·4968·496c·495c·4972·4963·4978·4979··IfIhIlI\IrIcIxIy000175e0:·4966·4968·496c·495c·4972·4963·4978·4979··IfIhIlI\IrIcIxIy
000175f0:·497c·497d·497e·4983·4985·4988·498a·498b··I|I}I~I.I.I.I.I.000175f0:·497c·497d·497e·4983·4985·4988·498a·498b··I|I}I~I.I.I.I.I.
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_i386.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_i386.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_i386.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·····1924·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1924·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···242544·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···242560·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)····13728·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)····13728·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)····13836·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)····13836·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)····13836·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)····13836·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_i386.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·····5216·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····5216·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
123 KB
erlang-ssh_27.0.1+dfsg-3_i386.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··1001900·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··1002340·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
123 KB
data.tar.xz
123 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
108 KB
./usr/lib/erlang/lib/ssh-5.2.1/ebin/ssh_options.beam
    
Offset 3598, 48 lines modifiedOffset 3598, 48 lines modified
0000e0d0:·706f·7274·6564·7705·6661·6c73·6568·0568··portedw.falseh.h0000e0d0:·706f·7274·6564·7705·6661·6c73·6568·0568··portedw.falseh.h
0000e0e0:·0377·0474·7970·6577·0c6d·6f64·5f66·756e··.w.typew.mod_fun0000e0e0:·0377·0474·7970·6577·0c6d·6f64·5f66·756e··.w.typew.mod_fun
0000e0f0:·5f61·7267·7361·006c·0000·0002·6802·7704··_argsa.l....h.w.0000e0f0:·5f61·7267·7361·006c·0000·0002·6802·7704··_argsa.l....h.w.
0000e100:·6669·6c65·6b00·0773·7368·2e68·726c·6802··filek..ssh.hrlh.0000e100:·6669·6c65·6b00·0773·7368·2e68·726c·6802··filek..ssh.hrlh.
0000e110:·7708·6c6f·6361·7469·6f6e·6802·6200·0004··w.locationh.b...0000e110:·7708·6c6f·6361·7469·6f6e·6802·6200·0004··w.locationh.b...
0000e120:·aa61·026a·6c00·0000·016d·0000·000e·6d6f··.a.jl....m....mo0000e120:·aa61·026a·6c00·0000·016d·0000·000e·6d6f··.a.jl....m....mo
0000e130:·645f·6675·6e5f·6172·6773·2829·6a77·046e··d_fun_args()jw.n0000e130:·645f·6675·6e5f·6172·6773·2829·6a77·046e··d_fun_args()jw.n
0000e140:·6f6e·6574·0000·0002·7705·7469·746c·656d··onet....w.titlem 
0000e150:·0000·0010·4f74·6865·7220·6461·7461·2074··....Other·data·t 
0000e160:·7970·6573·7708·6578·706f·7274·6564·7705··ypesw.exportedw.0000e140:·6f6e·6574·0000·0002·7708·6578·706f·7274··onet....w.export
 0000e150:·6564·7705·6661·6c73·6577·0574·6974·6c65··edw.falsew.title
 0000e160:·6d00·0000·104f·7468·6572·2064·6174·6120··m....Other·data·
0000e170:·6661·6c73·6568·0568·0377·0474·7970·6577··falseh.h.w.typew0000e170:·7479·7065·7368·0568·0377·0474·7970·6577··typesh.h.w.typew
0000e180:·086d·6f64·5f61·7267·7361·006c·0000·0002··.mod_argsa.l....0000e180:·086d·6f64·5f61·7267·7361·006c·0000·0002··.mod_argsa.l....
0000e190:·6802·7704·6669·6c65·6b00·0773·7368·2e68··h.w.filek..ssh.h0000e190:·6802·7704·6669·6c65·6b00·0773·7368·2e68··h.w.filek..ssh.h
0000e1a0:·726c·6802·7708·6c6f·6361·7469·6f6e·6802··rlh.w.locationh.0000e1a0:·726c·6802·7708·6c6f·6361·7469·6f6e·6802··rlh.w.locationh.
0000e1b0:·6200·0004·a861·026a·6c00·0000·016d·0000··b....a.jl....m..0000e1b0:·6200·0004·a861·026a·6c00·0000·016d·0000··b....a.jl....m..
0000e1c0:·000a·6d6f·645f·6172·6773·2829·6a77·046e··..mod_args()jw.n0000e1c0:·000a·6d6f·645f·6172·6773·2829·6a77·046e··..mod_args()jw.n
0000e1d0:·6f6e·6574·0000·0002·7705·7469·746c·656d··onet....w.titlem 
0000e1e0:·0000·0010·4f74·6865·7220·6461·7461·2074··....Other·data·t 
0000e1f0:·7970·6573·7708·6578·706f·7274·6564·7705··ypesw.exportedw.0000e1d0:·6f6e·6574·0000·0002·7708·6578·706f·7274··onet....w.export
 0000e1e0:·6564·7705·6661·6c73·6577·0574·6974·6c65··edw.falsew.title
 0000e1f0:·6d00·0000·104f·7468·6572·2064·6174·6120··m....Other·data·
0000e200:·6661·6c73·6568·0568·0377·0474·7970·6577··falseh.h.w.typew0000e200:·7479·7065·7368·0568·0377·0474·7970·6577··typesh.h.w.typew
0000e210:·0769·705f·706f·7274·6100·6c00·0000·0268··.ip_porta.l....h0000e210:·0769·705f·706f·7274·6100·6c00·0000·0268··.ip_porta.l....h
0000e220:·0277·0466·696c·656b·0007·7373·682e·6872··.w.filek..ssh.hr0000e220:·0277·0466·696c·656b·0007·7373·682e·6872··.w.filek..ssh.hr
0000e230:·6c68·0277·086c·6f63·6174·696f·6e68·0262··lh.w.locationh.b0000e230:·6c68·0277·086c·6f63·6174·696f·6e68·0262··lh.w.locationh.b
0000e240:·0000·04a5·6102·6a6c·0000·0001·6d00·0000··....a.jl....m...0000e240:·0000·04a5·6102·6a6c·0000·0001·6d00·0000··....a.jl....m...
0000e250:·0969·705f·706f·7274·2829·6a77·046e·6f6e··.ip_port()jw.non0000e250:·0969·705f·706f·7274·2829·6a77·046e·6f6e··.ip_port()jw.non
0000e260:·6574·0000·0002·7705·7469·746c·656d·0000··et....w.titlem..0000e260:·6574·0000·0002·7708·6578·706f·7274·6564··et....w.exported
0000e270:·0010·4f74·6865·7220·6461·7461·2074·7970··..Other·data·typ 
0000e280:·6573·7708·6578·706f·7274·6564·7705·6661··esw.exportedw.fa0000e270:·7705·6661·6c73·6577·0574·6974·6c65·6d00··w.falsew.titlem.
 0000e280:·0000·104f·7468·6572·2064·6174·6120·7479··...Other·data·ty
0000e290:·6c73·6568·0568·0377·0474·7970·6577·156f··lseh.h.w.typew.o0000e290:·7065·7368·0568·0377·0474·7970·6577·156f··pesh.h.w.typew.o
0000e2a0:·7061·7175·655f·6461·656d·6f6e·5f6f·7074··paque_daemon_opt0000e2a0:·7061·7175·655f·6461·656d·6f6e·5f6f·7074··paque_daemon_opt
0000e2b0:·696f·6e73·6100·6c00·0000·0268·0277·0466··ionsa.l....h.w.f0000e2b0:·696f·6e73·6100·6c00·0000·0268·0277·0466··ionsa.l....h.w.f
0000e2c0:·696c·656b·0007·7373·682e·6872·6c68·0277··ilek..ssh.hrlh.w0000e2c0:·696c·656b·0007·7373·682e·6872·6c68·0277··ilek..ssh.hrlh.w
0000e2d0:·086c·6f63·6174·696f·6e68·0262·0000·04a0··.locationh.b....0000e2d0:·086c·6f63·6174·696f·6e68·0262·0000·04a0··.locationh.b....
0000e2e0:·6102·6a6c·0000·0001·6d00·0000·176f·7061··a.jl....m....opa0000e2e0:·6102·6a6c·0000·0001·6d00·0000·176f·7061··a.jl....m....opa
0000e2f0:·7175·655f·6461·656d·6f6e·5f6f·7074·696f··que_daemon_optio0000e2f0:·7175·655f·6461·656d·6f6e·5f6f·7074·696f··que_daemon_optio
0000e300:·6e73·2829·6a77·046e·6f6e·6574·0000·0003··ns()jw.nonet....0000e300:·6e73·2829·6a77·046e·6f6e·6574·0000·0003··ns()jw.nonet....
0000e310:·7705·7469·746c·656d·0000·0010·4f74·6865··w.titlem....Othe 
0000e320:·7220·6461·7461·2074·7970·6573·7708·6578··r·data·typesw.ex 
0000e330:·706f·7274·6564·7705·6661·6c73·6577·0565··portedw.falsew.e0000e310:·7708·6578·706f·7274·6564·7705·6661·6c73··w.exportedw.fals
0000e340:·7175·6976·6d00·0000·176f·7061·7175·655f··quivm....opaque_0000e320:·6577·0565·7175·6976·6d00·0000·176f·7061··ew.equivm....opa
0000e350:·636f·6d6d·6f6e·5f6f·7074·696f·6e73·2f30··common_options/00000e330:·7175·655f·636f·6d6d·6f6e·5f6f·7074·696f··que_common_optio
 0000e340:·6e73·2f30·7705·7469·746c·656d·0000·0010··ns/0w.titlem....
 0000e350:·4f74·6865·7220·6461·7461·2074·7970·6573··Other·data·types
0000e360:·6805·6803·7704·7479·7065·7718·6361·6c6c··h.h.w.typew.call0000e360:·6805·6803·7704·7479·7065·7718·6361·6c6c··h.h.w.typew.call
0000e370:·6261·636b·735f·6461·656d·6f6e·5f6f·7074··backs_daemon_opt0000e370:·6261·636b·735f·6461·656d·6f6e·5f6f·7074··backs_daemon_opt
0000e380:·696f·6e73·6100·6c00·0000·0268·0277·0466··ionsa.l....h.w.f0000e380:·696f·6e73·6100·6c00·0000·0268·0277·0466··ionsa.l....h.w.f
0000e390:·696c·656b·0007·7373·682e·6872·6c68·0277··ilek..ssh.hrlh.w0000e390:·696c·656b·0007·7373·682e·6872·6c68·0277··ilek..ssh.hrlh.w
0000e3a0:·086c·6f63·6174·696f·6e68·0262·0000·0492··.locationh.b....0000e3a0:·086c·6f63·6174·696f·6e68·0262·0000·0492··.locationh.b....
0000e3b0:·6102·6a6c·0000·0001·6d00·0000·1a63·616c··a.jl....m....cal0000e3b0:·6102·6a6c·0000·0001·6d00·0000·1a63·616c··a.jl....m....cal
0000e3c0:·6c62·6163·6b73·5f64·6165·6d6f·6e5f·6f70··lbacks_daemon_op0000e3c0:·6c62·6163·6b73·5f64·6165·6d6f·6e5f·6f70··lbacks_daemon_op
Offset 3654, 18 lines modifiedOffset 3654, 18 lines modified
0000e450:·7276·6572·2e0a·0a2d·202a·2a60·6661·696c··rver...-·**`fail0000e450:·7276·6572·2e0a·0a2d·202a·2a60·6661·696c··rver...-·**`fail
0000e460:·6675·6e60·2a2a·202d·2050·726f·7669·6465··fun`**·-·Provide0000e460:·6675·6e60·2a2a·202d·2050·726f·7669·6465··fun`**·-·Provide
0000e470:·7320·6120·6675·6e20·746f·2069·6d70·6c65··s·a·fun·to·imple0000e470:·7320·6120·6675·6e20·746f·2069·6d70·6c65··s·a·fun·to·imple
0000e480:·6d65·6e74·2079·6f75·7220·6f77·6e20·6c6f··ment·your·own·lo0000e480:·6d65·6e74·2079·6f75·7220·6f77·6e20·6c6f··ment·your·own·lo
0000e490:·6767·696e·6720·7768·656e·2061·2075·7365··gging·when·a·use0000e490:·6767·696e·6720·7768·656e·2061·2075·7365··gging·when·a·use
0000e4a0:·7220·6661·696c·730a·2020·746f·2061·7574··r·fails.··to·aut0000e4a0:·7220·6661·696c·730a·2020·746f·2061·7574··r·fails.··to·aut
0000e4b0:·6865·6e74·6963·6174·652e·7400·0000·0277··henticate.t....w0000e4b0:·6865·6e74·6963·6174·652e·7400·0000·0277··henticate.t....w
0000e4c0:·0574·6974·6c65·6d00·0000·1f44·6165·6d6f··.titlem....Daemo 
0000e4d0:·6e20·4f70·7469·6f6e·7320·2853·6572·7665··n·Options·(Serve 
0000e4e0:·7220·4f70·7469·6f6e·7329·7708·6578·706f··r·Options)w.expo 
0000e4f0:·7274·6564·7705·6661·6c73·6568·0568·0377··rtedw.falseh.h.w0000e4c0:·0865·7870·6f72·7465·6477·0566·616c·7365··.exportedw.false
 0000e4d0:·7705·7469·746c·656d·0000·001f·4461·656d··w.titlem....Daem
 0000e4e0:·6f6e·204f·7074·696f·6e73·2028·5365·7276··on·Options·(Serv
 0000e4f0:·6572·204f·7074·696f·6e73·2968·0568·0377··er·Options)h.h.w
0000e500:·0474·7970·6577·1868·6172·6465·6e69·6e67··.typew.hardening0000e500:·0474·7970·6577·1868·6172·6465·6e69·6e67··.typew.hardening
0000e510:·5f64·6165·6d6f·6e5f·6f70·7469·6f6e·7361··_daemon_optionsa0000e510:·5f64·6165·6d6f·6e5f·6f70·7469·6f6e·7361··_daemon_optionsa
0000e520:·006c·0000·0002·6802·7704·6669·6c65·6b00··.l....h.w.filek.0000e520:·006c·0000·0002·6802·7704·6669·6c65·6b00··.l....h.w.filek.
0000e530:·0773·7368·2e68·726c·6802·7708·6c6f·6361··.ssh.hrlh.w.loca0000e530:·0773·7368·2e68·726c·6802·7708·6c6f·6361··.ssh.hrlh.w.loca
0000e540:·7469·6f6e·6802·6200·0004·5d61·026a·6c00··tionh.b...]a.jl.0000e540:·7469·6f6e·6802·6200·0004·5d61·026a·6c00··tionh.b...]a.jl.
0000e550:·0000·016d·0000·001a·6861·7264·656e·696e··...m....hardenin0000e550:·0000·016d·0000·001a·6861·7264·656e·696e··...m....hardenin
0000e560:·675f·6461·656d·6f6e·5f6f·7074·696f·6e73··g_daemon_options0000e560:·675f·6461·656d·6f6e·5f6f·7074·696f·6e73··g_daemon_options
Offset 3805, 19 lines modifiedOffset 3805, 19 lines modified
0000edc0:·2020·6d61·7869·6d75·6d20·7061·636b·6574····maximum·packet0000edc0:·2020·6d61·7869·6d75·6d20·7061·636b·6574····maximum·packet
0000edd0:·2073·697a·6520·7468·6174·2074·6865·2064···size·that·the·d0000edd0:·2073·697a·6520·7468·6174·2074·6865·2064···size·that·the·d
0000ede0:·6165·6d6f·6e20·7769·6c6c·2061·6363·6570··aemon·will·accep0000ede0:·6165·6d6f·6e20·7769·6c6c·2061·6363·6570··aemon·will·accep
0000edf0:·7420·696e·2063·6861·6e6e·656c·206f·7065··t·in·channel·ope0000edf0:·7420·696e·2063·6861·6e6e·656c·206f·7065··t·in·channel·ope
0000ee00:·6e20·7265·7175·6573·7473·2066·726f·6d0a··n·requests·from.0000ee00:·6e20·7265·7175·6573·7473·2066·726f·6d0a··n·requests·from.
0000ee10:·2020·7468·6520·636c·6965·6e74·2e20·5468····the·client.·Th0000ee10:·2020·7468·6520·636c·6965·6e74·2e20·5468····the·client.·Th
0000ee20:·6520·6465·6661·756c·7420·7661·6c75·6520··e·default·value·0000ee20:·6520·6465·6661·756c·7420·7661·6c75·6520··e·default·value·
0000ee30:·6973·2030·2e74·0000·0002·7705·7469·746c··is·0.t....w.titl0000ee30:·6973·2030·2e74·0000·0002·7708·6578·706f··is·0.t....w.expo
0000ee40:·656d·0000·001f·4461·656d·6f6e·204f·7074··em....Daemon·Opt0000ee40:·7274·6564·7705·6661·6c73·6577·0574·6974··rtedw.falsew.tit
 0000ee50:·6c65·6d00·0000·1f44·6165·6d6f·6e20·4f70··lem....Daemon·Op
0000ee50:·696f·6e73·2028·5365·7276·6572·204f·7074··ions·(Server·Opt0000ee60:·7469·6f6e·7320·2853·6572·7665·7220·4f70··tions·(Server·Op
0000ee60:·696f·6e73·2977·0865·7870·6f72·7465·6477··ions)w.exportedw 
0000ee70:·0566·616c·7365·6805·6803·7704·7479·7065··.falseh.h.w.type0000ee70:·7469·6f6e·7329·6805·6803·7704·7479·7065··tions)h.h.w.type
0000ee80:·771b·6865·6c6c·6f5f·7469·6d65·6f75·745f··w.hello_timeout_0000ee80:·771b·6865·6c6c·6f5f·7469·6d65·6f75·745f··w.hello_timeout_
0000ee90:·6461·656d·6f6e·5f6f·7074·696f·6e61·006c··daemon_optiona.l0000ee90:·6461·656d·6f6e·5f6f·7074·696f·6e61·006c··daemon_optiona.l
0000eea0:·0000·0002·6802·7704·6669·6c65·6b00·0773··....h.w.filek..s0000eea0:·0000·0002·6802·7704·6669·6c65·6b00·0773··....h.w.filek..s
0000eeb0:·7368·2e68·726c·6802·7708·6c6f·6361·7469··sh.hrlh.w.locati0000eeb0:·7368·2e68·726c·6802·7708·6c6f·6361·7469··sh.hrlh.w.locati
0000eec0:·6f6e·6802·6200·0004·5161·026a·6c00·0000··onh.b...Qa.jl...0000eec0:·6f6e·6802·6200·0004·5161·026a·6c00·0000··onh.b...Qa.jl...
0000eed0:·016d·0000·001d·6865·6c6c·6f5f·7469·6d65··.m....hello_time0000eed0:·016d·0000·001d·6865·6c6c·6f5f·7469·6d65··.m....hello_time
0000eee0:·6f75·745f·6461·656d·6f6e·5f6f·7074·696f··out_daemon_optio0000eee0:·6f75·745f·6461·656d·6f6e·5f6f·7074·696f··out_daemon_optio
Offset 3841, 19 lines modifiedOffset 3841, 19 lines modified
0000f000:·6f75·7420·7469·6d65·6f75·7473·2c20·7365··out·timeouts,·se0000f000:·6f75·7420·7469·6d65·6f75·7473·2c20·7365··out·timeouts,·se
0000f010:·6520·7468·650a·5b54·696d·656f·7574·7320··e·the.[Timeouts·0000f010:·6520·7468·650a·5b54·696d·656f·7574·7320··e·the.[Timeouts·
0000f020:·7365·6374·696f·6e20·5d28·6861·7264·656e··section·](harden0000f020:·7365·6374·696f·6e20·5d28·6861·7264·656e··section·](harden
0000f030:·696e·672e·6d64·2374·696d·656f·7574·7329··ing.md#timeouts)0000f030:·696e·672e·6d64·2374·696d·656f·7574·7329··ing.md#timeouts)
0000f040:·696e·2074·6865·2055·7365·7227·7320·4775··in·the·User's·Gu0000f040:·696e·2074·6865·2055·7365·7227·7320·4775··in·the·User's·Gu
0000f050:·6964·650a·5b48·6172·6465·6e69·6e67·5d28··ide.[Hardening](0000f050:·6964·650a·5b48·6172·6465·6e69·6e67·5d28··ide.[Hardening](
0000f060:·6861·7264·656e·696e·672e·6d64·2920·6368··hardening.md)·ch0000f060:·6861·7264·656e·696e·672e·6d64·2920·6368··hardening.md)·ch
0000f070:·6170·7465·722e·7400·0000·0277·0574·6974··apter.t....w.tit0000f070:·6170·7465·722e·7400·0000·0277·0865·7870··apter.t....w.exp
0000f080:·6c65·6d00·0000·1f44·6165·6d6f·6e20·4f70··lem....Daemon·Op 
0000f090:·7469·6f6e·7320·2853·6572·7665·7220·4f70··tions·(Server·Op 
0000f0a0:·7469·6f6e·7329·7708·6578·706f·7274·6564··tions)w.exported0000f080:·6f72·7465·6477·0566·616c·7365·7705·7469··ortedw.falsew.ti
 0000f090:·746c·656d·0000·001f·4461·656d·6f6e·204f··tlem....Daemon·O
 0000f0a0:·7074·696f·6e73·2028·5365·7276·6572·204f··ptions·(Server·O
0000f0b0:·7705·6661·6c73·6568·0568·0377·0474·7970··w.falseh.h.w.typ0000f0b0:·7074·696f·6e73·2968·0568·0377·0474·7970··ptions)h.h.w.typ
0000f0c0:·6577·216e·6567·6f74·6961·7469·6f6e·5f74··ew!negotiation_t0000f0c0:·6577·216e·6567·6f74·6961·7469·6f6e·5f74··ew!negotiation_t
0000f0d0:·696d·656f·7574·5f64·6165·6d6f·6e5f·6f70··imeout_daemon_op0000f0d0:·696d·656f·7574·5f64·6165·6d6f·6e5f·6f70··imeout_daemon_op
0000f0e0:·7469·6f6e·6100·6c00·0000·0268·0277·0466··tiona.l....h.w.f0000f0e0:·7469·6f6e·6100·6c00·0000·0268·0277·0466··tiona.l....h.w.f
0000f0f0:·696c·656b·0007·7373·682e·6872·6c68·0277··ilek..ssh.hrlh.w0000f0f0:·696c·656b·0007·7373·682e·6872·6c68·0277··ilek..ssh.hrlh.w
0000f100:·086c·6f63·6174·696f·6e68·0262·0000·0446··.locationh.b...F0000f100:·086c·6f63·6174·696f·6e68·0262·0000·0446··.locationh.b...F
0000f110:·6102·6a6c·0000·0001·6d00·0000·236e·6567··a.jl....m...#neg0000f110:·6102·6a6c·0000·0001·6d00·0000·236e·6567··a.jl....m...#neg
0000f120:·6f74·6961·7469·6f6e·5f74·696d·656f·7574··otiation_timeout0000f120:·6f74·6961·7469·6f6e·5f74·696d·656f·7574··otiation_timeout
Offset 3875, 18 lines modifiedOffset 3875, 18 lines modified
0000f220:·6f75·7473·2c20·7365·6520·7468·650a·5b54··outs,·see·the.[T0000f220:·6f75·7473·2c20·7365·6520·7468·650a·5b54··outs,·see·the.[T
0000f230:·696d·656f·7574·7320·7365·6374·696f·6e20··imeouts·section·0000f230:·696d·656f·7574·7320·7365·6374·696f·6e20··imeouts·section·
0000f240:·5d28·6861·7264·656e·696e·672e·6d64·2374··](hardening.md#t0000f240:·5d28·6861·7264·656e·696e·672e·6d64·2374··](hardening.md#t
0000f250:·696d·656f·7574·7329·696e·2074·6865·2055··imeouts)in·the·U0000f250:·696d·656f·7574·7329·696e·2074·6865·2055··imeouts)in·the·U
0000f260:·7365·7227·7320·4775·6964·650a·5b48·6172··ser's·Guide.[Har0000f260:·7365·7227·7320·4775·6964·650a·5b48·6172··ser's·Guide.[Har
0000f270:·6465·6e69·6e67·5d28·6861·7264·656e·696e··dening](hardenin0000f270:·6465·6e69·6e67·5d28·6861·7264·656e·696e··dening](hardenin
Max diff block lines reached; 101022/110940 bytes (91.06%) 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_i386.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·····2828·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····2828·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_i386.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·····1312·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1312·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_i386.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
15.0 KB
erlang-tools_27.0.1+dfsg-3_i386.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·····2012·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_i386.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·····7068·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····7068·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··4480332·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··4480340·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)··3929856·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)··3929856·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_i386.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