.\"************************************************************************** .\"* * .\"* OCaml * .\"* * .\"* Xavier Leroy, projet Cristal, INRIA Rocquencourt * .\"* * .\"* Copyright 1996 Institut National de Recherche en Informatique et * .\"* en Automatique. * .\"* * .\"* All rights reserved. This file is distributed under the terms of * .\"* the GNU Lesser General Public License version 2.1, with the * .\"* special exception on linking described in the file LICENSE. * .\"* * .\"************************************************************************** .\" .TH OCAMLYACC 1 .SH "نام (NAME)" ocamlyacc \- مولد تجزیه‌کننده برای OCaml .SH "خلاصه دستور (SYNOPSIS)" .B ocamlyacc [ .BI \-b " prefix" ] [ .B \-q ] [ .B \-v ] [ .B \-version ] [ .B \-vnum ] .I filename.mly .SH "توضیحات (DESCRIPTION)" دستور .BR ocamlyacc (1) یک تجزیه‌کننده (parser) را از مشخصات گرامر مستقل از متن LALR(1) به همراه کنش‌های معنایی، به سبک .BR yacc (1) تولید می‌کند. با فرض اینکه فایل ورودی .IR grammar \&.mly باشد، اجرای .B ocamlyacc کد OCaml یک تجزیه‌کننده را در فایل .IR grammar \&.ml و واسط آن را در فایل .IR grammar \&.mli تولید می‌کند. ماژول تولیدشده به ازای هر نقطهٔ ورود (entry point) در گرامر، یک تابع تجزیه تعریف می‌کند. این توابع همنام با نقاط ورود هستند. توابع تجزیه یک تحلیل‌گر لغوی (تابعی از بافرهای لکسر به توکن‌ها) و یک بافر تحلیل‌گر لغوی (lexer buffer) را به‌عنوان آرگومان دریافت کرده و صفت معنایی مربوط به نقطهٔ ورود متناظر را برمی‌گردانند. توابع تحلیل‌گر لغوی معمولاً از یک مشخصات لغوی توسط برنامهٔ .BR ocamllex (1) تولید می‌شوند. بافرهای لکسر یک نوع دادهٔ انتزاعی هستند که در ماژول Lexing از کتابخانهٔ استاندارد پیاده‌سازی شده‌اند. توکن‌ها مقادیری از نوع ملموس token هستند که در فایل واسط .IR grammar \&.mli تولیدشده توسط .BR ocamlyacc (1) تعریف می‌شوند. .SH "گزینه‌ها (OPTIONS)" دستور .BR ocamlyacc (1) گزینه‌های زیر را می‌شناسد: .TP .BI \-b " prefix" نام‌گذاری فایل‌های خروجی به‌صورت .IR prefix \&.ml ، .IR prefix \&.mli و .IR prefix \&.output ، به‌جای قاعدهٔ نام‌گذاری پیش‌فرض. .TP .B \-q این گزینه هیچ اثری ندارد. .TP .B \-\-strict رد کردن گرامرهایی که دارای تداخل (conflict) هستند. .TP .B \-v تولید توصیفی از جدول‌های تجزیه و گزارشی از تداخل‌های ناشی از ابهام در گرامر. این توضیحات در فایل .IR grammar .output قرار می‌گیرند. .TP .B \-version چاپ نسخه و خروج. .TP .B \-vnum چاپ شماره نسخهٔ کوتاه و خروج. .TP .B \- خواندن مشخصات گرامر از ورودی استاندارد. نام‌های پیش‌فرض فایل‌های خروجی .IR stdin.ml " و " stdin.mli خواهند بود. .TP .BI \-\- " file" پردازش .I file به‌عنوان مشخصات گرامر، حتی اگر نام آن با نویسهٔ خط تیره (-) شروع شود. این گزینه باید آخرین گزینه در خط فرمان باشد. .SH "همچنین ببینید (SEE ALSO)" .BR ocamllex (1). .br .IR The\ OCaml\ user's\ manual ، فصل \(lqLexer and parser generators\(rq.