aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/parsingtoolbox.h
diff options
context:
space:
mode:
Diffstat (limited to 'parsingtoolbox.h')
-rw-r--r--parsingtoolbox.h115
1 files changed, 59 insertions, 56 deletions
diff --git a/parsingtoolbox.h b/parsingtoolbox.h
index 5846c57..d7d5943 100644
--- a/parsingtoolbox.h
+++ b/parsingtoolbox.h
@@ -1,38 +1,38 @@
/***************************************************************************
-* Copyright (C) 2014 by Renaud Guezennec *
-* http://www.rolisteam.org/contact *
-* *
-* This file is part of DiceParser *
-* *
-* DiceParser is free software; you can redistribute it and/or modify *
-* it under the terms of the GNU General Public License as published by *
-* the Free Software Foundation; either version 2 of the License, or *
-* (at your option) any later version. *
-* *
-* This program is distributed in the hope that it will be useful, *
-* but WITHOUT ANY WARRANTY; without even the implied warranty of *
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
-* GNU General Public License for more details. *
-* *
-* You should have received a copy of the GNU General Public License *
-* along with this program; if not, write to the *
-* Free Software Foundation, Inc., *
-* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
-***************************************************************************/
+ * Copyright (C) 2014 by Renaud Guezennec *
+ * http://www.rolisteam.org/contact *
+ * *
+ * This file is part of DiceParser *
+ * *
+ * DiceParser is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
#ifndef PARSINGTOOLBOX_H
#define PARSINGTOOLBOX_H
#include <QMap>
-#include "node/executionnode.h"
-#include "node/dicerollernode.h"
#include "booleancondition.h"
-#include "operationcondition.h"
#include "compositevalidator.h"
-#include "range.h"
-#include "node/scalaroperatornode.h"
-#include "node/paintnode.h"
+#include "node/dicerollernode.h"
+#include "node/executionnode.h"
#include "node/ifnode.h"
+#include "node/paintnode.h"
+#include "node/scalaroperatornode.h"
+#include "operationcondition.h"
+#include "range.h"
/**
* @brief The ParsingToolBox is gathering many useful methods for dice parsing.
@@ -41,7 +41,11 @@
class ParsingToolBox
{
public:
- enum LIST_OPERATOR {NONE,UNIQUE};
+ enum LIST_OPERATOR
+ {
+ NONE,
+ UNIQUE
+ };
/**
* @brief ParsingToolBox
@@ -51,7 +55,7 @@ public:
* @brief ParsingToolBox
* @param data
*/
- ParsingToolBox(const ParsingToolBox & data);
+ ParsingToolBox(const ParsingToolBox& data);
/**
* @brief ~ParsingToolBox
*/
@@ -62,7 +66,7 @@ public:
* @param b
* @return
*/
- ExecutionNode* addSort(ExecutionNode* e,bool b);
+ ExecutionNode* addSort(ExecutionNode* e, bool b);
/**
* @brief readAscending
* @param str
@@ -75,7 +79,7 @@ public:
* @param op
* @return
*/
- bool readLogicOperator(QString& str,BooleanCondition::LogicOperator& op);
+ bool readLogicOperator(QString& str, BooleanCondition::LogicOperator& op);
/**
* @brief readValidator
* @param str
@@ -95,7 +99,7 @@ public:
* @param myNumber reference to the found number
* @return true, succeed to read number, false otherwise.
*/
- static bool readNumber(QString& str, qint64& myNumber);
+ static bool readNumber(QString& str, qint64& myNumber);
/**
* @brief readString
@@ -103,14 +107,14 @@ public:
* @param strResult
* @return
*/
- static bool readString(QString& str, QString& strresult);
+ static bool readString(QString& str, QString& strresult);
/**
* @brief readVariable
* @param str
* @param myNumber
* @return
*/
- static bool readVariable(QString& str,qint64& myNumber, QString& reasonFail);
+ static bool readVariable(QString& str, qint64& myNumber, QString& reasonFail);
/**
* @brief readOpenParentheses
* @param str
@@ -130,7 +134,7 @@ public:
* @param myNumber reference to the found number
* @return true, succeed to read number, false otherwise.
*/
- static bool readDynamicVariable(QString& str, qint64& index);
+ static bool readDynamicVariable(QString& str, qint64& index);
/**
* @brief readList
@@ -138,7 +142,7 @@ public:
* @param list
* @return
*/
- bool readList(QString& str,QStringList& list, QList<Range>& ranges);
+ bool readList(QString& str, QStringList& list, QList<Range>& ranges);
/**
* @brief isValidValidator
* @param previous
@@ -160,50 +164,49 @@ public:
* @param end
* @return
*/
- bool readDiceRange(QString& str,qint64& start, qint64& end);
+ bool readDiceRange(QString& str, qint64& start, qint64& end);
/**
* @brief readListOperator
* @param str
* @return
*/
- static LIST_OPERATOR readListOperator(QString& str);
+ static LIST_OPERATOR readListOperator(QString& str);
- void readProbability(QStringList& str,QList<Range>& ranges);
+ void readProbability(QStringList& str, QList<Range>& ranges);
- bool readLogicOperation(QString& str,CompositeValidator::LogicOperation& op);
+ bool readLogicOperation(QString& str, CompositeValidator::LogicOperation& op);
- bool readDiceLogicOperator(QString &str, OperationCondition::ConditionOperator &op);
+ bool readDiceLogicOperator(QString& str, OperationCondition::ConditionOperator& op);
bool readArithmeticOperator(QString& str, Die::ArithmeticOperator& op);
- static void readPainterParameter(PainterNode *painter, QString &str);
+ static void readPainterParameter(PainterNode* painter, QString& str);
static QHash<QString, QString> getVariableHash();
- static void setVariableHash(const QHash<QString, QString> &variableHash);
+ static void setVariableHash(const QHash<QString, QString>& variableHash);
/**
* @brief readConditionType
* @param str
* @return
*/
- static IfNode::ConditionType readConditionType(QString &str);
+ static IfNode::ConditionType readConditionType(QString& str);
- bool readComment(QString& str, QString &,QString &);
- static ExecutionNode *getLatestNode(ExecutionNode *node);
+ bool readComment(QString& str, QString&, QString&);
+ static ExecutionNode* getLatestNode(ExecutionNode* node);
- static std::vector<ExecutionNode *> *getStartNodes();
- static void setStartNodes(std::vector<ExecutionNode *> *startNodes);
+ static std::vector<ExecutionNode*>* getStartNodes();
+ static void setStartNodes(std::vector<ExecutionNode*>* startNodes);
- static bool readOperand(QString &str, ExecutionNode *&node);
- static int findClosingCharacterIndexOf(QChar open, QChar closing, const QString &str, int offset);
-private:
-
- QMap<QString,BooleanCondition::LogicOperator>* m_logicOp;
- QMap<QString,CompositeValidator::LogicOperation>* m_logicOperation;
- QMap<QString,OperationCondition::ConditionOperator>* m_conditionOperation;
- QHash<QString,Die::ArithmeticOperator>* m_arithmeticOperation;
+ static bool readOperand(QString& str, ExecutionNode*& node);
+ static int findClosingCharacterIndexOf(QChar open, QChar closing, const QString& str, int offset);
+private:
+ QMap<QString, BooleanCondition::LogicOperator>* m_logicOp;
+ QMap<QString, CompositeValidator::LogicOperation>* m_logicOperation;
+ QMap<QString, OperationCondition::ConditionOperator>* m_conditionOperation;
+ QHash<QString, Die::ArithmeticOperator>* m_arithmeticOperation;
- static QHash<QString,QString> m_variableHash;
+ static QHash<QString, QString> m_variableHash;
static std::vector<ExecutionNode*>* m_startNodes;
};