contents   index   previous   next



VariantOr

 

f90VB Modules

 

f90VBDefs, f90VBVariants

Summary

 

Performs a bitwise Or operation between two variants.

Syntax

 

type(VARIANT) function VariantOr  (VarLeft, VarRight, iRet)

type(VARIANT),intent(in)::  VarLeft
type(VARIANT),intent(in)::  VarRight
integer(HRESULT_KIND),intent(out),optional:: iRet

Arguments

 

VarLeft and VarRight [Input]

Two variant values. Must be initialized variants.

iRet [Output/Optional]

Upon return, iRet contains S_OK or an error code. See comments for more information.

Comments

 

The function performs the equivalent to a Fortran OR on the two provided variants using the following rules:

 

If VarLeft is If VarRight is Then VariantOr is
TRUE TRUE TRUE
TRUE FALSE TRUE
TRUE NULL TRUE
FALSE TRUE TRUE
FALSE FALSE FALSE
FALSE NULL NULL
NULL TRUE TRUE
NULL FALSE NULL
NULL NULL NULL

Argument iRet

 

Indicates success or failure of the subroutine. The following codes can be returned in this argument:

 

 

Value returned in argument iRet Description
S_OK Success.
DISP_E_BADVARTYPE One or both of the passed variant types are not a valid type of variant.
DISP_E_TYPEMISMATCH At least one of the variants could not be coerced to the appropriate type for this operation.
E_INVALIDARG One of the arguments is invalid.
E_OUTOFMEMORY Memory could not be allocated for the operation..

Examples

 

See example for VariantAdd.

Related Topics

 

For information about: See:
Variant bitwise XOR VariantXor
Variant bitwise AND VariantAnd

 


VariantPow