EXIT METHOD ステートメントは、呼び出されるメソッドの終わりを指定します。
| フォーマット |
|---|
|
EXIT METHOD はメソッドの手続き部にしか指定できません。EXIT METHOD を使用すると、メソッドの実行が終了され、制御は呼び出しステートメントに戻ります。内包メソッドで手続き部 RETURNING 句を指定している場合、その RETURNING 句によって参照されるデータ項目の値が、メソッド呼び出しの結果となります。
呼び出しごとに、メソッド特定のデータを最後に使われた状態 にする必要がある場合は、 それをメソッド作業用ストレージ内で宣言します。呼び出しごとに、メソッド特定のデータを初期 状態にする必要がある場合は、それをメソッド・ローカル・ストレージ内で宣言します。
制御がメソッド定義内の EXIT METHOD ステートメントに達した場合、制御は呼び出し側プログラムまたはメソッド内の INVOKE ステートメントのすぐ後の点に戻ります。呼び出し側プログラムまたはメソッドの状態は、 それが INVOKE ステートメントを実行した時点で存在していた状態と同じです。
ただしデータ項目の内容、および呼び出し側プログラム (またはメソッド) と 呼び出されるメソッド間で共用されたデータ・ファイルの内容は、 変更されている可能性があります。呼び出されるメソッドの状態は変更されませんが、メソッドによって実行されたすべての PERFORM ステートメントの範囲の終わりに達したとみなされる場合は除きます。
EXIT METHOD ステートメントを一連の命令ステートメントの最後のステートメントにする必要はありませんが、EXIT METHOD 以降のステートメントは実行されなくなります。
呼び出されるメソッド内に次に実行可能なステートメントがない場合は、 暗黙の EXIT METHOD ステートメントが実行されます。