اشیاء تولیدگر¶
اشیاء تولیدگر همان چیزی هستند که پایتون برای پیادهسازی پیمایشگرهای تولیدگر از آنها استفاده میکند. این اشیاء معمولاً با پیمایش کردن تابعی که مقادیر را بازدهی (yield) میکند ایجاد میشوند، نه با فراخوانی صریح PyGen_New() یا PyGen_NewWithQualName().
-
type PyGenObject¶
ساختار C استفادهشده برای اشیاء تولیدگر.
-
PyTypeObject PyGen_Type¶
شیء نوعِ متناظر با شیءهای تولیدگر.
-
int PyGen_Check(PyObject *ob)¶
اگر ob یک شیء تولیدگر باشد، مقدار true را برمیگرداند؛ ob نباید NULL باشد. این تابع همیشه با موفقیت انجام میشود.
-
int PyGen_CheckExact(PyObject *ob)¶
اگر نوع ob برابر PyGen_Type باشد، مقدار true برمیگرداند؛ ob نباید NULL باشد. این تابع همیشه با موفقیت اجرا میشود.
-
PyObject *PyGen_New(PyFrameObject *frame)¶
- مقدار بازگشتی: مرجع جدید.
یک شیء تولیدگر جدید بر اساس شیء frame ایجاد کرده و برمیگرداند. ارجاعی به frame توسط این تابع «دزدیده» میشود (حتی در صورت بروز خطا). این آرگومان نباید NULL باشد.
-
PyObject *PyGen_NewWithQualName(PyFrameObject *frame, PyObject *name, PyObject *qualname)¶
- مقدار بازگشتی: مرجع جدید.
یک شیء تولیدگر جدید بر اساس شیء frame ایجاد میکند و برمیگرداند که __name__ و __qualname__ آن روی name و qualname تنظیم شدهاند. ارجاعی به frame توسط این تابع «دزدیده» میشود (حتی در صورت خطا). آرگومان frame نباید NULL باشد.
-
PyCodeObject *PyGen_GetCode(PyGenObject *gen)¶
یک ارجاع قوی جدید به شیء کدی که توسط gen دربرگرفتهشده است، برمیگرداند. این تابع همیشه با موفقیت انجام میشود.
اشیاء تولیدگر ناهمگام¶
-
PyTypeObject PyAsyncGen_Type¶
شیء نوعِ متناظر با شیءهای تولیدگر ناهمگام. این در لایهی پایتون بهصورت types.AsyncGeneratorType دسترسپذیر است.
-
PyObject *PyAsyncGen_New(PyFrameObject *frame, PyObject *name, PyObject *qualname)¶
ایجادکنندهی یک تولیدگر ناهمگام جدید است که frame را دربر میگیرد و مقدارهای __name__ و __qualname__ آن را بهترتیب روی name و qualname تنظیم میکند. frame توسط این تابع (ربودهشده) محسوب میشود (حتی در صورت بروز خطا) و نباید NULL باشد.
در صورت موفقیت، این تابع یک ارجاع قوی به تولیدگر ناهمگام جدید برمیگرداند. در صورت شکست، این تابع NULL را همراه با یک استثنای تنظیمشده برمیگرداند.
-
int PyAsyncGen_CheckExact(PyObject *op)¶
اگر op یک شیء تولیدگر ناهمگام باشد، true برمیگرداند و در غیر این صورت false. این تابع همیشه موفق میشود.
API منسوخ¶
-
PyAsyncGenASend_CheckExact(op)¶
این یک API است که به اشتباه در C API پایتون گنجانده شده بود.
این تنها برای کامل بودن اینجا قرار گرفته است؛ از این API استفاده نکنید.
©
حق نشر 2001 Python Software Foundation.
این صفحه تحت مجوز بنیاد نرمافزار پایتون نسخه ۲ منتشر شده است.
مثالها، دستورالعملها، و سایر کدهای موجود در مستندات همچنین تحت مجوز بدون بند BSD منتشر شدهاند.
برای اطلاعات بیشتر به
تاریخچه و مجوز مراجعه کنید.
بنیاد نرمافزار پایتون یک شرکت غیرانتفاعی است.
لطفاً کمک مالی کنید.
آخرین بهروزرسانی در نوامبر 12, 2026 (06:19 UTC).
آیا
اشکالی یافتید؟
ساخته شده با
Sphinx 9.1.0.