8.27.5 *Not演算子
*Notは、ブール値の逆の結果をテストしたり、設定したりするときに使用します。
例えば、以下のようになります。
If (*Not #Object.Boolean)
または
#button.enabled := *not #button.enabled
「良い」結果と「悪い」結果を定義するために複雑な論理処理が必要な場合は、ブール値を返すメソッドの中にコードをカプセル化するのが望ましい方法です。その点で便利なのが、逆の結果に基づく処理を実行するために使用できる*Notです。
Evtroutine Handling(#STD_NUM.Changed)
If (*Not #COM_OWNER.IsValidEntry( #STD_NUM ))
* Do something
Endif
Endroutine
Mthroutine Name(IsValidEntry)
Define_Map For(*input) Class(#STD_NUM) Name(#NUMBER)
Define_Map For(*RESULT) Class(#prim_boln) Name(#RESULT)
#RESULT := False
If ((#NUMBER > 100) *And (#NUMBER < 200))
#RESULT := true
Endif
If ((#NUMBER > 300) *And (#NUMBER < 400))
#RESULT := true
Endif
Endroutine
参照