プロシージャー・インターフェース
プロトタイプ・プログラムまたはプロトタイプ・プロシージャーに呼び出しパラメーターまたは戻り値があった場合には、
メイン・ソース・セクション (メイン・プロシージャーの場合) かサブプロシージャー・セクションのいずれかにプロシージャー・インターフェース定義を作成しなければなりません。
プロシージャー・インターフェース定義は、プロシージャーの定義の中のプロトタイプ情報を繰り返します。
これは、プロシージャーへの入り口パラメーターを宣言し、プロシージャーの内部
定義を外部定義 (プロトタイプ) と確実に整合させるために使用されます。
プロシージャー・インターフェース定義に適用される規則は、次のとおりです。
- 7 から 21
桁目に指定されるプロシージャー・インターフェースの名前は、メイン・プロシージャーの場合は必須です。サブプロシージャーの場合には、これはオプションです。これを指定する場合には、対応するプロトタイプ定義の 7 から 21 桁目に指
定された名前と一致していなければなりません。
- 「定義タイプ」記入項目 (24 から 25 桁目) に PI を指定してください。 プロシージャー・インターフェース定義は、定義仕様書のどこにでも指定するこ
とができます。 メイン・プロシージャーでは、プロシージャー・インターフェースの前にそれが参照す
るプロトタイプがなければなりません。 プロシージャーが値を戻す場合、あるいはパラメーターを含んでいる場合には、
サブプロシージャーの中にプロシージャー・インターフェースが必要です。
そうでない場合には、これはオプションです。
- 24 から 25 桁目のブランクによって示されるパラメーター定義は、すべて PI の指定
の直後になければなりません。
- パラメーター名を指定しなければなりませんが、それがプロトタイプに指定
された名前と一致している必要はありません。
- データ・タイプ、長さ、および次元を含むパラメーターのすべての属性が、
対応するプロトタイプ定義の中のものと正確に一致していなければなりません。
- パラメーターがデータ構造であることを示すには、
LIKEDS キーワードを使用して、別のデータ構造と同じサブフィールドを持つパラメーターを定義します。
- PI の仕様およびパラメーターの仕様に指定されたキーワードは、プロトタイ
プに指定されたものと一致していなければなりません。
ヒント
モジュールにプロトタイプ・プログラムまたはプロトタイプ・プロシージャーに対する呼び出しが含まれている場合には、呼び出したい各プログラムおよびプロシージャーごとにプロトタイプ定義がなければなりません。
必要なコーディングを最小にする 1 つの方法は、共用プロトタイプを /COPY ファ
イルに保管することです。
プロトタイプ・プログラムまたはプロシージャーを他のユーザーに提供する場合
には、必ずプロトタイプも (/COPY ファイルに入れて) 提供してください。
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.