@@ -55,6 +55,14 @@ msgid ""
5555"an object, a method called, or it is multiplied by another object. These C "
5656"functions are called \" type methods\" ."
5757msgstr ""
58+ ":term:`CPython` ランタイムは Python の全てのオブジェクトを、 Python の全ての"
59+ "オブジェクトの \" 基底型 (base type)\" である :c:expr:`PyObject*` 型の変数と見"
60+ "なします。 :c:type:`PyObject` 構造体自身は :term:`参照カウント <reference "
61+ "count>` と、オブジェクトの \" 型オブジェクト\" へのポインタのみを持ちます。こ"
62+ "こには動作が定義されています; 型オブジェクトは、例えば、ある属性があるオブ"
63+ "ジェクトから検索されたり、メソッドが呼ばれたり、他のオブジェクトによって操作"
64+ "されたりしたときに、どの (C) 関数がインタープリターから呼ばれるのかを決定しま"
65+ "す。これらの C 関数は \" 型メソッド (type method)\" と呼ばれます。"
5866
5967#: ../../extending/newtypes_tutorial.rst:35
6068msgid ""
@@ -134,6 +142,13 @@ msgid ""
134142"abstract away the layout and to enable additional fields in :ref:`debug "
135143"builds <debug-build>`."
136144msgstr ""
145+ "これが Custom オブジェクトの内容です。 ``PyObject_HEAD`` はそれぞれのオブジェ"
146+ "クト構造体の先頭に必須なもので、 :c:type:`PyObject` 型の ``ob_base`` という名"
147+ "前のフィールドを定義します。 :c:type:`PyObject` 型には (それぞれ :c:macro:"
148+ "`Py_TYPE` マクロおよび :c:macro:`Py_REFCNT` マクロからアクセスできる) 型オブ"
149+ "ジェクトへのポインタと参照カウントが格納されています。このマクロが用意されて"
150+ "いる理由は、構造体のレイアウトを抽象化し、デバッグビルドでフィールドを追加で"
151+ "きるようにするためです。"
137152
138153#: ../../extending/newtypes_tutorial.rst:76
139154msgid ""
@@ -323,7 +338,9 @@ msgstr ""
323338
324339#: ../../extending/newtypes_tutorial.rst:207
325340msgid "in a file called :file:`setup.py`; then typing"
326- msgstr "そして、シェルから以下のように入力します"
341+ msgstr ""
342+ "そして :file:`setup.py` というファイルにこのように書き込み、そして、以下のよ"
343+ "うに"
327344
328345#: ../../extending/newtypes_tutorial.rst:213
329346msgid ""
@@ -378,7 +395,7 @@ msgstr ""
378395
379396#: ../../extending/newtypes_tutorial.rst:240
380397msgid "This version of the module has a number of changes."
381- msgstr "このバージョンでは 、いくつもの変更をおこないます。"
398+ msgstr "モジュールのこのバージョンでは 、いくつもの変更をおこないます。"
382399
383400#: ../../extending/newtypes_tutorial.rst:242
384401msgid "We've added an extra include::"
@@ -450,7 +467,7 @@ msgstr ""
450467"``Custom_dealloc`` が ``CustomObject *`` 引数をとると定義しましたが、 "
451468"``tp_dealloc`` 関数のポインタは ``PyObject *`` 引数を受け取ることになっている"
452469"からです。もし明示的に型変換をしなければ、コンパイラが警告を発するでしょう。"
453- "これは、Cにおけるオブジェクト指向のポリモーフィズムです !"
470+ "これは、 C におけるオブジェクト指向のポリモーフィズムです !"
454471
455472#: ../../extending/newtypes_tutorial.rst:292
456473msgid ""
@@ -508,6 +525,9 @@ msgid ""
508525"Since memory allocation may fail, we must check the :c:member:`~PyTypeObject."
509526"tp_alloc` result against ``NULL`` before proceeding."
510527msgstr ""
528+ "メモリ割り当ては失敗するかもしれないので、先に進む前に :c:member:"
529+ "`~PyTypeObject.tp_alloc` の結果が ``NULL`` でないかチェックしなければなりませ"
530+ "ん。"
511531
512532#: ../../extending/newtypes_tutorial.rst:348
513533msgid ""
0 commit comments