mirror of
https://github.com/polserver/polserver
synced 2026-08-13 08:23:08 -04:00
56 lines
895 B
C++
56 lines
895 B
C++
/** @file
|
|
*
|
|
* @par History
|
|
*/
|
|
|
|
|
|
#include "userfunc.h"
|
|
|
|
#include <stddef.h>
|
|
|
|
#include <format/format.h>
|
|
#include "../clib/logfacility.h"
|
|
|
|
namespace Pol
|
|
{
|
|
namespace Bscript
|
|
{
|
|
unsigned int UserFunction::_instances;
|
|
std::set<UserFunction*> UserFunction::_instancelist;
|
|
void UserFunction::show_instances()
|
|
{
|
|
fmt::Writer tmp;
|
|
for ( const auto& uf : _instancelist )
|
|
{
|
|
tmp << uf->name << "\n";
|
|
}
|
|
ERROR_PRINT << tmp.str();
|
|
}
|
|
void UserFunction::register_instance()
|
|
{
|
|
++_instances;
|
|
_instancelist.insert( this );
|
|
}
|
|
void UserFunction::unregister_instance()
|
|
{
|
|
_instancelist.erase( this );
|
|
--_instances;
|
|
}
|
|
unsigned int UserFunction::instances()
|
|
{
|
|
return _instances;
|
|
}
|
|
UserFunction::UserFunction()
|
|
: name( "" ),
|
|
parameters(),
|
|
position( 0 ),
|
|
forward_callers(),
|
|
ctx(),
|
|
function_body( nullptr ),
|
|
exported( false ),
|
|
emitted( false )
|
|
{
|
|
}
|
|
|
|
}
|
|
}
|