@@ -13,7 +13,7 @@ msgid ""
1313msgstr ""
1414"Project-Id-Version : Python 3.9\n "
1515"Report-Msgid-Bugs-To : \n "
16- "POT-Creation-Date : 2021-01-01 05:02 +0000\n "
16+ "POT-Creation-Date : 2021-05-29 06:28 +0000\n "
1717"PO-Revision-Date : 2017-02-16 17:35+0000\n "
1818"Last-Translator : tomo, 2020\n "
1919"Language-Team : Japanese (https://www.transifex.com/python-doc/teams/5390/ja/)\n "
@@ -82,23 +82,41 @@ msgstr ""
8282"他のコンテナへの参照が入るかもしれないフィールドが全て初期化されたら、すぐに :c:func:`PyObject_GC_Track` "
8383"を呼び出さなければなりません。"
8484
85- #: ../../c-api/gcsupport.rst:39
85+ #: ../../c-api/gcsupport.rst:37
86+ msgid ""
87+ "If a type adds the Py_TPFLAGS_HAVE_GC, then it *must* implement at least a "
88+ ":c:member:`~PyTypeObject.tp_traverse` handler or explicitly use one from its"
89+ " subclass or subclasses."
90+ msgstr ""
91+
92+ #: ../../c-api/gcsupport.rst:41
93+ msgid ""
94+ "When calling :c:func:`PyType_Ready` or some of the APIs that indirectly call"
95+ " it like :c:func:`PyType_FromSpecWithBases` or :c:func:`PyType_FromSpec` the"
96+ " interpreter will automatically populate the "
97+ ":c:member:`~PyTypeObject.tp_flags`, :c:member:`~PyTypeObject.tp_traverse` "
98+ "and :c:member:`~PyTypeObject.tp_clear` fields if the type inherits from a "
99+ "class that implements the garbage collector protocol and the child class "
100+ "does *not* include the :const:`Py_TPFLAGS_HAVE_GC` flag."
101+ msgstr ""
102+
103+ #: ../../c-api/gcsupport.rst:51
86104msgid ""
87105"Analogous to :c:func:`PyObject_New` but for container objects with the "
88106":const:`Py_TPFLAGS_HAVE_GC` flag set."
89107msgstr ""
90108":c:func:`PyObject_New` に似ていますが、 :const:`Py_TPFLAGS_HAVE_GC` "
91109"のセットされたコンテナオブジェクト用です。"
92110
93- #: ../../c-api/gcsupport.rst:45
111+ #: ../../c-api/gcsupport.rst:57
94112msgid ""
95113"Analogous to :c:func:`PyObject_NewVar` but for container objects with the "
96114":const:`Py_TPFLAGS_HAVE_GC` flag set."
97115msgstr ""
98116":c:func:`PyObject_NewVar` に似ていますが、 :const:`Py_TPFLAGS_HAVE_GC` "
99117"のセットされたコンテナオブジェクト用です。"
100118
101- #: ../../c-api/gcsupport.rst:51
119+ #: ../../c-api/gcsupport.rst:63
102120msgid ""
103121"Resize an object allocated by :c:func:`PyObject_NewVar`. Returns the "
104122"resized object or ``NULL`` on failure. *op* must not be tracked by the "
@@ -108,7 +126,7 @@ msgstr ""
108126"リサイズされたオブジェクトを返します。失敗すると ``NULL`` を返します。\n"
109127"*op* はコレクタに追跡されていてはなりません。"
110128
111- #: ../../c-api/gcsupport.rst:57
129+ #: ../../c-api/gcsupport.rst:69
112130msgid ""
113131"Adds the object *op* to the set of container objects tracked by the "
114132"collector. The collector can run at unexpected times so objects must be "
@@ -121,64 +139,64 @@ msgstr ""
121139" :c:member:`~PyTypeObject.tp_traverse` "
122140"の対象となる全てのフィールドが正しい状態になってすぐに、たいていはコンストラクタの末尾付近で、呼び出すべきです。"
123141
124- #: ../../c-api/gcsupport.rst:66
142+ #: ../../c-api/gcsupport.rst:78
125143msgid ""
126144"Returns non-zero if the object implements the garbage collector protocol, "
127145"otherwise returns 0."
128146msgstr ""
129147
130- #: ../../c-api/gcsupport.rst:69
148+ #: ../../c-api/gcsupport.rst:81
131149msgid ""
132150"The object cannot be tracked by the garbage collector if this function "
133151"returns 0."
134152msgstr ""
135153
136- #: ../../c-api/gcsupport.rst:74
154+ #: ../../c-api/gcsupport.rst:86
137155msgid ""
138156"Returns 1 if the object type of *op* implements the GC protocol and *op* is "
139157"being currently tracked by the garbage collector and 0 otherwise."
140158msgstr ""
141159
142- #: ../../c-api/gcsupport.rst:77
160+ #: ../../c-api/gcsupport.rst:89
143161msgid "This is analogous to the Python function :func:`gc.is_tracked`."
144162msgstr ""
145163
146- #: ../../c-api/gcsupport.rst:84
164+ #: ../../c-api/gcsupport.rst:96
147165msgid ""
148166"Returns 1 if the object type of *op* implements the GC protocol and *op* has"
149167" been already finalized by the garbage collector and 0 otherwise."
150168msgstr ""
151169
152- #: ../../c-api/gcsupport.rst:87
170+ #: ../../c-api/gcsupport.rst:99
153171msgid "This is analogous to the Python function :func:`gc.is_finalized`."
154172msgstr ""
155173
156- #: ../../c-api/gcsupport.rst:91
174+ #: ../../c-api/gcsupport.rst:103
157175msgid ""
158176"Similarly, the deallocator for the object must conform to a similar pair of "
159177"rules:"
160178msgstr "同様に、オブジェクトのメモリ解放関数も以下の二つの規則に適合しなければなりません:"
161179
162- #: ../../c-api/gcsupport.rst:94
180+ #: ../../c-api/gcsupport.rst:106
163181msgid ""
164182"Before fields which refer to other containers are invalidated, "
165183":c:func:`PyObject_GC_UnTrack` must be called."
166184msgstr ""
167185"他のコンテナを参照しているフィールドを無効化する前に、 :c:func:`PyObject_GC_UnTrack` を呼び出さなければなりません。"
168186
169- #: ../../c-api/gcsupport.rst:97
187+ #: ../../c-api/gcsupport.rst:109
170188msgid ""
171189"The object's memory must be deallocated using :c:func:`PyObject_GC_Del`."
172190msgstr "オブジェクトのメモリは :c:func:`PyObject_GC_Del` で解放しなければなりません。"
173191
174- #: ../../c-api/gcsupport.rst:102
192+ #: ../../c-api/gcsupport.rst:114
175193msgid ""
176194"Releases memory allocated to an object using :c:func:`PyObject_GC_New` or "
177195":c:func:`PyObject_GC_NewVar`."
178196msgstr ""
179197":c:func:`PyObject_GC_New` や :c:func:`PyObject_GC_NewVar` を使って確保されたメモリを解放します。"
180198
181- #: ../../c-api/gcsupport.rst:108
199+ #: ../../c-api/gcsupport.rst:120
182200msgid ""
183201"Remove the object *op* from the set of container objects tracked by the "
184202"collector. Note that :c:func:`PyObject_GC_Track` can be called again on "
@@ -192,21 +210,21 @@ msgstr ""
192210":c:member:`~PyTypeObject.tp_traverse` ハンドラの対象となるフィールドが正しくない状態になる前に、デアロケータ "
193211"(:c:member:`~PyTypeObject.tp_dealloc` ハンドラ) はオブジェクトに対して、この関数を呼び出すべきです。"
194212
195- #: ../../c-api/gcsupport.rst:117
213+ #: ../../c-api/gcsupport.rst:129
196214msgid ""
197215"The :c:func:`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros "
198216"have been removed from the public C API."
199217msgstr ""
200218":c:func:`_PyObject_GC_TRACK` マクロと :c:func:`_PyObject_GC_UNTRACK` マクロは公開 C "
201219"API から外されました。"
202220
203- #: ../../c-api/gcsupport.rst:120
221+ #: ../../c-api/gcsupport.rst:132
204222msgid ""
205223"The :c:member:`~PyTypeObject.tp_traverse` handler accepts a function "
206224"parameter of this type:"
207225msgstr ":c:member:`~PyTypeObject.tp_traverse` ハンドラはこの型の関数パラメータを受け取ります:"
208226
209- #: ../../c-api/gcsupport.rst:125
227+ #: ../../c-api/gcsupport.rst:137
210228msgid ""
211229"Type of the visitor function passed to the "
212230":c:member:`~PyTypeObject.tp_traverse` handler. The function should be called"
@@ -221,13 +239,13 @@ msgstr ""
221239"のコアはいくつかのビジター関数を使って、ゴミとなった循環参照を検出する仕組みを実装します; "
222240"ユーザが自身のためにビジター関数を書く必要が出てくることはないでしょう。"
223241
224- #: ../../c-api/gcsupport.rst:132
242+ #: ../../c-api/gcsupport.rst:144
225243msgid ""
226244"The :c:member:`~PyTypeObject.tp_traverse` handler must have the following "
227245"type:"
228246msgstr ":c:member:`~PyTypeObject.tp_traverse` ハンドラは次の型を持っていなければなりません:"
229247
230- #: ../../c-api/gcsupport.rst:137
248+ #: ../../c-api/gcsupport.rst:149
231249msgid ""
232250"Traversal function for a container object. Implementations must call the "
233251"*visit* function for each object directly contained by *self*, with the "
@@ -242,7 +260,7 @@ msgstr ""
242260"*visit* 関数は ``NULL`` オブジェクトを引数に渡して呼び出してはなりません。\n"
243261"*visit* が非ゼロの値を返す場合、エラーが発生し、戻り値をそのまま返すようにしなければなりません。"
244262
245- #: ../../c-api/gcsupport.rst:144
263+ #: ../../c-api/gcsupport.rst:156
246264msgid ""
247265"To simplify writing :c:member:`~PyTypeObject.tp_traverse` handlers, a "
248266":c:func:`Py_VISIT` macro is provided. In order to use this macro, the "
@@ -253,7 +271,7 @@ msgstr ""
253271"マクロが提供されています。このマクロを使うためには、 :c:member:`~PyTypeObject.tp_traverse` "
254272"の実装関数の引数は、一文字も違わず *visit* と *arg* でなければなりません:"
255273
256- #: ../../c-api/gcsupport.rst:151
274+ #: ../../c-api/gcsupport.rst:163
257275msgid ""
258276"If *o* is not ``NULL``, call the *visit* callback, with arguments *o* and "
259277"*arg*. If *visit* returns a non-zero value, then return it. Using this "
@@ -263,15 +281,15 @@ msgstr ""
263281"*visit* がゼロでない値を返した場合、その値を返します。\n"
264282"このマクロを使うと、 :c:member:`~PyTypeObject.tp_traverse` ハンドラは次のようになります::"
265283
266- #: ../../c-api/gcsupport.rst:164
284+ #: ../../c-api/gcsupport.rst:176
267285msgid ""
268286"The :c:member:`~PyTypeObject.tp_clear` handler must be of the "
269287":c:type:`inquiry` type, or ``NULL`` if the object is immutable."
270288msgstr ""
271289":c:member:`~PyTypeObject.tp_clear` ハンドラは :c:type:`inquiry` 型であるか、オブジェクトが不変 "
272290"(immutable) な場合は ``NULL`` でなければなりません。"
273291
274- #: ../../c-api/gcsupport.rst:170
292+ #: ../../c-api/gcsupport.rst:182
275293msgid ""
276294"Drop references that may have created reference cycles. Immutable objects "
277295"do not have to define this method since they can never directly create "
0 commit comments