GoGPT Best VPN GoSearch

OnWorks favicon

dialyzer - ອອນໄລນ໌ຢູ່ໃນຄລາວ

ເປີດໃຊ້ dialyzer ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີຜ່ານ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ນີ້ແມ່ນເຄື່ອງພິມຄໍາສັ່ງທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນສະຖານີເຮັດວຽກອອນໄລນ໌ຟຣີຫຼາຍອັນຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ໂຄງການ:

NAME


dialyzer - The Dialyzer, ຄວາມແຕກຕ່າງຂອງ Analyzer ສໍາລັບໂຄງການ ERlang

ລາຍລະອຽດ


Dialyzer ແມ່ນເຄື່ອງມືການວິເຄາະສະຖິດທີ່ກໍານົດຄວາມແຕກຕ່າງຂອງຊອບແວເຊັ່ນ:
ຂໍ້ຜິດພາດປະເພດທີ່ແນ່ນອນ, ລະຫັດທີ່ໄດ້ກາຍເປັນຕາຍຫຼືບໍ່ສາມາດຕິດຕໍ່ໄດ້ເນື່ອງຈາກບາງໂຄງການ
ຄວາມຜິດພາດ, ການທົດສອບທີ່ບໍ່ຈໍາເປັນ, ແລະອື່ນໆໃນໂມດູນ Erlang ດຽວຫຼືທັງຫມົດ (ຊຸດຂອງ) ຄໍາຮ້ອງສະຫມັກ.
Dialyzer ເລີ່ມຕົ້ນການວິເຄາະຂອງມັນຈາກ BEAM bytecode ທີ່ຖືກແກ້ບັນຫາ ຫຼືຈາກ Erlang
ລະຫັດແຫຼ່ງ. ໄຟລ໌ ແລະໝາຍເລກແຖວຂອງຄວາມແຕກຕ່າງແມ່ນລາຍງານພ້ອມກັບ
ການຊີ້ບອກເຖິງສິ່ງທີ່ຄວາມແຕກຕ່າງແມ່ນກ່ຽວກັບ. Dialyzer ອີງໃສ່ການວິເຄາະຂອງຕົນກ່ຽວກັບແນວຄວາມຄິດຂອງ
ພິມ​ຜົນ​ສໍາ​ເລັດ​ທີ່​ອະ​ນຸ​ຍາດ​ໃຫ້​ສໍາ​ລັບ​ການ​ເຕືອນ​ໄພ​ສຽງ (ບໍ່​ມີ​ທາງ​ບວກ​ທີ່​ບໍ່​ຖືກ​ຕ້ອງ​)​.

ອ່ານເພີ່ມເຕີມກ່ຽວກັບ Dialyzer ແລະກ່ຽວກັບວິທີການນໍາໃຊ້ມັນຈາກ GUI ໃນ ເຄື່ອງເປົ່າລົມ ຂອງຜູ້ໃຊ້ ຄູ່​ມື.

ການ ນຳ ໃຊ້ ການ DIALYZER ຈາກ ການ ຄໍາສັ່ງ LINE


Dialyzer ຍັງມີສະບັບເສັ້ນຄໍາສັ່ງສໍາລັບການນໍາໃຊ້ອັດຕະໂນມັດ. ຂ້າງລຸ່ມນີ້ແມ່ນຄໍາອະທິບາຍສັ້ນໆ
ບັນຊີລາຍຊື່ຂອງທາງເລືອກຂອງຕົນ. ຂໍ້ມູນດຽວກັນສາມາດໄດ້ຮັບໂດຍການຂຽນ

dialyzer --ຊ່ວຍ

ໃນຫອຍ. ກະລຸນາເບິ່ງທີ່ຄໍາອະທິບາຍ GUI ສໍາລັບລາຍລະອຽດເພີ່ມເຕີມກ່ຽວກັບການດໍາເນີນງານຂອງ
ເຄື່ອງເປົ່າລົມ.

ສະ​ຖາ​ນະ​ການ​ອອກ​ຂອງ​ສະ​ບັບ​ເສັ້ນ​ຄໍາ​ສັ່ງ​ແມ່ນ​:

0 - ບໍ່ພົບບັນຫາໃນລະຫວ່າງການວິເຄາະແລະບໍ່ມີ
ການເຕືອນໄພໄດ້ຖືກປ່ອຍອອກມາ.
1 - ບັນຫາທີ່ພົບໃນລະຫວ່າງການວິເຄາະ.
2 - ບໍ່ພົບບັນຫາ, ແຕ່ການເຕືອນໄພໄດ້ຖືກປ່ອຍອອກມາ.

ການນໍາໃຊ້:

dialyzer [--help] [--version] [--shell] [--ງຽບ] [--verbose]
[-pa dir]* [--plt plt] [--plts plt*] [-Ddefine]*
[-I include_dir]* [--output_plt file] [-Wwarn]* [--raw]
[--src] [--gui] [files_or_dirs] [-r dirs]
[--apps applications] [-o outfile]
[--build_plt] [--add_to_plt] [--remove_from_plt]
[--check_plt] [--no_check_plt] [--plt_info] [--get_warnings]
[--dump_callgraph file] [--no_native] [--fullpath]
[--ສະຖິຕິ] [--no_native_cache]

ຕົວເລືອກ:

files_or_dirs (ສໍາ​ລັບ​ການ​ເຂົ້າ​ກັນ​ໄດ້​ກັບ​ຄືນ​ໄປ​ບ່ອນ​ຍັງ​ເປັນ​: -c files_or_dirs):
ໃຊ້ Dialyzer ຈາກບັນທັດຄໍາສັ່ງເພື່ອກວດພົບຂໍ້ບົກພ່ອງໃນໄຟລ໌ທີ່ກໍານົດຫຼື
ໄດເລກະທໍລີທີ່ປະກອບດ້ວຍ .erl or .beam ໄຟລ໌, ຂຶ້ນກັບປະເພດຂອງການວິເຄາະ.

-r ທີ່ຢູ່:
ຄື​ກັນ​ກັບ​ທີ່​ຜ່ານ​ມາ​ແຕ່​ລະ​ບົບ​ທີ່​ກໍາ​ນົດ​ໄວ້​ແມ່ນ​ຊອກ​ຫາ recursively ສໍາ​ລັບ​ການ​
ໄດເລກະທໍລີຍ່ອຍປະກອບດ້ວຍ .erl or .beam ໄຟລ໌ໃນພວກມັນ, ຂຶ້ນກັບປະເພດຂອງ
ການວິເຄາະ.

--ແອັບ ຄໍາຮ້ອງສະຫມັກ:
ທາງ​ເລືອກ​ທີ່​ຖືກ​ນໍາ​ໃຊ້​ໂດຍ​ປົກ​ກະ​ຕິ​ໃນ​ເວ​ລາ​ທີ່​ການ​ກໍ່​ສ້າງ​ຫຼື​ການ​ປັບ​ປຸງ plt ເປັນ​ໃນ​:

dialyzer --build_plt --apps erts kernel stdlib mnesia ...

dialyzer --apps inets ssl ./ebin ../other_lib/ebin/my_module.beam

-o outfile (ຫຼື -- ຜົນຜະລິດ outfile):
ເມື່ອໃຊ້ Dialyzer ຈາກເສັ້ນຄໍາສັ່ງ, ສົ່ງຜົນການວິເຄາະໄປຫາທີ່ກໍານົດໄວ້
outfile ແທນທີ່ຈະ stdout.

-- ດິບ:
ເມື່ອໃຊ້ Dialyzer ຈາກເສັ້ນຄໍາສັ່ງ, ໃຫ້ຜົນໄດ້ຮັບການວິເຄາະດິບ (Erlang
ຂໍ້​ກໍາ​ນົດ​) ແທນ​ທີ່​ຈະ​ເປັນ​ຮູບ​ແບບ​ຜົນ​ໄດ້​ຮັບ​. ຮູບແບບວັດຖຸດິບແມ່ນງ່າຍກວ່າທີ່ຈະຫຼັງຂະບວນການ (ສໍາລັບ
ຕົວຢ່າງ, ເພື່ອກັ່ນຕອງຄໍາເຕືອນຫຼືອອກຫນ້າ HTML).

--src:
ລົບລ້າງຄ່າເລີ່ມຕົ້ນ, ເຊິ່ງແມ່ນການວິເຄາະໄຟລ໌ BEAM, ແລະວິເຄາະເລີ່ມຕົ້ນຈາກ Erlang
ລະຫັດແຫຼ່ງແທນ.

- ຊື່ (ຫຼື -Dname=ຄ່າ):
ໃນ​ເວ​ລາ​ທີ່​ການ​ວິ​ເຄາະ​ຈາກ​ແຫຼ່ງ​ຂໍ້​ມູນ​, ຜ່ານ​ການ​ກໍາ​ນົດ​ໃຫ້ Dialyzer​. (**)

-I include_dir:
ເມື່ອວິເຄາະຈາກແຫຼ່ງ, ໃຫ້ຜ່ານ include_dir ກັບ Dialyzer. (**)

- ປ dir:
ລວມ dir ໃນເສັ້ນທາງສໍາລັບ Erlang (ເປັນປະໂຫຍດໃນເວລາທີ່ການວິເຄາະໄຟລ໌ທີ່ມີ
'-include_lib()' ຄຳແນະນຳ).

--output_plt ເອກະສານ:
ເກັບຮັກສາ plt ໃນໄຟລ໌ທີ່ລະບຸໄວ້ຫຼັງຈາກການກໍ່ສ້າງມັນ.

--plt plt:
ໃຊ້ plt ທີ່ລະບຸໄວ້ເປັນ plt ເບື້ອງຕົ້ນ (ຖ້າ plt ຖືກສ້າງຂຶ້ນໃນລະຫວ່າງການຕັ້ງໄຟລ໌
ຈະຖືກກວດສອບຄວາມສອດຄ່ອງ).

--plts plt*:
ຮວມ plts ທີ່ລະບຸເພື່ອສ້າງ plt ເບື້ອງຕົ້ນ - ຮຽກຮ້ອງໃຫ້ plts ແມ່ນ
disjoint (ie, ບໍ່ມີໂມດູນໃດປະກົດຢູ່ໃນຫຼາຍກ່ວາຫນຶ່ງ plt). plts ແມ່ນ
ສ້າງຂຶ້ນໃນແບບປົກກະຕິ:

dialyzer --build_plt --output_plt plt_1 files_to_include
...
dialyzer --build_plt --output_plt plt_n files_to_include

dialyzer files_to_analyze --plts plt_1 ... plt_n

dialyzer --plts plt_1 ... plt_n -- files_to_analyze

- ເຕືອນ:
ຄອບ​ຄົວ​ຂອງ​ທາງ​ເລືອກ​ທີ່​ເລືອກ​ເປີດ / ປິດ​ການ​ເຕືອນ​ໄພ (ສໍາ​ລັບ​ການ​ຊ່ວຍ​ເຫຼືອ​ກ່ຽວ​ກັບ​ຊື່​ຂອງ​
ການ​ນໍາ​ໃຊ້​ຄໍາ​ເຕືອນ​ ເຄື່ອງກວດລ້າງ - ຊ່ວຍ). ໃຫ້ສັງເກດວ່າທາງເລືອກສາມາດໄດ້ຮັບໃນໄຟລ໌
ມີ - dialyzer () ຄຸນ​ລັກ​ສະ​ນະ. ເບິ່ງ ການຮ້ອງຂໍ or ສະກັດກັ້ນ ຄໍາເຕືອນ in ແຫຼ່ງຂໍ້ມູນ ໄຟ
ລາຍລະອຽດຂ້າງລຸ່ມ.

--ແກະ:
ຢ່າປິດການໃຊ້ງານ Shell Erlang ໃນຂະນະທີ່ແລ່ນ GUI.

- ການປ່ຽນແປງ (ຫຼື -v):
ພິມສະບັບ Dialyzer ແລະຂໍ້ມູນເພີ່ມເຕີມແລະອອກ.

- ຊ່ວຍ (ຫຼື -h):
ພິມຂໍ້ຄວາມນີ້ແລະອອກ.

--ງຽບ (ຫຼື -q):
ເຮັດໃຫ້ Dialyzer ງຽບຫຼາຍ.

-- verbose:
ເຮັດ Dialyzer ເລັກນ້ອຍ verbose ຫຼາຍ.

--ສະຖິຕິ:
ພິມຂໍ້ມູນກ່ຽວກັບຄວາມຄືບໜ້າຂອງການປະຕິບັດ (ໄລຍະການວິເຄາະ, ເວລາທີ່ໃຊ້ໃນ
ແຕ່​ລະ​ຂະ​ຫນາດ​ຂອງ​ການ​ປ້ອນ​ຂໍ້​ມູນ​ພີ່​ນ້ອງ​)​.

--build_plt:
ການວິເຄາະເລີ່ມຕົ້ນຈາກ plt ຫວ່າງເປົ່າແລະສ້າງໃຫມ່ຈາກໄຟລ໌ທີ່ລະບຸໄວ້
ກັບ -c ແລະ -r. ພຽງ​ແຕ່​ເຮັດ​ວຽກ​ສໍາ​ລັບ​ໄຟລ​໌ beam​. ໃຊ້ --plt or --output_plt ເພື່ອ override ໄດ້
ສະຖານທີ່ plt ເລີ່ມຕົ້ນ.

--add_to_plt:
plt ແມ່ນຂະຫຍາຍໄປລວມທັງໄຟລ໌ທີ່ລະບຸໄວ້ກັບ -c ແລະ -rທີ່ຢູ່ ການນໍາໃຊ້ --plt to
ລະບຸ plt ທີ່ຈະເລີ່ມຕົ້ນຈາກ, ແລະ --output_plt ເພື່ອລະບຸບ່ອນທີ່ຈະວາງ plt.
ໃຫ້ສັງເກດວ່າການວິເຄາະອາດຈະປະກອບມີໄຟລ໌ຈາກ plt ຖ້າພວກເຂົາຂຶ້ນກັບໃຫມ່
ໄຟລ໌. ຕົວເລືອກນີ້ໃຊ້ໄດ້ກັບໄຟລ໌ beam ເທົ່ານັ້ນ.

--remove_from_plt:
ຂໍ້ມູນຈາກໄຟລ໌ທີ່ລະບຸໄວ້ກັບ -c ແລະ -r ຖືກໂຍກຍ້າຍອອກຈາກ plt. ຫມາຍ​ເຫດ​
ນີ້ອາດຈະເຮັດໃຫ້ເກີດການວິເຄາະຄືນໃຫມ່ຂອງໄຟລ໌ທີ່ຂຶ້ນກັບທີ່ຍັງເຫຼືອ.

--check_plt:
ກວດເບິ່ງ plt ສໍາລັບຄວາມສອດຄ່ອງແລະສ້າງໃຫມ່ຖ້າມັນບໍ່ທັນສະໄຫມ.

--no_check_plt:
ຂ້າມ plt check ເມື່ອແລ່ນ Dialyzer. ເປັນປະໂຫຍດໃນເວລາທີ່ເຮັດວຽກກັບ plts ທີ່ຕິດຕັ້ງນັ້ນ
ບໍ່ເຄີຍປ່ຽນແປງ.

--plt_info:
ເຮັດໃຫ້ Dialyzer ພິມຂໍ້ມູນກ່ຽວກັບ plt ແລະຫຼັງຈາກນັ້ນອອກ. plt ສາມາດຖືກກໍານົດ
ກັບ --plt(s).

--get_warnings:
ເຮັດໃຫ້ Dialyzer ປ່ອຍຄໍາເຕືອນເຖິງແມ່ນວ່າໃນເວລາທີ່ manipulating plt ໄດ້. ຄຳເຕືອນພຽງແຕ່ຖືກປ່ອຍອອກມາ
ສໍາລັບໄຟລ໌ທີ່ຖືກວິເຄາະຕົວຈິງ.

--dump_callgraph ເອກະສານ:
ຖິ້ມເສັ້ນສະແດງການໂທຫາເຂົ້າໄປໃນໄຟລ໌ທີ່ລະບຸໄວ້ເຊິ່ງຮູບແບບຂອງໄຟລ໌ຖືກກໍານົດ
ນາມສະກຸນ. ສ່ວນຂະຫຍາຍທີ່ຮອງຮັບແມ່ນ: raw, dot, ແລະ ps. ຖ້າສິ່ງອື່ນຖືກນໍາໃຊ້
ເປັນນາມສະກຸນຊື່ໄຟລ໌, ຮູບແບບເລີ່ມຕົ້ນ '.raw' ຈະຖືກນໍາໃຊ້.

--no_native (ຫຼື - ນ):
ຂ້າມການລວບລວມລະຫັດພື້ນເມືອງຂອງບາງໄຟລ໌ທີ່ສໍາຄັນທີ່ Dialyzer heuristically
ປະຕິບັດໃນເວລາທີ່ dialyzing ໄຟລ໌ຈໍານວນຫຼາຍ; ນີ້ຫຼີກລ້ຽງການລວບລວມເວລາແຕ່ມັນອາດຈະສົ່ງຜົນ
ໃນ (ຫຼາຍ) ເວລາການວິເຄາະທີ່ຍາວກວ່າ.

--no_native_cache:
ໂດຍຄ່າເລີ່ມຕົ້ນ, Dialyzer cache ຜົນໄດ້ຮັບຂອງການລວບລວມຂໍ້ມູນພື້ນເມືອງຢູ່ໃນ
$XDG_CACHE_HOME/erlang/dialyzer_hipe_cache ລະບົບ. XDG_CACHE_HOME ເລີ່ມຕົ້ນເປັນ
$HOME/.cache. ໃຊ້ຕົວເລືອກນີ້ເພື່ອປິດການເກັບຂໍ້ມູນ.

-- ເຕັມເສັ້ນທາງ:
ສະ​ແດງ​ຊື່​ເສັ້ນ​ທາງ​ເຕັມ​ຂອງ​ໄຟລ​໌​ສໍາ​ລັບ​ການ​ທີ່​ມີ​ການ​ເຕືອນ​ໄພ​ຖືກ​ປ່ອຍ​ອອກ​ມາ​.

--gui:
ໃຊ້ GUI.

ຫມາຍ​ເຫດ​:
* ໝາຍ​ເຖິງ​ການ​ເກີດ​ຂຶ້ນ​ຫຼາຍ​ອັນ​ຂອງ​ທາງ​ເລືອກ​ເຫຼົ່າ​ນີ້​ເປັນ​ໄປ​ໄດ້.

** ທາງ​ເລືອກ​ -D ແລະ -I ເຮັດວຽກທັງສອງຈາກເສັ້ນຄໍາສັ່ງແລະໃນ Dialyzer GUI; syntax ຂອງ
ກໍານົດແລະປະກອບມີແມ່ນຄືກັນກັບທີ່ນໍາໃຊ້ໂດຍ erlc.

ຕົວເລືອກການເຕືອນໄພ:

-Wno_return:
ສະກັດກັ້ນການເຕືອນໄພສໍາລັບຟັງຊັນທີ່ຈະບໍ່ສົ່ງຄືນຄ່າ.

-Wno_unused:
ສະກັດກັ້ນການເຕືອນໄພສໍາລັບຫນ້າທີ່ບໍ່ໄດ້ໃຊ້.

-Wno_improper_lists:
ສະກັດກັ້ນການເຕືອນໄພສໍາລັບການກໍ່ສ້າງບັນຊີລາຍຊື່ທີ່ບໍ່ຖືກຕ້ອງ.

-Wno_fun_app:
ສະກັດກັ້ນການເຕືອນໄພສໍາລັບຄໍາຮ້ອງສະຫມັກມ່ວນທີ່ຈະລົ້ມເຫລວ.

-Wno_match:
ສະກັດກັ້ນການເຕືອນສໍາລັບຮູບແບບທີ່ບໍ່ໄດ້ໃຊ້ຫຼືບໍ່ສາມາດກົງກັນໄດ້.

-Wno_opaque:
ສະກັດກັ້ນການເຕືອນໄພການລະເມີດຄວາມໂປ່ງໃສຂອງປະເພດຂໍ້ມູນ.

-Wno_fail_call:
ສະກັດກັ້ນການເຕືອນສໍາລັບການໂທທີ່ລົ້ມເຫລວ.

-Wno_contracts:
ສະກັດກັ້ນການເຕືອນໄພກ່ຽວກັບສັນຍາທີ່ບໍ່ຖືກຕ້ອງ.

-Wno_ພຶດຕິກໍາ:
ສະກັດກັ້ນການເຕືອນກ່ຽວກັບການເອີ້ນຄືນພຶດຕິກຳທີ່ເລື່ອນໄປຈາກຄຳແນະນຳທີ່ເຜີຍແຜ່
ອິນເຕີເຟດ.

-Wno_missing_calls:
ສະກັດກັ້ນການເຕືອນກ່ຽວກັບການໂທຫາຫນ້າທີ່ຂາດຫາຍໄປ.

-Wno_undefined_callbacks:
ສະກັດກັ້ນການເຕືອນໄພກ່ຽວກັບພຶດຕິກໍາທີ່ບໍ່ມີ -ໂທ​ກັບ ຄຸນ​ລັກ​ສະ​ນະ​ສໍາ​ລັບ​ເຂົາ​ເຈົ້າ​
ໂທກັບ.

-Wunmatched_returns***:
ຮວມເອົາຄຳເຕືອນສຳລັບການເອີ້ນຟັງຊັນທີ່ບໍ່ສົນໃຈຄ່າຕອບແທນທີ່ມີໂຄງສ້າງຫຼືບໍ່
ຈັບຄູ່ກັບໜຶ່ງໃນຫຼາຍຄ່າຕອບແທນທີ່ເປັນໄປໄດ້.

-Werror_handling***:
ຮວມເອົາຄຳເຕືອນສຳລັບຟັງຊັນທີ່ສົ່ງຄືນພຽງແຕ່ດ້ວຍຂໍ້ຍົກເວັ້ນ.

-Wrac_conditions***:
ຮວມເອົາຄຳເຕືອນສຳລັບເງື່ອນໄຂການແຂ່ງຂັນທີ່ເປັນໄປໄດ້. ໃຫ້ສັງເກດວ່າການວິເຄາະທີ່ຊອກຫາຂໍ້ມູນ
ເຊື້ອຊາດປະຕິບັດການວິເຄາະການໄຫຼເຂົ້າຂອງຂໍ້ມູນພາຍໃນຂັ້ນຕອນແລະບາງຄັ້ງສາມາດລະເບີດໃນເວລາ.
ເປີດໃຊ້ມັນຢູ່ໃນຄວາມສ່ຽງຂອງທ່ານເອງ.

-Wunderspec***:
ເຕືອນກ່ຽວກັບຫນ້າທີ່ບໍ່ລະບຸ (ການ -spec ແມ່ນຢ່າງເຂັ້ມງວດອະນຸຍາດໃຫ້ຫຼາຍກ່ວາ
ການ​ພິມ​ສໍາ​ເລັດ​ຮູບ​)​.

- ບໍ່ຮູ້ຈັກ***:
ໃຫ້ຄໍາເຕືອນກ່ຽວກັບຟັງຊັນແລະປະເພດທີ່ບໍ່ຮູ້ຈັກມີຜົນກະທົບຕໍ່ສະຖານະການອອກຈາກຄໍາສັ່ງ
ສະບັບສາຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນເພື່ອບໍ່ສົນໃຈຄໍາເຕືອນກ່ຽວກັບຫນ້າທີ່ບໍ່ຮູ້ແລະປະເພດໃນເວລາທີ່
ການ​ຕັ້ງ​ຄ່າ​ສະ​ຖາ​ນະ​ການ​ອອກ​. ໃນເວລາທີ່ການນໍາໃຊ້ Dialyzer ຈາກ Erlang, ການເຕືອນໄພກ່ຽວກັບການບໍ່ຮູ້
ຫນ້າທີ່ແລະປະເພດຖືກສົ່ງຄືນ; ຄ່າເລີ່ມຕົ້ນແມ່ນບໍ່ໃຫ້ກັບຄືນຄໍາເຕືອນເຫຼົ່ານີ້.

ທາງ​ເລືອກ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​ຍັງ​ມີ​ຢູ່​ແຕ່​ການ​ນໍາ​ໃຊ້​ຂອງ​ເຂົາ​ເຈົ້າ​ແມ່ນ​ບໍ່​ໄດ້​ແນະ​ນໍາ​ໃຫ້​: (ພວກ​ເຂົາ​ເຈົ້າ​ແມ່ນ​
ສ່ວນໃຫຍ່ສໍາລັບນັກພັດທະນາ Dialyzer ແລະການແກ້ບັນຫາພາຍໃນ)

-Woverspecs***:
ເຕືອນກ່ຽວກັບຟັງຊັນທີ່ລະບຸເກີນ (the -spec ແມ່ນຢ່າງເຂັ້ມງວດອະນຸຍາດໃຫ້ຫນ້ອຍກວ່າ
ການ​ພິມ​ສໍາ​ເລັດ​ຮູບ​)​.

-Wspecdiffs***:
ເຕືອນເມື່ອ -spec ແຕກຕ່າງຈາກການພິມສຳເລັດ.

ຫມາຍ​ເຫດ​:
*** ກໍານົດທາງເລືອກທີ່ເປີດການແຈ້ງເຕືອນແທນທີ່ຈະປິດພວກມັນ.

ການ ນຳ ໃຊ້ ການ DIALYZER ຈາກ ERLANG


ທ່ານຍັງສາມາດໃຊ້ Dialyzer ໂດຍກົງຈາກ Erlang. ທັງ GUI ແລະສະບັບສາຍຄໍາສັ່ງ
ມີຢູ່. ຕົວເລືອກຕ່າງໆແມ່ນຄ້າຍຄືກັນກັບທີ່ມາຈາກເສັ້ນຄໍາສັ່ງ, ດັ່ງນັ້ນກະລຸນາ
ອ້າງອີງໃສ່ພາກສ່ວນຂ້າງເທິງສໍາລັບຄໍາອະທິບາຍກ່ຽວກັບສິ່ງເຫຼົ່ານີ້.

ກຳລັງຮ້ອງຂໍ OR ສະກັດກັ້ນ ຄໍາເຕືອນ IN ແຫຼ່ງຂໍ້ມູນ ເອກະສານ


ໄດ້ - dialyzer () ຄຸນ​ລັກ​ສະ​ນະ​ສາ​ມາດ​ຖືກ​ນໍາ​ໃຊ້​ສໍາ​ລັບ​ການ​ປິດ​ການ​ເຕືອນ​ໄພ​ໃນ​ໂມ​ດູນ​ໂດຍ​ການ​ລະ​ບຸ​
ຫນ້າທີ່ຫຼືທາງເລືອກການເຕືອນໄພ. ຕົວຢ່າງ, ເພື່ອປິດການເຕືອນໄພທັງຫມົດສໍາລັບຟັງຊັນ f / 0,
ປະກອບມີແຖວຕໍ່ໄປນີ້:

-dialyzer({nowarn_function, f/0}).

ເພື່ອປິດການເຕືອນສໍາລັບລາຍການທີ່ບໍ່ເຫມາະສົມ, ເພີ່ມແຖວຕໍ່ໄປນີ້ໃສ່ໄຟລ໌ຕົ້ນສະບັບ:

-dialyzer(no_improper_lists).

ໄດ້ - dialyzer () ຄຸນລັກສະນະແມ່ນອະນຸຍາດຫຼັງຈາກການປະກາດຟັງຊັນ. ລາຍຊື່ຕົວເລືອກເຕືອນ
ຫຼື​ຫນ້າ​ທີ່​ໄດ້​ຮັບ​ອະ​ນຸ​ຍາດ​ໃຫ້​:

-dialyzer([{nowarn_function, [f/0]}, no_improper_lists]).

ຕົວເລືອກການເຕືອນສາມາດຖືກຈໍາກັດໃນຫນ້າທີ່:

-dialyzer({no_improper_lists, g/0}).

-dialyzer({[no_return, no_match], [g/0, h/0]}).

ສໍາລັບການຊ່ວຍເຫຼືອກ່ຽວກັບທາງເລືອກການເຕືອນໄພ, ການນໍາໃຊ້ ເຄື່ອງກວດລ້າງ - ຊ່ວຍ. ທາງ​ເລືອກ​ໃນ​ການ​ຍັງ​ມີ enumerated​ ຕ່ໍາກວ່າ
(WarnOpts).

ຫມາຍ​ເຫດ​:
ໄດ້ - dialyzer () ຄຸນລັກສະນະບໍ່ໄດ້ຖືກກວດສອບໂດຍ Erlang Compiler, ແຕ່ໂດຍ Dialyzer
ຕົວເອງ

ຫມາຍ​ເຫດ​:
ທາງ​ເລືອກ​ການ​ເຕືອນ​ໄພ​ -Wrac_conditions ບໍ່ມີຜົນກະທົບໃນເວລາທີ່ຕັ້ງຢູ່ໃນໄຟລ໌ຕົ້ນສະບັບ.

ໄດ້ - dialyzer () ຄຸນລັກສະນະຍັງສາມາດຖືກໃຊ້ສໍາລັບການເປີດການເຕືອນ. ຕົວຢ່າງ, ຖ້າ ກ
ໂມດູນໄດ້ຖືກແກ້ໄຂກ່ຽວກັບຜົນຕອບແທນທີ່ບໍ່ກົງກັນ, ເພີ່ມເສັ້ນ

-dialyzer(unmatched_returns).

ສາມາດຊ່ວຍໃນການຮັບປະກັນວ່າບໍ່ມີການເຕືອນໄພກັບຄືນມາທີ່ບໍ່ກົງກັນໃຫມ່ໄດ້ຖືກນໍາສະເຫນີ.

ການສົ່ງອອກ


gui() -> ok | {ຜິດພາດ, ຂໍ້ຄວາມ}
gui(OptList) -> ok | {ຜິດພາດ, ຂໍ້ຄວາມ}

ປະເພດ:

OptList -- ເບິ່ງຂ້າງລຸ່ມນີ້

ຮຸ່ນ Dialyzer GUI.

OptList :: [ທາງເລືອກ]
ທາງເລືອກ :: {files, [Filename :: string()]}
| {files_rec, [DirName :: string()]}
| {ກຳນົດ, [{ Macro :: atom(), Value :: term()}]}
| {ຈາກ, src_code | byte_code} %% ຄ່າເລີ່ມຕົ້ນຂອງ byte_code
| {init_plt, FileName :: string()} %% ຖ້າປ່ຽນຈາກຄ່າເລີ່ມຕົ້ນ
| {plts, [FileName :: string()]} %% ຖ້າປ່ຽນຈາກຄ່າເລີ່ມຕົ້ນ
| {include_dirs, [DirName :: string()]}
| {output_file, FileName :: string()}
| {output_plt, FileName :: string()}
| {check_plt, boolean()},
| {analysis_type, 'succ_typings' |
'plt_add' |
'plt_build' |
'plt_check' |
'plt_remove'}
| {ຄຳເຕືອນ, [WarnOpts]}
| {get_warnings, bool()}

WarnOpts :: no_return
| no_unused
| no_improper_lists
| no_fun_app
| no_match
| no_opaque
| no_fail_call
| no_contracts
| no_ພຶດຕິກໍາ
| no_undefined_callbacks
| unmatched_returns
| error_handling
| race_conditions
| overspec
| underspec
| ຂໍ້ມູນສະເພາະ
| ບໍ່ຮູ້ຈັກ

ແລ່ນ(OptList) -> ຄໍາເຕືອນ

ປະເພດ:

OptList -- ເບິ່ງ gui/0,1
ຄໍາເຕືອນ -- ເບິ່ງຂ້າງລຸ່ມນີ້

ສະບັບເສັ້ນຄໍາສັ່ງ Dialyzer.

ຄຳເຕືອນ :: [{Tag, Id, Msg}]
Tag :: 'warn_behaviour'
| 'warn_bin_construction'
| 'warn_callgraph'
| 'warn_contract_not_equal'
| 'warn_contract_range'
| 'warn_contract_subtype'
| 'warn_contract_supertype'
| 'warn_contract_syntax'
| 'warn_contract_types'
| 'warn_failing_call'
| 'warn_fun_app'
| 'warn_matching'
| 'warn_non_proper_list'
| 'warn_not_called'
| 'warn_opaque'
| 'warn_race_condition'
| 'warn_return_no_exit'
| 'warn_return_only_exit'
| 'warn_umatched_return'
| 'warn_undefined_callbacks'
| 'warn_unknown'
Id = {File :: string(), Line :: integer()}
Msg = msg() -- ບໍ່ໄດ້ກໍານົດ

format_warning(Msg) -> ສະຕຣິງ()

ປະເພດ:

Msg = {Tag, Id, msg()} -- ເບິ່ງ run/1

ໄດ້​ຮັບ​ສາຍ​ຈາກ​ຄໍາ​ເຕືອນ​ທີ່​ສົ່ງ​ຄືນ​ໂດຍ dialyzer:run/1​.

plt_info(string()) -> {'ຕົກ​ລົງ', [{ປະລໍາມະນູ(), ໃດ()}]} | {'ຄວາມຜິດພາດ', atom()}

ສົ່ງຄືນຂໍ້ມູນກ່ຽວກັບ plt ທີ່ລະບຸ.

ໃຊ້ dialyzer ອອນລາຍໂດຍໃຊ້ບໍລິການ onworks.net


ເຊີບເວີ ແລະສະຖານີເຮັດວຽກຟຣີ

ດາວໂຫຼດແອັບ Windows ແລະ Linux

Linux ຄຳ ສັ່ງ

Ad




×
ການ​ໂຄ​ສະ​ນາ
?ຊື້ເຄື່ອງ, ຈອງ, ຫຼືຊື້ທີ່ນີ້ — ບໍ່ມີຄ່າໃຊ້ຈ່າຍ, ຊ່ວຍໃຫ້ການບໍລິການຟຣີ.