python-docs-fr/c-api/structures.po

509 lines
15 KiB
Plaintext

# SOME DESCRIPTIVE TITLE.
# Copyright (C) 1990-2016, Python Software Foundation
# This file is distributed under the same license as the Python package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Python 2.7\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-30 10:44+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../Doc/c-api/structures.rst:6
msgid "Common Object Structures"
msgstr ""
#: ../Doc/c-api/structures.rst:8
msgid ""
"There are a large number of structures which are used in the definition of "
"object types for Python. This section describes these structures and how "
"they are used."
msgstr ""
#: ../Doc/c-api/structures.rst:12
msgid ""
"All Python objects ultimately share a small number of fields at the "
"beginning of the object's representation in memory. These are represented "
"by the :c:type:`PyObject` and :c:type:`PyVarObject` types, which are "
"defined, in turn, by the expansions of some macros also used, whether "
"directly or indirectly, in the definition of all other Python objects."
msgstr ""
#: ../Doc/c-api/structures.rst:21
msgid ""
"All object types are extensions of this type. This is a type which contains "
"the information Python needs to treat a pointer to an object as an object. "
"In a normal \"release\" build, it contains only the object's reference count "
"and a pointer to the corresponding type object. It corresponds to the "
"fields defined by the expansion of the ``PyObject_HEAD`` macro."
msgstr ""
#: ../Doc/c-api/structures.rst:31
msgid ""
"This is an extension of :c:type:`PyObject` that adds the :attr:`ob_size` "
"field. This is only used for objects that have some notion of *length*. "
"This type does not often appear in the Python/C API. It corresponds to the "
"fields defined by the expansion of the ``PyObject_VAR_HEAD`` macro."
msgstr ""
#: ../Doc/c-api/structures.rst:36
msgid ""
"These macros are used in the definition of :c:type:`PyObject` and :c:type:"
"`PyVarObject`:"
msgstr ""
#: ../Doc/c-api/structures.rst:42
msgid ""
"This is a macro which expands to the declarations of the fields of the :c:"
"type:`PyObject` type; it is used when declaring new types which represent "
"objects without a varying length. The specific fields it expands to depend "
"on the definition of :c:macro:`Py_TRACE_REFS`. By default, that macro is "
"not defined, and :c:macro:`PyObject_HEAD` expands to::"
msgstr ""
#: ../Doc/c-api/structures.rst:51
msgid "When :c:macro:`Py_TRACE_REFS` is defined, it expands to::"
msgstr ""
#: ../Doc/c-api/structures.rst:60
msgid ""
"This is a macro which expands to the declarations of the fields of the :c:"
"type:`PyVarObject` type; it is used when declaring new types which represent "
"objects with a length that varies from instance to instance. This macro "
"always expands to::"
msgstr ""
#: ../Doc/c-api/structures.rst:68
msgid ""
"Note that :c:macro:`PyObject_HEAD` is part of the expansion, and that its "
"own expansion varies depending on the definition of :c:macro:`Py_TRACE_REFS`."
msgstr ""
#: ../Doc/c-api/structures.rst:74
msgid ""
"This macro is used to access the :attr:`ob_type` member of a Python object. "
"It expands to::"
msgstr ""
#: ../Doc/c-api/structures.rst:84
msgid ""
"This macro is used to access the :attr:`ob_refcnt` member of a Python "
"object. It expands to::"
msgstr ""
#: ../Doc/c-api/structures.rst:95
msgid ""
"This macro is used to access the :attr:`ob_size` member of a Python object. "
"It expands to::"
msgstr ""
#: ../Doc/c-api/structures.rst:105
msgid ""
"This is a macro which expands to initialization values for a new :c:type:"
"`PyObject` type. This macro expands to::"
msgstr ""
#: ../Doc/c-api/structures.rst:114
msgid ""
"This is a macro which expands to initialization values for a new :c:type:"
"`PyVarObject` type, including the :attr:`ob_size` field. This macro expands "
"to::"
msgstr ""
#: ../Doc/c-api/structures.rst:124
msgid ""
"Type of the functions used to implement most Python callables in C. "
"Functions of this type take two :c:type:`PyObject\\*` parameters and return "
"one such value. If the return value is *NULL*, an exception shall have been "
"set. If not *NULL*, the return value is interpreted as the return value of "
"the function as exposed in Python. The function must return a new reference."
msgstr ""
#: ../Doc/c-api/structures.rst:134
msgid ""
"Structure used to describe a method of an extension type. This structure "
"has four fields:"
msgstr ""
#: ../Doc/c-api/structures.rst:138 ../Doc/c-api/structures.rst:264
msgid "Field"
msgstr "Champ"
#: ../Doc/c-api/structures.rst:138 ../Doc/c-api/structures.rst:264
msgid "C Type"
msgstr "Type C"
#: ../Doc/c-api/structures.rst:138 ../Doc/c-api/structures.rst:264
msgid "Meaning"
msgstr "Signification"
#: ../Doc/c-api/structures.rst:140
msgid ":attr:`ml_name`"
msgstr ""
#: ../Doc/c-api/structures.rst:140 ../Doc/c-api/structures.rst:148
#: ../Doc/c-api/structures.rst:266 ../Doc/c-api/structures.rst:279
#: ../Doc/c-api/structures.rst:295
msgid "char \\*"
msgstr ""
#: ../Doc/c-api/structures.rst:140
msgid "name of the method"
msgstr ""
#: ../Doc/c-api/structures.rst:142
msgid ":attr:`ml_meth`"
msgstr ""
#: ../Doc/c-api/structures.rst:142
msgid "PyCFunction"
msgstr "PyCFunction"
#: ../Doc/c-api/structures.rst:142
msgid "pointer to the C implementation"
msgstr ""
#: ../Doc/c-api/structures.rst:145
msgid ":attr:`ml_flags`"
msgstr ""
#: ../Doc/c-api/structures.rst:145 ../Doc/c-api/structures.rst:268
#: ../Doc/c-api/structures.rst:275 ../Doc/c-api/structures.rst:291
msgid "int"
msgstr "*int*"
#: ../Doc/c-api/structures.rst:145
msgid "flag bits indicating how the call should be constructed"
msgstr ""
#: ../Doc/c-api/structures.rst:148
msgid ":attr:`ml_doc`"
msgstr ""
#: ../Doc/c-api/structures.rst:148 ../Doc/c-api/structures.rst:279
msgid "points to the contents of the docstring"
msgstr ""
#: ../Doc/c-api/structures.rst:152
msgid ""
"The :attr:`ml_meth` is a C function pointer. The functions may be of "
"different types, but they always return :c:type:`PyObject\\*`. If the "
"function is not of the :c:type:`PyCFunction`, the compiler will require a "
"cast in the method table. Even though :c:type:`PyCFunction` defines the "
"first parameter as :c:type:`PyObject\\*`, it is common that the method "
"implementation uses the specific C type of the *self* object."
msgstr ""
#: ../Doc/c-api/structures.rst:159
msgid ""
"The :attr:`ml_flags` field is a bitfield which can include the following "
"flags. The individual flags indicate either a calling convention or a "
"binding convention. Of the calling convention flags, only :const:"
"`METH_VARARGS` and :const:`METH_KEYWORDS` can be combined. Any of the "
"calling convention flags can be combined with a binding flag."
msgstr ""
#: ../Doc/c-api/structures.rst:168
msgid ""
"This is the typical calling convention, where the methods have the type :c:"
"type:`PyCFunction`. The function expects two :c:type:`PyObject\\*` values. "
"The first one is the *self* object for methods; for module functions, it is "
"the module object. The second parameter (often called *args*) is a tuple "
"object representing all arguments. This parameter is typically processed "
"using :c:func:`PyArg_ParseTuple` or :c:func:`PyArg_UnpackTuple`."
msgstr ""
#: ../Doc/c-api/structures.rst:178
msgid ""
"Methods with these flags must be of type :c:type:`PyCFunctionWithKeywords`. "
"The function expects three parameters: *self*, *args*, and a dictionary of "
"all the keyword arguments. The flag is typically combined with :const:"
"`METH_VARARGS`, and the parameters are typically processed using :c:func:"
"`PyArg_ParseTupleAndKeywords`."
msgstr ""
#: ../Doc/c-api/structures.rst:187
msgid ""
"Methods without parameters don't need to check whether arguments are given "
"if they are listed with the :const:`METH_NOARGS` flag. They need to be of "
"type :c:type:`PyCFunction`. The first parameter is typically named ``self`` "
"and will hold a reference to the module or object instance. In all cases "
"the second parameter will be *NULL*."
msgstr ""
#: ../Doc/c-api/structures.rst:196
msgid ""
"Methods with a single object argument can be listed with the :const:`METH_O` "
"flag, instead of invoking :c:func:`PyArg_ParseTuple` with a ``\"O\"`` "
"argument. They have the type :c:type:`PyCFunction`, with the *self* "
"parameter, and a :c:type:`PyObject\\*` parameter representing the single "
"argument."
msgstr ""
#: ../Doc/c-api/structures.rst:204
msgid ""
"This calling convention is deprecated. The method must be of type :c:type:"
"`PyCFunction`. The second argument is *NULL* if no arguments are given, a "
"single object if exactly one argument is given, and a tuple of objects if "
"more than one argument is given. There is no way for a function using this "
"convention to distinguish between a call with multiple arguments and a call "
"with a tuple as the only argument."
msgstr ""
#: ../Doc/c-api/structures.rst:211
msgid ""
"These two constants are not used to indicate the calling convention but the "
"binding when use with methods of classes. These may not be used for "
"functions defined for modules. At most one of these flags may be set for "
"any given method."
msgstr ""
#: ../Doc/c-api/structures.rst:221
msgid ""
"The method will be passed the type object as the first parameter rather than "
"an instance of the type. This is used to create *class methods*, similar to "
"what is created when using the :func:`classmethod` built-in function."
msgstr ""
#: ../Doc/c-api/structures.rst:233
msgid ""
"The method will be passed *NULL* as the first parameter rather than an "
"instance of the type. This is used to create *static methods*, similar to "
"what is created when using the :func:`staticmethod` built-in function."
msgstr ""
#: ../Doc/c-api/structures.rst:239
msgid ""
"One other constant controls whether a method is loaded in place of another "
"definition with the same method name."
msgstr ""
#: ../Doc/c-api/structures.rst:245
msgid ""
"The method will be loaded in place of existing definitions. Without "
"*METH_COEXIST*, the default is to skip repeated definitions. Since slot "
"wrappers are loaded before the method table, the existence of a "
"*sq_contains* slot, for example, would generate a wrapped method named :meth:"
"`__contains__` and preclude the loading of a corresponding PyCFunction with "
"the same name. With the flag defined, the PyCFunction will be loaded in "
"place of the wrapper object and will co-exist with the slot. This is "
"helpful because calls to PyCFunctions are optimized more than wrapper object "
"calls."
msgstr ""
#: ../Doc/c-api/structures.rst:260
msgid ""
"Structure which describes an attribute of a type which corresponds to a C "
"struct member. Its fields are:"
msgstr ""
#: ../Doc/c-api/structures.rst:266
msgid ":attr:`name`"
msgstr ""
#: ../Doc/c-api/structures.rst:266
msgid "name of the member"
msgstr ""
#: ../Doc/c-api/structures.rst:268
msgid ":attr:`type`"
msgstr ""
#: ../Doc/c-api/structures.rst:268
msgid "the type of the member in the C struct"
msgstr ""
#: ../Doc/c-api/structures.rst:271
msgid ":attr:`offset`"
msgstr ""
#: ../Doc/c-api/structures.rst:271 ../Doc/c-api/structures.rst:307
msgid "Py_ssize_t"
msgstr ""
#: ../Doc/c-api/structures.rst:271
msgid ""
"the offset in bytes that the member is located on the type's object struct"
msgstr ""
#: ../Doc/c-api/structures.rst:275
msgid ":attr:`flags`"
msgstr ""
#: ../Doc/c-api/structures.rst:275
msgid "flag bits indicating if the field should be read-only or writable"
msgstr ""
#: ../Doc/c-api/structures.rst:279
msgid ":attr:`doc`"
msgstr ""
#: ../Doc/c-api/structures.rst:283
msgid ""
":attr:`type` can be one of many ``T_`` macros corresponding to various C "
"types. When the member is accessed in Python, it will be converted to the "
"equivalent Python type."
msgstr ""
#: ../Doc/c-api/structures.rst:288
msgid "Macro name"
msgstr ""
#: ../Doc/c-api/structures.rst:288
msgid "C type"
msgstr "Type C"
#: ../Doc/c-api/structures.rst:290
msgid "T_SHORT"
msgstr ""
#: ../Doc/c-api/structures.rst:290
msgid "short"
msgstr ""
#: ../Doc/c-api/structures.rst:291
msgid "T_INT"
msgstr ""
#: ../Doc/c-api/structures.rst:292
msgid "T_LONG"
msgstr ""
#: ../Doc/c-api/structures.rst:292
msgid "long"
msgstr ""
#: ../Doc/c-api/structures.rst:293
msgid "T_FLOAT"
msgstr ""
#: ../Doc/c-api/structures.rst:293
msgid "float"
msgstr "*float*"
#: ../Doc/c-api/structures.rst:294
msgid "T_DOUBLE"
msgstr ""
#: ../Doc/c-api/structures.rst:294
msgid "double"
msgstr "double"
#: ../Doc/c-api/structures.rst:295
msgid "T_STRING"
msgstr ""
#: ../Doc/c-api/structures.rst:296
msgid "T_OBJECT"
msgstr ""
#: ../Doc/c-api/structures.rst:296 ../Doc/c-api/structures.rst:297
msgid "PyObject \\*"
msgstr "PyObject \\*"
#: ../Doc/c-api/structures.rst:297
msgid "T_OBJECT_EX"
msgstr ""
#: ../Doc/c-api/structures.rst:298
msgid "T_CHAR"
msgstr ""
#: ../Doc/c-api/structures.rst:298 ../Doc/c-api/structures.rst:299
#: ../Doc/c-api/structures.rst:304
msgid "char"
msgstr "char"
#: ../Doc/c-api/structures.rst:299
msgid "T_BYTE"
msgstr ""
#: ../Doc/c-api/structures.rst:300
msgid "T_UBYTE"
msgstr ""
#: ../Doc/c-api/structures.rst:300
msgid "unsigned char"
msgstr "``unsigned char``"
#: ../Doc/c-api/structures.rst:301
msgid "T_UINT"
msgstr ""
#: ../Doc/c-api/structures.rst:301
msgid "unsigned int"
msgstr "``unsigned int``"
#: ../Doc/c-api/structures.rst:302
msgid "T_USHORT"
msgstr ""
#: ../Doc/c-api/structures.rst:302
msgid "unsigned short"
msgstr "``unsigned short``"
#: ../Doc/c-api/structures.rst:303
msgid "T_ULONG"
msgstr ""
#: ../Doc/c-api/structures.rst:303
msgid "unsigned long"
msgstr "``unsigned long``"
#: ../Doc/c-api/structures.rst:304
msgid "T_BOOL"
msgstr ""
#: ../Doc/c-api/structures.rst:305
msgid "T_LONGLONG"
msgstr ""
#: ../Doc/c-api/structures.rst:305
msgid "long long"
msgstr ""
#: ../Doc/c-api/structures.rst:306
msgid "T_ULONGLONG"
msgstr ""
#: ../Doc/c-api/structures.rst:306
msgid "unsigned long long"
msgstr "``unsigned long long``"
#: ../Doc/c-api/structures.rst:307
msgid "T_PYSSIZET"
msgstr ""
#: ../Doc/c-api/structures.rst:310
msgid ""
":c:macro:`T_OBJECT` and :c:macro:`T_OBJECT_EX` differ in that :c:macro:"
"`T_OBJECT` returns ``None`` if the member is *NULL* and :c:macro:"
"`T_OBJECT_EX` raises an :exc:`AttributeError`. Try to use :c:macro:"
"`T_OBJECT_EX` over :c:macro:`T_OBJECT` because :c:macro:`T_OBJECT_EX` "
"handles use of the :keyword:`del` statement on that attribute more correctly "
"than :c:macro:`T_OBJECT`."
msgstr ""
#: ../Doc/c-api/structures.rst:317
msgid ""
":attr:`flags` can be 0 for write and read access or :c:macro:`READONLY` for "
"read-only access. Using :c:macro:`T_STRING` for :attr:`type` implies :c:"
"macro:`READONLY`. Only :c:macro:`T_OBJECT` and :c:macro:`T_OBJECT_EX` "
"members can be deleted. (They are set to *NULL*)."
msgstr ""
#: ../Doc/c-api/structures.rst:325
msgid ""
"Return a bound method object for an extension type implemented in C. This "
"can be useful in the implementation of a :c:member:`~PyTypeObject."
"tp_getattro` or :c:member:`~PyTypeObject.tp_getattr` handler that does not "
"use the :c:func:`PyObject_GenericGetAttr` function."
msgstr ""