Provides set of operations with sequences for the parser.
#include <QtxEvalExpr.h>
Public Types | |
typedef QList< QVariant > | ValueSet |
Public Member Functions | |
QtxEvalSetSets () | |
Constructor. More... | |
virtual | ~QtxEvalSetSets () |
Destructor. More... | |
virtual void | bracketsList (QStringList &, bool open) const |
Get list of brackets. More... | |
virtual int | priority (const QString &, bool isBin) const |
Get the operation priority. More... | |
virtual QtxEvalExpr::Error | isValid (const QString &, const QVariant::Type, const QVariant::Type) const |
Check operation validity. More... | |
virtual QtxEvalExpr::Error | calculate (const QString &, QVariant &, QVariant &) const |
Calculate the operation. More... | |
virtual QString | name () const |
Get operations set name. More... | |
Public Member Functions inherited from QtxEvalSetBase | |
QtxEvalSetBase () | |
Constructor. More... | |
virtual | ~QtxEvalSetBase () |
Destructor. More... | |
virtual void | operationList (QStringList &) const |
Get the list of possible operations. More... | |
Public Member Functions inherited from QtxEvalSet | |
QtxEvalSet () | |
Constructor. More... | |
virtual | ~QtxEvalSet () |
Destructor. More... | |
virtual bool | createValue (const QString &, QVariant &) const |
Create value from its string representation. More... | |
Static Public Member Functions | |
static void | add (ValueSet &, const QVariant &) |
Add new value v to the sequence set. More... | |
static void | add (ValueSet &, const ValueSet &) |
Add all values from sequence s2 to the sequence s1. More... | |
static void | remove (ValueSet &, const QVariant &) |
Remove value v from sequence set. More... | |
static void | remove (ValueSet &, const ValueSet &) |
Remove all values listed in the sequence s2 from the sequence s1. More... | |
static QString | Name () |
Get operations set name. More... | |
Additional Inherited Members | |
Protected Types inherited from QtxEvalSetBase | |
typedef QList< QVariant::Type > | ListOfTypes |
Protected Member Functions inherited from QtxEvalSetBase | |
void | addTypes (const ListOfTypes &) |
Add operand types. More... | |
void | addOperations (const QStringList &) |
Add operation names to the internal list of operations. More... | |
typedef QList<QVariant> QtxEvalSetSets::ValueSet |
QtxEvalSetSets::QtxEvalSetSets | ( | ) |
References QtxEvalSetBase::addOperations(), and QtxEvalSetBase::addTypes().
|
virtual |
set | sequence |
v | value to be added |
s1 | destination sequence |
s2 | source sequence |
References add().
|
virtual |
list | returning list of brackets |
open | if true , collect opening brackets, or closing brackets otherwise |
Reimplemented from QtxEvalSetBase.
References QtxEvalSetBase::bracketsList().
|
virtual |
Process binary operation with values v1 and v2. For unary operation the is invalid. The result of the operation is returned in the parameter v1.
op | operation name |
v1 | first argument (not valid for unary prefix operations) |
v2 | second argument (not valid for unary postfix operations) |
Implements QtxEvalSet.
References add(), and QtxEvalExpr::OK.
|
virtual |
If the operation is valid, QtxEvalExpr::OK is returned. If types of operands are invalid, the function returns QtxEvalExpr::OperandsNotMatch or QtxEvalExpr::InvalidOperation.
op | operation |
t1 | first operand type |
t2 | second operand type |
Reimplemented from QtxEvalSetBase.
References QtxEvalSetBase::isValid(), QtxEvalExpr::OK, and QtxEvalExpr::OperandsNotMatch.
|
static |
|
virtual |
|
virtual |
Operation priority counts from 1. If the operation is impossible, this function returns value <= 0.
op | operation |
isBin | true if the operation is binary and false if it is unary |
Implements QtxEvalSet.
set | sequence |
v | value to be removed |
s1 | sequence from which items are removed |
s2 | sequence which items are removed |