.\" Man page generated from reStructuredText .\" by the Docutils 0.23 manpage writer. . . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .TH "LLVM-CXXMAP" "1" "2026-07-15" "22" "LLVM" .SH "نام (NAME)" llvm-cxxmap \- ابزار نگاشت مجدد نام‌های درهم‌ریخته .SH "خلاصه دستور (SYNOPSIS)" .sp \fBllvm\-cxxmap\fP [\fIگزینه‌ها\fP] \fIsymbol\-file\-1\fP \fIsymbol\-file\-2\fP .SH "توضیحات (DESCRIPTION)" .sp ابزار \fBllvm\-cxxmap\fP تطبیق تقریبی (fuzzy matching) نام‌های درهم‌ریختهٔ ++C را بر اساس فایلی انجام می‌دهد که مؤلفه‌های معادل نام‌ها را توصیف می‌کند. .sp فایل‌های نماد باید شامل فهرستی از نام‌های درهم‌ریختهٔ ++C باشند (یک نام در هر خط). خطوط خالی و خطوطی که با \fB#\fP شروع می‌شوند نادیده گرفته می‌شوند. خروجی، فهرستی از جفت‌نمادهای معادل است (یک جفت در هر خط)، به این صورت: .INDENT 0.0 .INDENT 3.5 .sp .EX .EE .UNINDENT .UNINDENT .sp که در آن \fB\fP نمادی از \fIsymbol\-file\-1\fP و \fB\fP نمادی از \fIsymbol\-file\-2\fP است. نگاشت‌هایی که در آن‌ها هر دو نماد یکسان باشند حذف می‌شوند. .SH "گزینه‌ها (OPTIONS)" .INDENT 0.0 .TP .B \-remapping\-file=file, \-r=file مشخص کردن فایلی شامل فهرستی از قوانین هم‌ارزی که باید برای تعیین معادل بودن دو نماد استفاده شود. الزامی است. بخش «فایل نگاشت مجدد (REMAPPING FILE)» را ببینید. .UNINDENT .INDENT 0.0 .TP .B \-output=file, \-o=file مشخص کردن فایلی برای نوشتن فهرست نام‌های تطبیق‌یافته در آن. در صورت عدم تعیین، این فهرست در خروجی استاندارد (stdout) نوشته خواهد شد. .UNINDENT .INDENT 0.0 .TP .B \-Wambiguous در صورتی که چندین نماد معادل (اما متمایز) در \fIsymbol\-file\-2\fP وجود داشته باشد، یک هشدار صادر می‌کند. .UNINDENT .INDENT 0.0 .TP .B \-Wincomplete در صورتی که \fIsymbol\-file\-1\fP حاوی نمادی باشد که هیچ نماد معادلی برای آن در \fIsymbol\-file\-2\fP وجود ندارد، یک هشدار صادر می‌کند. .UNINDENT .SH "فایل نگاشت مجدد (REMAPPING FILE)" .sp فایل نگاشت مجدد یک فایل متنی شامل خطوطی با ساختار زیر است: .INDENT 0.0 .INDENT 3.5 .sp .EX fragmentkind fragment1 fragment2 .EE .UNINDENT .UNINDENT .sp که در آن \fBfragmentkind\fP یکی از مقادیر \fBname\fP، \fBtype\fP یا \fBencoding\fP است که مشخص می‌کند آیا قطعات نام درهم‌ریختهٔ بعدی به ترتیب از نوع >، > یا > هستند یا خیر. خطوط خالی و خطوطی که با \fB#\fP شروع می‌شوند نادیده گرفته می‌شوند. .sp نام‌های C درهم‌ریخته‌نشده (Unmangled) را می‌توان به صورت یک \fBencoding\fP که یک > (دارای پیشوند طول) است بیان کرد: .INDENT 0.0 .INDENT 3.5 .sp .EX # C function \(dqvoid foo_bar()\(dq is remapped to C++ function \(dqvoid foo::bar()\(dq. encoding 7foo_bar _Z3foo3barv .EE .UNINDENT .UNINDENT .sp برای سهولت کار، جایگزینی‌های درونی (built\-in s) مانند \fBSt\fP و \fBSs\fP به عنوان پذیرفته می‌شوند (اگرچه از نظر فنی نیستند). .sp به عنوان مثال، برای مشخص کردن اینکه \fBabsl::string_view\fP و \fBstd::string_view\fP باید معادل یکدیگر در نظر گرفته شوند، می‌توان از فایل نگاشت مجدد زیر استفاده کرد: .INDENT 0.0 .INDENT 3.5 .sp .EX # absl::string_view is considered equivalent to std::string_view type N4absl11string_viewE St17basic_string_viewIcSt11char_traitsIcEE # std:: might be std::__1:: in libc++ or std::__cxx11:: in libstdc++ name St St3__1 name St St7__cxx11 .EE .UNINDENT .UNINDENT .sp \fBنکته:\fP .INDENT 0.0 .INDENT 3.5 نگاشت مجدد نمادها در حال حاضر فقط برای نام‌های درهم‌ریختهٔ ++C که از طرح درهم‌ریزی Itanium C++ ABI پیروی می‌کنند پشتیبانی می‌شود. این شامل تمام مقصدهای ++C پشتیبانی‌شده توسط Clang به‌جز مقصدهای ویندوز است. .UNINDENT .UNINDENT .SH "نویسنده (AUTHOR)" توسعه و نگهداری توسط تیم LLVM (https://llvm.org). .SH "حق نشر (COPYRIGHT)" 2003-2026, پروژه LLVM .\" End of generated man page.