/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
library/python/symbols/registry/syms.cpp
31 строка
680 B
qkrorlqr
Initial NBS OpenSource export
28 апр 2023, 21:54
28 апр 2023, 21:54
783a858
Код
Авторство
О чём код?
#include "syms.h" #include <util/generic/vector.h> #include <util/generic/string.h> #include <util/generic/singleton.h> using namespace NPrivate; namespace { struct TSym { const char* Mod; const char* Name; void* Sym; }; struct TSymbols: public TVector<TSym> { static inline TSymbols* Instance() { return Singleton<TSymbols>(); } }; } void NPrivate::RegisterSymbol(const char* mod, const char* name, void* sym) { TSymbols::Instance()->push_back(TSym{mod, name, sym}); } void NPrivate::ForEachSymbol(ICB& cb) { for (auto& x : *TSymbols::Instance()) { cb.Apply(x.Mod, x.Name, x.Sym); } }