summaryrefslogtreecommitdiff
path: root/src/mode.cpp
AgeCommit message (Collapse)Author
2015-01-10Reduce std::string::substr() usageAttila Molnar
substr() returns a new string while erase() and assign() modify the existing one
2014-12-15Change type of some associative containers to their flat versions, including ↵Attila Molnar
Extensible storage
2014-12-15Add typedef ModeParser::ModeWatcherMap, remove ModeWatchIterAttila Molnar
2014-09-10Remove listmode hiding support from the coreAttila Molnar
This is now handled by m_hidelist
2014-09-04Migrate code from ModeParser into cmd_mode (core_user)Attila Molnar
- Process() that takes a std::vector<std::string> - DisplayCurrentModes() - DisplayListModes()
2014-09-04Split ModeParser::DisplayListMode() into two partsAttila Molnar
ShowListModeList() sends the list of one listmode to a user, DisplayListMode() calls it for each mode letter
2014-09-04Remove unused parameter passed to ModeParser::DisplayCurrentModes()Attila Molnar
2014-09-04Pass Modes::ChangeList references to the OnPreMode hook, make it modifiableAttila Molnar
This gets rid of the duplicated mode parsing logic in m_namedmodes
2014-09-04Let callers customize the begin/end positions for ↵Attila Molnar
ModeParser::ModeParamsToChangeList() This helps spanningtree when it deals with a vector of parameters where the modes begin at different positions
2014-09-03Use Modes::ChangeList in ModeHandler::RemoveMode()Attila Molnar
2014-09-03Add a ModeParser::Process() overload that can process an entire ↵Attila Molnar
Modes::ChangeList This is a wrapper that calls ProcessSingle() repeatedly until the entire changelist is processed
2014-09-03Make it possible to resume processing a partially processed Modes::ChangeListAttila Molnar
Return number of processed mode changes from ModeParser::ProcessSingle() and add a begin index parameter
2014-09-03Split out ModeParser::ModeParamsToChangeList()Attila Molnar
2014-09-03Handle mode merges in ModeParser::ProcessSingle()Attila Molnar
2014-09-03Validate mode parameters from ModeParser::ProcessSingle()Attila Molnar
2014-09-03Split out ModeParser::ProcessSingle() from Process()Attila Molnar
This applies up to one MODE line's worth of mode changes from a Modes::ChangeList
2014-09-03Add mode process flag MODE_CHECKACCESSAttila Molnar
2014-09-03Remove ModeHandler::m_paramtype and GetTranslateType()Attila Molnar
2014-09-03Remove ModeParser::LastParseTranslate and GetLastParseTranslate()Attila Molnar
2014-09-03Remove ModeParser::LastParseParams and GetLastParseParams()Attila Molnar
2014-09-03Compare Limits.MaxModes to the size of LastChangeList in ModeParser::Process()Attila Molnar
2014-09-03Remove ProtocolInterface::SendMode()Attila Molnar
2014-09-03Pass the modes to the OnMode hook as a Modes::ChangeList, pass ↵Attila Molnar
ModeProcessFlags too
2014-09-03Populate a Modes::ChangeList object in ModeParser::Process()Attila Molnar
2014-09-02Change mode_sequence to be a const ref in ModeParser::Process()Attila Molnar
Also change the signature of DisplayListModes() to accept a const ref
2014-09-02Replace stringstream with a std::string in ModeParser::Process()Attila Molnar
There is no benefit in using a stringstream here
2014-08-06Pass prefix rank and prefix char to PrefixMode constructorAttila Molnar
2014-08-06Remove a bunch of useless classes representing simple core modesAttila Molnar
2014-07-14Remove typedef UserMembCIter, use Channel::MemberMap::const_iterator insteadAttila Molnar
2014-07-14Rename UserMembList to Channel::MemberMap, switch all code to use itAttila Molnar
2014-07-14Change return type of Channel::GetUsers() to reference from pointer as it is ↵Attila Molnar
never NULL
2014-06-24Change allocation of InspIRCd::Modes to be physically part of the object ↵Attila Molnar
containing it using fakederef
2014-03-15Add UserManager::GetUsers()Attila Molnar
2014-03-14Add InspIRCd::GetChans(), remove ChannelCount()Attila Molnar
2014-03-09Move the wallops mode from the core into core_wallopsAttila Molnar
2014-02-23Throw an exception if ModeParser::AddMode() failsAttila Molnar
2014-02-21Assign an id to user modes, parameter chanmodes and simple chanmodesAttila Molnar
2014-02-21Replace mode letter parameter of OnRawMode() with a ModeHandler*, remove pcntAttila Molnar
2014-02-20Add a ModeParser::FindMode() overload that takes a mode name and a mode typeAttila Molnar
2014-02-20Create a name -> ModeHandler* mapAttila Molnar
2014-02-18Replace ModeMasks with a two-dimensional arrayAttila Molnar
2014-02-18Change the parameter type of ModeHandler::GiveModeList() from ModeMasks to ↵Attila Molnar
ModeType
2014-02-15Add ParamModeBase and ParamMode, change all parameter modes to inherit from ↵Attila Molnar
ParamMode - Type of the extension used to store data is a template parameter - The extension is automatically unset when the mode is unset - Handlers inheriting from ParamMode have to provide OnSet() and SerializeParam(); may optionally provide OnUnset() - Transparently handle the case when OnSet() modifies the mode parameter - Remove Channel::custom_mode_params map; ask the mode handlers to serialize their parameters instead
2014-01-21Merge insp20Attila Molnar
2014-01-19Use FindNickOnly() in a few more places if a local user is performing an ↵Attila Molnar
action to prevent UID walking
2014-01-06Automatically register and unregister mode watchersAttila Molnar
2014-01-05Remove useless ULine() checksAttila Molnar
2013-11-12Use WriteNumeric() everywhere we send numerics and include the user's nick ↵Adam
automatically
2013-09-12Keep lists of mode handlers by typeattilamolnar
2013-09-11Move prefix mode specific fields and getters into PrefixModeattilamolnar
Add ModeHandler::IsPrefixMode()