# Copyright (C) 2001-2018, Python Software Foundation # For licence information, see README file. # msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-15 22:33+0100\n" "PO-Revision-Date: 2018-02-15 00:33+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: c-api/type.rst:6 msgid "Type Objects" msgstr "Objets type" #: c-api/type.rst:13 msgid "The C structure of the objects used to describe built-in types." msgstr "" #: c-api/type.rst:18 msgid "" "This is the type object for type objects; it is the same object as :class:" "`type` in the Python layer." msgstr "" #: c-api/type.rst:24 msgid "" "Return non-zero if the object *o* is a type object, including instances of " "types derived from the standard type object. Return 0 in all other cases. " "This function always succeeds." msgstr "" #: c-api/type.rst:31 msgid "" "Return non-zero if the object *o* is a type object, but not a subtype of the " "standard type object. Return 0 in all other cases. This function always " "succeeds." msgstr "" #: c-api/type.rst:38 msgid "Clear the internal lookup cache. Return the current version tag." msgstr "" #: c-api/type.rst:42 msgid "" "Return the :c:member:`~PyTypeObject.tp_flags` member of *type*. This " "function is primarily meant for use with ``Py_LIMITED_API``; the individual " "flag bits are guaranteed to be stable across Python releases, but access to :" "c:member:`~PyTypeObject.tp_flags` itself is not part of the limited API." msgstr "" #: c-api/type.rst:49 msgid "The return type is now ``unsigned long`` rather than ``long``." msgstr "" #: c-api/type.rst:55 msgid "" "Invalidate the internal lookup cache for the type and all of its subtypes. " "This function must be called after any manual modification of the attributes " "or base classes of the type." msgstr "" #: c-api/type.rst:62 msgid "" "Return non-zero if the type object *o* sets the feature *feature*. Type " "features are denoted by single bit flags." msgstr "" #: c-api/type.rst:68 msgid "" "Return true if the type object includes support for the cycle detector; this " "tests the type flag :const:`Py_TPFLAGS_HAVE_GC`." msgstr "" #: c-api/type.rst:74 msgid "Return true if *a* is a subtype of *b*." msgstr "" #: c-api/type.rst:76 msgid "" "This function only checks for actual subtypes, which means that :meth:" "`~class.__subclasscheck__` is not called on *b*. Call :c:func:" "`PyObject_IsSubclass` to do the same check that :func:`issubclass` would do." msgstr "" #: c-api/type.rst:84 msgid "" "Generic handler for the :c:member:`~PyTypeObject.tp_alloc` slot of a type " "object. Use Python's default memory allocation mechanism to allocate a new " "instance and initialize all its contents to ``NULL``." msgstr "" #: c-api/type.rst:90 msgid "" "Generic handler for the :c:member:`~PyTypeObject.tp_new` slot of a type " "object. Create a new instance using the type's :c:member:`~PyTypeObject." "tp_alloc` slot." msgstr "" #: c-api/type.rst:95 msgid "" "Finalize a type object. This should be called on all type objects to finish " "their initialization. This function is responsible for adding inherited " "slots from a type's base class. Return ``0`` on success, or return ``-1`` " "and sets an exception on error." msgstr "" #: c-api/type.rst:101 msgid "" "If some of the base classes implements the GC protocol and the provided type " "does not include the :const:`Py_TPFLAGS_HAVE_GC` in its flags, then the GC " "protocol will be automatically implemented from its parents. On the " "contrary, if the type being created does include :const:`Py_TPFLAGS_HAVE_GC` " "in its flags then it **must** implement the GC protocol itself by at least " "implementing the :c:member:`~PyTypeObject.tp_traverse` handle." msgstr "" #: c-api/type.rst:111 msgid "" "Return the type's name. Equivalent to getting the type's ``__name__`` " "attribute." msgstr "" #: c-api/type.rst:117 msgid "" "Return the type's qualified name. Equivalent to getting the type's " "``__qualname__`` attribute." msgstr "" #: c-api/type.rst:124 msgid "" "Return the function pointer stored in the given slot. If the result is " "``NULL``, this indicates that either the slot is ``NULL``, or that the " "function was called with invalid parameters. Callers will typically cast the " "result pointer into the appropriate function type." msgstr "" #: c-api/type.rst:130 msgid "" "See :c:member:`PyType_Slot.slot` for possible values of the *slot* argument." msgstr "" #: c-api/type.rst:134 msgid "" ":c:func:`PyType_GetSlot` can now accept all types. Previously, it was " "limited to :ref:`heap types `." msgstr "" #: c-api/type.rst:140 msgid "" "Return the module object associated with the given type when the type was " "created using :c:func:`PyType_FromModuleAndSpec`." msgstr "" #: c-api/type.rst:163 msgid "" "If no module is associated with the given type, sets :py:class:`TypeError` " "and returns ``NULL``." msgstr "" #: c-api/type.rst:146 msgid "" "This function is usually used to get the module in which a method is " "defined. Note that in such a method, ``PyType_GetModule(Py_TYPE(self))`` may " "not return the intended result. ``Py_TYPE(self)`` may be a *subclass* of the " "intended class, and subclasses are not necessarily defined in the same " "module as their superclass. See :c:type:`PyCMethod` to get the class that " "defines the method. See :c:func:`PyType_GetModuleByDef` for cases when " "``PyCMethod`` cannot be used." msgstr "" #: c-api/type.rst:159 msgid "" "Return the state of the module object associated with the given type. This " "is a shortcut for calling :c:func:`PyModule_GetState()` on the result of :c:" "func:`PyType_GetModule`." msgstr "" #: c-api/type.rst:166 msgid "" "If the *type* has an associated module but its state is ``NULL``, returns " "``NULL`` without setting an exception." msgstr "" #: c-api/type.rst:173 msgid "" "Find the first superclass whose module was created from the given :c:type:" "`PyModuleDef` *def*, and return that module." msgstr "" #: c-api/type.rst:176 msgid "" "If no module is found, raises a :py:class:`TypeError` and returns ``NULL``." msgstr "" #: c-api/type.rst:178 msgid "" "This function is intended to be used together with :c:func:" "`PyModule_GetState()` to get module state from slot methods (such as :c:" "member:`~PyTypeObject.tp_init` or :c:member:`~PyNumberMethods.nb_add`) and " "other places where a method's defining class cannot be passed using the :c:" "type:`PyCMethod` calling convention." msgstr "" #: c-api/type.rst:188 msgid "Creating Heap-Allocated Types" msgstr "" #: c-api/type.rst:190 msgid "" "The following functions and structs are used to create :ref:`heap types " "`." msgstr "" #: c-api/type.rst:195 msgid "" "Creates and returns a :ref:`heap type ` from the *spec* (:const:" "`Py_TPFLAGS_HEAPTYPE`)." msgstr "" #: c-api/type.rst:198 msgid "" "The *bases* argument can be used to specify base classes; it can either be " "only one class or a tuple of classes. If *bases* is ``NULL``, the " "*Py_tp_bases* slot is used instead. If that also is ``NULL``, the " "*Py_tp_base* slot is used instead. If that also is ``NULL``, the new type " "derives from :class:`object`." msgstr "" #: c-api/type.rst:204 msgid "" "The *module* argument can be used to record the module in which the new " "class is defined. It must be a module object or ``NULL``. If not ``NULL``, " "the module is associated with the new type and can later be retrieved with :" "c:func:`PyType_GetModule`. The associated module is not inherited by " "subclasses; it must be specified for each class individually." msgstr "" #: c-api/type.rst:211 msgid "This function calls :c:func:`PyType_Ready` on the new type." msgstr "" #: c-api/type.rst:217 msgid "" "The function now accepts a single class as the *bases* argument and ``NULL`` " "as the ``tp_doc`` slot." msgstr "" #: c-api/type.rst:222 msgid "Equivalent to ``PyType_FromModuleAndSpec(NULL, spec, bases)``." msgstr "" #: c-api/type.rst:228 msgid "Equivalent to ``PyType_FromSpecWithBases(spec, NULL)``." msgstr "" #: c-api/type.rst:232 msgid "Structure defining a type's behavior." msgstr "" #: c-api/type.rst:236 msgid "Name of the type, used to set :c:member:`PyTypeObject.tp_name`." msgstr "" #: c-api/type.rst:241 msgid "" "Size of the instance in bytes, used to set :c:member:`PyTypeObject." "tp_basicsize` and :c:member:`PyTypeObject.tp_itemsize`." msgstr "" #: c-api/type.rst:247 msgid "Type flags, used to set :c:member:`PyTypeObject.tp_flags`." msgstr "" #: c-api/type.rst:249 msgid "" "If the ``Py_TPFLAGS_HEAPTYPE`` flag is not set, :c:func:" "`PyType_FromSpecWithBases` sets it automatically." msgstr "" #: c-api/type.rst:254 msgid "" "Array of :c:type:`PyType_Slot` structures. Terminated by the special slot " "value ``{0, NULL}``." msgstr "" #: c-api/type.rst:259 msgid "" "Structure defining optional functionality of a type, containing a slot ID " "and a value pointer." msgstr "" #: c-api/type.rst:264 msgid "A slot ID." msgstr "" #: c-api/type.rst:266 msgid "" "Slot IDs are named like the field names of the structures :c:type:" "`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:" "type:`PyMappingMethods` and :c:type:`PyAsyncMethods` with an added ``Py_`` " "prefix. For example, use:" msgstr "" #: c-api/type.rst:272 msgid "``Py_tp_dealloc`` to set :c:member:`PyTypeObject.tp_dealloc`" msgstr "" #: c-api/type.rst:273 msgid "``Py_nb_add`` to set :c:member:`PyNumberMethods.nb_add`" msgstr "" #: c-api/type.rst:274 msgid "``Py_sq_length`` to set :c:member:`PySequenceMethods.sq_length`" msgstr "" #: c-api/type.rst:276 msgid "" "The following fields cannot be set at all using :c:type:`PyType_Spec` and :c:" "type:`PyType_Slot`:" msgstr "" #: c-api/type.rst:279 msgid ":c:member:`~PyTypeObject.tp_dict`" msgstr "" #: c-api/type.rst:280 msgid ":c:member:`~PyTypeObject.tp_mro`" msgstr "" #: c-api/type.rst:281 msgid ":c:member:`~PyTypeObject.tp_cache`" msgstr "" #: c-api/type.rst:282 msgid ":c:member:`~PyTypeObject.tp_subclasses`" msgstr "" #: c-api/type.rst:283 msgid ":c:member:`~PyTypeObject.tp_weaklist`" msgstr "" #: c-api/type.rst:284 msgid ":c:member:`~PyTypeObject.tp_vectorcall`" msgstr "" #: c-api/type.rst:285 msgid "" ":c:member:`~PyTypeObject.tp_weaklistoffset` (see :ref:`PyMemberDef " "`)" msgstr "" #: c-api/type.rst:287 msgid "" ":c:member:`~PyTypeObject.tp_dictoffset` (see :ref:`PyMemberDef `)" msgstr "" #: c-api/type.rst:289 msgid "" ":c:member:`~PyTypeObject.tp_vectorcall_offset` (see :ref:`PyMemberDef " "`)" msgstr "" #: c-api/type.rst:292 msgid "" "Setting :c:data:`Py_tp_bases` or :c:data:`Py_tp_base` may be problematic on " "some platforms. To avoid issues, use the *bases* argument of :py:func:" "`PyType_FromSpecWithBases` instead." msgstr "" #: c-api/type.rst:299 msgid "Slots in :c:type:`PyBufferProcs` may be set in the unlimited API." msgstr "" #: c-api/type.rst:301 msgid "" ":c:member:`~PyBufferProcs.bf_getbuffer` and :c:member:`~PyBufferProcs." "bf_releasebuffer` are now available under the limited API." msgstr "" #: c-api/type.rst:308 msgid "" "The desired value of the slot. In most cases, this is a pointer to a " "function." msgstr "" #: c-api/type.rst:311 msgid "Slots other than ``Py_tp_doc`` may not be ``NULL``." msgstr ""