GoGPT Best VPN GoSearch

favorit OnWorks

dialyzer - Online di Cloud

Jalankan dialyzer di penyedia hosting gratis OnWorks melalui Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

Ini adalah dialyzer perintah yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

PROGRAM:

NAMA


dialyzer - The Dialyzer, sebuah AnalYZer Ketidaksesuaian untuk program ERlang

DESKRIPSI


Dialyzer adalah alat analisis statis yang mengidentifikasi perbedaan perangkat lunak seperti:
kesalahan tipe yang pasti, kode yang menjadi mati atau tidak dapat dijangkau karena beberapa pemrograman
kesalahan, tes yang tidak perlu, dll. dalam modul Erlang tunggal atau seluruh (set) aplikasi.
Dialyzer memulai analisisnya dari bytecode BEAM yang dikompilasi debug atau dari Erlang
Kode sumber. File dan nomor baris ketidaksesuaian dilaporkan bersama dengan
indikasi tentang apa perbedaan itu. Dialyzer mendasarkan analisisnya pada konsep
pengetikan sukses yang memungkinkan peringatan suara (tidak ada kesalahan positif).

Baca lebih lanjut tentang Dialyzer dan tentang cara menggunakannya dari GUI di dialiser milik pengguna Panduan.

MENGGUNAKAN THE DIALIZER DARI THE COMMAND GARIS


Dialyzer juga memiliki versi baris perintah untuk penggunaan otomatis. Di bawah ini adalah deskripsi singkat
dari daftar pilihannya. Informasi yang sama dapat diperoleh dengan menulis

dialiser --bantuan

dalam cangkang. Silakan merujuk ke deskripsi GUI untuk detail lebih lanjut tentang pengoperasian
mesin dialiser.

Status keluar dari versi baris perintah adalah:

0 - Tidak ada masalah yang ditemukan selama analisis dan tidak ada
peringatan dikeluarkan.
1 - Masalah yang dihadapi selama analisis.
2 - Tidak ada masalah yang ditemukan, tetapi peringatan dikeluarkan.

Pemakaian:

dialyzer [--help] [--versi] [--shell] [--quiet] [--verbose]
[-pa dir]* [--plt plt] [--plts plt*] [-Ddefine]*
[-Saya include_dir]* [--output_plt file] [-Wwarn]* [--raw]
[--src] [--gui] [file_or_dirs] [-r dirs]
[--aplikasi aplikasi] [-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]
[--statistik] [--no_native_cache]

Pilihan:

file_atau_dirs (untuk kompatibilitas mundur juga sebagai: -c file_atau_dirs):
Gunakan Dialyzer dari baris perintah untuk mendeteksi cacat pada file yang ditentukan atau
direktori yang berisi .erl or .balok file, tergantung pada jenis analisis.

-r dirs:
Sama seperti sebelumnya tetapi direktori yang ditentukan dicari secara rekursif
subdirektori yang berisi .erl or .balok file di dalamnya, tergantung pada jenis
analisis.

--aplikasi aplikasi:
Option biasanya digunakan saat membangun atau memodifikasi plt seperti pada:

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

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

-o file keluar (Atau --keluaran file keluar):
Saat menggunakan Dialyzer dari baris perintah, kirim hasil analisis ke yang ditentukan
outfile daripada ke stdout.

--mentah:
Saat menggunakan Dialyzer dari baris perintah, keluarkan hasil analisis mentah (Erlang
istilah) alih-alih hasil yang diformat. Format mentah lebih mudah untuk pasca-proses (untuk
misalnya, untuk memfilter peringatan atau untuk menampilkan halaman HTML).

--src:
Ganti default, yaitu menganalisis file BEAM, dan menganalisis mulai dari Erlang
kode sumber sebagai gantinya.

-Nama (Atau -Nama=nilai):
Saat menganalisis dari sumber, berikan definisi ke Dialyzer. (**)

-I sertakan_dir:
Saat menganalisis dari sumber, berikan sertakan_dir ke dialiser. (**)

-pa dir:
Memasukkan dir di jalur untuk Erlang (berguna saat menganalisis file yang memiliki
'-termasuk_lib()' arahan).

--keluaran_plt fillet:
Simpan plt di file yang ditentukan setelah membangunnya.

--plt plt:
Gunakan plt yang ditentukan sebagai plt awal (jika plt dibuat selama pengaturan file
akan diperiksa konsistensinya).

--plt tolong*:
Gabungkan plt yang ditentukan untuk membuat plt awal -- mensyaratkan bahwa plt adalah
terputus-putus (yaitu, tidak ada modul yang muncul di lebih dari satu plt). Pltnya adalah
dibuat dengan cara biasa:

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

file dialyzer_to_analyze --plts plt_1 ... plt_n

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

-Peringatkan:
Sekelompok opsi yang secara selektif mengaktifkan/menonaktifkan peringatan (untuk bantuan tentang nama
peringatan menggunakan dialisis -Anak binatang). Perhatikan bahwa opsi juga dapat diberikan dalam file
dengan -dialiser() atribut. Lihat Meminta or Menekan Peringatan in sumber File
di bawah untuk detailnya.

--kerang:
Jangan nonaktifkan shell Erlang saat menjalankan GUI.

--Versi: kapan (Atau -v):
Cetak versi Dialyzer dan beberapa informasi lebih lanjut dan keluar.

--membantu (Atau -h):
Cetak pesan ini dan keluar.

--diam (Atau -q):
Membuat Dialyzer sedikit lebih tenang.

--bertele-tele:
Buat Dialyzer sedikit lebih bertele-tele.

--statistik:
Mencetak informasi tentang kemajuan eksekusi (fase analisis, waktu yang dihabiskan dalam
masing-masing dan ukuran input relatif).

--build_plt:
Analisis dimulai dari plt kosong dan membuat yang baru dari file yang ditentukan
dengan -c dan -r. Hanya berfungsi untuk berkas berkas. Menggunakan --plt or --keluaran_plt untuk menimpa
lokasi plt default.

--tambahkan_ke_plt:
Plt diperluas untuk juga menyertakan file yang ditentukan dengan -c dan -r. Menggunakan --plt untuk
tentukan dari mana plt untuk memulai, dan --keluaran_plt untuk menentukan di mana menempatkan plt.
Perhatikan bahwa analisis mungkin menyertakan file dari plt jika bergantung pada yang baru
file. Opsi ini hanya berfungsi dengan berkas berkas.

--hapus_dari_plt:
Informasi dari file yang ditentukan dengan -c dan -r dihapus dari plt. Catatan
bahwa ini dapat menyebabkan analisis ulang dari file dependen yang tersisa.

--periksa_plt:
Periksa plt untuk konsistensi dan bangun kembali jika tidak mutakhir.

--no_check_plt:
Lewati pemeriksaan plt saat menjalankan Dialyzer. Berguna saat bekerja dengan plts terpasang yang
tidak pernah berubah.

--plt_info:
Membuat Dialyzer mencetak informasi tentang plt dan kemudian keluar. Plt dapat ditentukan
dengan --plt.

--dapatkan_peringatan:
Membuat Dialyzer mengeluarkan peringatan bahkan ketika memanipulasi plt. Peringatan hanya dipancarkan
untuk file yang benar-benar dianalisis.

--dump_callgraph fillet:
Buang grafik panggilan ke file tertentu yang formatnya ditentukan oleh file
ekstensi nama. Ekstensi yang didukung adalah: mentah, dot, dan ps. Jika sesuatu yang lain digunakan
sebagai ekstensi nama file, format default '.raw' akan digunakan.

--tidak_asli (Atau -nn):
Lewati kompilasi kode asli dari beberapa file kunci yang Dialyzer secara heuristik
tampil saat mendialisis banyak file; ini menghindari waktu kompilasi tetapi mungkin menghasilkan
dalam (jauh) lebih lama waktu analisis.

--no_native_cache:
Secara default, Dialyzer menyimpan hasil kompilasi asli di
$XDG_CACHE_HOME/erlang/dialyzer_hipe_cache direktori. XDG_CACHE_HOME default ke
$HOME/.cache. Gunakan opsi ini untuk menonaktifkan caching.

--jalur penuh:
Tampilkan nama jalur lengkap file yang peringatannya dikeluarkan.

--gui:
Gunakan GUI-nya.

Catatan:
* menunjukkan bahwa beberapa kemunculan opsi ini dimungkinkan.

** pilihan -D dan -I bekerja baik dari baris perintah dan di GUI Dialyzer; sintaks dari
mendefinisikan dan termasuk adalah sama dengan yang digunakan oleh erlc.

Opsi peringatan:

-Wno_kembali:
Menekan peringatan untuk fungsi yang tidak akan pernah mengembalikan nilai.

-Wno_belum digunakan:
Menekan peringatan untuk fungsi yang tidak digunakan.

-Wno_daftar_tidak patut:
Menekan peringatan untuk pembuatan daftar yang tidak tepat.

-Wno_fun_app:
Menekan peringatan untuk aplikasi menyenangkan yang akan gagal.

-Tidak ada_pertandingan:
Menekan peringatan untuk pola yang tidak digunakan atau tidak cocok.

-Wno_buram:
Menekan peringatan untuk pelanggaran ketidakjelasan tipe data.

-Wno_fail_call:
Menekan peringatan untuk panggilan yang gagal.

-Wno_kontrak:
Menekan peringatan tentang kontrak yang tidak valid.

-Tak_perilaku:
Menekan peringatan tentang panggilan balik perilaku yang menyimpang dari rekomendasi yang diterbitkan
interface.

-Tidak ada_panggilan_hilang:
Menekan peringatan tentang panggilan ke fungsi yang hilang.

-Wno_undefined_callback:
Menekan peringatan tentang perilaku yang tidak -panggilan balik atribut untuk mereka
panggilan balik.

-pengembalian_yang tidak cocok***:
Sertakan peringatan untuk panggilan fungsi yang mengabaikan nilai pengembalian terstruktur atau tidak
cocok dengan salah satu dari banyak kemungkinan nilai pengembalian.

-Penanganan_kesalahan***:
Sertakan peringatan untuk fungsi yang hanya kembali melalui pengecualian.

-Wrace_kondisi***:
Sertakan peringatan untuk kemungkinan kondisi balapan. Perhatikan bahwa analisis yang menemukan data
races melakukan analisis aliran data intra-prosedural dan terkadang dapat meledak tepat waktu.
Aktifkan dengan risiko Anda sendiri.

-Wunderspec***:
Peringatkan tentang fungsi yang tidak ditentukan (-spec lebih memungkinkan daripada
sukses mengetik).

-Tidak diketahui***:
Biarkan peringatan tentang fungsi dan jenis yang tidak diketahui memengaruhi status keluar dari perintah
versi baris. Standarnya adalah mengabaikan peringatan tentang fungsi dan jenis yang tidak diketahui ketika
mengatur status keluar. Saat menggunakan Dialyzer dari Erlang, peringatan tentang yang tidak diketahui
fungsi dan tipe dikembalikan; defaultnya adalah tidak mengembalikan peringatan ini.

Opsi berikut juga tersedia tetapi penggunaannya tidak disarankan: (mereka adalah
sebagian besar untuk pengembang Dialyzer dan debugging internal)

-Woverspec***:
Peringatkan tentang fungsi yang terlalu ditentukan (spek - sangat kurang memungkinkan daripada
sukses mengetik).

-Wspecdiff***:
Peringatkan ketika -spec berbeda dari pengetikan yang berhasil.

Catatan:
*** Mengidentifikasi opsi yang mengaktifkan peringatan daripada mematikannya.

MENGGUNAKAN THE DIALIZER DARI ERLANG


Anda juga dapat menggunakan Dialyzer langsung dari Erlang. Baik versi GUI dan baris perintah
tersedia. Opsinya mirip dengan yang diberikan dari baris perintah, jadi tolong
lihat bagian di atas untuk penjelasannya.

MEMINTA OR MENCEGAH PERINGATAN IN SOURCE FILE


The -dialiser() atribut dapat digunakan untuk mematikan peringatan dalam modul dengan menentukan
fungsi atau opsi peringatan. Misalnya, untuk mematikan semua peringatan untuk fungsi f / 0,
termasuk baris berikut:

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

Untuk menonaktifkan peringatan untuk daftar yang tidak tepat, tambahkan baris berikut ke file sumber:

-dialyzer(no_impproper_lists).

The -dialiser() atribut diperbolehkan setelah deklarasi fungsi. Daftar opsi peringatan
atau fungsi yang diizinkan:

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

Opsi peringatan dapat dibatasi untuk fungsi:

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

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

Untuk bantuan tentang opsi peringatan, gunakan dialisis -Anak binatang. Opsi juga disebutkan di bawah
(PeringatkanOpts).

Catatan:
The -dialiser() atribut tidak diperiksa oleh Kompilator Erlang, tetapi oleh Dialyzer
itu sendiri.

Catatan:
Opsi peringatan -Wrace_kondisi tidak berpengaruh saat diatur dalam file sumber.

The -dialiser() atribut juga dapat digunakan untuk mengaktifkan peringatan. Misalnya, jika
modul telah diperbaiki terkait pengembalian yang tak tertandingi, menambahkan baris

-dialyzer(pengembalian_yang tidak cocok).

dapat membantu memastikan bahwa tidak ada peringatan pengembalian baru yang tak tertandingi yang diperkenalkan.

EKSPOR


gui() -> ok | {kesalahan, pesan}
gui (Daftar Pilihan) -> ok | {kesalahan, pesan}

jenis:

OptList -- lihat di bawah

Versi GUI dialiser.

Daftar Pilihan :: [Opsi]
Opsi :: {file, [Nama file :: string()]}
| {files_rec, [NamaDir :: string()]}
| {mendefinisikan, [{Makro :: atom(), Nilai :: term()}]}
| {dari, kode_src | byte_code} %% Default ke byte_code
| {init_plt, FileName :: string()} %% Jika diubah dari default
| {plts, [FileName :: string()]} %% Jika diubah dari default
| {include_dirs, [NamaDir :: string()]}
| {file_keluaran, NamaBerkas :: string()}
| {output_plt, Nama File :: string()}
| {check_plt, boolean()},
| {analysis_type, 'suc_typings' |
'plt_add' |
'plt_build' |
'plt_check' |
'plt_remove'}
| {peringatan, [WarnOpts]}
| {get_warnings, bool()}

WarnOpts :: no_return
| tidak_tidak digunakan
| no_daftar_tidak patut
| no_fun_app
| tidak ada_pertandingan
| tidak_buram
| no_fail_call
| no_kontrak
| tidak_perilaku
| no_undefined_callback
| tak tertandingi_pengembalian
| penanganan_kesalahan
| ras_kondisi
| spesifikasi yang berlebihan
| di bawah spesifikasi
| spesifikasi
| tidak dikenal

jalankan (Daftar Pilihan) -> Peringatan

jenis:

OptList -- lihat gui/0,1
Peringatan -- lihat di bawah

Versi baris perintah dialyzer.

Peringatan :: [{Tag, Id, Msg}]
Tag :: 'peringatkan_perilaku'
| 'peringatkan_bin_konstruksi'
| 'warn_callgraph'
| 'peringatkan_kontrak_tidak_sama'
| 'warn_contract_range'
| 'peringatkan_kontrak_subtipe'
| 'warn_contract_supertype'
| 'peringatkan_kontrak_sintaks'
| 'warn_contract_types'
| 'peringatkan_gagal_panggilan'
| 'warn_fun_app'
| 'peringatan_cocok'
| 'warn_non_proper_list'
| 'peringatkan_tidak_dipanggil'
| 'peringatkan_buram'
| 'warn_race_condition'
| 'peringatkan_kembali_tidak_keluar'
| 'peringatkan_kembali_hanya_keluar'
| 'peringatkan_umatched_return'
| 'warn_undefined_callbacks'
| 'peringatkan_tidak diketahui'
Id = {File :: string(), Baris :: integer()}
Pesan = pesan() -- Tidak terdefinisi

format_warning(Pesan) -> rangkaian()

jenis:

Pesan = {Tag, Id, msg()} -- Lihat run/1

Dapatkan string dari peringatan yang dikembalikan oleh dialyzer:run/1.

plt_info(string()) -> {'Oke', [{atom(), setiap()}]} | {'kesalahan', atom()}

Mengembalikan informasi tentang plt yang ditentukan.

Gunakan dialyzer online menggunakan layanan onworks.net


Server & Workstation Gratis

Unduh aplikasi Windows & Linux

Perintah Linux

Ad




×
iklan
❤️Berbelanja, pesan, atau beli di sini — tanpa biaya, membantu menjaga layanan tetap gratis.