aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/validator.h
diff options
context:
space:
mode:
authorRenaud G <renaud@rolisteam.org>2022-04-29 10:48:09 +0200
committerRenaud G <renaud@rolisteam.org>2022-04-29 10:48:09 +0200
commit07c5f6ec23fcf9237a24e71adcfacabce677f818 (patch)
tree588e8c5f82b9163181fad3581f610e6f1d88cba4 /validator.h
parenta9153f1615a842cfb9e9bcda4d9071e202618569 (diff)
downloadOneRoll-07c5f6ec23fcf9237a24e71adcfacabce677f818.tar.gz
OneRoll-07c5f6ec23fcf9237a24e71adcfacabce677f818.zip
Change file organization.
Diffstat (limited to 'validator.h')
-rw-r--r--validator.h107
1 files changed, 0 insertions, 107 deletions
diff --git a/validator.h b/validator.h
deleted file mode 100644
index ca15f67..0000000
--- a/validator.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2014 by Renaud Guezennec *
- * https://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 VALIDATOR_H
-#define VALIDATOR_H
-
-#include <diceparser/diceparserhelper.h>
-
-#include "die.h"
-#include <QString>
-#include <Qt>
-#include <set>
-/**
- * @brief The Validator class is an abstract class for checking the validity of dice for some
- * operator.
- */
-// template <Dice::ConditionType C>
-class Validator
-{
-public:
- /**
- * @brief Validator
- */
- Validator();
- /**
- * @brief ~Validator
- */
- virtual ~Validator();
- /**
- * @brief hasValid
- * @param b
- * @param recursive
- * @param unlight
- * @return
- */
- virtual qint64 hasValid(Die* b, bool recursive, bool unlight= false) const= 0;
- /**
- * @brief toString
- * @return
- */
- virtual QString toString()= 0;
- /**
- * @brief getValidRangeSize
- * @param faces
- * @return
- */
- virtual Dice::CONDITION_STATE isValidRangeSize(const std::pair<qint64, qint64>& range) const= 0;
- /**
- * @brief getCopy
- * @return return a copy of this validator
- */
- virtual Validator* getCopy() const= 0;
- /**
- * @brief getPossibleValues
- * @param range
- * @return
- */
- virtual const std::set<qint64>& getPossibleValues(const std::pair<qint64, qint64>& range);
- /**
- * @brief validResult
- * @param b
- * @param recursive
- * @param unlight
- * @return
- */
- template <typename Functor>
- qint64 validResult(const std::vector<Die*>& b, bool recursive, bool unlight, Functor functor) const;
-
- Dice::ConditionType getConditionType() const;
- void setConditionType(const Dice::ConditionType& conditionType);
-
-protected:
- template <typename Functor>
- qint64 onEach(const std::vector<Die*>& b, bool recursive, bool unlight, Functor functor) const;
- template <typename Functor>
- qint64 onEachValue(const std::vector<Die*>& b, bool recursive, bool unlight, Functor functor) const;
- template <typename Functor>
- qint64 oneOfThem(const std::vector<Die*>& b, bool recursive, bool unlight, Functor functor) const;
- template <typename Functor>
- qint64 allOfThem(const std::vector<Die*>& b, bool recursive, bool unlight, Functor functor) const;
- template <typename Functor>
- qint64 onScalar(const std::vector<Die*>& b, bool recursive, bool unlight, Functor functor) const;
-
-protected:
- std::set<qint64> m_values;
- Dice::ConditionType m_conditionType= Dice::OnEach;
-};
-
-#endif // VALIDATOR_H