python-docs-fr/library/weakref.po

353 lines
13 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/library/weakref.rst:2
msgid ":mod:`weakref` --- Weak references"
msgstr ""
#: ../Doc/library/weakref.rst:14
msgid "**Source code:** :source:`Lib/weakref.py`"
msgstr "**Code source :** :source:`Lib/weakref.py`"
#: ../Doc/library/weakref.rst:18
msgid ""
"The :mod:`weakref` module allows the Python programmer to create :dfn:`weak "
"references` to objects."
msgstr ""
#: ../Doc/library/weakref.rst:24
msgid ""
"In the following, the term :dfn:`referent` means the object which is "
"referred to by a weak reference."
msgstr ""
#: ../Doc/library/weakref.rst:27
msgid ""
"A weak reference to an object is not enough to keep the object alive: when "
"the only remaining references to a referent are weak references, :term:"
"`garbage collection` is free to destroy the referent and reuse its memory "
"for something else. A primary use for weak references is to implement "
"caches or mappings holding large objects, where it's desired that a large "
"object not be kept alive solely because it appears in a cache or mapping."
msgstr ""
#: ../Doc/library/weakref.rst:34
msgid ""
"For example, if you have a number of large binary image objects, you may "
"wish to associate a name with each. If you used a Python dictionary to map "
"names to images, or images to names, the image objects would remain alive "
"just because they appeared as values or keys in the dictionaries. The :"
"class:`WeakKeyDictionary` and :class:`WeakValueDictionary` classes supplied "
"by the :mod:`weakref` module are an alternative, using weak references to "
"construct mappings that don't keep objects alive solely because they appear "
"in the mapping objects. If, for example, an image object is a value in a :"
"class:`WeakValueDictionary`, then when the last remaining references to that "
"image object are the weak references held by weak mappings, garbage "
"collection can reclaim the object, and its corresponding entries in weak "
"mappings are simply deleted."
msgstr ""
#: ../Doc/library/weakref.rst:47
msgid ""
":class:`WeakKeyDictionary` and :class:`WeakValueDictionary` use weak "
"references in their implementation, setting up callback functions on the "
"weak references that notify the weak dictionaries when a key or value has "
"been reclaimed by garbage collection. Most programs should find that using "
"one of these weak dictionary types is all they need -- it's not usually "
"necessary to create your own weak references directly. The low-level "
"machinery used by the weak dictionary implementations is exposed by the :mod:"
"`weakref` module for the benefit of advanced uses."
msgstr ""
#: ../Doc/library/weakref.rst:56
msgid ""
"Not all objects can be weakly referenced; those objects which can include "
"class instances, functions written in Python (but not in C), methods (both "
"bound and unbound), sets, frozensets, file objects, :term:`generator`\\s, "
"type objects, :class:`DBcursor` objects from the :mod:`bsddb` module, "
"sockets, arrays, deques, regular expression pattern objects, and code "
"objects."
msgstr ""
#: ../Doc/library/weakref.rst:62
msgid "Added support for files, sockets, arrays, and patterns."
msgstr ""
#: ../Doc/library/weakref.rst:65
msgid "Added support for thread.lock, threading.Lock, and code objects."
msgstr ""
#: ../Doc/library/weakref.rst:68
msgid ""
"Several built-in types such as :class:`list` and :class:`dict` do not "
"directly support weak references but can add support through subclassing::"
msgstr ""
#: ../Doc/library/weakref.rst:78
msgid ""
"Other built-in types such as :class:`tuple` and :class:`long` do not support "
"weak references even when subclassed."
msgstr ""
#: ../Doc/library/weakref.rst:81
msgid ""
"Extension types can easily be made to support weak references; see :ref:"
"`weakref-support`."
msgstr ""
#: ../Doc/library/weakref.rst:87
msgid ""
"Return a weak reference to *object*. The original object can be retrieved "
"by calling the reference object if the referent is still alive; if the "
"referent is no longer alive, calling the reference object will cause :const:"
"`None` to be returned. If *callback* is provided and not :const:`None`, and "
"the returned weakref object is still alive, the callback will be called when "
"the object is about to be finalized; the weak reference object will be "
"passed as the only parameter to the callback; the referent will no longer be "
"available."
msgstr ""
#: ../Doc/library/weakref.rst:95
msgid ""
"It is allowable for many weak references to be constructed for the same "
"object. Callbacks registered for each weak reference will be called from the "
"most recently registered callback to the oldest registered callback."
msgstr ""
#: ../Doc/library/weakref.rst:99
msgid ""
"Exceptions raised by the callback will be noted on the standard error "
"output, but cannot be propagated; they are handled in exactly the same way "
"as exceptions raised from an object's :meth:`__del__` method."
msgstr ""
#: ../Doc/library/weakref.rst:103
msgid ""
"Weak references are :term:`hashable` if the *object* is hashable. They will "
"maintain their hash value even after the *object* was deleted. If :func:"
"`hash` is called the first time only after the *object* was deleted, the "
"call will raise :exc:`TypeError`."
msgstr ""
#: ../Doc/library/weakref.rst:108
msgid ""
"Weak references support tests for equality, but not ordering. If the "
"referents are still alive, two references have the same equality "
"relationship as their referents (regardless of the *callback*). If either "
"referent has been deleted, the references are equal only if the reference "
"objects are the same object."
msgstr ""
#: ../Doc/library/weakref.rst:113
msgid ""
"This is now a subclassable type rather than a factory function; it derives "
"from :class:`object`."
msgstr ""
#: ../Doc/library/weakref.rst:120
msgid ""
"Return a proxy to *object* which uses a weak reference. This supports use "
"of the proxy in most contexts instead of requiring the explicit "
"dereferencing used with weak reference objects. The returned object will "
"have a type of either ``ProxyType`` or ``CallableProxyType``, depending on "
"whether *object* is callable. Proxy objects are not :term:`hashable` "
"regardless of the referent; this avoids a number of problems related to "
"their fundamentally mutable nature, and prevent their use as dictionary "
"keys. *callback* is the same as the parameter of the same name to the :func:"
"`ref` function."
msgstr ""
#: ../Doc/library/weakref.rst:132
msgid ""
"Return the number of weak references and proxies which refer to *object*."
msgstr ""
#: ../Doc/library/weakref.rst:137
msgid ""
"Return a list of all weak reference and proxy objects which refer to "
"*object*."
msgstr ""
#: ../Doc/library/weakref.rst:142
msgid ""
"Mapping class that references keys weakly. Entries in the dictionary will "
"be discarded when there is no longer a strong reference to the key. This "
"can be used to associate additional data with an object owned by other parts "
"of an application without adding attributes to those objects. This can be "
"especially useful with objects that override attribute accesses."
msgstr ""
#: ../Doc/library/weakref.rst:150
msgid ""
"Caution: Because a :class:`WeakKeyDictionary` is built on top of a Python "
"dictionary, it must not change size when iterating over it. This can be "
"difficult to ensure for a :class:`WeakKeyDictionary` because actions "
"performed by the program during iteration may cause items in the dictionary "
"to vanish \"by magic\" (as a side effect of garbage collection)."
msgstr ""
#: ../Doc/library/weakref.rst:156
msgid ""
":class:`WeakKeyDictionary` objects have the following additional methods. "
"These expose the internal references directly. The references are not "
"guaranteed to be \"live\" at the time they are used, so the result of "
"calling the references needs to be checked before being used. This can be "
"used to avoid creating references that will cause the garbage collector to "
"keep the keys around longer than needed."
msgstr ""
#: ../Doc/library/weakref.rst:166
msgid "Return an iterable of the weak references to the keys."
msgstr ""
#: ../Doc/library/weakref.rst:173
msgid "Return a list of weak references to the keys."
msgstr ""
#: ../Doc/library/weakref.rst:180
msgid ""
"Mapping class that references values weakly. Entries in the dictionary will "
"be discarded when no strong reference to the value exists any more."
msgstr ""
#: ../Doc/library/weakref.rst:185
msgid ""
"Caution: Because a :class:`WeakValueDictionary` is built on top of a Python "
"dictionary, it must not change size when iterating over it. This can be "
"difficult to ensure for a :class:`WeakValueDictionary` because actions "
"performed by the program during iteration may cause items in the dictionary "
"to vanish \"by magic\" (as a side effect of garbage collection)."
msgstr ""
#: ../Doc/library/weakref.rst:191
msgid ""
":class:`WeakValueDictionary` objects have the following additional methods. "
"These method have the same issues as the :meth:`iterkeyrefs` and :meth:"
"`keyrefs` methods of :class:`WeakKeyDictionary` objects."
msgstr ""
#: ../Doc/library/weakref.rst:198
msgid "Return an iterable of the weak references to the values."
msgstr ""
#: ../Doc/library/weakref.rst:205
msgid "Return a list of weak references to the values."
msgstr ""
#: ../Doc/library/weakref.rst:212
msgid ""
"Set class that keeps weak references to its elements. An element will be "
"discarded when no strong reference to it exists any more."
msgstr ""
#: ../Doc/library/weakref.rst:220
msgid "The type object for weak references objects."
msgstr ""
#: ../Doc/library/weakref.rst:225
msgid "The type object for proxies of objects which are not callable."
msgstr ""
#: ../Doc/library/weakref.rst:230
msgid "The type object for proxies of callable objects."
msgstr ""
#: ../Doc/library/weakref.rst:235
msgid ""
"Sequence containing all the type objects for proxies. This can make it "
"simpler to test if an object is a proxy without being dependent on naming "
"both proxy types."
msgstr ""
#: ../Doc/library/weakref.rst:242
msgid ""
"Exception raised when a proxy object is used but the underlying object has "
"been collected. This is the same as the standard :exc:`ReferenceError` "
"exception."
msgstr ""
#: ../Doc/library/weakref.rst:249
msgid ":pep:`205` - Weak References"
msgstr ""
#: ../Doc/library/weakref.rst:249
msgid ""
"The proposal and rationale for this feature, including links to earlier "
"implementations and information about similar features in other languages."
msgstr ""
#: ../Doc/library/weakref.rst:256
msgid "Weak Reference Objects"
msgstr "Objets à références faibles"
#: ../Doc/library/weakref.rst:258
msgid ""
"Weak reference objects have no attributes or methods, but do allow the "
"referent to be obtained, if it still exists, by calling it:"
msgstr ""
#: ../Doc/library/weakref.rst:271
msgid ""
"If the referent no longer exists, calling the reference object returns :"
"const:`None`:"
msgstr ""
#: ../Doc/library/weakref.rst:278
msgid ""
"Testing that a weak reference object is still live should be done using the "
"expression ``ref() is not None``. Normally, application code that needs to "
"use a reference object should follow this pattern::"
msgstr ""
#: ../Doc/library/weakref.rst:291
msgid ""
"Using a separate test for \"liveness\" creates race conditions in threaded "
"applications; another thread can cause a weak reference to become "
"invalidated before the weak reference is called; the idiom shown above is "
"safe in threaded applications as well as single-threaded applications."
msgstr ""
#: ../Doc/library/weakref.rst:296
msgid ""
"Specialized versions of :class:`ref` objects can be created through "
"subclassing. This is used in the implementation of the :class:"
"`WeakValueDictionary` to reduce the memory overhead for each entry in the "
"mapping. This may be most useful to associate additional information with a "
"reference, but could also be used to insert additional processing on calls "
"to retrieve the referent."
msgstr ""
#: ../Doc/library/weakref.rst:302
msgid ""
"This example shows how a subclass of :class:`ref` can be used to store "
"additional information about an object and affect the value that's returned "
"when the referent is accessed::"
msgstr ""
#: ../Doc/library/weakref.rst:329
msgid "Example"
msgstr "Exemple"
#: ../Doc/library/weakref.rst:331
msgid ""
"This simple example shows how an application can use object IDs to retrieve "
"objects that it has seen before. The IDs of the objects can then be used in "
"other data structures without forcing the objects to remain alive, but the "
"objects can still be retrieved by ID if they do."
msgstr ""