انگلیسیفرانسویاسپانیایی

Ad


فاویکون OnWorks

دیالیزور - آنلاین در ابر

dialyzer را در ارائه دهنده هاست رایگان OnWorks از طریق Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا کنید.

این دیالایزر فرمانی است که می تواند در ارائه دهنده میزبانی رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.

برنامه:

نام


dialyzer - Dialyzer، یک تجزیه و تحلیل ناسازگاری برای برنامه های ERlang

شرح


Dialyzer یک ابزار تجزیه و تحلیل استاتیک است که مغایرت های نرم افزاری مانند
خطاهای نوع قطعی، کدی که به دلیل برخی برنامه‌نویسی مرده یا غیرقابل دسترسی است
خطا، تست های غیر ضروری و غیره در ماژول های Erlang یا کل (مجموعه ای از) برنامه ها.
Dialyzer تجزیه و تحلیل خود را از کد BEAM کامپایل شده با اشکال زدایی یا از Erlang شروع می کند
کد منبع فایل و شماره خط یک مغایرت همراه با علامت گزارش می شود
نشان می دهد که اختلاف در مورد چیست. دیالایزر تجزیه و تحلیل خود را بر اساس مفهوم
تایپ موفقیت آمیز که امکان هشدارهای صوتی را فراهم می کند (بدون مثبت کاذب).

درباره Dialyzer و نحوه استفاده از آن از رابط کاربری گرافیکی بیشتر بخوانید دیالیزر کاربر راهنما.

استفاده كردن L' دیالیزور از L' COMMAND LINE


Dialyzer همچنین دارای یک نسخه خط فرمان برای استفاده خودکار است. در زیر توضیح مختصری آورده شده است
از لیست گزینه های آن همین اطلاعات را می توان با نوشتن به دست آورد

دیالیزور -- کمک

در یک پوسته لطفاً برای جزئیات بیشتر در مورد عملکرد به توضیحات رابط کاربری گرافیکی مراجعه کنید
دیالیزور

وضعیت خروج از نسخه خط فرمان:

0 - در هنگام تجزیه و تحلیل مشکلی پیش نیامد و خیر
هشدارها صادر شد.
1 - در هنگام تجزیه و تحلیل با مشکلاتی مواجه شد.
2 - هیچ مشکلی پیش نیامد، اما اخطار داده شد.

طریقه استفاده:

دیالیزور [--کمک] [--نسخه] [--پوسته] [--آرام] [--کلمه]
[-pa dir]* [--plt plt] [--plts plt*] [-Ddefine]*
[-I include_dir]* [--output_plt فایل] [-Wwarn]* [--raw]
[--src] [--gui] [files_or_dirs] [-rdirs]
[--برنامه های کاربردی] [-o outfile]
[--build_plt] [--add_to_plt] [--remove_from_plt]
[--check_plt] [--no_check_plt] [--plt_info] [--get_warnings]
[--فایل dump_callgraph] [--no_native] [--fullpath]
[--آمار] [--no_native_cache]

گزینه های ارسال:

files_or_dirs (برای سازگاری با عقب نیز به عنوان: -c files_or_dirs):
از Dialyzer از خط فرمان برای تشخیص نقص در فایل های مشخص شده استفاده کنید
دایرکتوری های حاوی .erl or .پرتو فایل ها بسته به نوع تجزیه و تحلیل.

-r دیر:
همانند مورد قبلی، اما دایرکتوری های مشخص شده به صورت بازگشتی جستجو می شوند
زیر شاخه های حاوی .erl or .پرتو بسته به نوع فایل های موجود در آنها
تجزیه و تحلیل.

--برنامه ها برنامه های کاربردی:
گزینه ای که معمولاً هنگام ساخت یا اصلاح یک plt استفاده می شود مانند:

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

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

-o مجموعه (و یا -- خروجی مجموعه):
هنگام استفاده از Dialyzer از خط فرمان، نتایج تجزیه و تحلیل را به قسمت مشخص شده ارسال کنید
outfile به جای stdout.

-- خام:
هنگام استفاده از Dialyzer از خط فرمان، نتایج تحلیل خام (Erlang
شرایط) به جای نتیجه قالب بندی شده. فرمت خام پس از پردازش آسان تر است (برای
به عنوان مثال، برای فیلتر کردن هشدارها یا خروجی صفحات HTML).

--src:
پیش‌فرض را که تجزیه و تحلیل فایل‌های BEAM است، لغو کنید و از Erlang شروع به تجزیه و تحلیل کنید
در عوض کد منبع

-Dname (و یا -Dname=value):
هنگام تجزیه و تحلیل از منبع، تعریف را به Dialyzer منتقل کنید. (**)

-I include_dir:
هنگام تجزیه و تحلیل از منبع، پاس include_dir به دیالیزور (**)

-پا دیر:
شامل دیر در مسیر برای Erlang (مفید هنگام تجزیه و تحلیل فایل هایی که دارای
'-include_lib()' بخشنامه ها).

--output_plt پرونده:
plt را پس از ساخت در فایل مشخص شده ذخیره کنید.

--plt plt:
از plt مشخص شده به عنوان plt اولیه استفاده کنید (اگر plt در هنگام تنظیم فایل ها ساخته شده باشد
از نظر سازگاری بررسی خواهد شد).

--plts plt*:
plt های مشخص شده را ادغام کنید تا plt اولیه ایجاد شود -- مستلزم این است که plt ها باشند
disjoint (یعنی هیچ ماژولی در بیش از یک plt ظاهر نشود). plts هستند
به روش معمول ایجاد شده است:

dialyzer --build_plt --output_plt plt_1 files_to_include
...
dialyzer --build_plt --output_plt plt_n فایل_to_include

dialyzer files_to_analyze --plts plt_1 ... plt_n

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

-اخطار کن:
خانواده ای از گزینه ها که به طور انتخابی اخطارها را روشن/خاموش می کنند (برای راهنمایی در مورد نام
استفاده از هشدارها دیالیزر -کمک کن). توجه داشته باشید که گزینه ها را نیز می توان در فایل قرار داد
با یک -dialyzer() صفت. دیدن درخواست کننده or سرکوبگر هشدارها in منبع فایل ها
در زیر برای جزئیات

--پوسته:
هنگام اجرای رابط کاربری گرافیکی، پوسته Erlang را غیرفعال نکنید.

- نسخه (و یا -v):
نسخه Dialyzer و اطلاعات بیشتر را پرینت بگیرید و خارج شوید.

--کمک (و یا -h):
این پیام را چاپ کنید و خارج شوید.

--ساکت (و یا -q):
دیالیز را کمی آرام تر کنید.

-- پرحرف:
Dialyzer را کمی پرمخاطب تر کنید.

--آمار:
چاپ اطلاعات در مورد پیشرفت اجرا (مراحل تجزیه و تحلیل، زمان صرف شده در
هر یک و اندازه ورودی نسبی).

--build_plt:
تجزیه و تحلیل از یک plt خالی شروع می شود و یک plt جدید از فایل های مشخص شده ایجاد می کند
با -c و -r. فقط برای فایل های پرتو کار می کند. استفاده کنید --plt or --output_plt برای نادیده گرفتن
مکان پیش فرض plt

--add_to_plt:
plt گسترش می یابد تا فایل های مشخص شده با را نیز شامل شود -c و -r. استفاده از --plt به
مشخص کنید که از کدام plt شروع شود و --output_plt برای تعیین محل قرار دادن plt.
توجه داشته باشید که تجزیه و تحلیل ممکن است شامل فایل‌هایی از plt باشد، اگر به نسخه جدید وابسته باشند
فایل ها. این گزینه فقط با فایل های پرتو کار می کند.

--remove_from_plt:
اطلاعات از فایل های مشخص شده با -c و -r از plt حذف می شود. توجه داشته باشید
که ممکن است باعث تجزیه و تحلیل مجدد فایل های وابسته باقی مانده شود.

--check_plt:
Plt را از نظر سازگاری بررسی کنید و اگر به روز نیست آن را دوباره بسازید.

--no_check_plt:
هنگام اجرای Dialyzer از بررسی plt صرفنظر کنید. هنگام کار با plts نصب شده مفید است
هرگز تغییر نمی کند

--plt_info:
اطلاعات مربوط به plt را Dialyzer چاپ کنید و سپس از آن خارج شوید. plt را می توان مشخص کرد
با --plt(های).

--get_warnings:
کاری کنید که دیالایزر حتی در هنگام دستکاری plt اخطارها را منتشر کند. هشدارها فقط منتشر می شوند
برای فایل هایی که واقعا تجزیه و تحلیل می شوند.

--dump_callgraph پرونده:
نمودار فراخوانی را در فایل مشخص شده که فرمت آن توسط فایل تعیین می شود، تخلیه کنید
پسوند نام پسوندهای پشتیبانی شده عبارتند از: raw، dot و ps. اگر چیز دیگری استفاده شود
به عنوان پسوند نام فایل، فرمت پیش فرض '.raw' استفاده خواهد شد.

--بدون_بومی (و یا -nn):
دور زدن کامپایل کد بومی برخی از فایل های کلیدی که به صورت اکتشافی Dialyzer می شوند
هنگام دیالیز کردن بسیاری از فایل ها انجام می شود. این از زمان تدوین جلوگیری می کند اما ممکن است منجر شود
در زمان تحلیل (بسیار) طولانی تر.

--no_native_cache:
به طور پیش فرض، Dialyzer نتایج کامپایل بومی را در حافظه پنهان ذخیره می کند
$XDG_CACHE_HOME/erlang/dialyzer_hipe_cache دایرکتوری. XDG_CACHE_HOME پیش فرض به
$HOME/.cache. از این گزینه برای غیرفعال کردن کش استفاده کنید.

--مسیر کامل:
نمایش نام مسیرهای کامل فایل هایی که برای آنها اخطار صادر می شود.

--gui:
از رابط کاربری گرافیکی استفاده کنید.

توجه داشته باشید:
* نشان می دهد که وقوع چندگانه این گزینه ها امکان پذیر است.

** گزینه ها -D و -I هم از خط فرمان و هم در رابط کاربری گرافیکی Dialyzer کار کنید. نحو از
تعریف و شامل می شود همان چیزی است که توسط erlc.

گزینه های هشدار:

-برگشت:
اخطارها را برای توابعی که هرگز مقداری بر نمی گردند سرکوب کنید.

-بدون_استفاده نشده:
سرکوب هشدارها برای عملکردهای استفاده نشده

-Wno_inproper_lists:
هشدارهای مربوط به ساخت لیست های نامناسب را سرکوب کنید.

-برنامه_سرگرم کننده:
اخطارها را برای برنامه های سرگرم کننده ای که شکست می خورند سرکوب کنید.

-Wno_Match:
اخطارها را برای الگوهایی که استفاده نشده اند یا نمی توانند مطابقت داشته باشند سرکوب کنید.

-Wno_Opaque:
اخطارهای مربوط به نقض کدورت انواع داده را سرکوب کنید.

-بدون_فایل_تماس:
هشدارهای مربوط به تماس های ناموفق را سرکوب کنید.

-Wno_contracts:
هشدارهای مربوط به قراردادهای نامعتبر را متوقف کنید.

-بدون_رفتارها:
هشدارهای مربوط به تماس‌های رفتاری را که از توصیه‌های منتشر شده دور می‌شوند، سرکوب کنید
رابط ها

-نمی توانم تماس بگیرم:
هشدارهای مربوط به تماس با توابع از دست رفته را متوقف کنید.

-Wno_undefined_Callbacks:
هشدارهای مربوط به رفتارهایی را سرکوب کنید پاسخ به تماس صفات برای آنها
پاسخ به تماس ها

-Wunmatched_returns***:
شامل اخطارهایی برای فراخوانی تابعی که ارزش بازگشتی ساختاریافته را نادیده می گیرد یا نمی کند
با یکی از بسیاری از مقادیر بازگشتی ممکن مطابقت دارد.

-خطا_دستکاری***:
شامل هشدارهایی برای توابعی که فقط با استفاده از یک استثنا برمی گردند.

-Wrace_conditions***:
اخطارهایی را برای شرایط احتمالی مسابقه درج کنید. توجه داشته باشید که تجزیه و تحلیل است که داده ها را پیدا می کند
Races تجزیه و تحلیل جریان داده درون رویه ای را انجام می دهد و گاهی اوقات می تواند در زمان منفجر شود.
آن را با مسئولیت خود فعال کنید.

-Wunderspecs***:
در مورد توابع نامشخص هشدار دهید ( -spec به شدت مجازتر از
تایپ موفقیت آمیز).

-ناشناس***:
اجازه دهید هشدارهای مربوط به توابع و انواع ناشناخته بر وضعیت خروج از فرمان تأثیر بگذارد
نسخه خطی پیش فرض این است که هشدارهای مربوط به توابع و انواع ناشناخته را نادیده بگیرید
تنظیم وضعیت خروج هنگام استفاده از دیالایزر Erlang، هشدارهایی در مورد ناشناخته است
توابع و انواع برگردانده می شوند. پیش فرض این است که این هشدارها را بازنگردانید.

گزینه های زیر نیز موجود است اما استفاده از آنها توصیه نمی شود: (آنها هستند
بیشتر برای توسعه دهندگان Dialyzer و اشکال زدایی داخلی)

-Woverspecs***:
در مورد توابع بیش از حد مشخص شده هشدار دهید ( -spec به شدت کمتر از
تایپ موفقیت آمیز).

-Wspecdiffs***:
هنگامی که -spec متفاوت از تایپ موفقیت آمیز است، هشدار دهید.

توجه داشته باشید:
*** گزینه هایی را شناسایی می کند که هشدارها را به جای خاموش کردن آنها روشن می کنند.

استفاده كردن L' دیالیزور از ERLANG


همچنین می توانید از دیالایزر مستقیماً از ارلنگ استفاده کنید. هر دو نسخه رابط کاربری گرافیکی و خط فرمان
موجود هستند. گزینه ها مشابه مواردی هستند که از خط فرمان داده شده است، پس لطفاً
برای توضیح این موارد به بخش های بالا مراجعه کنید.

در حال درخواست OR سرکوب کردن هشدارها IN SOURCE فایل ها


La -dialyzer() ویژگی را می توان برای خاموش کردن هشدارها در یک ماژول با مشخص کردن استفاده کرد
توابع یا گزینه های هشدار به عنوان مثال، برای خاموش کردن همه هشدارها برای عملکرد F / 0,
شامل خط زیر باشد:

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

برای خاموش کردن هشدارها برای لیست های نامناسب، خط زیر را به فایل منبع اضافه کنید:

-dialyzer (no_inproper_lists).

La -dialyzer() ویژگی پس از اعلان تابع مجاز است. لیست گزینه های هشدار
یا توابع مجاز هستند:

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

گزینه های هشدار را می توان به عملکردها محدود کرد:

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

-dialyzer({[بدون_بازگشت، بدون_تطابق]، [g/0، h/0]}).

برای راهنمایی در مورد گزینه های هشدار استفاده کنید دیالیزر -کمک کن. گزینه ها نیز برشمرده شده است در زیر
(WarnOpts).

توجه داشته باشید:
La -dialyzer() ویژگی توسط کامپایلر Erlang بررسی نمی شود، بلکه توسط Dialyzer بررسی می شود
خود.

توجه داشته باشید:
گزینه هشدار -Wrace_conditions هنگامی که در فایل های منبع تنظیم می شود هیچ تاثیری ندارد.

La -dialyzer() ویژگی همچنین می تواند برای روشن کردن هشدارها استفاده شود. به عنوان مثال، اگر الف
ماژول در مورد بازده های بی همتا، با اضافه کردن خط، ثابت شده است

-dialyzer (بازگشت_ناهمسان).

می تواند کمک کند تا اطمینان حاصل شود که هیچ اخطار بازگشت بی همتا جدیدی معرفی نمی شود.

صادر کنندگان


gui () -> ok | {خطا، پیام}
gui (OptList) -> ok | {خطا، پیام}

انواع:

OptList - زیر را ببینید

نسخه رابط کاربری گرافیکی دیالایزر.

OptList :: [گزینه]
گزینه :: {files, [نام فایل :: string()]}
| {files_rec، [DirName :: string()]}
| {defines, [{Macro :: atom()، Value :: term()}]}
| {از، src_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'}
| {warnings, [WarnOpts]}
| {get_warnings, bool()}

WarnOpts :: no_return
| no_unused
| no_inproper_lists
| no_fun_app
| مطابقت ندارد
| بدون_مات
| no_fail_cal
| بدون_قراردادها
| بدون_رفتارها
| no_undefined_callbacks
| unmatched_returns
| error_handling
| مسابقه_شرایط
| بیش از حد
| زیر مشخصات
| specdiffs
| ناشناس

اجرا (OptList) -> هشدارها

انواع:

OptList -- به gui/0,1 مراجعه کنید
هشدارها - زیر را ببینید

نسخه خط فرمان دیالایزر.

هشدارها:: [{Tag, ID, Msg}]
برچسب :: 'warn_behaviour'
| 'warn_bin_construction'
| 'warn_callgraph'
| "warn_contract_not_equal"
| 'warn_contract_range'
| 'warn_contract_subtype'
| 'warn_contract_supertype'
| 'warn_contract_syntax'
| "انواع_قرارداد_اخطار"
| 'warn_failing_call'
| "warn_fun_app"
| "warn_matching"
| 'warn_non_proper_list'
| 'warn_not_led'
| 'warn_opaque'
| "warn_race_condition"
| 'warn_return_no_exit'
| 'warn_return_only_exit'
| 'warn_umatched_return'
| 'warn_undefined_callbacks'
| 'warn_unknown'
شناسه = {File :: string(), Line :: integer()}
Msg = msg() -- تعریف نشده

format_warning (پیام) -> رشته ()

انواع:

Msg = {Tag, Id, msg()} -- اجرا/1 را ببینید

یک رشته از هشدارها دریافت کنید که توسط dialyzer:run/1 برگردانده شده است.

plt_info(string()) -> {'خوب'، [{atom(), هر ()}]} | {'خطا'، atom()}

اطلاعات مربوط به plt مشخص شده را برمی گرداند.

با استفاده از خدمات onworks.net از دیالیز آنلاین استفاده کنید


سرورها و ایستگاه های کاری رایگان

دانلود برنامه های ویندوز و لینوکس

دستورات لینوکس

Ad