System.Variants.TCustomVariantType.RightPromotion

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

function RightPromotion(const V: TVarData; const Operator: TVarOp;  out RequiredVarType: TVarType): Boolean; virtual;

C++

virtual bool __fastcall RightPromotion(const TVarData &V, const int Operator, /* out */ System::Word &RequiredVarType);

Propriétés

Type Visibilité  Source Unité  Parent
function protected
System.Variants.pas
System.Variants.hpp
System.Variants TCustomVariantType

Description

Indique si l'argument de droite d'une opération binaire doit être converti en un type différent.

Redéfinissez RightPromotion pour indiquer à quel moment l'argument de droite d'une opération binaire ou de comparaison doit être implicitement transtypé avant la réalisation de l'opération. RightPromotion est appelée lorsque le Variant de droite d'une opération binaire ou de comparaison est de ce type Variant.

Remarque :  Dans les opérations impliquant deux Variants personnalisés, la méthode RightPromotion de l'argument de gauche est appelée en premier. La méthode LeftPromotion de l'argument de droite n'est appelée que si la méthode RightPromotion de l'argument de gauche renvoie false.

V représente l'enregistrement TVarData de l'argument de gauche de l'opération.

Operator indique le type d'opération. Ce peut être un opérateur quelconque du tableau suivant :



Valeur Opération

opAdd

addition

opSubtract

soustraction

opMultiply

multiplication

opDivide

division à virgule flottante

opIntDivide

division entière

opModulus

reste

opShiftRight

décalage vers la droite

opShiftRight

décalage vers la droite

opAnd

opérateur binaire ET

opOr

opérateur binaire OU

opXor

opérateur binaire OU exclusif

opCompare

toute opération de comparaison



RequiredVarType renvoie le code de type Variant du type dans lequel l'argument de droite doit être transtypé avant l'opération. Si l'opération peut se poursuivre sans que l'argument de droite ne soit modifié, RequiredVarType renvoie le champ VType de V.

RightPromotion renvoie true si le descendant de TCustomVariantType peut effectuer l'opération (à l'aide de la méthode BinaryOp, CompareOp ou Compare) en supposant que l'argument de droite peut être transtypé en RequiredVarType. Elle renvoie false si le descendant de TCustomVariantType ne peut pas réaliser l'opération.

Telle qu'implémentée dans TCustomVariantType, RightPromotion renvoie la propriété VarType en tant que RequiredVarType, et renvoie true.

Voir aussi