KVIrc  4.9.2
DeveloperAPIs
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 (KviKvsTreeNodeExpressionBinaryOperatorSum)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorMultiplication)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorSubtraction)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorDivision)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorModulus)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorBitwiseAnd)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorBitwiseOr)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorBitwiseXor)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorShiftLeft)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorShiftRight)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorAnd)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorOr)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorXor)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorGreaterThan)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorLowerThan)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorGreaterOrEqualTo)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorLowerOrEqualTo)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorEqualTo)
 
 DECLARE_BINARY_OPERATOR (KviKvsTreeNodeExpressionBinaryOperatorNotEqualTo)
 

Macro Definition Documentation

#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(); \
}
virtual bool evaluateReadOnly(KviKvsRunTimeContext *c, KviKvsVariant *pBuffer)
Definition: KviKvsTreeNodeData.cpp:78
This class defines a new data type which contains variant data.
Definition: KviKvsVariant.h:351
#define KVIRC_API
Definition: kvi_settings.h:128
char s char s char s s s s s char char c s *s c s s s d c s *s d c d d d d c
Definition: KviIrcNumericCodes.h:391
virtual int precedence()
Definition: KviKvsTreeNodeExpression.cpp:49
Definition: KviKvsTreeNodeExpression.h:185
Definition: KviKvsRunTimeContext.h:103
char szBuffer[4096]
Definition: winamp.cpp:77
virtual void dump(const char *prefix)
Dumps the tree.
Definition: KviKvsTreeNodeExpression.cpp:400
virtual void contextDescription(QString &szBuffer)
Sets the buffer.
Definition: KviKvsTreeNodeExpression.cpp:395
#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 /* ^^ */

Function Documentation

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