66msgstr ""
77"Project-Id-Version :Python 3.13\n "
88"Report-Msgid-Bugs-To :\n "
9- "POT-Creation-Date :2024-12-01 15:01 +0000\n "
9+ "POT-Creation-Date :2025-03-18 00:14 +0000\n "
1010"PO-Revision-Date :2015-12-09 17:51+0000\n "
1111"Last-Translator :Liang-Bo Wang <me@liang2.tw>\n "
1212"Language-Team :Chinese - TAIWAN (https://github.com/python/python-docs-zh- "
@@ -450,20 +450,22 @@ msgid ""
450450"If negative, the absolute value specifies how much space instances of the "
451451"class need *in addition* to the superclass. Use :c:func:"
452452"`PyObject_GetTypeData` to get a pointer to subclass-specific memory reserved "
453- "this way."
453+ "this way. For negative :c:member:`!basicsize`, Python will insert padding "
454+ "when needed to meet :c:member:`~PyTypeObject.tp_basicsize`'s alignment "
455+ "requirements."
454456msgstr ""
455457
456- #: ../../c-api/type.rst:418
458+ #: ../../c-api/type.rst:421
457459msgid "Previously, this field could not be negative."
458460msgstr ""
459461
460- #: ../../c-api/type.rst:422
462+ #: ../../c-api/type.rst:425
461463msgid ""
462464"Size of one element of a variable-size type, in bytes. Used to set :c:member:"
463465"`PyTypeObject.tp_itemsize`. See ``tp_itemsize`` documentation for caveats."
464466msgstr ""
465467
466- #: ../../c-api/type.rst:426
468+ #: ../../c-api/type.rst:429
467469msgid ""
468470"If zero, :c:member:`~PyTypeObject.tp_itemsize` is inherited. Extending "
469471"arbitrary variable-sized classes is dangerous, since some types use a fixed "
@@ -472,154 +474,154 @@ msgid ""
472474"only possible in the following situations:"
473475msgstr ""
474476
475- #: ../../c-api/type.rst:433
477+ #: ../../c-api/type.rst:436
476478msgid ""
477479"The base is not variable-sized (its :c:member:`~PyTypeObject.tp_itemsize`)."
478480msgstr ""
479481
480- #: ../../c-api/type.rst:435
482+ #: ../../c-api/type.rst:438
481483msgid ""
482484"The requested :c:member:`PyType_Spec.basicsize` is positive, suggesting that "
483485"the memory layout of the base class is known."
484486msgstr ""
485487
486- #: ../../c-api/type.rst:437
488+ #: ../../c-api/type.rst:440
487489msgid ""
488490"The requested :c:member:`PyType_Spec.basicsize` is zero, suggesting that the "
489491"subclass does not access the instance's memory directly."
490492msgstr ""
491493
492- #: ../../c-api/type.rst:440
494+ #: ../../c-api/type.rst:443
493495msgid "With the :c:macro:`Py_TPFLAGS_ITEMS_AT_END` flag."
494496msgstr ""
495497
496- #: ../../c-api/type.rst:444
498+ #: ../../c-api/type.rst:447
497499msgid "Type flags, used to set :c:member:`PyTypeObject.tp_flags`."
498500msgstr ""
499501
500- #: ../../c-api/type.rst:446
502+ #: ../../c-api/type.rst:449
501503msgid ""
502504"If the ``Py_TPFLAGS_HEAPTYPE`` flag is not set, :c:func:"
503505"`PyType_FromSpecWithBases` sets it automatically."
504506msgstr ""
505507
506- #: ../../c-api/type.rst:451
508+ #: ../../c-api/type.rst:454
507509msgid ""
508510"Array of :c:type:`PyType_Slot` structures. Terminated by the special slot "
509511"value ``{0, NULL}``."
510512msgstr ""
511513
512- #: ../../c-api/type.rst:454
514+ #: ../../c-api/type.rst:457
513515msgid "Each slot ID should be specified at most once."
514516msgstr ""
515517
516- #: ../../c-api/type.rst:464
518+ #: ../../c-api/type.rst:467
517519msgid ""
518520"Structure defining optional functionality of a type, containing a slot ID "
519521"and a value pointer."
520522msgstr ""
521523
522- #: ../../c-api/type.rst:469
524+ #: ../../c-api/type.rst:472
523525msgid "A slot ID."
524526msgstr ""
525527
526- #: ../../c-api/type.rst:471
528+ #: ../../c-api/type.rst:474
527529msgid ""
528530"Slot IDs are named like the field names of the structures :c:type:"
529531"`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:"
530532"type:`PyMappingMethods` and :c:type:`PyAsyncMethods` with an added ``Py_`` "
531533"prefix. For example, use:"
532534msgstr ""
533535
534- #: ../../c-api/type.rst:477
536+ #: ../../c-api/type.rst:480
535537msgid "``Py_tp_dealloc`` to set :c:member:`PyTypeObject.tp_dealloc`"
536538msgstr ""
537539
538- #: ../../c-api/type.rst:478
540+ #: ../../c-api/type.rst:481
539541msgid "``Py_nb_add`` to set :c:member:`PyNumberMethods.nb_add`"
540542msgstr ""
541543
542- #: ../../c-api/type.rst:479
544+ #: ../../c-api/type.rst:482
543545msgid "``Py_sq_length`` to set :c:member:`PySequenceMethods.sq_length`"
544546msgstr ""
545547
546- #: ../../c-api/type.rst:481
548+ #: ../../c-api/type.rst:484
547549msgid ""
548550"The following “offset” fields cannot be set using :c:type:`PyType_Slot`:"
549551msgstr ""
550552
551- #: ../../c-api/type.rst:483
553+ #: ../../c-api/type.rst:486
552554msgid ""
553555":c:member:`~PyTypeObject.tp_weaklistoffset` (use :c:macro:"
554556"`Py_TPFLAGS_MANAGED_WEAKREF` instead if possible)"
555557msgstr ""
556558
557- #: ../../c-api/type.rst:485
559+ #: ../../c-api/type.rst:488
558560msgid ""
559561":c:member:`~PyTypeObject.tp_dictoffset` (use :c:macro:"
560562"`Py_TPFLAGS_MANAGED_DICT` instead if possible)"
561563msgstr ""
562564":c:member:`~PyTypeObject.tp_dictoffset`\\ (如果可能,請改用 :c:macro:"
563565"`Py_TPFLAGS_MANAGED_DICT`)"
564566
565- #: ../../c-api/type.rst:487
567+ #: ../../c-api/type.rst:490
566568msgid ""
567569":c:member:`~PyTypeObject.tp_vectorcall_offset` (use "
568570"``\" __vectorcalloffset__\" `` in :ref:`PyMemberDef <pymemberdef-offsets>`)"
569571msgstr ""
570572":c:member:`~PyTypeObject.tp_vectorcall_offset`\\ (請用 :ref:`PyMemberDef "
571573"<pymemberdef-offsets>` 中的 ``\" __vectorcalloffset__\" ``)"
572574
573- #: ../../c-api/type.rst:491
575+ #: ../../c-api/type.rst:494
574576msgid ""
575577"If it is not possible to switch to a ``MANAGED`` flag (for example, for "
576578"vectorcall or to support Python older than 3.12), specify the offset in :c:"
577579"member:`Py_tp_members <PyTypeObject.tp_members>`. See :ref:`PyMemberDef "
578580"documentation <pymemberdef-offsets>` for details."
579581msgstr ""
580582
581- #: ../../c-api/type.rst:497
583+ #: ../../c-api/type.rst:500
582584msgid "The following fields cannot be set at all when creating a heap type:"
583585msgstr ""
584586
585- #: ../../c-api/type.rst:499
587+ #: ../../c-api/type.rst:502
586588msgid ""
587589":c:member:`~PyTypeObject.tp_vectorcall` (use :c:member:`~PyTypeObject."
588590"tp_new` and/or :c:member:`~PyTypeObject.tp_init`)"
589591msgstr ""
590592
591- #: ../../c-api/type.rst:503
593+ #: ../../c-api/type.rst:506
592594msgid ""
593595"Internal fields: :c:member:`~PyTypeObject.tp_dict`, :c:member:`~PyTypeObject."
594596"tp_mro`, :c:member:`~PyTypeObject.tp_cache`, :c:member:`~PyTypeObject."
595597"tp_subclasses`, and :c:member:`~PyTypeObject.tp_weaklist`."
596598msgstr ""
597599
598- #: ../../c-api/type.rst:510
600+ #: ../../c-api/type.rst:513
599601msgid ""
600602"Setting :c:data:`Py_tp_bases` or :c:data:`Py_tp_base` may be problematic on "
601603"some platforms. To avoid issues, use the *bases* argument of :c:func:"
602604"`PyType_FromSpecWithBases` instead."
603605msgstr ""
604606
605- #: ../../c-api/type.rst:515
607+ #: ../../c-api/type.rst:518
606608msgid "Slots in :c:type:`PyBufferProcs` may be set in the unlimited API."
607609msgstr ""
608610
609- #: ../../c-api/type.rst:518
611+ #: ../../c-api/type.rst:521
610612msgid ""
611613":c:member:`~PyBufferProcs.bf_getbuffer` and :c:member:`~PyBufferProcs."
612614"bf_releasebuffer` are now available under the :ref:`limited API <limited-c-"
613615"api>`."
614616msgstr ""
615617
616- #: ../../c-api/type.rst:525
618+ #: ../../c-api/type.rst:528
617619msgid ""
618620"The desired value of the slot. In most cases, this is a pointer to a "
619621"function."
620622msgstr ""
621623
622- #: ../../c-api/type.rst:528
624+ #: ../../c-api/type.rst:531
623625msgid "Slots other than ``Py_tp_doc`` may not be ``NULL``."
624626msgstr ""
625627