diff --git a/source/Misc/Signal.cpp b/source/Misc/Signal.cpp index 76030d9f..7099aae2 100644 --- a/source/Misc/Signal.cpp +++ b/source/Misc/Signal.cpp @@ -5,16 +5,11 @@ namespace SqMod { // ------------------------------------------------------------------------------------------------ -Signal::SignalContainer Signal::s_Signals; -Signal::FreeSignals Signal::s_FreeSignals; +SQMODE_DECL_TYPENAME(Typename, _SC("SqSignalWrapper")) // ------------------------------------------------------------------------------------------------ -SQInteger Signal::Typename(HSQUIRRELVM vm) -{ - static const SQChar name[] = _SC("SqSignal"); - sq_pushstring(vm, name, sizeof(name)); - return 1; -} +Signal::SignalContainer Signal::s_Signals; +Signal::FreeSignals Signal::s_FreeSignals; // ------------------------------------------------------------------------------------------------ void Signal::Terminate() @@ -1017,11 +1012,10 @@ static SQInteger SqFetchSignal(HSQUIRRELVM vm) // ================================================================================================ void Register_Signal(HSQUIRRELVM vm) { - RootTable(vm).Bind(_SC("SqSignalWrapper"), - Class< Signal, NoConstructor< Signal > >(vm, _SC("SqSignalWrapper")) + RootTable(vm).Bind(Typename::Str, + Class< Signal, NoConstructor< Signal > >(vm, Typename::Str) // Meta-methods - .Func(_SC("_cmp"), &Signal::Cmp) - .SquirrelFunc(_SC("_typename"), &Signal::Typename) + .SquirrelFunc(_SC("_typename"), &Typename::Fn) .Func(_SC("_tostring"), &Signal::ToString) // Core Properties .Prop(_SC("Data"), &Signal::GetData, &Signal::SetData) diff --git a/source/Misc/Signal.hpp b/source/Misc/Signal.hpp index 3b7ea868..22604520 100644 --- a/source/Misc/Signal.hpp +++ b/source/Misc/Signal.hpp @@ -391,25 +391,6 @@ public: */ Signal & operator = (Signal && o) = delete; - /* -------------------------------------------------------------------------------------------- - * Used by the script engine to compare two instances of this type. - */ - Int32 Cmp(const Signal & o) const - { - if (m_Name == o.m_Name) - { - return 0; - } - else if (m_Name > o.m_Name) - { - return 1; - } - else - { - return -1; - } - } - /* -------------------------------------------------------------------------------------------- * Used by the script engine to convert an instance of this type to a string. */ @@ -418,11 +399,6 @@ public: return m_Name; } - /* -------------------------------------------------------------------------------------------- - * Used by the script engine to retrieve the name from instances of this type. - */ - static SQInteger Typename(HSQUIRRELVM vm); - /* -------------------------------------------------------------------------------------------- * Retrieve the associated user data. */