cumbia formula plugin 4.x
|
#include <cuformulaparser.h>
Public Types | |
enum | State { Undefined = 0 , ReadingsIncomplete , CompileOk , CompileError , ValueNotScalar , ToDoubleConversionFailed , MaxState = 16 } |
Public Member Functions | |
CuFormulaParser () | |
~CuFormulaParser () | |
bool | parse (const QString &expression) |
size_t | sourcesCount () const |
std::vector< std::string > | sources () const |
std::string | joinedSources () const |
std::string | source (size_t i) const |
void | updateSource (size_t i, const std::string &s) |
CuFormulaParser::updateSource updates the source at position i with the new source name s. More... | |
long | indexOf (const std::string &src) const |
QString | expression () const |
QString | formula () const |
QString | preparedFormula () const |
QString | message () const |
QString | name () const |
bool | error () const |
QString | normalizedFormulaPattern () const |
bool | isNormalized (const QString &expr) const |
bool | isValid (const QString &expr) const |
CuFormulaParser::isValid returns true if a formula is valid. More... | |
Public Attributes | |
const char | states [MaxState][32] |
const char * | formula_regexp_pattern = FORMULA_RE |
CuFormulaParser::CuFormulaParser | ( | ) |
References CuFormulaParserPrivate::error, and CuFormulaParserPrivate::normalized_pattern.
CuFormulaParser::~CuFormulaParser | ( | ) |
bool CuFormulaParser::error | ( | ) | const |
References CuFormulaParserPrivate::error.
Referenced by CuFormulaReader::setSource().
QString CuFormulaParser::expression | ( | ) | const |
References CuFormulaParserPrivate::expression.
QString CuFormulaParser::formula | ( | ) | const |
References CuFormulaParserPrivate::formula.
Referenced by CuFormulaReader::onNewData(), and CuFormulaReader::setSource().
long int CuFormulaParser::indexOf | ( | const std::string & | src | ) | const |
References CuFormulaParserPrivate::srcs.
Referenced by CuFormulaReader::onNewData().
bool CuFormulaParser::isNormalized | ( | const QString & | expr | ) | const |
References CuFormulaParserPrivate::normalized_pattern.
Referenced by isValid().
bool CuFormulaParser::isValid | ( | const QString & | expr | ) | const |
expr | the expression to be matched against the FORMULA_RE regexp |
References isNormalized().
std::string CuFormulaParser::joinedSources | ( | ) | const |
References CuFormulaParserPrivate::srcs.
QString CuFormulaParser::message | ( | ) | const |
References CuFormulaParserPrivate::message.
QString CuFormulaParser::name | ( | ) | const |
References CuFormulaParserPrivate::name.
Referenced by CuFormulaReader::onNewData().
QString CuFormulaParser::normalizedFormulaPattern | ( | ) | const |
References CuFormulaParserPrivate::normalized_pattern.
bool CuFormulaParser::parse | ( | const QString & | expression | ) |
References CuFormulaParserPrivate::error, CuFormulaParserPrivate::expression, CuFormulaParserPrivate::formula, CuFormulaParserPrivate::message, CuFormulaParserPrivate::name, CuFormulaParserPrivate::normalized_pattern, CuFormulaParserPrivate::prepared_formula, sources(), and CuFormulaParserPrivate::srcs.
Referenced by CuFormulaReader::setSource().
QString CuFormulaParser::preparedFormula | ( | ) | const |
References CuFormulaParserPrivate::prepared_formula.
Referenced by CuFormulaReader::onNewData().
std::string CuFormulaParser::source | ( | size_t | i | ) | const |
References CuFormulaParserPrivate::srcs.
Referenced by CuFormulaReader::combinedMessage(), and CuFormulaReader::setSource().
std::vector< std::string > CuFormulaParser::sources | ( | ) | const |
References CuFormulaParserPrivate::srcs.
Referenced by CuFormulaReader::combinedSources(), CuFormulaReader::onNewData(), and parse().
size_t CuFormulaParser::sourcesCount | ( | ) | const |
References CuFormulaParserPrivate::srcs.
Referenced by CuFormulaReader::combinedMessage(), CuFormulaReader::combinedSources(), CuFormulaReader::onNewData(), and CuFormulaReader::setSource().
void CuFormulaParser::updateSource | ( | size_t | i, |
const std::string & | s | ||
) |
i | the index of the source to be updated |
s | the new name |
This can be used to update sources after wildcards ("$1, $2) have been replaced by engine specific readers.
References CuFormulaParserPrivate::srcs.
Referenced by CuFormulaReader::setSource().
const char* CuFormulaParser::formula_regexp_pattern = FORMULA_RE |
const char CuFormulaParser::states[MaxState][32] |