diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-04-09 20:40:47 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-04-09 20:40:47 +0000 |
commit | 772d6f16c0c474d2b66121c618c0273c26ca574e (patch) | |
tree | 1a535f64d6c3ed328a7424666506a8bb5df75d1a /src/mode.cpp | |
parent | aa21503f06e3a32945c003ce4193a766ea58642b (diff) |
Start of mode parser refactoring
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3855 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/mode.cpp')
-rw-r--r-- | src/mode.cpp | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/src/mode.cpp b/src/mode.cpp index b6905df9e..d61725eef 100644 --- a/src/mode.cpp +++ b/src/mode.cpp @@ -54,6 +54,94 @@ extern ServerConfig* Config; extern time_t TIME; +ModeOutput::ModeOutput(std::string parameter, ModeAction action) : par(parameter), act(action) +{ +} + +ModeAction ModeOutput::GetAction() +{ + return act; +} + +std::string& ModeOutput::GetParameter() +{ + return par; +} + +ModeHandler::ModeHandler(char modeletter, int parameters, bool listmode, ModeType type, bool operonly) : mode(modeletter), n_params(parameters), list(listmode), m_type(type), oper(operonly) +{ +} + +ModeHandler::~ModeHandler() +{ +} + +bool ModeHandler::IsListMode() +{ + return list; +} + +ModeType ModeHandler::GetModeType() +{ + return m_type; +} + +bool ModeHandler::NeedsOper() +{ + return oper; +} + +int ModeHandler::GetNumParams() +{ + return n_params; +} + +char ModeHandler::GetModeChar() +{ + return mode; +} + +ModeOutput ModeHandler::OnModeChange(userrec* source, userrec* dest, chanrec* channel, const std::string ¶meter, bool adding) +{ + return ModeOutput("", MODEACTION_DENY); +} + +void ModeHandler::DisplayList(userrec* user, chanrec* channel) +{ +} + +bool ModeHandler::CheckTimeStamp(time_t theirs, time_t ours, const std::string &their_param, const std::string &our_param, chanrec* channel) +{ + return (ours < theirs); +} + +ModeWatcher::ModeWatcher(char modeletter, ModeType type) : mode(modeletter), m_type(type) +{ +} + +ModeWatcher::~ModeWatcher() +{ +} + +char ModeWatcher::GetModeChar() +{ + return mode; +} + +ModeType ModeWatcher::GetModeType() +{ + return m_type; +} + +bool ModeWatcher::BeforeMode(userrec* source, userrec* dest, chanrec* channel, const std::string ¶meter, bool adding) +{ + return true; +} + +void ModeWatcher::AfterMode(userrec* source, userrec* dest, chanrec* channel, const std::string ¶meter, bool adding) +{ +} + userrec* ModeParser::SanityChecks(userrec *user,char *dest,chanrec *chan,int status) { userrec *d; |