列挙は、曜日の値などの定数値のリストを表します。その値やシンボリック名を定義する列挙タイプを宣言できます。その後、値を名前別に参照できます。
例
enum-id Action public.
working-storage section.
01 binary-long. *> 列挙の基本的なタイプ
*> binary-long がデフォルト
78 Starter value 0. *> 列挙値をレベル 78 項目で宣言する
78 Stop value 1.
78 Rewind value 2.
78 Forward value 3.
end enum.
列挙のサンプルも参照してください。このサンプルは、[スタート > すべてのプログラム > Micro Focus Enterprise Developer > Samples] の COBOL for JVM の下にあります。
その他の情報
コンパイラは、列挙の値を含む配列を戻す 'values' という静的メソッドを追加します。このメソッドと PERFORM THROUGH コンストラクトを一緒に使用して、列挙タイプの値を反復できます。
enum-header の後には、次の内容で構成される作業場所節が続きます。
- あらかじめ定義されたいずれかのタイプの単一数値フィールド。デフォルトでは binary-long になります。
- 列挙の値を定義する任意の数のレベル 78 項目。最初の項目のデフォルト値は 0 で、以降の項目の値はデフォルトで増分されます。
注:
JVM ではなく .NET 用の COBOL では、属性 System.FlagsAttribute を設定する必要があります。列挙にこの属性が適用されると、他とは異なる値がビット設定と見なされるため、これらの値を組み合わせることができます。次に例を示します。
enum-id DaysOfWeek attribute System.FlagsAttribute.
注:
JVM 用の COBOL では、Java と同様に、列挙宣言で列挙クラスが定義されます。このクラスは、java.lang.Enum から派生するクラスです。Java では、この列挙クラスに、ユーザーが明示的に宣言するメソッドや他のフィールドをインクルードできますが、 これは COBOL では許可されません。