Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 11 additions & 12 deletions doc/src/sgml/tableam.sgml
Original file line number Diff line number Diff line change
Expand Up @@ -56,16 +56,16 @@
<type>table_am_handler</type>. The argument is a dummy value that simply
serves to prevent handler functions from being called directly from SQL commands.
-->
《機械翻訳》テーブルアクセスメソッドハンドラ関数は、タイプ<type>内部</type>の単一の引数を受け入れ、結果に対して擬似タイプ<type>table_am_handler</type>を宣言する必要があります
引数は、ハンドラ関数がSQLコマンドから直接呼び出されないようにするためだけに使用されるダミー値です
テーブルアクセスメソッドのハンドラ関数は<type>internal</type>型の引数を一つ取り、<type>table_am_handler</type>疑似型を返すように宣言されなければなりません
この引数はハンドラ関数がSQLコマンドから直接呼び出されるのを防ぐためだけのダミーの値です
</para>

<para>
<!--
Here is how an extension SQL script file might create a table access
method handler:
-->
《機械翻訳》次に、extension SQLスクリプトファイルがメソッドハンドラテーブル・アクセスを作成する方法を示します
拡張SQLスクリプトファイルでテーブルアクセスメソッドのハンドラを作成する方法を以下に示します
</para>

<programlisting>
Expand All @@ -84,18 +84,17 @@ CREATE ACCESS METHOD myam TYPE TABLE HANDLER my_tableam_handler;
value needs to be of server lifetime, which is typically achieved by
defining it as a <literal>static const</literal> variable in global scope.
-->
《機械翻訳》関数の結果は、タイプ構造体<structname>TableAmRoutine</structname>へのポインタである必要があります。
これは、テーブルアクセスメソッドをmakeが使用するためにコアコードニーズが知っているすべてのものを包含します。
戻り値のニーズはサーバの寿命になります。
これは通常、グローバルスコープで<literal>static const</literal>変数として定義することで実現されます。
関数の結果は<structname>TableAmRoutine</structname>型の構造体へのポインタでなければならず、そこにはテーブルアクセスメソッドを使用するためにコアコードが知る必要のあるすべてのことが含まれます。
戻り値は、サーバの存続期間中は有効である必要があります。
これは通常、グローバルスコープで<literal>static const</literal>変数として定義することによって達成されます。
</para>

<para>
<!--
Here is how a source file with the table access method handler might
look like:
-->
《機械翻訳》テーブルアクセスメソッドハンドラのあるソースファイルは次のようになります
テーブルアクセスメソッドのハンドラを含むソースファイルは次のようになります
</para>

<programlisting><![CDATA[
Expand Down Expand Up @@ -136,10 +135,10 @@ my_tableam_handler(PG_FUNCTION_ARGS)
please refer to the <ulink url="https://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/include/access/tableam.h;hb=HEAD">
<filename>src/include/access/tableam.h</filename></ulink> file.
-->
《機械翻訳》<structname>TableAmRoutine</structname>構造体はアクセス・メソッドの<firstterm>API構造体</firstterm>とも呼ばれ、コールバックを使用してアクセス・メソッドの動作を定義します
これらのコールバックはプレーンC関数へのポインタであり、可視ではなく、SQLレベルで呼び出せるものでもありません
すべてのコールバックとその動作は<structname>TableAmRoutine</structname>構造体で定義されます(コールバックの要件を定義するコメントが構造体内部にあります)
ほとんどのコールバックにはラッパー関数があり、テーブルアクセスメソッドのユーザ(実装者ではなく)のビューポイントからドキュメント化されています
アクセスメソッドの<firstterm>API構造体</firstterm>とも呼ばれる<structname>TableAmRoutine</structname>構造体は、コールバックを使ってアクセスメソッドの振る舞いを定義します
これらのコールバックは通常のC関数へのポインタで、SQLレベルでは見ることも呼び出すこともできません
全てのコールバックとその振る舞いは、<structname>TableAmRoutine</structname>構造体(とコールバックの必要性を説明する構造体内のコメント)で定義されます
たいていのコールバックはラッパー関数を持ち、これらはテーブルアクセスメソッドの(開発者ではなく)使用者の立場でドキュメントに記載されています
詳細は<ulink url="https://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/include/access/tableam.h;hb=HEAD"><filename>src/include/access/tableam.h</filename></ulink>ファイルを参照してください。
</para>

Expand Down