.. _test-variable-label: ================ $TEST 特殊変数 ================ 解説 ########### $TEST特殊変数は、IFコマンドの引数が真か偽か、または、最後のオペレーションがタイムアウトしたかどうかを示す、真理値です。最後のオペレーションの時点でタイムアウトした場合、$TEST には、FALSE(0)がセットされます。タイムアウトしなかった場合は、$TESTは、TRUE(1)にセットされます。 $TESTは、ELSEコマンドの暗黙的なt引数として、引数なしのIFコマンドを提供しています。 $TESTは、外部関数が呼び出されるか、または、引数なしDO関数が呼び出された時に、スタックに置かれます。これらの機能を完了した後、外部関数またはDO命令でセットされたものに関係なく、$TEST特殊変数は、最後のIFコマンドの引数またはタイムアウト機能によってセットされていたものすべてを復元されます。 Mは、SETコマンドで $TEST を変更することはできません。 例 ########### :: IF x=3 SET y=3 ELSE SET x=0 Mumpsは、ELSE文を実行する必要があるかどうかを確認する $TESTの値を見ています。 :: IF x=3 DO^WORK ELSE SET x=0 再び、Mumpsは、ELSE文を実行する必要があるかどうかを確認する $TESTの値を見ています。しかし、WORKルーチンは、IF文とタイムアウトを使用している場合があるので、$TESTの値は、ルーチンの内部で変更され、ELSE文では正しくない可能性があります。これを行うことは推奨されません。 FIS GT.Mプログラマーズガイド から引用 Chapter 8 $Test Page .. http://tinco.pair.com/bhaskar/gtm/doc/books/pg/UNIX_manual/index.html