an engine that has floating point (double) numbers implemented More...
#include <elamfloatengine.h>
Public Member Functions | |
FloatEngine () | |
instantiates a pre-initialized engine More... | |
Public Member Functions inherited from ELAM::Engine | |
Engine (QObject *parent=0) | |
instantiates an engine object More... | |
virtual Q_INVOKABLE bool | hasVariable (QString) const |
true if the named variable exists in this engine More... | |
virtual Q_INVOKABLE bool | hasConstant (QString) const |
true if the named constant exists in this engine More... | |
virtual Q_INVOKABLE bool | hasValue (QString) const |
true if a variable or constant of that name exists in this engine (default calls hasVariable() || hasConstant() ) More... | |
Q_INVOKABLE bool | hasFunction (QString) const |
returns true if the named function exists More... | |
Q_INVOKABLE Function | getFunction (QString) const |
returns the pointer to the function More... | |
Q_INVOKABLE bool | hasUnaryOperator (QString name) const |
returns true if there is an unaryOperator with this name More... | |
Q_INVOKABLE bool | hasBinaryOperator (QString name) const |
returns true if there is an binaryOperator with this name More... | |
Q_INVOKABLE UnaryOperator | unaryOperator (QString name) |
returns an existing or new unary operator object More... | |
Q_INVOKABLE BinaryOperator | binaryOperator (QString name, int prio=1, PriorityMatch match=IgnoreMismatch) |
returns an existing or new binary operator object More... | |
Q_INVOKABLE int | binaryOperatorPrio (QString name) |
returns the priority of the operator, or -1 if the operator does not exist More... | |
Q_INVOKABLE bool | isAssignment (QString name) const |
returns true if the name represents an assignment operator More... | |
Q_INVOKABLE bool | isPipe (QString name) const |
returns true if the name represents a pipe More... | |
Q_INVOKABLE QVariant | autoCast (const QVariant &) const |
performs automatic casting More... | |
virtual Q_INVOKABLE QStringList | variableNames () const |
returns the names of all currently existing variables More... | |
virtual Q_INVOKABLE QStringList | constantNames () const |
returns the names of all currently existing constants More... | |
Q_INVOKABLE QStringList | functionNames () const |
returns the names of all currently existing functions More... | |
Q_INVOKABLE QStringList | binaryOperatorNames () const |
returns the names of all currently existing binary operators More... | |
Q_INVOKABLE QStringList | unaryOperatorNames () const |
returns the names of all currently existing unary operators More... | |
Q_INVOKABLE QString | pipeOperator () const |
returns the name of the pipe operator or empty string if it does not exist More... | |
Q_INVOKABLE int | pipePrio () const |
returns the priority of the pipe operator - per default 0 (lowest binding) More... | |
Q_INVOKABLE bool | namedOperatorsAllowed () const |
returns whether named operators are allowed More... | |
Static Public Member Functions | |
static void | configureFloatEngine (Engine &) |
configures any engine to support float More... | |
static int | floatHighParserPrio () |
returns the high priority for float literal parsers, this applies to floats that are definitely not int More... | |
static int | floatLowParserPrio () |
returns the low priority for float literal parsers, this applies to floats that would be interpreted as int if an int engine is present More... | |
Static Public Member Functions inherited from ELAM::Engine | |
static void | configureReflection (Engine &) |
register reflection functions More... | |
Additional Inherited Members | |
Public Types inherited from ELAM::Engine | |
enum | PriorityMatch { IgnoreMismatch =0, OverridePrio =1, FailIfMismatch =2 } |
Matching mode for priority when overwriting an operator, see binaryOperator. More... | |
Public Slots inherited from ELAM::Engine | |
virtual QVariant | getValue (QString) const |
returns the value of the named variable or constant (default uses getVariable/getConstant) More... | |
virtual QVariant | getVariable (QString) const |
returns the value of the named variable (does not return constants) More... | |
virtual QVariant | getConstant (QString) const |
returns the value of the named constant (does not return variables) More... | |
virtual bool | setVariable (QString, QVariant) |
sets a variable More... | |
virtual bool | setConstant (QString, QVariant) |
sets a constant More... | |
virtual void | removeVariable (QString) |
deletes a variable (does not affect constants, does nothing if the variable does not exist) More... | |
virtual void | removeConstant (QString) |
deletes a constant (does not affect variables, does nothing if the constant does not exist) More... | |
virtual void | removeValue (QString) |
deletes a variable or constant (default uses removeVariable and removeConstant) More... | |
bool | setFunction (QString, Function) |
Sets a new function for a specific function name. More... | |
void | removeFunction (QString) |
removes a function More... | |
int | setLiteralParser (LiteralParser parser, QString startchars, int prio=50) |
sets the parser routine for a literal value More... | |
void | removeLiteralParser (int parserid) |
removes a parser function More... | |
void | setBinaryOperatorPrio (QString name, int prio) |
sets/overrides the priority of an operator, creating the operator if it does not exist yet More... | |
void | registerType (int typeId) |
registers a type as primary, this means it is not cast into another type when encountered More... | |
void | setAutoCast (int target, QList< int >origin, TypeCast castfunc, int prio=50) |
Registers an automatic cast function. More... | |
void | setPipeOperator (QString pipe) |
sets the pipe operator More... | |
void | setPipePrio (int) |
sets the prio of the pipe operator More... | |
void | setNamedOperatorsAllowed (bool) |
sets whether named operators are allowed (default is false) More... | |
Expression | expression (QString) |
simply parses an expression string into an object More... | |
Expression | expression (QList< Token >) |
simply parses an expression string into an object More... | |
QList< Token > | tokenize (QString) |
simply parses an expression string into a list of tokens More... | |
QVariant | evaluate (QString) |
parses and evaluates an expression string into a final value More... | |
QVariant | evaluate (Expression) |
evaluates a parsed expression into a final value More... | |
CharacterClassSettings | characterClasses () |
gives access to the character classes settings More... | |
an engine that has floating point (double) numbers implemented
This engine type plays nice with the IntEngine functions by supplemening its operators to be able to mix float and int in operations.
Per default only the float versions are pre-installed. Use IntEngine::configureIntEngine or IntFloatEngine to have both.
ELAM::FloatEngine::FloatEngine | ( | ) |
instantiates a pre-initialized engine
|
static |
configures any engine to support float
|
static |
returns the high priority for float literal parsers, this applies to floats that are definitely not int
|
static |
returns the low priority for float literal parsers, this applies to floats that would be interpreted as int if an int engine is present