diff options
Diffstat (limited to 'modules/operserv/os_oper.cpp')
-rw-r--r-- | modules/operserv/os_oper.cpp | 38 |
1 files changed, 1 insertions, 37 deletions
diff --git a/modules/operserv/os_oper.cpp b/modules/operserv/os_oper.cpp index d05650d7c..dd9557a41 100644 --- a/modules/operserv/os_oper.cpp +++ b/modules/operserv/os_oper.cpp @@ -10,43 +10,7 @@ */ #include "module.h" - -struct MyOper final - : Oper - , Serializable -{ - MyOper(const Anope::string &n, OperType *o) : Oper(n, o), Serializable("Oper") { } - - void Serialize(Serialize::Data &data) const override - { - data["name"] << this->name; - data["type"] << this->ot->GetName(); - } - - static Serializable *Unserialize(Serializable *obj, Serialize::Data &data) - { - Anope::string stype, sname; - - data["type"] >> stype; - data["name"] >> sname; - - OperType *ot = OperType::Find(stype); - if (ot == NULL) - return NULL; - NickCore *nc = NickCore::Find(sname); - if (nc == NULL) - return NULL; - - MyOper *myo; - if (obj) - myo = anope_dynamic_static_cast<MyOper *>(obj); - else - myo = new MyOper(nc->display, ot); - nc->o = myo; - Log(LOG_NORMAL, "operserv/oper") << "Tied oper " << nc->display << " to type " << ot->GetName(); - return myo; - } -}; +#include "modules/os_oper.h" class CommandOSOper final : public Command |