Syntax |
expression1 Imp expression2 |
|||||
Description |
Performs a logical or binary implication on two expressions. |
|||||
Comments |
If both expressions are either Boolean, Boolean variants, or Null variants, then a logical implication is performed as follows: |
|||||
|
If the first |
and the second |
then the |
|||
|
TRUE |
TRUE |
TRUE |
|||
|
TRUE |
FALSE |
FALSE |
|||
|
TRUE |
NULL |
NULL |
|||
|
FALSE |
TRUE |
TRUE |
|||
|
FALSE |
FALSE |
TRUE |
|||
|
FALSE |
NULL |
TRUE |
|||
|
NULL |
TRUE |
TRUE |
|||
|
NULL |
FALSE |
NULL |
|||
|
NULL |
NULL |
NULL |
|||
|
Binary Implication If the two expressions are Integer, then a binary implication is performed, returning an Integer result. All other numeric types (including Empty variants) are converted to Long and a binary implication is then performed, returning a Long result. Binary implication forms a new value based on a bit-by-bit comparison of the binary representations of the two expressions, according to the following table: |
|||||
|
1 |
Imp |
1 |
= |
1 |
Example |
|
0 |
Imp |
1 |
= |
1 |
5 01101001 |
|
1 |
Imp |
0 |
= |
0 |
6 10101010 |
|
0 |
Imp |
0 |
= |
1 |
Imp 10111110 |
Example |
This example compares the result of two expressions to determine whether one implies the other. Sub Main() If (a < b) Imp (c < d)
Then If (a < b) Imp (c > d)
Then |
|||||
See Also |
Operator Precedence (topic); Or (operator); Xor (operator); Eqv (operator); And (operator). |
I |