.\" Generated by scdoc 1.11.4 .\" Complete documentation for this program is not available as a GNU info page .ie \n(.g .ds Aq \(aq .el .ds Aq ' .nh .ad l .\" Begin generated content: .TH "haredoc" "5" "2026-06-01" .PP .SH "نام (NAME)" haredoc \- قالب پرونده مستندات زبان Hare .PP .SH "توضیحات (DESCRIPTION)" .PP مستندات زبان Hare در یک زبان نشانه‌گذاری ساده نوشته می‌شوند.\& به‌طور پیش‌فرض، .BR haredoc (1) مستندات را بدون هیچ‌گونه قالب‌بندی اضافی و به‌شکل تحت‌اللفظی نمایش می‌دهد.\& سایر ابزارها ممکن است مستندات Hare را به قالب‌های دیگری تبدیل کنند.\& .PP متن را می‌توان به‌طور معمول نوشت و برای رعایت محدودیت ۸۰ ستون، آن را به چند خط تقسیم کرد.\& برای شروع یک بند (پاراگراف) جدید، یک خط خالی وارد کنید.\& .PP ارجاعات به سایر اعلان‌ها و ماژول‌ها را می‌توان در قلاب‌ها (کروشه‌ها) نوشت، مانند: [[os::stdout]].\& ارجاعات به ماژول‌ها باید شامل یک :: پایانی در شناسه باشند: [[os::exec::]].\& .PP یک فهرست نشانه‌دار را می‌توان با شروع یک خط با "-"، اختیاری همراه با یک فاصله قبل از آن، آغاز کرد.\& هر خطی که به این شکل آغاز شود یک مورد جدید در فهرست ایجاد می‌کند.\& برای پایان دادن به فهرست، یک خط خالی وارد کنید.\& .PP نمونه‌های کد را می‌توان با شروع خط با یک نویسه تب (tab)، اختیاری همراه با یک فاصله قبل از آن، به کار برد.\& .PP این زبان نشانه‌گذاری از کامنت‌های Hare که پیش از نمادهای خروجی‌گرفته (اکسپورت‌شده) در کد منبع شما قرار دارند، و همچنین از فایلی به نام "README" در پوشه ماژول شما، در صورت وجود، استخراج می‌شود.\& .PP .SH "پرونده راهنما (README)" .PP فایلی به نام "README" در ریشه پوشه یک ماژول Hare به‌عنوان خلاصه‌ای از کل ماژول به کار می‌رود.\& این فایل باید با یک خلاصه کوتاه تک‌خطی از ماژول با استفاده از نام ماژول (آخرین بخش در شناسه آن)، یک دونقطه، یک فاصله و یک خلاصه آغاز شود، به‌صورت زیر: .PP .nf .RS 4 memio: memory-backed I/O functions .fi .RE .PP در ادامه می‌تواند یک خط خالی و سپس خلاصه‌ای مفصل از ماژول با استفاده از قالب مستندسازی شرح داده شده در بالا قرار گیرد.\& .PP .SH "مثال (EXAMPLE)" .PP .nf .RS 4 // Foos the bars\&. See also [[foobar]]\&. // // If you instead want to bar the foos, use one of the functions in // [[bar::foo::]]\&. // // - First, the bars are obtained\&. // - They are then fooed\&. // - Finally, the result is returned\&. // // let x = example(); // assert(x == 0); export fn example() int = 0; .fi .RE .PP .SH "نکات (NOTES)" .PP انتظار می‌رود ابزارهایی که مستندات را به‌منظور تبدیل به قالبی دیگر تجزیه (parse) می‌کنند، پردازش‌های اضافی انجام دهند تا محتوا از بازنمایی متنی اولیه‌اش جدا شود: .PP .PD 0 .IP \(bu 4 شکست‌های خط در داخل یک پاراگراف یا مورد فهرست باید نادیده گرفته شوند.\& .IP \(bu 4 فاصله‌های خالی مکرر در خارج از یک نمونه کد باید فشرده (ادغام) شوند.\& .IP \(bu 4 چندین نمونه کد که با خطوط خالی جدا شده‌اند باید در یک نمونه کد ادغام شوند، به‌طوری که خطوط خالی به درون خود نمونه کد منتقل گردند.\& .PD .PP بخش \fBhare::parse::doc::\fR در کتابخانه استاندارد تمامی این پردازش‌ها را برای شما انجام می‌دهد.\& .PP تجزیه‌کننده‌ها مجازند (و تشویق می‌شوند) در مواجهه با ورودی‌های نامعتبر، مانند یک [[reference]] بدفرم یا پایان‌نیافته، با خطا متوقف شوند.\& .PP .SH "همچنین ببینید (SEE ALSO)" .PP .BR haredoc (1)