diff options
Diffstat (limited to 'src/libcommuni/include/IrcUtil/irccommandparser_p.h')
| -rw-r--r-- | src/libcommuni/include/IrcUtil/irccommandparser_p.h | 96 |
1 files changed, 0 insertions, 96 deletions
diff --git a/src/libcommuni/include/IrcUtil/irccommandparser_p.h b/src/libcommuni/include/IrcUtil/irccommandparser_p.h deleted file mode 100644 index d22fd6d..0000000 --- a/src/libcommuni/include/IrcUtil/irccommandparser_p.h +++ /dev/null @@ -1,96 +0,0 @@ -/* - Copyright (C) 2008-2014 The Communi Project - - You may use this file under the terms of BSD license as follows: - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of the copyright holder nor the names of its - contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR - ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -#ifndef IRCCOMMANDPARSER_P_H -#define IRCCOMMANDPARSER_P_H - -#include "irccommandparser.h" -#include "irccommand.h" - -#include <QList> -#include <QString> -#include <QMultiMap> -#include <QStringList> - -IRC_BEGIN_NAMESPACE - -struct IrcParameterInfo -{ - IrcParameterInfo() : optional(false), channel(false), current(false), multi(false) { } - bool optional; - bool channel; - bool current; - bool multi; - QString value; - QString syntax; -}; - -struct IrcCommandInfo -{ - IrcCommandInfo() : type(IrcCommand::Custom), min(0), max(0) { } - - QString fullSyntax() - { - return command + QLatin1Char(' ') + syntax; - } - - IrcCommand::Type type; - QString command; - QString syntax; - int min, max; - QList<IrcParameterInfo> params; -}; - -class IrcCommandParserPrivate -{ -public: - IrcCommandParserPrivate(); - - QList<IrcCommandInfo> find(const QString& command) const; - static IrcCommandInfo parseSyntax(IrcCommand::Type type, const QString& syntax); - IrcCommand* parseCommand(const IrcCommandInfo& command, const QString& input) const; - bool processParameters(const IrcCommandInfo& command, const QString& input, QStringList* params) const; - bool processCommand(QString* input, int* removed = 0) const; - bool processMessage(QString* input, int* removed = 0) const; - bool onChannel() const; - - static IrcCommandParserPrivate* get(IrcCommandParser* parser) - { - return parser->d_func(); - } - - bool tolerant; - QString target; - QStringList triggers; - QStringList channels; - QMultiMap<QString, IrcCommandInfo> commands; -}; - -IRC_END_NAMESPACE - -#endif // IRCCOMMANDPARSER_P_H |
