#include <ConsoleRules.h>
Public Member Functions | |
| ConsoleRules () | |
| virtual | ~ConsoleRules () |
| void | addLine (Console *console, const char *line) |
| void | addRule (ConsoleRule *rule) |
| void | removeRule (ConsoleRule *rule) |
| std::string | matchRule (const char *line, std::vector< ConsoleRule * > &matches) |
| void | dump (std::vector< std::string > &resultList) |
Protected Types | |
| typedef std::multimap < std::string, ConsoleRule * > | RulesMap |
Protected Member Functions | |
| bool | parseLine (const char *line, std::vector< ConsoleRuleValue > &split) |
| void | parseAddLine (int position, const char *line, std::vector< ConsoleRuleValue > &split) |
| ConsoleRule * | matchRule (std::vector< ConsoleRuleValue > &values, std::vector< ConsoleRule * > &closeMatches) |
| void | getMatchedRules (std::vector< ConsoleRule * > &result, std::multimap< int, ConsoleRule * > &matchedRules, int argCount) |
Protected Attributes | |
| RulesMap | rules_ |
Definition at line 27 of file ConsoleRules.h.
typedef std::multimap<std::string, ConsoleRule *> ConsoleRules::RulesMap [protected] |
Definition at line 43 of file ConsoleRules.h.
| ConsoleRules::ConsoleRules | ( | ) |
Definition at line 25 of file ConsoleRules.cpp.
| ConsoleRules::~ConsoleRules | ( | ) | [virtual] |
Definition at line 30 of file ConsoleRules.cpp.
| void ConsoleRules::addLine | ( | Console * | console, | |
| const char * | line | |||
| ) |
Definition at line 136 of file ConsoleRules.cpp.
References Console::addLine(), S3D::formatStringBuffer(), matchRule(), parseLine(), ConsoleRule::runRule(), and ConsoleRule::valuesToString().
Referenced by ConsoleImpl::addLine().
| void ConsoleRules::addRule | ( | ConsoleRule * | rule | ) |
Definition at line 35 of file ConsoleRules.cpp.
References _strlwr, ConsoleRule::getName(), removeRule(), and rules_.
Referenced by ConsoleImpl::addRule().
| void ConsoleRules::removeRule | ( | ConsoleRule * | rule | ) |
Definition at line 44 of file ConsoleRules.cpp.
References rules_.
Referenced by addRule(), and ConsoleImpl::removeRule().
| std::string ConsoleRules::matchRule | ( | const char * | line, | |
| std::vector< ConsoleRule * > & | matches | |||
| ) |
Definition at line 60 of file ConsoleRules.cpp.
References _strnicmp, ConsoleRule::getName(), int(), ConsoleRule::matchesPartialParams(), parseLine(), rules_, stricmp, LangStringUtil::strlen(), ConsoleRule::toString(), and ConsoleRuleValue::valueString.
Referenced by addLine(), and ConsoleImpl::keyboardCheck().
| void ConsoleRules::dump | ( | std::vector< std::string > & | resultList | ) |
Definition at line 332 of file ConsoleRules.cpp.
References rules_, and ConsoleRule::toString().
Referenced by ConsoleImpl::help().
| bool ConsoleRules::parseLine | ( | const char * | line, | |
| std::vector< ConsoleRuleValue > & | split | |||
| ) | [protected] |
Definition at line 239 of file ConsoleRules.cpp.
References int(), parseAddLine(), and LangStringUtil::strlen().
Referenced by addLine(), and matchRule().
| void ConsoleRules::parseAddLine | ( | int | position, | |
| const char * | line, | |||
| std::vector< ConsoleRuleValue > & | split | |||
| ) | [protected] |
Definition at line 283 of file ConsoleRules.cpp.
References ConsoleRuleTypeBoolean, ConsoleRuleTypeNumber, ConsoleRuleTypeString, int(), ConsoleRuleValue::position, LangStringUtil::strcmp(), LangStringUtil::strlen(), ConsoleRuleValue::type, ConsoleRuleValue::valueBool, ConsoleRuleValue::valueNumber, and ConsoleRuleValue::valueString.
Referenced by parseLine().
| ConsoleRule * ConsoleRules::matchRule | ( | std::vector< ConsoleRuleValue > & | values, | |
| std::vector< ConsoleRule * > & | closeMatches | |||
| ) | [protected] |
Definition at line 178 of file ConsoleRules.cpp.
References _strlwr, getMatchedRules(), ConsoleRule::getParams(), ConsoleRule::matchesExactParams(), rules_, and ConsoleRuleValue::valueString.
| void ConsoleRules::getMatchedRules | ( | std::vector< ConsoleRule * > & | result, | |
| std::multimap< int, ConsoleRule * > & | matchedRules, | |||
| int | argCount | |||
| ) | [protected] |
RulesMap ConsoleRules::rules_ [protected] |
Definition at line 44 of file ConsoleRules.h.
Referenced by addRule(), dump(), matchRule(), and removeRule().
1.5.3