KVIrc 5.2.4
Developer APIs
Classes | Macros | Functions
KviKvsTreeNodeExpression.h File Reference
#include "KviQString.h"
#include "KviKvsVariant.h"
#include "KviKvsTreeNodeData.h"

Go to the source code of this file.

Classes

class  KviKvsTreeNodeExpression
 
class  KviKvsTreeNodeExpressionBinaryOperator
 
class  KviKvsTreeNodeExpressionConstantOperand
 
class  KviKvsTreeNodeExpressionOperator
 
class  KviKvsTreeNodeExpressionUnaryOperator
 
class  KviKvsTreeNodeExpressionUnaryOperatorBitwiseNot
 
class  KviKvsTreeNodeExpressionUnaryOperatorLogicalNot
 
class  KviKvsTreeNodeExpressionUnaryOperatorNegate
 
class  KviKvsTreeNodeExpressionVariableOperand
 

Macros

#define DECLARE_BINARY_OPERATOR(__name)
 
#define PREC_MAXIMUM   -10
 
#define PREC_OP_AND   16 /* && */
 
#define PREC_OP_BITWISEAND   0 /* & */
 
#define PREC_OP_BITWISENOT   -2 /* ~ */
 
#define PREC_OP_BITWISEOR   1 /* | */
 
#define PREC_OP_BITWISEXOR   2 /* ^ */
 
#define PREC_OP_DIVISION   5 /* / */
 
#define PREC_OP_EQUALTO   12 /* == */ /* Case sensitive comparison for strings or normal comp.fr numbers */
 
#define PREC_OP_GREATEROREQUALTO   14 /* >= */ /* Case sensitive (normal for numbers) */
 
#define PREC_OP_GREATERTHAN   11 /* > */ /* Case sensitive (normal for numbers) */
 
#define PREC_OP_LOGICALNOT   -3 /* ! */
 
#define PREC_OP_LOWEROREQUALTO   14 /* <= */ /* Case sensitive (normal for numbers) */
 
#define PREC_OP_LOWERTHAN   11 /* < */ /* Case sensitive (normal for numbers) */
 
#define PREC_OP_MODULUS   5 /* % */
 
#define PREC_OP_MULTIPLICATION   5 /* * */
 
#define PREC_OP_NEGATE   -1 /* - */
 
#define PREC_OP_NOTEQUALTO   15 /* != */ /* Case sensitive (normal for numbers) */
 
#define PREC_OP_OR   17 /* || */
 
#define PREC_OP_SHIFTLEFT   3 /* << */
 
#define PREC_OP_SHIFTRIGHT   3 /* >> */
 
#define PREC_OP_SUBTRACTION   8 /* - */
 
#define PREC_OP_SUM   8 /* + */
 
#define PREC_OP_XOR   18 /* ^^ */
 

Functions

 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorAnd)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorBitwiseAnd)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorBitwiseOr)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorBitwiseXor)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorDivision)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorEqualTo)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorGreaterOrEqualTo)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorGreaterThan)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorLowerOrEqualTo)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorLowerThan)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorModulus)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorMultiplication)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorNotEqualTo)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorOr)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorShiftLeft)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorShiftRight)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorSubtraction)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorSum)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorXor)
 

Macro Definition Documentation

◆ DECLARE_BINARY_OPERATOR

#define DECLARE_BINARY_OPERATOR (   __name)
Value:
{ \
public: \
__name(const QChar * pLocation); \
~__name(); \
\
public: \
virtual void contextDescription(QString & szBuffer); \
virtual void dump(const char * prefix); \
virtual bool evaluateReadOnly(KviKvsRunTimeContext * c, KviKvsVariant * pResult); \
virtual int precedence(); \
}
Definition KviKvsRunTimeContext.h:104
virtual bool evaluateReadOnly(KviKvsRunTimeContext *c, KviKvsVariant *pBuffer)
Definition KviKvsTreeNodeData.cpp:78
Definition KviKvsTreeNodeExpression.h:186
virtual void contextDescription(QString &szBuffer)
Sets the buffer.
Definition KviKvsTreeNodeExpression.cpp:395
virtual void dump(const char *prefix)
Dumps the tree.
Definition KviKvsTreeNodeExpression.cpp:400
virtual int precedence()
Definition KviKvsTreeNodeExpression.cpp:49
This class defines a new data type which contains variant data.
Definition KviKvsVariant.h:352
#define KVIRC_API
Definition kvi_settings.h:127
char szBuffer[4096]
Definition winamp.cpp:77

◆ PREC_MAXIMUM

#define PREC_MAXIMUM   -10

◆ PREC_OP_AND

#define PREC_OP_AND   16 /* && */

◆ PREC_OP_BITWISEAND

#define PREC_OP_BITWISEAND   0 /* & */

◆ PREC_OP_BITWISENOT

#define PREC_OP_BITWISENOT   -2 /* ~ */

◆ PREC_OP_BITWISEOR

#define PREC_OP_BITWISEOR   1 /* | */

◆ PREC_OP_BITWISEXOR

#define PREC_OP_BITWISEXOR   2 /* ^ */

◆ PREC_OP_DIVISION

#define PREC_OP_DIVISION   5 /* / */

◆ PREC_OP_EQUALTO

#define PREC_OP_EQUALTO   12 /* == */ /* Case sensitive comparison for strings or normal comp.fr numbers */

◆ PREC_OP_GREATEROREQUALTO

#define PREC_OP_GREATEROREQUALTO   14 /* >= */ /* Case sensitive (normal for numbers) */

◆ PREC_OP_GREATERTHAN

#define PREC_OP_GREATERTHAN   11 /* > */ /* Case sensitive (normal for numbers) */

◆ PREC_OP_LOGICALNOT

#define PREC_OP_LOGICALNOT   -3 /* ! */

◆ PREC_OP_LOWEROREQUALTO

#define PREC_OP_LOWEROREQUALTO   14 /* <= */ /* Case sensitive (normal for numbers) */

◆ PREC_OP_LOWERTHAN

#define PREC_OP_LOWERTHAN   11 /* < */ /* Case sensitive (normal for numbers) */

◆ PREC_OP_MODULUS

#define PREC_OP_MODULUS   5 /* % */

◆ PREC_OP_MULTIPLICATION

#define PREC_OP_MULTIPLICATION   5 /* * */

◆ PREC_OP_NEGATE

#define PREC_OP_NEGATE   -1 /* - */

◆ PREC_OP_NOTEQUALTO

#define PREC_OP_NOTEQUALTO   15 /* != */ /* Case sensitive (normal for numbers) */

◆ PREC_OP_OR

#define PREC_OP_OR   17 /* || */

◆ PREC_OP_SHIFTLEFT

#define PREC_OP_SHIFTLEFT   3 /* << */

◆ PREC_OP_SHIFTRIGHT

#define PREC_OP_SHIFTRIGHT   3 /* >> */

◆ PREC_OP_SUBTRACTION

#define PREC_OP_SUBTRACTION   8 /* - */

◆ PREC_OP_SUM

#define PREC_OP_SUM   8 /* + */

◆ PREC_OP_XOR

#define PREC_OP_XOR   18 /* ^^ */

Function Documentation

◆ DECLARE_BINARY_OPERATOR() [1/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorAnd  )

◆ DECLARE_BINARY_OPERATOR() [2/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorBitwiseAnd  )

◆ DECLARE_BINARY_OPERATOR() [3/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorBitwiseOr  )

◆ DECLARE_BINARY_OPERATOR() [4/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorBitwiseXor  )

◆ DECLARE_BINARY_OPERATOR() [5/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorDivision  )

◆ DECLARE_BINARY_OPERATOR() [6/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorEqualTo  )

◆ DECLARE_BINARY_OPERATOR() [7/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorGreaterOrEqualTo  )

◆ DECLARE_BINARY_OPERATOR() [8/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorGreaterThan  )

◆ DECLARE_BINARY_OPERATOR() [9/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorLowerOrEqualTo  )

◆ DECLARE_BINARY_OPERATOR() [10/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorLowerThan  )

◆ DECLARE_BINARY_OPERATOR() [11/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorModulus  )

◆ DECLARE_BINARY_OPERATOR() [12/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorMultiplication  )

◆ DECLARE_BINARY_OPERATOR() [13/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorNotEqualTo  )

◆ DECLARE_BINARY_OPERATOR() [14/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorOr  )

◆ DECLARE_BINARY_OPERATOR() [15/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorShiftLeft  )

◆ DECLARE_BINARY_OPERATOR() [16/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorShiftRight  )

◆ DECLARE_BINARY_OPERATOR() [17/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorSubtraction  )

◆ DECLARE_BINARY_OPERATOR() [18/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorSum  )

◆ DECLARE_BINARY_OPERATOR() [19/19]

DECLARE_BINARY_OPERATOR ( KviKvsTreeNodeExpressionBinaryOperatorXor  )