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

1181 lines
40 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2001-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 3.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-30 10:42+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/exceptions.rst:8
msgid "Exception Handling"
msgstr "Gestion des exceptions"
#: ../Doc/c-api/exceptions.rst:10
msgid ""
"The functions described in this chapter will let you handle and raise Python "
"exceptions. It is important to understand some of the basics of Python "
"exception handling. It works somewhat like the POSIX :c:data:`errno` "
"variable: there is a global indicator (per thread) of the last error that "
"occurred. Most C API functions don't clear this on success, but will set it "
"to indicate the cause of the error on failure. Most C API functions also "
"return an error indicator, usually *NULL* if they are supposed to return a "
"pointer, or ``-1`` if they return an integer (exception: the :c:func:`PyArg_"
"\\*` functions return ``1`` for success and ``0`` for failure)."
msgstr ""
#: ../Doc/c-api/exceptions.rst:20
msgid ""
"Concretely, the error indicator consists of three object pointers: the "
"exception's type, the exception's value, and the traceback object. Any of "
"those pointers can be NULL if non-set (although some combinations are "
"forbidden, for example you can't have a non-NULL traceback if the exception "
"type is NULL)."
msgstr ""
#: ../Doc/c-api/exceptions.rst:26
msgid ""
"When a function must fail because some function it called failed, it "
"generally doesn't set the error indicator; the function it called already "
"set it. It is responsible for either handling the error and clearing the "
"exception or returning after cleaning up any resources it holds (such as "
"object references or memory allocations); it should *not* continue normally "
"if it is not prepared to handle the error. If returning due to an error, it "
"is important to indicate to the caller that an error has been set. If the "
"error is not handled or carefully propagated, additional calls into the "
"Python/C API may not behave as intended and may fail in mysterious ways."
msgstr ""
#: ../Doc/c-api/exceptions.rst:37
msgid ""
"The error indicator is **not** the result of :func:`sys.exc_info()`. The "
"former corresponds to an exception that is not yet caught (and is therefore "
"still propagating), while the latter returns an exception after it is caught "
"(and has therefore stopped propagating)."
msgstr ""
#: ../Doc/c-api/exceptions.rst:44
msgid "Printing and clearing"
msgstr ""
#: ../Doc/c-api/exceptions.rst:49
msgid ""
"Clear the error indicator. If the error indicator is not set, there is no "
"effect."
msgstr ""
#: ../Doc/c-api/exceptions.rst:55
msgid ""
"Print a standard traceback to ``sys.stderr`` and clear the error indicator. "
"Call this function only when the error indicator is set. (Otherwise it will "
"cause a fatal error!)"
msgstr ""
#: ../Doc/c-api/exceptions.rst:59
msgid ""
"If *set_sys_last_vars* is nonzero, the variables :data:`sys.last_type`, :"
"data:`sys.last_value` and :data:`sys.last_traceback` will be set to the "
"type, value and traceback of the printed exception, respectively."
msgstr ""
#: ../Doc/c-api/exceptions.rst:66
msgid "Alias for ``PyErr_PrintEx(1)``."
msgstr ""
#: ../Doc/c-api/exceptions.rst:71
msgid ""
"This utility function prints a warning message to ``sys.stderr`` when an "
"exception has been set but it is impossible for the interpreter to actually "
"raise the exception. It is used, for example, when an exception occurs in "
"an :meth:`__del__` method."
msgstr ""
#: ../Doc/c-api/exceptions.rst:76
msgid ""
"The function is called with a single argument *obj* that identifies the "
"context in which the unraisable exception occurred. If possible, the repr of "
"*obj* will be printed in the warning message."
msgstr ""
#: ../Doc/c-api/exceptions.rst:82
msgid "Raising exceptions"
msgstr "Lever des exceptions"
#: ../Doc/c-api/exceptions.rst:84
msgid ""
"These functions help you set the current thread's error indicator. For "
"convenience, some of these functions will always return a NULL pointer for "
"use in a ``return`` statement."
msgstr ""
#: ../Doc/c-api/exceptions.rst:91
msgid ""
"This is the most common way to set the error indicator. The first argument "
"specifies the exception type; it is normally one of the standard exceptions, "
"e.g. :c:data:`PyExc_RuntimeError`. You need not increment its reference "
"count. The second argument is an error message; it is decoded from "
"``'utf-8``'."
msgstr ""
#: ../Doc/c-api/exceptions.rst:99
msgid ""
"This function is similar to :c:func:`PyErr_SetString` but lets you specify "
"an arbitrary Python object for the \"value\" of the exception."
msgstr ""
#: ../Doc/c-api/exceptions.rst:105
msgid ""
"This function sets the error indicator and returns *NULL*. *exception* "
"should be a Python exception class. The *format* and subsequent parameters "
"help format the error message; they have the same meaning and values as in :"
"c:func:`PyUnicode_FromFormat`. *format* is an ASCII-encoded string."
msgstr ""
#: ../Doc/c-api/exceptions.rst:114
msgid ""
"Same as :c:func:`PyErr_Format`, but taking a :c:type:`va_list` argument "
"rather than a variable number of arguments."
msgstr ""
#: ../Doc/c-api/exceptions.rst:122
msgid "This is a shorthand for ``PyErr_SetObject(type, Py_None)``."
msgstr ""
#: ../Doc/c-api/exceptions.rst:127
msgid ""
"This is a shorthand for ``PyErr_SetString(PyExc_TypeError, message)``, where "
"*message* indicates that a built-in operation was invoked with an illegal "
"argument. It is mostly for internal use."
msgstr ""
#: ../Doc/c-api/exceptions.rst:134
msgid ""
"This is a shorthand for ``PyErr_SetNone(PyExc_MemoryError)``; it returns "
"*NULL* so an object allocation function can write ``return PyErr_NoMemory();"
"`` when it runs out of memory."
msgstr ""
#: ../Doc/c-api/exceptions.rst:143
msgid ""
"This is a convenience function to raise an exception when a C library "
"function has returned an error and set the C variable :c:data:`errno`. It "
"constructs a tuple object whose first item is the integer :c:data:`errno` "
"value and whose second item is the corresponding error message (gotten from :"
"c:func:`strerror`), and then calls ``PyErr_SetObject(type, object)``. On "
"Unix, when the :c:data:`errno` value is :const:`EINTR`, indicating an "
"interrupted system call, this calls :c:func:`PyErr_CheckSignals`, and if "
"that set the error indicator, leaves it set to that. The function always "
"returns *NULL*, so a wrapper function around a system call can write "
"``return PyErr_SetFromErrno(type);`` when the system call returns an error."
msgstr ""
#: ../Doc/c-api/exceptions.rst:157
msgid ""
"Similar to :c:func:`PyErr_SetFromErrno`, with the additional behavior that "
"if *filenameObject* is not *NULL*, it is passed to the constructor of *type* "
"as a third parameter. In the case of :exc:`OSError` exception, this is used "
"to define the :attr:`filename` attribute of the exception instance."
msgstr ""
#: ../Doc/c-api/exceptions.rst:166
msgid ""
"Similar to :c:func:`PyErr_SetFromErrnoWithFilenameObject`, but takes a "
"second filename object, for raising errors when a function that takes two "
"filenames fails."
msgstr ""
#: ../Doc/c-api/exceptions.rst:175
msgid ""
"Similar to :c:func:`PyErr_SetFromErrnoWithFilenameObject`, but the filename "
"is given as a C string. *filename* is decoded from the filesystem encoding "
"(:func:`os.fsdecode`)."
msgstr ""
#: ../Doc/c-api/exceptions.rst:182
msgid ""
"This is a convenience function to raise :exc:`WindowsError`. If called with "
"*ierr* of :c:data:`0`, the error code returned by a call to :c:func:"
"`GetLastError` is used instead. It calls the Win32 function :c:func:"
"`FormatMessage` to retrieve the Windows description of error code given by "
"*ierr* or :c:func:`GetLastError`, then it constructs a tuple object whose "
"first item is the *ierr* value and whose second item is the corresponding "
"error message (gotten from :c:func:`FormatMessage`), and then calls "
"``PyErr_SetObject(PyExc_WindowsError, object)``. This function always "
"returns *NULL*. Availability: Windows."
msgstr ""
#: ../Doc/c-api/exceptions.rst:194
msgid ""
"Similar to :c:func:`PyErr_SetFromWindowsErr`, with an additional parameter "
"specifying the exception type to be raised. Availability: Windows."
msgstr ""
#: ../Doc/c-api/exceptions.rst:200
msgid ""
"Similar to :c:func:`PyErr_SetFromWindowsErrWithFilenameObject`, but the "
"filename is given as a C string. *filename* is decoded from the filesystem "
"encoding (:func:`os.fsdecode`). Availability: Windows."
msgstr ""
#: ../Doc/c-api/exceptions.rst:207
msgid ""
"Similar to :c:func:`PyErr_SetFromWindowsErrWithFilenameObject`, with an "
"additional parameter specifying the exception type to be raised. "
"Availability: Windows."
msgstr ""
#: ../Doc/c-api/exceptions.rst:214
msgid ""
"Similar to :c:func:`PyErr_SetExcFromWindowsErrWithFilenameObject`, but "
"accepts a second filename object. Availability: Windows."
msgstr ""
#: ../Doc/c-api/exceptions.rst:223
msgid ""
"Similar to :c:func:`PyErr_SetFromWindowsErrWithFilename`, with an additional "
"parameter specifying the exception type to be raised. Availability: Windows."
msgstr ""
#: ../Doc/c-api/exceptions.rst:229
msgid ""
"This is a convenience function to raise :exc:`ImportError`. *msg* will be "
"set as the exception's message string. *name* and *path*, both of which can "
"be ``NULL``, will be set as the :exc:`ImportError`'s respective ``name`` and "
"``path`` attributes."
msgstr ""
#: ../Doc/c-api/exceptions.rst:239
msgid ""
"Set file, line, and offset information for the current exception. If the "
"current exception is not a :exc:`SyntaxError`, then it sets additional "
"attributes, which make the exception printing subsystem think the exception "
"is a :exc:`SyntaxError`."
msgstr ""
#: ../Doc/c-api/exceptions.rst:249
msgid ""
"Like :c:func:`PyErr_SyntaxLocationObject`, but *filename* is a byte string "
"decoded from the filesystem encoding (:func:`os.fsdecode`)."
msgstr ""
#: ../Doc/c-api/exceptions.rst:257
msgid ""
"Like :c:func:`PyErr_SyntaxLocationEx`, but the col_offset parameter is "
"omitted."
msgstr ""
#: ../Doc/c-api/exceptions.rst:263
msgid ""
"This is a shorthand for ``PyErr_SetString(PyExc_SystemError, message)``, "
"where *message* indicates that an internal operation (e.g. a Python/C API "
"function) was invoked with an illegal argument. It is mostly for internal "
"use."
msgstr ""
#: ../Doc/c-api/exceptions.rst:270
msgid "Issuing warnings"
msgstr ""
#: ../Doc/c-api/exceptions.rst:272
msgid ""
"Use these functions to issue warnings from C code. They mirror similar "
"functions exported by the Python :mod:`warnings` module. They normally "
"print a warning message to *sys.stderr*; however, it is also possible that "
"the user has specified that warnings are to be turned into errors, and in "
"that case they will raise an exception. It is also possible that the "
"functions raise an exception because of a problem with the warning "
"machinery. The return value is ``0`` if no exception is raised, or ``-1`` if "
"an exception is raised. (It is not possible to determine whether a warning "
"message is actually printed, nor what the reason is for the exception; this "
"is intentional.) If an exception is raised, the caller should do its normal "
"exception handling (for example, :c:func:`Py_DECREF` owned references and "
"return an error value)."
msgstr ""
#: ../Doc/c-api/exceptions.rst:287
msgid ""
"Issue a warning message. The *category* argument is a warning category (see "
"below) or *NULL*; the *message* argument is a UTF-8 encoded string. "
"*stack_level* is a positive number giving a number of stack frames; the "
"warning will be issued from the currently executing line of code in that "
"stack frame. A *stack_level* of 1 is the function calling :c:func:"
"`PyErr_WarnEx`, 2 is the function above that, and so forth."
msgstr ""
#: ../Doc/c-api/exceptions.rst:294
msgid ""
"Warning categories must be subclasses of :c:data:`Warning`; the default "
"warning category is :c:data:`RuntimeWarning`. The standard Python warning "
"categories are available as global variables whose names are ``PyExc_`` "
"followed by the Python exception name. These have the type :c:type:`PyObject"
"\\*`; they are all class objects. Their names are :c:data:`PyExc_Warning`, :"
"c:data:`PyExc_UserWarning`, :c:data:`PyExc_UnicodeWarning`, :c:data:"
"`PyExc_DeprecationWarning`, :c:data:`PyExc_SyntaxWarning`, :c:data:"
"`PyExc_RuntimeWarning`, and :c:data:`PyExc_FutureWarning`. :c:data:"
"`PyExc_Warning` is a subclass of :c:data:`PyExc_Exception`; the other "
"warning categories are subclasses of :c:data:`PyExc_Warning`."
msgstr ""
#: ../Doc/c-api/exceptions.rst:305
msgid ""
"For information about warning control, see the documentation for the :mod:"
"`warnings` module and the :option:`-W` option in the command line "
"documentation. There is no C API for warning control."
msgstr ""
#: ../Doc/c-api/exceptions.rst:312
msgid ""
"Issue a warning message with explicit control over all warning attributes. "
"This is a straightforward wrapper around the Python function :func:`warnings."
"warn_explicit`, see there for more information. The *module* and *registry* "
"arguments may be set to *NULL* to get the default effect described there."
msgstr ""
#: ../Doc/c-api/exceptions.rst:323
msgid ""
"Similar to :c:func:`PyErr_WarnExplicitObject` except that *message* and "
"*module* are UTF-8 encoded strings, and *filename* is decoded from the "
"filesystem encoding (:func:`os.fsdecode`)."
msgstr ""
#: ../Doc/c-api/exceptions.rst:330
msgid ""
"Function similar to :c:func:`PyErr_WarnEx`, but use :c:func:"
"`PyUnicode_FromFormat` to format the warning message. *format* is an ASCII-"
"encoded string."
msgstr ""
#: ../Doc/c-api/exceptions.rst:338
msgid "Querying the error indicator"
msgstr ""
#: ../Doc/c-api/exceptions.rst:342
msgid ""
"Test whether the error indicator is set. If set, return the exception "
"*type* (the first argument to the last call to one of the :c:func:`PyErr_Set"
"\\*` functions or to :c:func:`PyErr_Restore`). If not set, return *NULL*. "
"You do not own a reference to the return value, so you do not need to :c:"
"func:`Py_DECREF` it."
msgstr ""
#: ../Doc/c-api/exceptions.rst:350
msgid ""
"Do not compare the return value to a specific exception; use :c:func:"
"`PyErr_ExceptionMatches` instead, shown below. (The comparison could easily "
"fail since the exception may be an instance instead of a class, in the case "
"of a class exception, or it may be a subclass of the expected exception.)"
msgstr ""
#: ../Doc/c-api/exceptions.rst:358
msgid ""
"Equivalent to ``PyErr_GivenExceptionMatches(PyErr_Occurred(), exc)``. This "
"should only be called when an exception is actually set; a memory access "
"violation will occur if no exception has been raised."
msgstr ""
#: ../Doc/c-api/exceptions.rst:365
msgid ""
"Return true if the *given* exception matches the exception type in *exc*. "
"If *exc* is a class object, this also returns true when *given* is an "
"instance of a subclass. If *exc* is a tuple, all exception types in the "
"tuple (and recursively in subtuples) are searched for a match."
msgstr ""
#: ../Doc/c-api/exceptions.rst:373
msgid ""
"Retrieve the error indicator into three variables whose addresses are "
"passed. If the error indicator is not set, set all three variables to "
"*NULL*. If it is set, it will be cleared and you own a reference to each "
"object retrieved. The value and traceback object may be *NULL* even when "
"the type object is not."
msgstr ""
#: ../Doc/c-api/exceptions.rst:380
msgid ""
"This function is normally only used by code that needs to catch exceptions "
"or by code that needs to save and restore the error indicator temporarily, e."
"g.::"
msgstr ""
#: ../Doc/c-api/exceptions.rst:395
msgid ""
"Set the error indicator from the three objects. If the error indicator is "
"already set, it is cleared first. If the objects are *NULL*, the error "
"indicator is cleared. Do not pass a *NULL* type and non-*NULL* value or "
"traceback. The exception type should be a class. Do not pass an invalid "
"exception type or value. (Violating these rules will cause subtle problems "
"later.) This call takes away a reference to each object: you must own a "
"reference to each object before the call and after the call you no longer "
"own these references. (If you don't understand this, don't use this "
"function. I warned you.)"
msgstr ""
#: ../Doc/c-api/exceptions.rst:407
msgid ""
"This function is normally only used by code that needs to save and restore "
"the error indicator temporarily. Use :c:func:`PyErr_Fetch` to save the "
"current error indicator."
msgstr ""
#: ../Doc/c-api/exceptions.rst:414
msgid ""
"Under certain circumstances, the values returned by :c:func:`PyErr_Fetch` "
"below can be \"unnormalized\", meaning that ``*exc`` is a class object but "
"``*val`` is not an instance of the same class. This function can be used "
"to instantiate the class in that case. If the values are already "
"normalized, nothing happens. The delayed normalization is implemented to "
"improve performance."
msgstr ""
#: ../Doc/c-api/exceptions.rst:422
msgid ""
"This function *does not* implicitly set the ``__traceback__`` attribute on "
"the exception value. If setting the traceback appropriately is desired, the "
"following additional snippet is needed::"
msgstr ""
#: ../Doc/c-api/exceptions.rst:433
msgid ""
"Retrieve the exception info, as known from ``sys.exc_info()``. This refers "
"to an exception that was *already caught*, not to an exception that was "
"freshly raised. Returns new references for the three objects, any of which "
"may be *NULL*. Does not modify the exception info state."
msgstr ""
#: ../Doc/c-api/exceptions.rst:440
msgid ""
"This function is not normally used by code that wants to handle exceptions. "
"Rather, it can be used when code needs to save and restore the exception "
"state temporarily. Use :c:func:`PyErr_SetExcInfo` to restore or clear the "
"exception state."
msgstr ""
#: ../Doc/c-api/exceptions.rst:450
msgid ""
"Set the exception info, as known from ``sys.exc_info()``. This refers to an "
"exception that was *already caught*, not to an exception that was freshly "
"raised. This function steals the references of the arguments. To clear the "
"exception state, pass *NULL* for all three arguments. For general rules "
"about the three arguments, see :c:func:`PyErr_Restore`."
msgstr ""
#: ../Doc/c-api/exceptions.rst:458
msgid ""
"This function is not normally used by code that wants to handle exceptions. "
"Rather, it can be used when code needs to save and restore the exception "
"state temporarily. Use :c:func:`PyErr_GetExcInfo` to read the exception "
"state."
msgstr ""
#: ../Doc/c-api/exceptions.rst:467
msgid "Signal Handling"
msgstr "Traitement des signaux"
#: ../Doc/c-api/exceptions.rst:477
msgid ""
"This function interacts with Python's signal handling. It checks whether a "
"signal has been sent to the processes and if so, invokes the corresponding "
"signal handler. If the :mod:`signal` module is supported, this can invoke a "
"signal handler written in Python. In all cases, the default effect for :"
"const:`SIGINT` is to raise the :exc:`KeyboardInterrupt` exception. If an "
"exception is raised the error indicator is set and the function returns "
"``-1``; otherwise the function returns ``0``. The error indicator may or "
"may not be cleared if it was previously set."
msgstr ""
#: ../Doc/c-api/exceptions.rst:493
msgid ""
"This function simulates the effect of a :const:`SIGINT` signal arriving --- "
"the next time :c:func:`PyErr_CheckSignals` is called, :exc:"
"`KeyboardInterrupt` will be raised. It may be called without holding the "
"interpreter lock."
msgstr ""
#: ../Doc/c-api/exceptions.rst:503
msgid ""
"This utility function specifies a file descriptor to which the signal number "
"is written as a single byte whenever a signal is received. *fd* must be non-"
"blocking. It returns the previous such file descriptor."
msgstr ""
#: ../Doc/c-api/exceptions.rst:507
msgid ""
"The value ``-1`` disables the feature; this is the initial state. This is "
"equivalent to :func:`signal.set_wakeup_fd` in Python, but without any error "
"checking. *fd* should be a valid file descriptor. The function should only "
"be called from the main thread."
msgstr ""
#: ../Doc/c-api/exceptions.rst:512
msgid "On Windows, the function now also supports socket handles."
msgstr ""
#: ../Doc/c-api/exceptions.rst:517
msgid "Exception Classes"
msgstr ""
#: ../Doc/c-api/exceptions.rst:521
msgid ""
"This utility function creates and returns a new exception class. The *name* "
"argument must be the name of the new exception, a C string of the form "
"``module.classname``. The *base* and *dict* arguments are normally *NULL*. "
"This creates a class object derived from :exc:`Exception` (accessible in C "
"as :c:data:`PyExc_Exception`)."
msgstr ""
#: ../Doc/c-api/exceptions.rst:527
msgid ""
"The :attr:`__module__` attribute of the new class is set to the first part "
"(up to the last dot) of the *name* argument, and the class name is set to "
"the last part (after the last dot). The *base* argument can be used to "
"specify alternate base classes; it can either be only one class or a tuple "
"of classes. The *dict* argument can be used to specify a dictionary of class "
"variables and methods."
msgstr ""
#: ../Doc/c-api/exceptions.rst:536
msgid ""
"Same as :c:func:`PyErr_NewException`, except that the new exception class "
"can easily be given a docstring: If *doc* is non-*NULL*, it will be used as "
"the docstring for the exception class."
msgstr ""
#: ../Doc/c-api/exceptions.rst:544
msgid "Exception Objects"
msgstr "Objets exception"
#: ../Doc/c-api/exceptions.rst:548
msgid ""
"Return the traceback associated with the exception as a new reference, as "
"accessible from Python through :attr:`__traceback__`. If there is no "
"traceback associated, this returns *NULL*."
msgstr ""
#: ../Doc/c-api/exceptions.rst:555
msgid ""
"Set the traceback associated with the exception to *tb*. Use ``Py_None`` to "
"clear it."
msgstr ""
#: ../Doc/c-api/exceptions.rst:561
msgid ""
"Return the context (another exception instance during whose handling *ex* "
"was raised) associated with the exception as a new reference, as accessible "
"from Python through :attr:`__context__`. If there is no context associated, "
"this returns *NULL*."
msgstr ""
#: ../Doc/c-api/exceptions.rst:569
msgid ""
"Set the context associated with the exception to *ctx*. Use *NULL* to clear "
"it. There is no type check to make sure that *ctx* is an exception "
"instance. This steals a reference to *ctx*."
msgstr ""
#: ../Doc/c-api/exceptions.rst:576
msgid ""
"Return the cause (either an exception instance, or :const:`None`, set by "
"``raise ... from ...``) associated with the exception as a new reference, as "
"accessible from Python through :attr:`__cause__`."
msgstr ""
#: ../Doc/c-api/exceptions.rst:583
msgid ""
"Set the cause associated with the exception to *cause*. Use *NULL* to clear "
"it. There is no type check to make sure that *cause* is either an exception "
"instance or :const:`None`. This steals a reference to *cause*."
msgstr ""
#: ../Doc/c-api/exceptions.rst:587
msgid ""
":attr:`__suppress_context__` is implicitly set to ``True`` by this function."
msgstr ""
#: ../Doc/c-api/exceptions.rst:593
msgid "Unicode Exception Objects"
msgstr "Objets exception Unicode"
#: ../Doc/c-api/exceptions.rst:595
msgid ""
"The following functions are used to create and modify Unicode exceptions "
"from C."
msgstr ""
#: ../Doc/c-api/exceptions.rst:599
msgid ""
"Create a :class:`UnicodeDecodeError` object with the attributes *encoding*, "
"*object*, *length*, *start*, *end* and *reason*. *encoding* and *reason* are "
"UTF-8 encoded strings."
msgstr ""
#: ../Doc/c-api/exceptions.rst:605
msgid ""
"Create a :class:`UnicodeEncodeError` object with the attributes *encoding*, "
"*object*, *length*, *start*, *end* and *reason*. *encoding* and *reason* are "
"UTF-8 encoded strings."
msgstr ""
#: ../Doc/c-api/exceptions.rst:611
msgid ""
"Create a :class:`UnicodeTranslateError` object with the attributes *object*, "
"*length*, *start*, *end* and *reason*. *reason* is a UTF-8 encoded string."
msgstr ""
#: ../Doc/c-api/exceptions.rst:617
msgid "Return the *encoding* attribute of the given exception object."
msgstr ""
#: ../Doc/c-api/exceptions.rst:623
msgid "Return the *object* attribute of the given exception object."
msgstr ""
#: ../Doc/c-api/exceptions.rst:629
msgid ""
"Get the *start* attribute of the given exception object and place it into *"
"\\*start*. *start* must not be *NULL*. Return ``0`` on success, ``-1`` on "
"failure."
msgstr ""
#: ../Doc/c-api/exceptions.rst:637
msgid ""
"Set the *start* attribute of the given exception object to *start*. Return "
"``0`` on success, ``-1`` on failure."
msgstr ""
#: ../Doc/c-api/exceptions.rst:644
msgid ""
"Get the *end* attribute of the given exception object and place it into *"
"\\*end*. *end* must not be *NULL*. Return ``0`` on success, ``-1`` on "
"failure."
msgstr ""
#: ../Doc/c-api/exceptions.rst:652
msgid ""
"Set the *end* attribute of the given exception object to *end*. Return "
"``0`` on success, ``-1`` on failure."
msgstr ""
#: ../Doc/c-api/exceptions.rst:659
msgid "Return the *reason* attribute of the given exception object."
msgstr ""
#: ../Doc/c-api/exceptions.rst:665
msgid ""
"Set the *reason* attribute of the given exception object to *reason*. "
"Return ``0`` on success, ``-1`` on failure."
msgstr ""
#: ../Doc/c-api/exceptions.rst:670
msgid "Recursion Control"
msgstr "Contrôle de la récursion"
#: ../Doc/c-api/exceptions.rst:672
msgid ""
"These two functions provide a way to perform safe recursive calls at the C "
"level, both in the core and in extension modules. They are needed if the "
"recursive code does not necessarily invoke Python code (which tracks its "
"recursion depth automatically)."
msgstr ""
#: ../Doc/c-api/exceptions.rst:679
msgid "Marks a point where a recursive C-level call is about to be performed."
msgstr ""
#: ../Doc/c-api/exceptions.rst:681
msgid ""
"If :const:`USE_STACKCHECK` is defined, this function checks if the OS stack "
"overflowed using :c:func:`PyOS_CheckStack`. In this is the case, it sets a :"
"exc:`MemoryError` and returns a nonzero value."
msgstr ""
#: ../Doc/c-api/exceptions.rst:685
msgid ""
"The function then checks if the recursion limit is reached. If this is the "
"case, a :exc:`RecursionError` is set and a nonzero value is returned. "
"Otherwise, zero is returned."
msgstr ""
#: ../Doc/c-api/exceptions.rst:689
msgid ""
"*where* should be a string such as ``\" in instance check\"`` to be "
"concatenated to the :exc:`RecursionError` message caused by the recursion "
"depth limit."
msgstr ""
#: ../Doc/c-api/exceptions.rst:695
msgid ""
"Ends a :c:func:`Py_EnterRecursiveCall`. Must be called once for each "
"*successful* invocation of :c:func:`Py_EnterRecursiveCall`."
msgstr ""
#: ../Doc/c-api/exceptions.rst:698
msgid ""
"Properly implementing :c:member:`~PyTypeObject.tp_repr` for container types "
"requires special recursion handling. In addition to protecting the stack, :"
"c:member:`~PyTypeObject.tp_repr` also needs to track objects to prevent "
"cycles. The following two functions facilitate this functionality. "
"Effectively, these are the C equivalent to :func:`reprlib.recursive_repr`."
msgstr ""
#: ../Doc/c-api/exceptions.rst:706
msgid ""
"Called at the beginning of the :c:member:`~PyTypeObject.tp_repr` "
"implementation to detect cycles."
msgstr ""
#: ../Doc/c-api/exceptions.rst:709
msgid ""
"If the object has already been processed, the function returns a positive "
"integer. In that case the :c:member:`~PyTypeObject.tp_repr` implementation "
"should return a string object indicating a cycle. As examples, :class:"
"`dict` objects return ``{...}`` and :class:`list` objects return ``[...]``."
msgstr ""
#: ../Doc/c-api/exceptions.rst:715
msgid ""
"The function will return a negative integer if the recursion limit is "
"reached. In that case the :c:member:`~PyTypeObject.tp_repr` implementation "
"should typically return ``NULL``."
msgstr ""
#: ../Doc/c-api/exceptions.rst:719
msgid ""
"Otherwise, the function returns zero and the :c:member:`~PyTypeObject."
"tp_repr` implementation can continue normally."
msgstr ""
#: ../Doc/c-api/exceptions.rst:724
msgid ""
"Ends a :c:func:`Py_ReprEnter`. Must be called once for each invocation of :"
"c:func:`Py_ReprEnter` that returns zero."
msgstr ""
#: ../Doc/c-api/exceptions.rst:731
msgid "Standard Exceptions"
msgstr "Exceptions standards"
#: ../Doc/c-api/exceptions.rst:733
msgid ""
"All standard Python exceptions are available as global variables whose names "
"are ``PyExc_`` followed by the Python exception name. These have the type :"
"c:type:`PyObject\\*`; they are all class objects. For completeness, here "
"are all the variables:"
msgstr ""
#: ../Doc/c-api/exceptions.rst:739 ../Doc/c-api/exceptions.rst:841
msgid "C Name"
msgstr "Nom C"
#: ../Doc/c-api/exceptions.rst:739
msgid "Python Name"
msgstr "Nom Python"
#: ../Doc/c-api/exceptions.rst:739 ../Doc/c-api/exceptions.rst:841
msgid "Notes"
msgstr "Notes"
#: ../Doc/c-api/exceptions.rst:741
msgid ":c:data:`PyExc_BaseException`"
msgstr ":c:data:`PyExc_BaseException`"
#: ../Doc/c-api/exceptions.rst:741
msgid ":exc:`BaseException`"
msgstr ":exc:`BaseException`"
#: ../Doc/c-api/exceptions.rst:741 ../Doc/c-api/exceptions.rst:743
#: ../Doc/c-api/exceptions.rst:745 ../Doc/c-api/exceptions.rst:747
#: ../Doc/c-api/exceptions.rst:795
msgid "\\(1)"
msgstr "\\(1)"
#: ../Doc/c-api/exceptions.rst:743
msgid ":c:data:`PyExc_Exception`"
msgstr ":c:data:`PyExc_Exception`"
#: ../Doc/c-api/exceptions.rst:743
msgid ":exc:`Exception`"
msgstr ":exc:`Exception`"
#: ../Doc/c-api/exceptions.rst:745
msgid ":c:data:`PyExc_ArithmeticError`"
msgstr ":c:data:`PyExc_ArithmeticError`"
#: ../Doc/c-api/exceptions.rst:745
msgid ":exc:`ArithmeticError`"
msgstr ":exc:`ArithmeticError`"
#: ../Doc/c-api/exceptions.rst:747
msgid ":c:data:`PyExc_LookupError`"
msgstr ":c:data:`PyExc_LookupError`"
#: ../Doc/c-api/exceptions.rst:747
msgid ":exc:`LookupError`"
msgstr ":exc:`LookupError`"
#: ../Doc/c-api/exceptions.rst:749
msgid ":c:data:`PyExc_AssertionError`"
msgstr ":c:data:`PyExc_AssertionError`"
#: ../Doc/c-api/exceptions.rst:749
msgid ":exc:`AssertionError`"
msgstr ":exc:`AssertionError`"
#: ../Doc/c-api/exceptions.rst:751
msgid ":c:data:`PyExc_AttributeError`"
msgstr ":c:data:`PyExc_AttributeError`"
#: ../Doc/c-api/exceptions.rst:751
msgid ":exc:`AttributeError`"
msgstr ":exc:`AttributeError`"
#: ../Doc/c-api/exceptions.rst:753
msgid ":c:data:`PyExc_BlockingIOError`"
msgstr ":c:data:`PyExc_BlockingIOError`"
#: ../Doc/c-api/exceptions.rst:753
msgid ":exc:`BlockingIOError`"
msgstr ":exc:`BlockingIOError`"
#: ../Doc/c-api/exceptions.rst:755
msgid ":c:data:`PyExc_BrokenPipeError`"
msgstr ":c:data:`PyExc_BrokenPipeError`"
#: ../Doc/c-api/exceptions.rst:755
msgid ":exc:`BrokenPipeError`"
msgstr ":exc:`BrokenPipeError`"
#: ../Doc/c-api/exceptions.rst:757
msgid ":c:data:`PyExc_ChildProcessError`"
msgstr ":c:data:`PyExc_ChildProcessError`"
#: ../Doc/c-api/exceptions.rst:757
msgid ":exc:`ChildProcessError`"
msgstr ":exc:`ChildProcessError`"
#: ../Doc/c-api/exceptions.rst:759
msgid ":c:data:`PyExc_ConnectionError`"
msgstr ":c:data:`PyExc_ConnectionError`"
#: ../Doc/c-api/exceptions.rst:759
msgid ":exc:`ConnectionError`"
msgstr ":exc:`ConnectionError`"
#: ../Doc/c-api/exceptions.rst:761
msgid ":c:data:`PyExc_ConnectionAbortedError`"
msgstr ":c:data:`PyExc_ConnectionAbortedError`"
#: ../Doc/c-api/exceptions.rst:761
msgid ":exc:`ConnectionAbortedError`"
msgstr ":exc:`ConnectionAbortedError`"
#: ../Doc/c-api/exceptions.rst:763
msgid ":c:data:`PyExc_ConnectionRefusedError`"
msgstr ":c:data:`PyExc_ConnectionRefusedError`"
#: ../Doc/c-api/exceptions.rst:763
msgid ":exc:`ConnectionRefusedError`"
msgstr ":exc:`ConnectionRefusedError`"
#: ../Doc/c-api/exceptions.rst:765
msgid ":c:data:`PyExc_ConnectionResetError`"
msgstr ":c:data:`PyExc_ConnectionResetError`"
#: ../Doc/c-api/exceptions.rst:765
msgid ":exc:`ConnectionResetError`"
msgstr ":exc:`ConnectionResetError`"
#: ../Doc/c-api/exceptions.rst:767
msgid ":c:data:`PyExc_FileExistsError`"
msgstr ":c:data:`PyExc_FileExistsError`"
#: ../Doc/c-api/exceptions.rst:767
msgid ":exc:`FileExistsError`"
msgstr ":exc:`FileExistsError`"
#: ../Doc/c-api/exceptions.rst:769
msgid ":c:data:`PyExc_FileNotFoundError`"
msgstr ":c:data:`PyExc_FloatingPointError`"
#: ../Doc/c-api/exceptions.rst:769
msgid ":exc:`FileNotFoundError`"
msgstr ":exc:`FileNotFoundError`"
#: ../Doc/c-api/exceptions.rst:771
msgid ":c:data:`PyExc_EOFError`"
msgstr ":c:data:`PyExc_EOFError`"
#: ../Doc/c-api/exceptions.rst:771
msgid ":exc:`EOFError`"
msgstr ":exc:`EOFError`"
#: ../Doc/c-api/exceptions.rst:773
msgid ":c:data:`PyExc_FloatingPointError`"
msgstr ":c:data:`PyExc_FloatingPointError`"
#: ../Doc/c-api/exceptions.rst:773
msgid ":exc:`FloatingPointError`"
msgstr ":exc:`FloatingPointError`"
#: ../Doc/c-api/exceptions.rst:775
msgid ":c:data:`PyExc_ImportError`"
msgstr ":c:data:`PyExc_ImportError`"
#: ../Doc/c-api/exceptions.rst:775
msgid ":exc:`ImportError`"
msgstr ":exc:`ImportError`"
#: ../Doc/c-api/exceptions.rst:777
msgid ":c:data:`PyExc_IndexError`"
msgstr ":c:data:`PyExc_IndexError`"
#: ../Doc/c-api/exceptions.rst:777
msgid ":exc:`IndexError`"
msgstr ":exc:`IndexError`"
#: ../Doc/c-api/exceptions.rst:779
msgid ":c:data:`PyExc_InterruptedError`"
msgstr ":c:data:`PyExc_InterruptedError`"
#: ../Doc/c-api/exceptions.rst:779
msgid ":exc:`InterruptedError`"
msgstr ":exc:`InterruptedError`"
#: ../Doc/c-api/exceptions.rst:781
msgid ":c:data:`PyExc_IsADirectoryError`"
msgstr ":c:data:`PyExc_IsADirectoryError`"
#: ../Doc/c-api/exceptions.rst:781
msgid ":exc:`IsADirectoryError`"
msgstr ":exc:`IsADirectoryError`"
#: ../Doc/c-api/exceptions.rst:783
msgid ":c:data:`PyExc_KeyError`"
msgstr ":c:data:`PyExc_KeyError`"
#: ../Doc/c-api/exceptions.rst:783
msgid ":exc:`KeyError`"
msgstr ":exc:`KeyError`"
#: ../Doc/c-api/exceptions.rst:785
msgid ":c:data:`PyExc_KeyboardInterrupt`"
msgstr ":c:data:`PyExc_KeyboardInterrupt`"
#: ../Doc/c-api/exceptions.rst:785
msgid ":exc:`KeyboardInterrupt`"
msgstr ":exc:`KeyboardInterrupt`"
#: ../Doc/c-api/exceptions.rst:787
msgid ":c:data:`PyExc_MemoryError`"
msgstr ":c:data:`PyExc_MemoryError`"
#: ../Doc/c-api/exceptions.rst:787
msgid ":exc:`MemoryError`"
msgstr ":exc:`MemoryError`"
#: ../Doc/c-api/exceptions.rst:789
msgid ":c:data:`PyExc_NameError`"
msgstr ":c:data:`PyExc_NameError`"
#: ../Doc/c-api/exceptions.rst:789
msgid ":exc:`NameError`"
msgstr ":exc:`NameError`"
#: ../Doc/c-api/exceptions.rst:791
msgid ":c:data:`PyExc_NotADirectoryError`"
msgstr ":c:data:`PyExc_NotADirectoryError`"
#: ../Doc/c-api/exceptions.rst:791
msgid ":exc:`NotADirectoryError`"
msgstr ":exc:`NotADirectoryError`"
#: ../Doc/c-api/exceptions.rst:793
msgid ":c:data:`PyExc_NotImplementedError`"
msgstr ":c:data:`PyExc_NotImplementedError`"
#: ../Doc/c-api/exceptions.rst:793
msgid ":exc:`NotImplementedError`"
msgstr ":exc:`NotImplementedError`"
#: ../Doc/c-api/exceptions.rst:795
msgid ":c:data:`PyExc_OSError`"
msgstr ":c:data:`PyExc_OSError`"
#: ../Doc/c-api/exceptions.rst:795
msgid ":exc:`OSError`"
msgstr ":exc:`OSError`"
#: ../Doc/c-api/exceptions.rst:797
msgid ":c:data:`PyExc_OverflowError`"
msgstr ":c:data:`PyExc_OverflowError`"
#: ../Doc/c-api/exceptions.rst:797
msgid ":exc:`OverflowError`"
msgstr ":exc:`OverflowError`"
#: ../Doc/c-api/exceptions.rst:799
msgid ":c:data:`PyExc_PermissionError`"
msgstr ":c:data:`PyExc_PermissionError`"
#: ../Doc/c-api/exceptions.rst:799
msgid ":exc:`PermissionError`"
msgstr ":exc:`PermissionError`"
#: ../Doc/c-api/exceptions.rst:801
msgid ":c:data:`PyExc_ProcessLookupError`"
msgstr ":c:data:`PyExc_ProcessLookupError`"
#: ../Doc/c-api/exceptions.rst:801
msgid ":exc:`ProcessLookupError`"
msgstr ":exc:`ProcessLookupError`"
#: ../Doc/c-api/exceptions.rst:803
msgid ":c:data:`PyExc_RecursionError`"
msgstr ":c:data:`PyExc_ReferenceError`"
#: ../Doc/c-api/exceptions.rst:803
msgid ":exc:`RecursionError`"
msgstr ""
#: ../Doc/c-api/exceptions.rst:805
msgid ":c:data:`PyExc_ReferenceError`"
msgstr ":c:data:`PyExc_ReferenceError`"
#: ../Doc/c-api/exceptions.rst:805
msgid ":exc:`ReferenceError`"
msgstr ":exc:`ReferenceError`"
#: ../Doc/c-api/exceptions.rst:805
msgid "\\(2)"
msgstr "\\(2)"
#: ../Doc/c-api/exceptions.rst:807
msgid ":c:data:`PyExc_RuntimeError`"
msgstr ":c:data:`PyExc_RuntimeError`"
#: ../Doc/c-api/exceptions.rst:807
msgid ":exc:`RuntimeError`"
msgstr ":exc:`RuntimeError`"
#: ../Doc/c-api/exceptions.rst:809
msgid ":c:data:`PyExc_SyntaxError`"
msgstr ":c:data:`PyExc_SyntaxError`"
#: ../Doc/c-api/exceptions.rst:809
msgid ":exc:`SyntaxError`"
msgstr ":exc:`SyntaxError`"
#: ../Doc/c-api/exceptions.rst:811
msgid ":c:data:`PyExc_SystemError`"
msgstr ":c:data:`PyExc_SystemError`"
#: ../Doc/c-api/exceptions.rst:811
msgid ":exc:`SystemError`"
msgstr ":exc:`SystemError`"
#: ../Doc/c-api/exceptions.rst:813
msgid ":c:data:`PyExc_TimeoutError`"
msgstr ":c:data:`PyExc_ImportError`"
#: ../Doc/c-api/exceptions.rst:813
msgid ":exc:`TimeoutError`"
msgstr ":exc:`TimeoutError`"
#: ../Doc/c-api/exceptions.rst:815
msgid ":c:data:`PyExc_SystemExit`"
msgstr ":c:data:`PyExc_SystemExit`"
#: ../Doc/c-api/exceptions.rst:815
msgid ":exc:`SystemExit`"
msgstr ":exc:`SystemExit`"
#: ../Doc/c-api/exceptions.rst:817
msgid ":c:data:`PyExc_TypeError`"
msgstr ":c:data:`PyExc_TypeError`"
#: ../Doc/c-api/exceptions.rst:817
msgid ":exc:`TypeError`"
msgstr ":exc:`TypeError`"
#: ../Doc/c-api/exceptions.rst:819
msgid ":c:data:`PyExc_ValueError`"
msgstr ":c:data:`PyExc_ValueError`"
#: ../Doc/c-api/exceptions.rst:819
msgid ":exc:`ValueError`"
msgstr ":exc:`ValueError`"
#: ../Doc/c-api/exceptions.rst:821
msgid ":c:data:`PyExc_ZeroDivisionError`"
msgstr ":c:data:`PyExc_ZeroDivisionError`"
#: ../Doc/c-api/exceptions.rst:821
msgid ":exc:`ZeroDivisionError`"
msgstr ":exc:`ZeroDivisionError`"
#: ../Doc/c-api/exceptions.rst:824
msgid ""
":c:data:`PyExc_BlockingIOError`, :c:data:`PyExc_BrokenPipeError`, :c:data:"
"`PyExc_ChildProcessError`, :c:data:`PyExc_ConnectionError`, :c:data:"
"`PyExc_ConnectionAbortedError`, :c:data:`PyExc_ConnectionRefusedError`, :c:"
"data:`PyExc_ConnectionResetError`, :c:data:`PyExc_FileExistsError`, :c:data:"
"`PyExc_FileNotFoundError`, :c:data:`PyExc_InterruptedError`, :c:data:"
"`PyExc_IsADirectoryError`, :c:data:`PyExc_NotADirectoryError`, :c:data:"
"`PyExc_PermissionError`, :c:data:`PyExc_ProcessLookupError` and :c:data:"
"`PyExc_TimeoutError` were introduced following :pep:`3151`."
msgstr ""
#: ../Doc/c-api/exceptions.rst:834
msgid ":c:data:`PyExc_RecursionError`."
msgstr ":c:data:`PyExc_RecursionError`."
#: ../Doc/c-api/exceptions.rst:838
msgid "These are compatibility aliases to :c:data:`PyExc_OSError`:"
msgstr ""
#: ../Doc/c-api/exceptions.rst:843
msgid ":c:data:`PyExc_EnvironmentError`"
msgstr ":c:data:`PyExc_EnvironmentError`"
#: ../Doc/c-api/exceptions.rst:845
msgid ":c:data:`PyExc_IOError`"
msgstr ":c:data:`PyExc_IOError`"
#: ../Doc/c-api/exceptions.rst:847
msgid ":c:data:`PyExc_WindowsError`"
msgstr ":c:data:`PyExc_WindowsError`"
#: ../Doc/c-api/exceptions.rst:847
msgid "\\(3)"
msgstr "\\(3)"
#: ../Doc/c-api/exceptions.rst:850
msgid "These aliases used to be separate exception types."
msgstr ""
#: ../Doc/c-api/exceptions.rst:899
msgid "Notes:"
msgstr "Notes :"
#: ../Doc/c-api/exceptions.rst:902
msgid "This is a base class for other standard exceptions."
msgstr "C'est la classe de base pour les autres exceptions standards."
#: ../Doc/c-api/exceptions.rst:905
msgid "This is the same as :exc:`weakref.ReferenceError`."
msgstr "Identique à :exc:`weakref.ReferenceError`."
#: ../Doc/c-api/exceptions.rst:908
msgid ""
"Only defined on Windows; protect code that uses this by testing that the "
"preprocessor macro ``MS_WINDOWS`` is defined."
msgstr ""