前ページへ 翻訳集団の概念 見出し部 次ページへ

第4章: 翻訳集団の定義の概要

4.1 はじめに

この章ではCOBOL言語の基本的な定義について説明する。

まず最初に翻訳集団全体の構造を説明する。翻訳集団の各構成要素は4つの部に分かれている。具体的には、見出し部、環境部、データ部、手続き部がある。

したがって、この資料もそれらの部別に構成されている。各部の中では、COBOLの節ごとに見出しを付けて説明する。項は、参照しやすいように、アルファベット順に配列してある。組み込み関数およびCOBOLの動詞は項のレベルに含める。

追加の言語機能として、DBCS、報告書作成、通信、SQLもサポートされている。それらについては、マニュアル『言語リファレンス - 追加トピック』を参照。

4.2 翻訳集団の構造

翻訳集団は一連のソース単位である。ソース単位の中に他のソース単位を含めることができる。他のソース単位に含まれるソース単位から、親のソース単位の資源の一部を参照できる。

4.2.1 構造

翻訳集団にはいくつかのソース単位を含めることができる。含まれるソース単位が1つもないこともありえる。

ソース単位は見出し部で始まる。 その中に別のソース単位を含みうる。

ソース単位の文、記述項、節は4つの部にグループ化される。各部は下記の順に配列される。 ただし、コンパイラ指令、原始文操作文、 終了見出しは例外である。

  1. 見出し部
  2. 環境部
  3. データ部
  4. 手続き部

ソース単位中の部の開始は適切な部の見出しによって示される。 見出し部の開始は、見出し部内で許されている段落の見出しのどれかによっても示すことができる。

ソース単位中の部の終了は下記のどれかひとつによって示される。

  1. そのソース単位中の次の部の開始
  2. そのソース単位の終了見出し
  3. それ以上原始行を記述できない物理位置の後

ソース単位の終了は 終了見出し(指定された場合)、または翻訳集団内に後続の原始行が存在しないことによって示される

ソース単位Bが 他のソース単位Aに含まれるとき、包含関係は直接的でも間接的でもかまわない。Aに含まれBを含む他のソース単位が存在しない場合、ソース単位Bはソース単位Aに直接的に含まれる。Aに含まれBを含む他のソース単位が存在する場合、ソース単位Bはソース単位Aに間接的に含まれる。

他のソース単位に直接的にまたは間接的に含まれるソース単位は、この仕様においては、別のソース単位とみなされる。ただし、入れ子になったソース単位は親のソース単位中に定義されている資源の一部を追加的に参照することができる。

他のソース単位に含まれるソース単位をコンパイルした結果の実行用プログラム・コードは、この仕様においては、親のソース単位をコンパイルした結果の実行用プログラム・コードと不可分であるとみなされる。

翻訳単位は他のソース単位に含まれていないソース単位である。翻訳集団内で翻訳単位の前または後ろに他の翻訳単位が来ることもある。

ソース要素はネストされているソース単位を除いたソース単位である。

ランタイム要素はソース要素をコンパイルした結果である。

ランタイム・モジュールは翻訳単位をコンパイルした結果である。

4.2.1.1 COBOL翻訳集団

一般形式

構文規則
  1. 翻訳集団内では、呼び出しプロトタイプは他のすべての型のソース単位の前に置かなければならない。

  2. クラス定義中のメソッドのデータ部には通信節が含まれていてはならない。

  3. インターフェイス定義中のメソッドのデータ部には連絡節だけを含めることができる。

  4. インターフェイス定義中のメソッドのデータ部には手続き部だけを含めなければならない。

  5. 呼出しプロトタイプにおいては、手続き部の見出しは手続き部の見出しの書き方2の規則に準拠していなければならず、ENTRY文を書くときはENRTY文の書き方2の規則に従わなければならない。

一般規則
  1. 呼出しプロトタイプにおいては、データ部内の節は連絡節以外はすべて無視され、手続き部は手続き部の見出しとENTRY文以外は無視される。

4.2.2 終了見出し

終了見出しは定義の終わりを示す。

一般形式
一般規則
  1. 他のソース単位を含むソース単位、他のソース単位に含まれるソース単位、他のソース単位に先行するソース単位には、終了見出しを付けなければならない。

  2. プログラム名-1は先行するプログラム名段落中に宣言されているプログラム名と同じでなければならない。

  3. プログラム名-1のプログラム名段落とプログラム終了見出しとの間に特定のプログラム名を宣言したプログラム名段落を記述する場合、プログラム名を参照するプログラム終了見出しはプログラム名-1を参照するプログラム終了見出しより前に来なければならない。

  4. クラス名-1は対応するクラス名段落中に宣言されているクラス名と同じでなければならない。

  5. メソッド名-1は対応するメソッド名段落中に宣言されているメソッド名と同じでなければならない。 メソッド名段落中にPROPERTY指定を指定した場合、メソッド名-1を省く。

  6. インターフェイス名-1は対応するインターフェイス名段落中に宣言されているインターフェイス名と同じでなければならない。

  7. 終了見出しによって終わりを区切られているソース単位が他のソース単位に含まれている場合、次の文は別のソース単位の最初の文か親のソース単位の終わりを区切る他の終了見出しのどちらかでなければならない。

  8. 終了見出しによって終わりを区切られているソース単位が他のソース単位に含まれていない場合、次の文は別の翻訳単位の最初の文でなければならない。

一般規則
  1. 終了見出しは指定したソース単位の終了を示す。


Copyright © 2002 Micro Focus International Limited. All rights reserved.
本書、ならびに使用されている固有の商標と商品名は国際法によって保護されています。

前ページへ 翻訳集団の概念 見出し部 次ページへ