Skip to content

Commit 2281d25

Browse files
committed
Update the translation of "objects"
1 parent 18fde0b commit 2281d25

54 files changed

Lines changed: 118 additions & 118 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎c-api/arg.po‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -523,7 +523,7 @@ msgid "Create a new value based on a format string similar to those accepted by
523523
msgstr "یک مقدار جدید بر اساس یک رشته قالب‌بندی مشابه رشته‌های پذیرفته‌شده توسط خانواده‌ی توابع ``PyArg_Parse*`` و یک دنباله از مقادیر ایجاد می‌کند. مقدار یا ``NULL`` را در صورت وقوع خطا برمی‌گرداند؛ اگر ``NULL`` برگردانده شود، استثنا ایجاد خواهد شد."
524524

525525
msgid ":c:func:`Py_BuildValue` does not always build a tuple. It builds a tuple only if its format string contains two or more format units. If the format string is empty, it returns ``None``; if it contains exactly one format unit, it returns whatever object is described by that format unit. To force it to return a tuple of size 0 or one, parenthesize the format string."
526-
msgstr ":c:func:`Py_BuildValue` همیشه تاپل نمی‌سازد. این تابع تنها زمانی تاپل می‌سازد که رشته قالب‌بندی آن شامل دو واحد قالب‌بندی یا بیشتر باشد. اگر رشته قالب‌بندی خالی باشد، ``None`` برمی‌گرداند؛ و اگر دقیقاً یک واحد قالب‌بندی داشته باشد، هر شیئی را که آن واحد قالب‌بندی توصیف می‌کند برمی‌گرداند. برای وادار کردن آن به برگرداندن تاپلی با اندازه ۰ یا یک، رشته قالب‌بندی را داخل پرانتز قرار دهید."
526+
msgstr ":c:func:`Py_BuildValue` همیشه تاپل نمی‌سازد. این تابع تنها زمانی تاپل می‌سازد که رشته قالب‌بندی آن شامل دو واحد قالب‌بندی یا بیشتر باشد. اگر رشته قالب‌بندی خالی باشد، ``None`` برمی‌گرداند؛ و اگر دقیقاً یک واحد قالب‌بندی داشته باشد، هر شیء‌ای را که آن واحد قالب‌بندی توصیف می‌کند برمی‌گرداند. برای وادار کردن آن به برگرداندن تاپلی با اندازه ۰ یا یک، رشته قالب‌بندی را داخل پرانتز قرار دهید."
527527

528528
msgid "When memory buffers are passed as parameters to supply data to build objects, as for the ``s`` and ``s#`` formats, the required data is copied. Buffers provided by the caller are never referenced by the objects created by :c:func:`Py_BuildValue`. In other words, if your code invokes :c:func:`malloc` and passes the allocated memory to :c:func:`Py_BuildValue`, your code is responsible for calling :c:func:`free` for that memory once :c:func:`Py_BuildValue` returns."
529529
msgstr "هنگامی که بافرهای حافظه به‌عنوان پارامتر برای تأمین داده‌های ساخت اشیاء ارسال می‌شوند — مانند قالب‌های ``s`` و ``s#`` — داده‌های مورد نیاز کپی می‌شوند. اشیایی که :c:func:`Py_BuildValue` ایجاد می‌کند، هرگز به بافرهای فراهم‌شده توسط فراخوان‌کننده ارجاعی ندارند. به عبارت دیگر، اگر کد شما :c:func:`malloc` را فراخوانی کند و حافظه‌ی تخصیص‌یافته را به :c:func:`Py_BuildValue` منتقل کند، کد شما مسئول است که به‌محض بازگشت :c:func:`Py_BuildValue`، :c:func:`free` را برای آن حافظه فراخوانی کند."

‎c-api/buffer.po‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ msgid "Simple objects such as :class:`bytes` and :class:`bytearray` expose their
4747
msgstr "اشیاء ساده‌ای مانند :class:`bytes` و :class:`bytearray` بافر زیرین خود را به شکل بایت‌محور در دسترس قرار می‌دهند. شکل‌های دیگری نیز ممکن است؛ برای مثال، عناصری که یک :class:`array.array` در دسترس قرار می‌دهد می‌توانند مقادیر چندبایتی باشند."
4848

4949
msgid "An example consumer of the buffer interface is the :meth:`~io.BufferedIOBase.write` method of file objects: any object that can export a series of bytes through the buffer interface can be written to a file. While :meth:`!write` only needs read-only access to the internal contents of the object passed to it, other methods such as :meth:`~io.BufferedIOBase.readinto` need write access to the contents of their argument. The buffer interface allows objects to selectively allow or reject exporting of read-write and read-only buffers."
50-
msgstr "نمونه‌ای از مصرف‌کنندگان رابط بافر، متد :meth:`~io.BufferedIOBase.write` در شیءهای پرونده است: هر شیئی که بتواند دنباله‌ای از بایت‌ها را از طریق رابط بافر اکسپورت کند، می‌تواند در پرونده‌ای نوشته شود. در حالی که :meth:`!write` تنها به دسترسی فقط‌خواندنی به محتوای درونی شیئی که به آن پاس داده شده نیاز دارد، متدهای دیگری مانند :meth:`~io.BufferedIOBase.readinto` به دسترسی نوشتن به محتوای آرگومان خود نیاز دارند. رابط بافر به شیءها اجازه می‌دهد تا اکسپورت کردن بافرهای خواندنی-نوشتنی و فقط‌خواندنی را به‌صورت انتخابی بپذیرند یا رد کنند."
50+
msgstr "نمونه‌ای از مصرف‌کنندگان رابط بافر، متد :meth:`~io.BufferedIOBase.write` در شیءهای پرونده است: هر شیء‌ای که بتواند دنباله‌ای از بایت‌ها را از طریق رابط بافر اکسپورت کند، می‌تواند در پرونده‌ای نوشته شود. در حالی که :meth:`!write` تنها به دسترسی فقط‌خواندنی به محتوای درونی شیء‌ای که به آن پاس داده شده نیاز دارد، متدهای دیگری مانند :meth:`~io.BufferedIOBase.readinto` به دسترسی نوشتن به محتوای آرگومان خود نیاز دارند. رابط بافر به شیءها اجازه می‌دهد تا اکسپورت کردن بافرهای خواندنی-نوشتنی و فقط‌خواندنی را به‌صورت انتخابی بپذیرند یا رد کنند."
5151

5252
msgid "There are two ways for a consumer of the buffer interface to acquire a buffer over a target object:"
5353
msgstr "دو راه وجود دارد که مصرف‌کننده‌ی رابط بافر بتواند بافری را روی یک شیء هدف به دست آورد:"

‎c-api/call.po‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ msgid "Whenever they can do so cheaply (without additional allocation), callers
100100
msgstr "هرگاه بتوانند این کار را با هزینه‌ی اندکی انجام دهند (بدون تخصیص اضافی)، به فراخوان‌کنندگان توصیه می‌شود که از :c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET` استفاده کنند. انجام این کار به فراخوانی‌پذیرهایی مانند متدهای مقید اجازه می‌دهد تا فراخوانی‌های بعدی خود (که آرگومان *self* در ابتدای آن‌ها افزوده شده است) را به‌طور بسیار کارآمد انجام دهند."
101101

102102
msgid "To call an object that implements vectorcall, use a :ref:`call API <capi-call>` function as with any other callable. :c:func:`PyObject_Vectorcall` will usually be most efficient."
103-
msgstr "برای فراخوانی شیئی که vectorcall را پیاده‌سازی می‌کند، مانند هر فراخوانی‌پذیر دیگری از یک تابع :ref:`API فراخوانی <capi-call>` استفاده کنید. :c:func:`PyObject_Vectorcall` معمولاً کارآمدترین خواهد بود."
103+
msgstr "برای فراخوانی شیء‌ای که vectorcall را پیاده‌سازی می‌کند، مانند هر فراخوانی‌پذیر دیگری از یک تابع :ref:`API فراخوانی <capi-call>` استفاده کنید. :c:func:`PyObject_Vectorcall` معمولاً کارآمدترین خواهد بود."
104104

105105
msgid "Recursion Control"
106106
msgstr "کنترل بازگشت"
@@ -310,7 +310,7 @@ msgid "Regardless of which protocol is used internally, a conversion of argument
310310
msgstr "صرف‌نظر از اینکه کدام پروتکل به‌طور داخلی استفاده می‌شود، باید تبدیلی روی آرگومان‌ها انجام شود. بنابراین، این تابع تنها زمانی باید استفاده شود که فراخوان‌کننده از قبل دیکشنری آماده‌ای برای آرگومان‌های کلیدواژه‌ای داشته باشد، اما تاپلی برای آرگومان‌های جایگاهی نداشته باشد."
311311

312312
msgid "Call a method using the vectorcall calling convention. The name of the method is given as a Python string *name*. The object whose method is called is *args[0]*, and the *args* array starting at *args[1]* represents the arguments of the call. There must be at least one positional argument. *nargsf* is the number of positional arguments including *args[0]*, plus :c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET` if the value of ``args[0]`` may temporarily be changed. Keyword arguments can be passed just like in :c:func:`PyObject_Vectorcall`."
313-
msgstr "یک متد را با استفاده از قرارداد فراخوانی vectorcall فراخوانی کنید. نام متد به صورت رشته پایتون *name* داده می‌شود. شیئی که متد آن فراخوانی می‌شود *args[0]* است و آرایه *args* که از *args[1]* آغاز می‌شود، آرگومان‌های فراخوانی را نشان می‌دهد. باید حداقل یک آرگومان جایگاهی وجود داشته باشد. *nargsf* تعداد آرگومان‌های جایگاهی شامل *args[0]* است، به‌علاوه :c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET` در صورتی که مقدار ``args[0]`` ممکن است به‌طور موقت تغییر کند. آرگومان‌های کلیدواژه‌ای را می‌توان دقیقاً مشابه :c:func:`PyObject_Vectorcall` ارسال کرد."
313+
msgstr "یک متد را با استفاده از قرارداد فراخوانی vectorcall فراخوانی کنید. نام متد به صورت رشته پایتون *name* داده می‌شود. شیء‌ای که متد آن فراخوانی می‌شود *args[0]* است و آرایه *args* که از *args[1]* آغاز می‌شود، آرگومان‌های فراخوانی را نشان می‌دهد. باید حداقل یک آرگومان جایگاهی وجود داشته باشد. *nargsf* تعداد آرگومان‌های جایگاهی شامل *args[0]* است، به‌علاوه :c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET` در صورتی که مقدار ``args[0]`` ممکن است به‌طور موقت تغییر کند. آرگومان‌های کلیدواژه‌ای را می‌توان دقیقاً مشابه :c:func:`PyObject_Vectorcall` ارسال کرد."
314314

315315
msgid "If the object has the :c:macro:`Py_TPFLAGS_METHOD_DESCRIPTOR` feature, this will call the unbound method object with the full *args* vector as arguments."
316316
msgstr "اگر شیء قابلیت :c:macro:`Py_TPFLAGS_METHOD_DESCRIPTOR` را داشته باشد، این، شیء متد غیرمقید را با بردار کامل *args* به‌عنوان آرگومان‌ها فراخوانی می‌کند."

‎c-api/concrete.po‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ msgid "Concrete Objects Layer"
2626
msgstr "لایه اشیاء عینی"
2727

2828
msgid "The functions in this chapter are specific to certain Python object types. Passing them an object of the wrong type is not a good idea; if you receive an object from a Python program and you are not sure that it has the right type, you must perform a type check first; for example, to check that an object is a dictionary, use :c:func:`PyDict_Check`. The chapter is structured like the \"family tree\" of Python object types."
29-
msgstr "توابع این فصل مخصوص نوع‌های شیء خاصی از پایتون هستند. پاس دادن شیئی از نوع نادرست به آن‌ها ایده خوبی نیست؛ اگر شیئی را از یک برنامه پایتون دریافت می‌کنید و مطمئن نیستید که نوع درستی دارد، باید ابتدا یک بررسی نوع انجام دهید؛ برای مثال، برای بررسی اینکه شیئی دیکشنری است، از :c:func:`PyDict_Check` استفاده کنید. ساختار این فصل مانند «درخت خانوادگی» نوع‌های شیء پایتون است."
29+
msgstr "توابع این فصل مخصوص نوع‌های شیء خاصی از پایتون هستند. پاس دادن شیء‌ای از نوع نادرست به آن‌ها ایده خوبی نیست؛ اگر شیء‌ای را از یک برنامه پایتون دریافت می‌کنید و مطمئن نیستید که نوع درستی دارد، باید ابتدا یک بررسی نوع انجام دهید؛ برای مثال، برای بررسی اینکه شیء‌ای دیکشنری است، از :c:func:`PyDict_Check` استفاده کنید. ساختار این فصل مانند «درخت خانوادگی» نوع‌های شیء پایتون است."
3030

3131
msgid "While the functions described in this chapter carefully check the type of the objects which are passed in, many of them do not check for ``NULL`` being passed instead of a valid object. Allowing ``NULL`` to be passed in can cause memory access violations and immediate termination of the interpreter."
3232
msgstr "در حالی که توابع توصیف‌شده در این فصل نوع اشیایی را که به آن‌ها پاس داده می‌شود با دقت بررسی می‌کنند، بسیاری از آن‌ها بررسی نمی‌کنند که به جای یک شیء معتبر، ``NULL`` پاس داده شده باشد. اجازه‌ی پاس دادن ``NULL`` می‌تواند باعث نقض دسترسی به حافظه و خاتمه فوری مفسر شود."

‎c-api/dict.po‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ msgid "On the free-threaded build, this function can be used safely inside a cri
264264
msgstr "در نسخه‌ی نخ‌آزاد، می‌توان از این تابع به‌طور ایمن درون بخش بحرانی استفاده کرد. با این حال، ارجاع‌های برگردانده‌شده برای *pkey* و *pvalue* :term:`امانتی <borrowed reference>` هستند و تنها تا زمانی که بخش بحرانی برقرار است معتبرند. اگر نیاز دارید از این اشیاء خارج از بخش بحرانی یا در زمانی که بخش بحرانی ممکن است معلق شود استفاده کنید، یک :term:`ارجاع قوی <strong reference>` ایجاد کنید (برای مثال، با استفاده از :c:func:`Py_NewRef`)."
265265

266266
msgid "Iterate over mapping object *b* adding key-value pairs to dictionary *a*. *b* may be a dictionary, or any object supporting :c:func:`PyMapping_Keys` and :c:func:`PyObject_GetItem`. If *override* is true, existing pairs in *a* will be replaced if a matching key is found in *b*, otherwise pairs will only be added if there is not a matching key in *a*. Return ``0`` on success or ``-1`` if an exception was raised."
267-
msgstr "بر روی شیء نگاشت *b* پیمایش می‌کند و جفت‌های کلید-مقدار را به دیکشنری *a* اضافه می‌کند. *b* می‌تواند یک دیکشنری یا هر شیئی باشد که از :c:func:`PyMapping_Keys` و :c:func:`PyObject_GetItem` پشتیبانی کند. اگر *override* درست باشد، جفت‌های موجود در *a* در صورتی که کلید مطابقی در *b* یافت شود جایگزین می‌شوند، در غیر این صورت جفت‌ها تنها در صورتی اضافه می‌شوند که کلید مطابقی در *a* وجود نداشته باشد. در صورت موفقیت ``0`` و در صورت ایجاد استثنا ``-1`` بازگردانده می‌شود."
267+
msgstr "بر روی شیء نگاشت *b* پیمایش می‌کند و جفت‌های کلید-مقدار را به دیکشنری *a* اضافه می‌کند. *b* می‌تواند یک دیکشنری یا هر شیء‌ای باشد که از :c:func:`PyMapping_Keys` و :c:func:`PyObject_GetItem` پشتیبانی کند. اگر *override* درست باشد، جفت‌های موجود در *a* در صورتی که کلید مطابقی در *b* یافت شود جایگزین می‌شوند، در غیر این صورت جفت‌ها تنها در صورتی اضافه می‌شوند که کلید مطابقی در *a* وجود نداشته باشد. در صورت موفقیت ``0`` و در صورت ایجاد استثنا ``-1`` بازگردانده می‌شود."
268268

269269
msgid "In the :term:`free-threaded build`, when *b* is a :class:`dict` (with the standard iterator), both *a* and *b* are locked for the duration of the operation. When *b* is a non-dict mapping, only *a* is locked; *b* may be concurrently modified by another thread."
270270
msgstr "در :term:`free-threaded build`، وقتی *b* یک :class:`dict` (با پیمایش‌گر استاندارد) باشد، هر دو *a* و *b* در طول عملیات قفل می‌شوند. وقتی *b* یک نگاشت غیردیکشنری باشد، فقط *a* قفل می‌شود؛ *b* ممکن است توسط نخ دیگری به‌طور هم‌زمان تغییر یابد."

0 commit comments

Comments
 (0)