Pol  Revision:4b29d2b
Pol::Bscript::Executor Class Reference

#include <executor.h>

+ Inheritance diagram for Pol::Bscript::Executor:

Public Types

enum  DEBUG_LEVEL { NONE, SOURCELINES, INSTRUCTIONS }
 

Public Member Functions

 Executor ()
 
virtual ~Executor ()
 
void addmember2 (BObject &left, const BObject &right)
 
void addModule (ExecutorModule *module)
 
void attach_debugger ()
 
bool AttachFunctionalityModules ()
 
void calcrunnable ()
 
void dbg_break ()
 
void dbg_clrallbp ()
 
void dbg_clrbp (unsigned atPC)
 
std::string dbg_get_instruction (size_t atPC) const
 
void dbg_ins_trace ()
 
void dbg_run ()
 
void dbg_setbp (unsigned atPC)
 
void dbg_step_into ()
 
void dbg_step_over ()
 
bool debugging () const
 
void detach_debugger ()
 
bool empty_scriptname ()
 
bool error () const
 
bool exec ()
 
void execFunc (const Token &token)
 
void execInstr ()
 
ExecutorModulefindModule (const std::string &name)
 
BApplicObjBasegetApplicObjParam (unsigned param, const BApplicObjType *object_type)
 
void * getApplicPtrParam (unsigned param, const BApplicObjType *pointer_type)
 
void getArg (const Token &token)
 
int getDebugLevel ()
 
const BLonggetLongParam (unsigned param)
 
bool getObjArrayParam (unsigned param, ObjArray *&pobjarr)
 
bool getParam (unsigned param, int &value)
 
bool getParam (unsigned param, int &value, int maxval)
 
bool getParam (unsigned param, int &value, int minval, int maxval)
 
bool getParam (unsigned param, unsigned &value)
 
bool getParam (unsigned param, unsigned short &value)
 
bool getParam (unsigned param, unsigned short &value, unsigned short maxval)
 
bool getParam (unsigned param, unsigned short &value, unsigned short minval, unsigned short maxval)
 
bool getParam (unsigned param, short &value)
 
bool getParam (unsigned param, short &value, short maxval)
 
bool getParam (unsigned param, short &value, short minval, short maxval)
 
BObjectImpgetParamImp (unsigned param)
 
BObjectImpgetParamImp (unsigned param, BObjectImp::BObjectType type)
 
BObjectImpgetParamImp2 (unsigned param, BObjectImp::BObjectType type)
 
BObjectgetParamObj (unsigned param)
 
bool getRealParam (unsigned param, double &value)
 
const StringgetStringParam (unsigned param)
 
bool getStringParam (unsigned param, const String *&pstr)
 
int getToken (Token &token, unsigned position)
 
BObjectRefGlobalVar (unsigned int varnum)
 
bool halt () const
 
bool hasParams (unsigned howmany) const
 
void initForFnCall (unsigned in_PC)
 
void ins_add (const Instruction &ins)
 
void ins_addmember (const Instruction &ins)
 
void ins_addmember2 (const Instruction &ins)
 
void ins_addmember_assign (const Instruction &ins)
 
void ins_array (const Instruction &ins)
 
void ins_array_assign (const Instruction &ins)
 
void ins_array_assign_consume (const Instruction &ins)
 
void ins_arraysubscript (const Instruction &ins)
 
void ins_assign (const Instruction &ins)
 
void ins_assign_consume (const Instruction &ins)
 
void ins_assign_globalvar (const Instruction &ins)
 
void ins_assign_localvar (const Instruction &ins)
 
void ins_bitshift_left (const Instruction &ins)
 
void ins_bitshift_right (const Instruction &ins)
 
void ins_bitwise_and (const Instruction &ins)
 
void ins_bitwise_not (const Instruction &ins)
 
void ins_bitwise_or (const Instruction &ins)
 
void ins_bitwise_xor (const Instruction &ins)
 
void ins_call_method (const Instruction &ins)
 
void ins_call_method_id (const Instruction &ins)
 
void ins_casejmp (const Instruction &ins)
 
void ins_checkmember (const Instruction &ins)
 
void ins_consume (const Instruction &ins)
 
void ins_declareArray (const Instruction &ins)
 
void ins_dictionary (const Instruction &ins)
 
void ins_dictionary_addmember (const Instruction &ins)
 
void ins_div (const Instruction &ins)
 
void ins_divideequal (const Instruction &ins)
 
void ins_double (const Instruction &ins)
 
void ins_equal (const Instruction &ins)
 
void ins_error (const Instruction &ins)
 
void ins_exit (const Instruction &ins)
 
void ins_func (const Instruction &ins)
 
void ins_funcref (const Instruction &ins)
 
void ins_get_arg (const Instruction &ins)
 
void ins_get_member (const Instruction &ins)
 
void ins_get_member_id (const Instruction &ins)
 
void ins_globalvar (const Instruction &ins)
 
void ins_gosub (const Instruction &ins)
 
void ins_goto (const Instruction &ins)
 
void ins_greaterequal (const Instruction &ins)
 
void ins_greaterthan (const Instruction &ins)
 
void ins_ident (const Instruction &ins)
 
void ins_in (const Instruction &ins)
 
void ins_initfor (const Instruction &ins)
 
void ins_initforeach (const Instruction &ins)
 
void ins_initforeach2 (const Instruction &ins)
 
void ins_insert_into (const Instruction &ins)
 
void ins_jmpiffalse (const Instruction &ins)
 
void ins_jmpiftrue (const Instruction &ins)
 
void ins_jsr_userfunc (const Instruction &ins)
 
void ins_leave_block (const Instruction &ins)
 
void ins_lessequal (const Instruction &ins)
 
void ins_lessthan (const Instruction &ins)
 
void ins_localvar (const Instruction &ins)
 
void ins_logical_and (const Instruction &ins)
 
void ins_logical_not (const Instruction &ins)
 
void ins_logical_or (const Instruction &ins)
 
void ins_long (const Instruction &ins)
 
void ins_makeLocal (const Instruction &ins)
 
void ins_makelocal (const Instruction &ins)
 
void ins_member (const Instruction &ins)
 
void ins_minusequal (const Instruction &ins)
 
void ins_modulus (const Instruction &ins)
 
void ins_modulusequal (const Instruction &ins)
 
void ins_mult (const Instruction &ins)
 
void ins_multisubscript (const Instruction &ins)
 
void ins_multisubscript_assign (const Instruction &ins)
 
void ins_multisubscript_assign_consume (const Instruction &ins)
 
void ins_nextfor (const Instruction &ins)
 
void ins_nop (const Instruction &ins)
 
void ins_notequal (const Instruction &ins)
 
void ins_plusequal (const Instruction &ins)
 
void ins_pop_param (const Instruction &ins)
 
void ins_pop_param_byref (const Instruction &ins)
 
void ins_progend (const Instruction &ins)
 
void ins_removemember (const Instruction &ins)
 
void ins_return (const Instruction &ins)
 
void ins_set_member (const Instruction &ins)
 
void ins_set_member_consume (const Instruction &ins)
 
void ins_set_member_id (const Instruction &ins)
 
void ins_set_member_id_consume (const Instruction &ins)
 
void ins_set_member_id_consume_divideequal (const Instruction &ins)
 
void ins_set_member_id_consume_minusequal (const Instruction &ins)
 
void ins_set_member_id_consume_modulusequal (const Instruction &ins)
 
void ins_set_member_id_consume_plusequal (const Instruction &ins)
 
void ins_set_member_id_consume_timesequal (const Instruction &ins)
 
void ins_statementbegin (const Instruction &ins)
 
void ins_stepforeach (const Instruction &ins)
 
void ins_stepforeach2 (const Instruction &ins)
 
void ins_string (const Instruction &ins)
 
void ins_struct (const Instruction &ins)
 
void ins_subtract (const Instruction &ins)
 
void ins_timesequal (const Instruction &ins)
 
void ins_uninit (const Instruction &ins)
 
void ins_unminus (const Instruction &ins)
 
BObjectRefLocalVar (unsigned int varnum)
 
int makeGlobal (const Token &token)
 
BObjectmakeObj (const Token &token)
 
int makeString (unsigned param)
 
size_t numParams () const
 
double paramAsDouble (unsigned param)
 
int paramAsLong (unsigned param)
 
const char * paramAsString (unsigned param)
 
void popParam (const Token &token)
 
void popParamByRef (const Token &token)
 
const EScriptProgramprog () const
 
void pushArg (BObjectImp *arg)
 
void pushArg (const BObjectRef &ref)
 
void reinitExec ()
 
bool runnable () const
 
bool running_to_completion () const
 
const std::string & scriptname () const
 
void set_running_to_completion (bool to_completion)
 
void setdebugging (bool debugging)
 
void setDebugLevel (DEBUG_LEVEL level)
 
void seterror (bool err)
 
void setFunctionResult (BObjectImp *imp)
 
void sethalt (bool halt)
 
bool setProgram (EScriptProgram *prog)
 
void setViewMode (bool vm)
 
void show_context (unsigned atPC)
 
void show_context (fmt::Writer &os, unsigned atPC)
 
virtual size_t sizeEstimate () const
 

Static Public Member Functions

static BObjectRef addmember (BObject &left, const BObject &right)
 
static BObjectRef checkmember (BObject &left, const BObject &right)
 
static ExecInstrFunc GetInstrFunc (const Token &token)
 
static int ins_casejmp_finddefault (const Token &token)
 
static int ins_casejmp_findlong (const Token &token, BLong *blong)
 
static int ins_casejmp_findstring (const Token &token, String *bstringimp)
 
static BObjectRef removemember (BObject &left, const BObject &right)
 

Public Attributes

std::vector< ExecutorModule * > availmodules
 
std::vector< ReturnContextControlStack
 
ModuleFunctioncurrent_module_function
 
DEBUG_LEVEL debug_level
 
int done
 
bool error_
 
std::vector< ExecutorModule * > execmodules
 
std::vector< BObjectReffparams
 
BObjectRefVec Globals2
 
bool halt_
 
BObjectRefVecLocals2
 
unsigned nLines
 
unsigned PC
 
bool run_ok_
 
std::vector< BObjectRefVec * > upperLocals2
 
ValueStackCont ValueStack
 

Static Public Attributes

static Clib::SpinLock _executor_lock
 
static UninitObjectm_SharedUninitObject
 

Protected Member Functions

void cleanParams ()
 
BObjectRef getObjRef (void)
 
BObjectgetParam (unsigned param)
 
int getParams (unsigned howMany)
 
BObject getValue (void)
 
int makeDouble (unsigned param)
 

Private Types

enum  DEBUG_STATE {
  DEBUG_STATE_NONE, DEBUG_STATE_ATTACHING, DEBUG_STATE_ATTACHED, DEBUG_STATE_INS_TRACE,
  DEBUG_STATE_INS_TRACE_BRK, DEBUG_STATE_RUN, DEBUG_STATE_BREAK_INTO, DEBUG_STATE_STEP_INTO,
  DEBUG_STATE_STEPPING_INTO, DEBUG_STATE_STEP_OVER, DEBUG_STATE_STEPPING_OVER
}
 

Private Member Functions

 Executor (const Executor &exec)
 
Executoroperator= (const Executor &exec)
 

Private Attributes

unsigned bp_skip_
 
std::set< unsigned > breakpoints_
 
DEBUG_STATE debug_state_
 
bool debugging_
 
BObjectImpfunc_result_
 
ref_ptr< EScriptProgramprog_
 
bool prog_ok_
 
bool runs_to_completion_
 
std::set< unsigned > tmpbreakpoints_
 
bool viewmode_
 

Friends

void Core::list_script (Core::UOExecutor *uoexec)
 
class ExecutorModule
 

Detailed Description

Definition at line 81 of file executor.h.

Member Enumeration Documentation

Enumerator
NONE 
SOURCELINES 
INSTRUCTIONS 

Definition at line 95 of file executor.h.

Enumerator
DEBUG_STATE_NONE 
DEBUG_STATE_ATTACHING 
DEBUG_STATE_ATTACHED 
DEBUG_STATE_INS_TRACE 
DEBUG_STATE_INS_TRACE_BRK 
DEBUG_STATE_RUN 
DEBUG_STATE_BREAK_INTO 
DEBUG_STATE_STEP_INTO 
DEBUG_STATE_STEPPING_INTO 
DEBUG_STATE_STEP_OVER 
DEBUG_STATE_STEPPING_OVER 

Definition at line 383 of file executor.h.

Constructor & Destructor Documentation

Pol::Bscript::Executor::~Executor ( )
virtual
Pol::Bscript::Executor::Executor ( const Executor exec)
private

Member Function Documentation

void Pol::Bscript::Executor::addmember2 ( BObject left,
const BObject right 
)
void Pol::Bscript::Executor::attach_debugger ( )
bool Pol::Bscript::Executor::AttachFunctionalityModules ( )
void Pol::Bscript::Executor::calcrunnable ( )
inline

Definition at line 432 of file executor.h.

void Pol::Bscript::Executor::cleanParams ( )
protected

Definition at line 191 of file executor.cpp.

References fparams.

void Pol::Bscript::Executor::dbg_break ( )

Definition at line 3081 of file executor.cpp.

Referenced by Pol::Core::DebugContext::cmd_break().

void Pol::Bscript::Executor::dbg_clrallbp ( )

Definition at line 3094 of file executor.cpp.

Referenced by Pol::Core::DebugContext::cmd_clrallbp().

void Pol::Bscript::Executor::dbg_clrbp ( unsigned  atPC)

Definition at line 3090 of file executor.cpp.

Referenced by Pol::Core::DebugContext::cmd_clrbp().

std::string Pol::Bscript::Executor::dbg_get_instruction ( size_t  atPC) const

Definition at line 2905 of file executor.cpp.

Referenced by Pol::Core::DebugContext::cmd_ins().

void Pol::Bscript::Executor::dbg_ins_trace ( )

Definition at line 3061 of file executor.cpp.

Referenced by Pol::Core::DebugContext::cmd_instrace().

void Pol::Bscript::Executor::dbg_run ( )

Definition at line 3076 of file executor.cpp.

Referenced by Pol::Core::DebugContext::cmd_run().

void Pol::Bscript::Executor::dbg_setbp ( unsigned  atPC)

Definition at line 3086 of file executor.cpp.

Referenced by Pol::Core::DebugContext::cmd_setbp().

void Pol::Bscript::Executor::dbg_step_into ( )

Definition at line 3066 of file executor.cpp.

Referenced by Pol::Core::DebugContext::cmd_stepinto().

void Pol::Bscript::Executor::dbg_step_over ( )

Definition at line 3071 of file executor.cpp.

Referenced by Pol::Core::DebugContext::cmd_stepover().

bool Pol::Bscript::Executor::debugging ( ) const
inline

Definition at line 457 of file executor.h.

void Pol::Bscript::Executor::detach_debugger ( )

Definition at line 3055 of file executor.cpp.

Referenced by Pol::Core::DebugContext::cmd_detach().

bool Pol::Bscript::Executor::empty_scriptname ( )
inline

Definition at line 418 of file executor.h.

void Pol::Bscript::Executor::getArg ( const Token token)

Definition at line 893 of file executor.cpp.

References Pol::Bscript::UninitObject::create(), getObjRef(), Locals2, and ValueStack.

int Pol::Bscript::Executor::getDebugLevel ( )
inline

Definition at line 368 of file executor.h.

Referenced by Pol::Module::OSExecutorModule::mf_set_script_option().

ExecInstrFunc Pol::Bscript::Executor::GetInstrFunc ( const Token token)
static

Definition at line 2576 of file executor.cpp.

References Pol::Bscript::CTRL_JSR_USERFUNC, Pol::Bscript::CTRL_LEAVE_BLOCK, Pol::Bscript::CTRL_MAKELOCAL, Pol::Bscript::CTRL_PROGEND, Pol::Bscript::CTRL_STATEMENTBEGIN, Pol::Bscript::Token::id, ins_add(), ins_addmember(), Pol::Bscript::INS_ADDMEMBER2, ins_addmember2(), Pol::Bscript::INS_ADDMEMBER_ASSIGN, ins_addmember_assign(), ins_array(), ins_array_assign(), ins_array_assign_consume(), ins_arraysubscript(), ins_assign(), Pol::Bscript::INS_ASSIGN_CONSUME, ins_assign_consume(), Pol::Bscript::INS_ASSIGN_GLOBALVAR, ins_assign_globalvar(), Pol::Bscript::INS_ASSIGN_LOCALVAR, ins_assign_localvar(), ins_bitshift_left(), ins_bitshift_right(), ins_bitwise_and(), ins_bitwise_not(), ins_bitwise_or(), ins_bitwise_xor(), Pol::Bscript::INS_CALL_METHOD, ins_call_method(), Pol::Bscript::INS_CALL_METHOD_ID, ins_call_method_id(), Pol::Bscript::INS_CASEJMP, ins_casejmp(), ins_checkmember(), ins_consume(), Pol::Bscript::INS_DECLARE_ARRAY, ins_declareArray(), ins_dictionary(), Pol::Bscript::INS_DICTIONARY_ADDMEMBER, ins_dictionary_addmember(), ins_div(), ins_divideequal(), ins_double(), ins_equal(), ins_error(), ins_exit(), ins_func(), ins_funcref(), Pol::Bscript::INS_GET_ARG, ins_get_arg(), Pol::Bscript::INS_GET_MEMBER, ins_get_member(), Pol::Bscript::INS_GET_MEMBER_ID, ins_get_member_id(), ins_globalvar(), ins_gosub(), ins_goto(), ins_greaterequal(), ins_greaterthan(), ins_ident(), ins_in(), Pol::Bscript::INS_INITFOR, ins_initfor(), Pol::Bscript::INS_INITFOREACH, ins_initforeach2(), ins_insert_into(), ins_jmpiffalse(), ins_jmpiftrue(), ins_jsr_userfunc(), ins_leave_block(), ins_lessequal(), ins_lessthan(), ins_localvar(), ins_logical_and(), ins_logical_not(), ins_logical_or(), ins_long(), ins_makeLocal(), ins_makelocal(), ins_minusequal(), ins_modulus(), ins_modulusequal(), ins_mult(), Pol::Bscript::INS_MULTISUBSCRIPT, ins_multisubscript(), Pol::Bscript::INS_MULTISUBSCRIPT_ASSIGN, ins_multisubscript_assign(), Pol::Bscript::INS_NEXTFOR, ins_nextfor(), ins_nop(), ins_notequal(), ins_plusequal(), Pol::Bscript::INS_POP_PARAM, ins_pop_param(), Pol::Bscript::INS_POP_PARAM_BYREF, ins_pop_param_byref(), ins_progend(), ins_removemember(), ins_return(), Pol::Bscript::INS_SET_MEMBER, ins_set_member(), Pol::Bscript::INS_SET_MEMBER_CONSUME, ins_set_member_consume(), Pol::Bscript::INS_SET_MEMBER_ID, ins_set_member_id(), Pol::Bscript::INS_SET_MEMBER_ID_CONSUME, ins_set_member_id_consume(), Pol::Bscript::INS_SET_MEMBER_ID_CONSUME_DIVIDEEQUAL, ins_set_member_id_consume_divideequal(), Pol::Bscript::INS_SET_MEMBER_ID_CONSUME_MINUSEQUAL, ins_set_member_id_consume_minusequal(), Pol::Bscript::INS_SET_MEMBER_ID_CONSUME_MODULUSEQUAL, ins_set_member_id_consume_modulusequal(), Pol::Bscript::INS_SET_MEMBER_ID_CONSUME_PLUSEQUAL, ins_set_member_id_consume_plusequal(), Pol::Bscript::INS_SET_MEMBER_ID_CONSUME_TIMESEQUAL, ins_set_member_id_consume_timesequal(), ins_statementbegin(), Pol::Bscript::INS_STEPFOREACH, ins_stepforeach2(), ins_string(), ins_struct(), Pol::Bscript::INS_SUBSCRIPT_ASSIGN, Pol::Bscript::INS_SUBSCRIPT_ASSIGN_CONSUME, ins_subtract(), ins_timesequal(), Pol::Bscript::INS_UNINIT, ins_uninit(), ins_unminus(), Pol::Bscript::RSV_EXIT, Pol::Bscript::RSV_GLOBAL, Pol::Bscript::RSV_GOSUB, Pol::Bscript::RSV_GOTO, Pol::Bscript::RSV_JMPIFFALSE, Pol::Bscript::RSV_JMPIFTRUE, Pol::Bscript::RSV_LOCAL, Pol::Bscript::RSV_RETURN, Pol::Bscript::TOK_ADD, Pol::Bscript::TOK_ADDMEMBER, Pol::Bscript::TOK_AND, Pol::Bscript::TOK_ARRAY, Pol::Bscript::TOK_ARRAY_SUBSCRIPT, Pol::Bscript::TOK_ASSIGN, Pol::Bscript::TOK_BITAND, Pol::Bscript::TOK_BITOR, Pol::Bscript::TOK_BITWISE_NOT, Pol::Bscript::TOK_BITXOR, Pol::Bscript::TOK_BSLEFT, Pol::Bscript::TOK_BSRIGHT, Pol::Bscript::TOK_CHKMEMBER, Pol::Bscript::TOK_CONSUMER, Pol::Bscript::TOK_DELMEMBER, Pol::Bscript::TOK_DICTIONARY, Pol::Bscript::TOK_DIV, Pol::Bscript::TOK_DIVIDEEQUAL, Pol::Bscript::TOK_DOUBLE, Pol::Bscript::TOK_EQUAL, Pol::Bscript::TOK_ERROR, Pol::Bscript::TOK_FUNC, Pol::Bscript::TOK_FUNCREF, Pol::Bscript::TOK_GLOBALVAR, Pol::Bscript::TOK_GREQ, Pol::Bscript::TOK_GRTHAN, Pol::Bscript::TOK_IDENT, Pol::Bscript::TOK_IN, Pol::Bscript::TOK_INSERTINTO, Pol::Bscript::TOK_LESSEQ, Pol::Bscript::TOK_LESSTHAN, Pol::Bscript::TOK_LOCALVAR, Pol::Bscript::TOK_LOG_NOT, Pol::Bscript::TOK_LONG, Pol::Bscript::TOK_MINUSEQUAL, Pol::Bscript::TOK_MODULUS, Pol::Bscript::TOK_MODULUSEQUAL, Pol::Bscript::TOK_MULT, Pol::Bscript::TOK_NEQ, Pol::Bscript::TOK_OR, Pol::Bscript::TOK_PLUSEQUAL, Pol::Bscript::TOK_STRING, Pol::Bscript::TOK_STRUCT, Pol::Bscript::TOK_SUBTRACT, Pol::Bscript::TOK_TIMESEQUAL, Pol::Bscript::TOK_UNMINUS, Pol::Bscript::TOK_UNPLUS, and Pol::Clib::tostring().

Referenced by Pol::Bscript::EScriptProgram::create_instructions().

const BLong * Pol::Bscript::Executor::getLongParam ( unsigned  param)
BObjectRef Pol::Bscript::Executor::getObjRef ( void  )
protected
bool Pol::Bscript::Executor::getParam ( unsigned  param,
int &  value 
)

Definition at line 363 of file executor.cpp.

References Pol::Clib::explicit_cast(), getParamImp(), Pol::Bscript::BObjectImp::OTLong, and Pol::Bscript::BLong::value().

Referenced by Pol::Module::PolCore::call_method(), Pol::Core::BPacket::call_method_id(), Pol::Accounts::AccountObjImp::call_method_id(), Pol::Core::BBinaryfile::call_method_id(), Pol::Module::DataFileRefObjImp::call_method_id(), Pol::Bscript::ObjArray::call_method_id(), Pol::Module::NPCExecutorModule::face(), Pol::Bscript::ExecutorModule::getParam(), Pol::Core::getSkillIdParam(), makeDouble(), makeString(), Pol::Module::PolSystemExecutorModule::mf_CreatePacket(), Pol::Module::UtilExecutorModule::mf_RandomInt(), Pol::Module::UtilExecutorModule::mf_RandomIntMinMax(), Pol::Module::NPCExecutorModule::mf_RunAwayFromLocation(), Pol::Module::NPCExecutorModule::mf_RunTowardLocation(), Pol::Module::NPCExecutorModule::mf_SetWarMode(), Pol::Module::NPCExecutorModule::mf_TurnAwayFrom(), Pol::Module::NPCExecutorModule::mf_TurnAwayFromLocation(), Pol::Module::NPCExecutorModule::mf_TurnToward(), Pol::Module::NPCExecutorModule::mf_TurnTowardLocation(), Pol::Module::NPCExecutorModule::mf_WalkAwayFromLocation(), Pol::Module::NPCExecutorModule::mf_WalkTowardLocation(), paramAsDouble(), paramAsLong(), Pol::Module::NPCExecutorModule::say(), Pol::Core::Spellbook::script_method_id(), Pol::Core::Map::script_method_id(), Pol::Multi::UHouse::script_method_id(), Pol::Core::UObject::script_method_id(), Pol::Multi::UBoat::script_method_id(), Pol::Items::Item::script_method_id(), Pol::Mobile::Character::script_method_id(), and Pol::Module::OSExecutorModule::set_critical().

bool Pol::Bscript::Executor::getParam ( unsigned  param,
int &  value,
int  maxval 
)
bool Pol::Bscript::Executor::getParam ( unsigned  param,
int &  value,
int  minval,
int  maxval 
)
bool Pol::Bscript::Executor::getParam ( unsigned  param,
unsigned &  value 
)
bool Pol::Bscript::Executor::getParam ( unsigned  param,
unsigned short &  value 
)
bool Pol::Bscript::Executor::getParam ( unsigned  param,
unsigned short &  value,
unsigned short  maxval 
)
bool Pol::Bscript::Executor::getParam ( unsigned  param,
unsigned short &  value,
unsigned short  minval,
unsigned short  maxval 
)
bool Pol::Bscript::Executor::getParam ( unsigned  param,
short &  value 
)
bool Pol::Bscript::Executor::getParam ( unsigned  param,
short &  value,
short  maxval 
)
bool Pol::Bscript::Executor::getParam ( unsigned  param,
short &  value,
short  minval,
short  maxval 
)
BObject * Pol::Bscript::Executor::getParam ( unsigned  param)
protected

Definition at line 256 of file executor.cpp.

References fparams, passert_r, and scriptname().

BObjectImp * Pol::Bscript::Executor::getParamImp ( unsigned  param)

Definition at line 266 of file executor.cpp.

References fparams, passert_r, and scriptname().

Referenced by Pol::Network::AuxConnection::call_method(), Pol::Core::ScriptExObjImp::call_method_id(), Pol::Core::BXMLfile::call_method_id(), Pol::Core::BXmlNode::call_method_id(), Pol::Bscript::String::call_method_id(), Pol::Bscript::ObjArray::call_method_id(), Pol::Core::CallPropertyListMethod_id(), Pol::Module::NPCExecutorModule::CanMove(), Pol::Module::NPCExecutorModule::face(), Pol::Module::BasicExecutorModule::find(), getApplicObjParam(), getApplicPtrParam(), Pol::Core::getCharacterOrClientParam(), Pol::Core::getCharacterParam(), Pol::Core::getItemParam(), getLongParam(), Pol::Core::getMultiParam(), getObjArrayParam(), Pol::Core::getObjtypeParam(), getParam(), Pol::Bscript::ExecutorModule::getParamImp(), getRealParam(), getStringParam(), Pol::Core::getUBoatParam(), Pol::Module::NPCExecutorModule::IsLegalMove(), Pol::Module::BasicExecutorModule::len(), Pol::Module::BasicExecutorModule::mf_Bin(), Pol::Module::BasicExecutorModule::mf_Boolean(), Pol::Module::BasicExecutorModule::mf_CAsc(), Pol::Module::BasicExecutorModule::mf_CAscZ(), Pol::Module::BasicExecutorModule::mf_CChrZ(), Pol::Module::BasicExecutorModule::mf_CDbl(), Pol::Module::BasicExecutorModule::mf_CInt(), Pol::Module::BasicExecutorModule::mf_CStr(), Pol::Module::ConfigFileExecutorModule::mf_FindConfigElement(), Pol::Module::BasicExecutorModule::mf_Hex(), Pol::Module::OSExecutorModule::mf_Log(), Pol::Module::BasicExecutorModule::mf_Pack(), Pol::Module::BasicExecutorModule::mf_PackJSON(), Pol::Module::UOExecutorModule::mf_SendEvent(), Pol::Module::UOExecutorModule::mf_SetGlobalProperty(), Pol::Module::BasicExecutorModule::mf_SizeOf(), Pol::Module::BasicExecutorModule::mf_SplitWords(), Pol::Module::BasicExecutorModule::mf_StrReplace(), Pol::Module::BasicExecutorModule::mf_substr(), Pol::Module::BasicExecutorModule::mf_SubStrReplace(), Pol::Module::BasicExecutorModule::mf_Trim(), Pol::Module::BasicExecutorModule::mf_TypeOf(), Pol::Module::BasicExecutorModule::mf_TypeOfInt(), Pol::Module::NPCExecutorModule::move(), Pol::Module::BasicIoExecutorModule::print(), Pol::Module::OSExecutorModule::run_script(), Pol::Core::UObject::script_method_id(), Pol::Mobile::Character::script_method_id(), Pol::Module::OSExecutorModule::start_script(), and Pol::Module::OSExecutorModule::start_skill_script().

BObjectImp * Pol::Bscript::Executor::getParamImp ( unsigned  param,
BObjectImp::BObjectType  type 
)
BObjectImp * Pol::Bscript::Executor::getParamImp2 ( unsigned  param,
BObjectImp::BObjectType  type 
)
BObject * Pol::Bscript::Executor::getParamObj ( unsigned  param)
int Pol::Bscript::Executor::getParams ( unsigned  howMany)
protected

Definition at line 171 of file executor.cpp.

References fparams, PC, POLLOG_ERROR, prog_, seterror(), and ValueStack.

const String * Pol::Bscript::Executor::getStringParam ( unsigned  param)

Definition at line 347 of file executor.cpp.

References Pol::Clib::explicit_cast(), getParamImp(), and Pol::Bscript::BObjectImp::OTString.

Referenced by Pol::Core::DebugContextObjImp::call_method(), Pol::Core::ScriptExObjImp::call_method_id(), Pol::Core::BPacket::call_method_id(), Pol::Accounts::AccountObjImp::call_method_id(), Pol::Core::BXMLfile::call_method_id(), Pol::Core::BBinaryfile::call_method_id(), Pol::Module::DataFileRefObjImp::call_method_id(), Pol::Core::BXmlNode::call_method_id(), Pol::Module::EClientRefObjImp::call_method_id(), Pol::Core::CallPropertyListMethod_id(), Pol::Core::getAttributeParam(), Pol::Module::NPCExecutorModule::getproperty(), Pol::Bscript::ExecutorModule::getStringParam(), getStringParam(), Pol::Core::getVitalParam(), Pol::Module::ConfigFileExecutorModule::mf_AppendConfigFileElem(), Pol::Module::ConfigFileExecutorModule::mf_ConfigFile(), Pol::Module::ConfigFileExecutorModule::mf_LoadTusScpFile(), Pol::Module::UtilExecutorModule::mf_RandomDiceRoll(), Pol::Module::UOExecutorModule::mf_SetGlobalProperty(), Pol::Module::BasicExecutorModule::mf_SplitWords(), Pol::Module::BasicExecutorModule::mf_Unpack(), Pol::Module::BasicExecutorModule::mf_UnpackJSON(), Pol::Module::OSExecutorModule::run_script(), Pol::Core::UObject::script_method_id(), Pol::Multi::UBoat::script_method_id(), Pol::Items::Item::script_method_id(), Pol::Mobile::Character::script_method_id(), Pol::Module::NPCExecutorModule::setproperty(), Pol::Module::OSExecutorModule::start_script(), and Pol::Module::OSExecutorModule::start_skill_script().

bool Pol::Bscript::Executor::getStringParam ( unsigned  param,
const String *&  pstr 
)

Definition at line 357 of file executor.cpp.

References getStringParam().

int Pol::Bscript::Executor::getToken ( Token token,
unsigned  position 
)

Definition at line 722 of file executor.cpp.

References nLines, and prog_.

BObject Pol::Bscript::Executor::getValue ( void  )
protected
BObjectRef & Pol::Bscript::Executor::GlobalVar ( unsigned int  varnum)

Definition at line 716 of file executor.cpp.

References Globals2, and passert.

Referenced by makeObj().

bool Pol::Bscript::Executor::halt ( ) const
inline
void Pol::Bscript::Executor::initForFnCall ( unsigned  in_PC)
void Pol::Bscript::Executor::ins_add ( const Instruction ins)
void Pol::Bscript::Executor::ins_addmember ( const Instruction ins)

Definition at line 2007 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_addmember2 ( const Instruction ins)
void Pol::Bscript::Executor::ins_array ( const Instruction ins)

Definition at line 2525 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_array_assign ( const Instruction ins)
void Pol::Bscript::Executor::ins_array_assign_consume ( const Instruction ins)
void Pol::Bscript::Executor::ins_arraysubscript ( const Instruction ins)

Definition at line 1964 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_assign ( const Instruction ins)
void Pol::Bscript::Executor::ins_assign_consume ( const Instruction ins)
void Pol::Bscript::Executor::ins_assign_globalvar ( const Instruction ins)
void Pol::Bscript::Executor::ins_assign_localvar ( const Instruction ins)
void Pol::Bscript::Executor::ins_bitshift_left ( const Instruction ins)
void Pol::Bscript::Executor::ins_bitshift_right ( const Instruction ins)
void Pol::Bscript::Executor::ins_bitwise_and ( const Instruction ins)
void Pol::Bscript::Executor::ins_bitwise_not ( const Instruction ins)

Definition at line 2561 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_bitwise_or ( const Instruction ins)
void Pol::Bscript::Executor::ins_bitwise_xor ( const Instruction ins)
void Pol::Bscript::Executor::ins_casejmp ( const Instruction ins)
int Pol::Bscript::Executor::ins_casejmp_finddefault ( const Token token)
static
int Pol::Bscript::Executor::ins_casejmp_findlong ( const Token token,
BLong blong 
)
static
int Pol::Bscript::Executor::ins_casejmp_findstring ( const Token token,
String bstringimp 
)
static
void Pol::Bscript::Executor::ins_checkmember ( const Instruction ins)

Definition at line 2041 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_consume ( const Instruction ins)

Definition at line 1285 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_declareArray ( const Instruction ins)

Definition at line 860 of file executor.cpp.

References ERROR_PRINT, getObjRef(), Pol::Bscript::BObjectImp::OTUninit, seterror(), and ValueStack.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_dictionary ( const Instruction ins)

Definition at line 2529 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_dictionary_addmember ( const Instruction ins)
void Pol::Bscript::Executor::ins_div ( const Instruction ins)
void Pol::Bscript::Executor::ins_divideequal ( const Instruction ins)
void Pol::Bscript::Executor::ins_double ( const Instruction ins)

Definition at line 2509 of file executor.cpp.

References Pol::Bscript::Token::dval, and Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_equal ( const Instruction ins)

Definition at line 1876 of file executor.cpp.

References Pol::Bscript::BObjectRef::set().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_error ( const Instruction ins)

Definition at line 2517 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_exit ( const Instruction ins)

Definition at line 2503 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_func ( const Instruction ins)
void Pol::Bscript::Executor::ins_funcref ( const Instruction ins)
void Pol::Bscript::Executor::ins_get_arg ( const Instruction ins)

Definition at line 2443 of file executor.cpp.

References Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_get_member ( const Instruction ins)
void Pol::Bscript::Executor::ins_get_member_id ( const Instruction ins)
void Pol::Bscript::Executor::ins_globalvar ( const Instruction ins)

Definition at line 1273 of file executor.cpp.

References Pol::Bscript::Token::lval, and Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_gosub ( const Instruction ins)
void Pol::Bscript::Executor::ins_goto ( const Instruction ins)

Definition at line 2247 of file executor.cpp.

References Pol::Bscript::Token::lval, and Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_greaterequal ( const Instruction ins)

Definition at line 1945 of file executor.cpp.

References Pol::Bscript::BObjectRef::set().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_greaterthan ( const Instruction ins)

Definition at line 1928 of file executor.cpp.

References Pol::Bscript::BObjectRef::set().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_ident ( const Instruction ins)

Definition at line 2537 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_in ( const Instruction ins)
void Pol::Bscript::Executor::ins_initfor ( const Instruction ins)
void Pol::Bscript::Executor::ins_initforeach ( const Instruction ins)
void Pol::Bscript::Executor::ins_initforeach2 ( const Instruction ins)
void Pol::Bscript::Executor::ins_insert_into ( const Instruction ins)
void Pol::Bscript::Executor::ins_jmpiffalse ( const Instruction ins)

Definition at line 1254 of file executor.cpp.

References Pol::Bscript::Token::lval, and Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_jmpiftrue ( const Instruction ins)

Definition at line 1244 of file executor.cpp.

References Pol::Bscript::Token::lval, and Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_leave_block ( const Instruction ins)

Definition at line 2449 of file executor.cpp.

References Pol::Bscript::Token::lval, and Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_lessequal ( const Instruction ins)

Definition at line 1912 of file executor.cpp.

References Pol::Bscript::BObjectRef::set().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_lessthan ( const Instruction ins)

Definition at line 1894 of file executor.cpp.

References Pol::Bscript::BObjectRef::set().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_localvar ( const Instruction ins)

Definition at line 1266 of file executor.cpp.

References Pol::Bscript::Token::lval, and Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_logical_and ( const Instruction ins)

Definition at line 1823 of file executor.cpp.

References Pol::Bscript::BObject::isTrue(), and Pol::Bscript::BObjectRef::set().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_logical_not ( const Instruction ins)

Definition at line 2553 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_logical_or ( const Instruction ins)

Definition at line 1840 of file executor.cpp.

References Pol::Bscript::BObject::isTrue(), and Pol::Bscript::BObjectRef::set().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_long ( const Instruction ins)

Definition at line 1279 of file executor.cpp.

References Pol::Bscript::Token::lval, and Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_makeLocal ( const Instruction ins)

Definition at line 849 of file executor.cpp.

References Pol::Bscript::UninitObject::create(), Locals2, passert, and ValueStack.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_makelocal ( const Instruction ins)

Definition at line 2401 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_member ( const Instruction ins)
void Pol::Bscript::Executor::ins_minusequal ( const Instruction ins)
void Pol::Bscript::Executor::ins_modulus ( const Instruction ins)
void Pol::Bscript::Executor::ins_modulusequal ( const Instruction ins)
void Pol::Bscript::Executor::ins_mult ( const Instruction ins)
void Pol::Bscript::Executor::ins_multisubscript ( const Instruction ins)

Definition at line 1978 of file executor.cpp.

References Pol::Bscript::Token::lval, and Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_multisubscript_assign ( const Instruction ins)

Definition at line 1991 of file executor.cpp.

References Pol::Bscript::Token::lval, and Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_multisubscript_assign_consume ( const Instruction ins)
void Pol::Bscript::Executor::ins_nop ( const Instruction ins)

Definition at line 2574 of file executor.cpp.

Referenced by GetInstrFunc(), and Pol::Bscript::BFunctionRef::validCall().

void Pol::Bscript::Executor::ins_notequal ( const Instruction ins)

Definition at line 1858 of file executor.cpp.

References Pol::Bscript::BObjectRef::set().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_plusequal ( const Instruction ins)
void Pol::Bscript::Executor::ins_pop_param ( const Instruction ins)

Definition at line 2433 of file executor.cpp.

References Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_pop_param_byref ( const Instruction ins)

Definition at line 2438 of file executor.cpp.

References Pol::Bscript::Instruction::token.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_progend ( const Instruction ins)

Definition at line 2392 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_removemember ( const Instruction ins)

Definition at line 2024 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_return ( const Instruction ins)

Definition at line 2477 of file executor.cpp.

References ERROR_PRINT, and Pol::Bscript::ReturnContext::PC.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_set_member ( const Instruction ins)
void Pol::Bscript::Executor::ins_set_member_consume ( const Instruction ins)
void Pol::Bscript::Executor::ins_set_member_id ( const Instruction ins)
void Pol::Bscript::Executor::ins_set_member_id_consume ( const Instruction ins)
void Pol::Bscript::Executor::ins_statementbegin ( const Instruction ins)

Definition at line 2385 of file executor.cpp.

References INFO_PRINT, Pol::Bscript::Instruction::token, and Pol::Bscript::Token::tokval().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_stepforeach2 ( const Instruction ins)
void Pol::Bscript::Executor::ins_string ( const Instruction ins)

Definition at line 2513 of file executor.cpp.

References Pol::Bscript::Instruction::token, and Pol::Bscript::Token::tokval().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_struct ( const Instruction ins)

Definition at line 2521 of file executor.cpp.

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_subtract ( const Instruction ins)
void Pol::Bscript::Executor::ins_timesequal ( const Instruction ins)
void Pol::Bscript::Executor::ins_uninit ( const Instruction ins)

Definition at line 2533 of file executor.cpp.

References Pol::Bscript::UninitObject::create().

Referenced by GetInstrFunc().

void Pol::Bscript::Executor::ins_unminus ( const Instruction ins)

Definition at line 2543 of file executor.cpp.

Referenced by GetInstrFunc().

BObjectRef & Pol::Bscript::Executor::LocalVar ( unsigned int  varnum)

Definition at line 708 of file executor.cpp.

References Locals2, and passert.

Referenced by makeObj().

int Pol::Bscript::Executor::makeDouble ( unsigned  param)
protected
int Pol::Bscript::Executor::makeGlobal ( const Token token)
Executor& Pol::Bscript::Executor::operator= ( const Executor exec)
private
double Pol::Bscript::Executor::paramAsDouble ( unsigned  param)

Definition at line 231 of file executor.cpp.

References getParam(), makeDouble(), and Pol::Bscript::Double::value().

void Pol::Bscript::Executor::popParam ( const Token token)

Definition at line 878 of file executor.cpp.

References getObjRef(), and Locals2.

void Pol::Bscript::Executor::popParamByRef ( const Token token)

Definition at line 886 of file executor.cpp.

References getObjRef(), and Locals2.

const EScriptProgram * Pol::Bscript::Executor::prog ( ) const
inline

Definition at line 423 of file executor.h.

Referenced by Pol::Core::ScriptExObjImp::call_method_id(), Pol::Core::BXMLfile::call_method_id(), Pol::Core::DebugContext::cmd_attach(), Pol::Core::DebugContext::cmd_fileline(), Pol::Core::DebugContext::cmd_globalvars(), Pol::Core::DebugContext::cmd_inslist(), Pol::Core::DebugContext::cmd_loadsym(), Pol::Core::DebugContext::cmd_localvars(), Pol::Core::DebugContext::cmd_stacktrace(), Pol::Core::ExportScript::FindExportedFunction(), Pol::Module::ConfigFileExecutorModule::get_cfgfilename(), Pol::Module::DataFileExecutorModule::GetDataStoreFile(), Pol::Core::GetGlobals(), Pol::Module::FileAccessExecutorModule::mf_AppendToFile(), Pol::Module::DataFileExecutorModule::mf_CreateDataFile(), Pol::Module::FileAccessExecutorModule::mf_CreateDirectory(), Pol::Module::FileAccessExecutorModule::mf_FileExists(), Pol::Module::FileAccessExecutorModule::mf_ListDirectory(), Pol::Module::FileAccessExecutorModule::mf_LogToFile(), Pol::Module::FileAccessExecutorModule::mf_OpenBinaryFile(), Pol::Module::OSExecutorModule::mf_OpenConnection(), Pol::Module::DataFileExecutorModule::mf_OpenDataFile(), Pol::Module::FileAccessExecutorModule::mf_OpenXMLFile(), Pol::Module::FileAccessExecutorModule::mf_ReadFile(), Pol::Module::FileAccessExecutorModule::mf_WriteFile(), Pol::Module::OSExecutorModule::run_script(), Pol::Module::OSExecutorModule::run_script_to_completion(), Pol::Module::OSExecutorModule::start_script(), and Pol::Module::OSExecutorModule::start_skill_script().

void Pol::Bscript::Executor::pushArg ( const BObjectRef ref)

Definition at line 3027 of file executor.cpp.

void Pol::Bscript::Executor::reinitExec ( )

Definition at line 2968 of file executor.cpp.

BObjectRef Pol::Bscript::Executor::removemember ( BObject left,
const BObject right 
)
static
bool Pol::Bscript::Executor::runnable ( void  ) const
inline
bool Pol::Bscript::Executor::running_to_completion ( ) const
inline

Definition at line 467 of file executor.h.

Referenced by Pol::Core::UOExecutor::suspend().

void Pol::Bscript::Executor::set_running_to_completion ( bool  to_completion)
inline
void Pol::Bscript::Executor::setdebugging ( bool  debugging)
inline

Definition at line 461 of file executor.h.

void Pol::Bscript::Executor::sethalt ( bool  halt)
inline

Definition at line 447 of file executor.h.

void Pol::Bscript::Executor::setViewMode ( bool  vm)
inline

Definition at line 370 of file executor.h.

Referenced by Pol::Clib::RunEclMain::dumpScript().

void Pol::Bscript::Executor::show_context ( unsigned  atPC)

Definition at line 2914 of file executor.cpp.

References POLLOG.

Referenced by Pol::Core::ScriptScheduler::run_ready().

void Pol::Bscript::Executor::show_context ( fmt::Writer &  os,
unsigned  atPC 
)

Definition at line 2932 of file executor.cpp.

size_t Pol::Bscript::Executor::sizeEstimate ( ) const
virtual

Reimplemented in Pol::Core::UOExecutor.

Definition at line 3099 of file executor.cpp.

References name.

Referenced by Pol::Clib::RunEclMain::runeclScript(), and Pol::Core::UOExecutor::sizeEstimate().

Friends And Related Function Documentation

void Core::list_script ( Core::UOExecutor uoexec)
friend
friend class ExecutorModule
friend

Definition at line 135 of file executor.h.

Member Data Documentation

Clib::SpinLock Pol::Bscript::Executor::_executor_lock
static

Definition at line 84 of file executor.h.

Referenced by Pol::Bscript::display_executor_instances(), Executor(), and ~Executor().

std::vector<ExecutorModule*> Pol::Bscript::Executor::availmodules

Definition at line 209 of file executor.h.

Referenced by ~Executor().

unsigned Pol::Bscript::Executor::bp_skip_
private

Definition at line 400 of file executor.h.

std::set<unsigned> Pol::Bscript::Executor::breakpoints_
private

Definition at line 398 of file executor.h.

std::vector<ReturnContext> Pol::Bscript::Executor::ControlStack
ModuleFunction* Pol::Bscript::Executor::current_module_function
DEBUG_LEVEL Pol::Bscript::Executor::debug_level

Definition at line 101 of file executor.h.

DEBUG_STATE Pol::Bscript::Executor::debug_state_
private

Definition at line 397 of file executor.h.

bool Pol::Bscript::Executor::debugging_
private

Definition at line 382 of file executor.h.

int Pol::Bscript::Executor::done

Definition at line 88 of file executor.h.

Referenced by Pol::Core::ScriptScheduler::run_ready().

bool Pol::Bscript::Executor::error_
std::vector<ExecutorModule*> Pol::Bscript::Executor::execmodules

Definition at line 208 of file executor.h.

Referenced by AttachFunctionalityModules(), execFunc(), and ~Executor().

BObjectImp* Pol::Bscript::Executor::func_result_
private

Definition at line 402 of file executor.h.

Referenced by execFunc(), getParam(), getParamImp2(), and setFunctionResult().

bool Pol::Bscript::Executor::halt_

Definition at line 92 of file executor.h.

UninitObject* Pol::Bscript::Executor::m_SharedUninitObject
static

Definition at line 117 of file executor.h.

unsigned Pol::Bscript::Executor::nLines

Definition at line 131 of file executor.h.

Referenced by Pol::Core::DebugContext::cmd_ins(), getToken(), and setProgram().

bool Pol::Bscript::Executor::prog_ok_
private

Definition at line 377 of file executor.h.

Referenced by setProgram().

bool Pol::Bscript::Executor::run_ok_

Definition at line 93 of file executor.h.

bool Pol::Bscript::Executor::runs_to_completion_
private

Definition at line 380 of file executor.h.

std::set<unsigned> Pol::Bscript::Executor::tmpbreakpoints_
private

Definition at line 399 of file executor.h.

std::vector<BObjectRefVec*> Pol::Bscript::Executor::upperLocals2
bool Pol::Bscript::Executor::viewmode_
private

Definition at line 378 of file executor.h.

Referenced by setProgram().


The documentation for this class was generated from the following files: