|
|||
|
|||
|
#include <hashcomp.h>
Inheritance diagram for irc::modestacker:


Public Member Functions | |
| modestacker (InspIRCd *Instance, bool add) | |
| Construct a new modestacker. | |
| void | Push (char modeletter, const std::string ¶meter) |
| Push a modeletter and its parameter onto the stack. | |
| void | Push (char modeletter) |
| Push a modeletter without parameter onto the stack. | |
| void | PushPlus () |
| Push a '+' symbol onto the stack. | |
| void | PushMinus () |
| Push a '-' symbol onto the stack. | |
| int | GetStackedLine (std::deque< std::string > &result, int max_line_size=360) |
| Return zero or more elements which form the mode line. | |
Private Attributes | |
| InspIRCd * | ServerInstance |
| std::deque< std::string > | sequence |
| The mode sequence and its parameters. | |
| bool | adding |
| True if the mode sequence is initially adding characters, false if it is initially removing them. | |
It can then reproduce this list, clamped to a maximum of MAXMODES values per line.
Definition at line 197 of file hashcomp.h.
|
||||||||||||
|
Construct a new modestacker.
Definition at line 319 of file hashcomp.cpp. References sequence. |
|
||||||||||||
|
Return zero or more elements which form the mode line. This will be clamped to a max of MAXMODES items (MAXMODES-1 mode parameters and one mode sequence string), and max_line_size characters. As specified below, this function should be called in a loop until it returns zero, indicating there are no more modes to return.
Definition at line 346 of file hashcomp.cpp. References adding, InspIRCd::Config, ServerConfig::Limits, ServerLimits::MaxModes, sequence, and ServerInstance. Referenced by ListModeBase::DoSyncChannel(), TreeSocket::ForceJoin(), ModuleBanRedirect::OnCleanup(), ListModeBase::RemoveMode(), FounderProtectBase::RemoveMode(), and TreeSocket::RemoveStatus(). |
|
|
Push a modeletter without parameter onto the stack. No checking is performed as to if this mode actually requires a parameter. If you stack invalid mode sequences, they will be tidied if and when they are passed to a mode parser.
Definition at line 331 of file hashcomp.cpp. References Push(). |
|
||||||||||||
|
Push a modeletter and its parameter onto the stack. No checking is performed as to if this mode actually requires a parameter. If you stack invalid mode sequences, they will be tidied if and when they are passed to a mode parser.
Definition at line 325 of file hashcomp.cpp. References sequence. Referenced by ListModeBase::DoSyncChannel(), TreeSocket::ForceJoin(), ModuleBanRedirect::OnCleanup(), Push(), PushMinus(), PushPlus(), ListModeBase::RemoveMode(), ModeHandler::RemoveMode(), FounderProtectBase::RemoveMode(), ModeChannelVoice::RemoveMode(), ModeChannelOp::RemoveMode(), ModeChannelKey::RemoveMode(), ModeChannelHalfOp::RemoveMode(), and ModeChannelBan::RemoveMode(). |
|
|
Push a '-' symbol onto the stack.
Definition at line 341 of file hashcomp.cpp. References Push(). |
|
|
Push a '+' symbol onto the stack.
Definition at line 336 of file hashcomp.cpp. References Push(). Referenced by ModuleBanRedirect::OnCleanup(). |
|
|
True if the mode sequence is initially adding characters, false if it is initially removing them.
Definition at line 208 of file hashcomp.h. Referenced by GetStackedLine(). |
|
|
The mode sequence and its parameters.
Definition at line 203 of file hashcomp.h. Referenced by GetStackedLine(), modestacker(), and Push(). |
|
|
Definition at line 200 of file hashcomp.h. Referenced by GetStackedLine(). |