Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Removed |../../index.htm#lansa/ladtgub3_0315.htm]
現在地:

...

8.4.6 *IS演算子と*ISNOT演算子

*IS演算子と*ISNOT演算子は、コンポーネント参照変数のタイプをテストするときに使用できます。以下は、これらの演算子の構文を示したコード・フラグメントです。 #Variable1 *IS #ClassName #Variable2 *ISNOT *NULL  
*IS演算子は、指定されている変数のクラスをテストして、その変数またはその祖先のタイプが、クラス名で指定されているタイプと一致するかどうかをチェックします。
*ISNOT演算子は、指定されている変数のクラスをテストして、その変数またはその祖先のタイプが、クラス名で指定されているタイプと一致しないかどうかをチェックします。
これらの演算子は、変数がNULL参照であるかどうかをテストするときにも使用できます。

     #Variable1 *IS #ClassName
#Variable2 *ISNOT *NULL

*IS演算子は、指定されている変数のクラスをテストして、その変数またはその祖先のタイプが、クラス名で指定されているタイプと一致するかどうかをチェックします。 

*ISNOT演算子は、指定されている変数のクラスをテストして、その変数またはその祖先のタイプが、クラス名で指定されているタイプと一致しないかどうかをチェックします。 

これらの演算子は、変数がNULL参照であるかどうかをテストするときにも使用できます。

例 

以下は、*IS演算子と*IS演算子の使用法を示したコード・フラグメントです。 IS演算子の使用法を示したコード・フラグメントです。 

     ...
DEFINE_

...

COM CLASS(#DEPTMENT)

...

 NAME(#DEPARTMENT)

...


SET COM(#COM_OWNER)

...

 PSCENARIO('

...

if cond(#DEPARTMENT *IsNot *null))')

...


SET COM(#PASS)

...

 VALUE(FALSE)

...


IF COND(#DEPARTMENT *IsNot *null)
SET COM(#PASS) VALUE(TRUE)
ENDIF
SET COM(#COM_OWNER)

...

 PSCENARIO('

...

if (

...

#DEPARTMENT *IS #DEPTMENT)')

...


(#ReferenceOne.

...

Left <= 0))
SET COM(#PASS)

...

 VALUE(FALSE)

...


IF (#DEPARTMENT *Is #DEPTMENT)
SET COM(#PASS)

...

 VALUE(TRUE)

...


ENDIF
IF (((

...

#DEPARTMENT *

...

IsNot *null)

...

 *

...

AndIf (

...

#DEPARTMENT *Is #DEPTMENT))

...

 *

...

OrIf (

...

#ADDRESS1 *

...

Is *null))

...


SET COM(#PASS)

...

 VALUE(TRUE)

...


ENDIF
...