値の決定

EVALUATE ステートメントの実行は、 各選択サブジェクトおよび選択オブジェクトが評価されて、これらに数値または非数値、数値または非数値の範囲、あるいは真理値が割り当てられたかのように行われます。 これらの値は、次のようにして決定されます。
  • ID-1、ID-2、… で指定された選択サブジェクト、および NOT 句や THRU 句のない ID-3 または ID-5 (あるいはその両方) で指定された選択オブジェクトはすべて、それらが参照するデータ項目の値とクラスが割り当てられます。
  • リテラル-1、リテラル-2、… で指定された選択サブジェクト、および NOT 句や THRU 句のないリテラル-3 またはリテラル-5 (あるいはその両方) で指定された選択オブジェクトはすべて、指定されたリテラルの値とクラスが割り当てられます。 リテラル-3 またはリテラル-5 (あるいはその両方) が表意定数 ZERO である場合には、対応する選択サブジェクトのクラスがこれに割り当てられます。
  • 式-1、式-2、… が算術式として指定されている選択サブジェクト、 そして算術式-1 または算術式-3 (あるいはその両方) が指定されている、NOT 句や THRU 句のない選択オブジェクトはすべて、 算術式の評価の規則に従って数字を割り当てられます。 (算術式を参照。)
    注: ある算術式を別の算術式と比較する方法はシステム特有のものです。 比較の真または偽の状況は、該当するシステムで作成される中間結果に左右されることがあります。
  • 式-1、式-2、... が条件式として指定されている選択サブジェクト、そして条件-1 または条件-2 (あるいはその両方) が指定されている選択オブジェクトはすべて、 条件式の評価の規則に従って真理値を割り当てられます。 (条件式を参照。)
  • TRUE または FALSE の語が指定されている選択サブジェクトまたは選択オブジェクトには、真理値が割り当てられます。 TRUE の語が指定されている項目には、真理値「真」が割り当てられ、FALSE の語が指定されている項目には真理値「偽」が割り当てられます。
  • ANY の語が指定されている選択オブジェクトは、これ以上評価されません。
  • 選択オブジェクトに THRU 句が指定されていて、NOT 句が指定されていない場合には、 値の範囲は比較の規則により、選択サブジェクトと比較したときに、最初のオペランド以上で、2 番目のオペランド以下のすべての値となります。 最初のオペランドが 2 番目のオペランドより大きい場合には、範囲内には値がないことになります。
    注: 比較がシステムの固有照合順序によるものであれば、非数字オペランドの比較の結果はシステム間で一貫していないことがあります。
  • 選択オブジェクトに NOT 句が指定されている場合には、 その項目に割り当てられる値は、NOT 句が省略されている項目に割り当てられる値または値の範囲とは等しくないすべての値となります。