Pol
Revision:cb584c9
|
#include <eprog.h>
Public Member Functions | |
EScriptProgram () | |
int | _readToken (Token &token, unsigned position) const |
int | add_dbg_filename (const std::string &filename) |
void | add_ins_dbg_info () |
void | addfunction (std::string name, unsigned firstPC, unsigned lastPC) |
void | addlocalvar (const std::string &localvarname) |
void | addToken (const Token &token) |
void | append (const StoredToken &stoken) |
void | append (const StoredToken &stoken, unsigned *posn) |
void | append (const StoredToken &stoken, const CompilerContext &ctx) |
void | append (const StoredToken &stoken, const CompilerContext &ctx, unsigned *posn) |
void | clear_modules () |
int | create_instructions () |
std::string | dbg_get_instruction (size_t atPC) const |
void | dump (std::ostream &os) |
void | dump_casejmp (std::ostream &os, const Token &token) |
void | enterblock () |
void | enterfunction () |
void | erase () |
void | leaveblock () |
void | leavefunction () |
unsigned | parentvariables (unsigned parent) |
int | read (const char *fname) |
int | read_dbg_file () |
int | read_exported_functions (FILE *fp, BSCRIPT_SECTION_HDR *hdr) |
int | read_globalvarnames (FILE *fp) |
int | read_module (FILE *fp) |
int | read_progdef_hdr (FILE *fp) |
void | setcontext (const CompilerContext &ctx) |
void | setstatementbegin () |
size_t | sizeEstimate () const |
void | update_dbg_pos (const Token &tkn) |
unsigned | varcount (unsigned block) |
int | write (const char *fname) |
int | write_dbg (const char *fname, bool gen_txt) |
Public Member Functions inherited from ref_counted | |
unsigned int | add_ref () |
unsigned int | count () const |
unsigned int | release () |
Public Attributes | |
std::vector< EPDbgBlock > | blocks |
unsigned | curblock |
unsigned | curfile |
unsigned | curline |
std::vector< std::string > | dbg_filenames |
std::vector< unsigned > | dbg_filenum |
std::vector< EPDbgFunction > | dbg_functions |
std::vector< unsigned > | dbg_ins_blocks |
std::vector< bool > | dbg_ins_statementbegin |
std::vector< unsigned > | dbg_linenum |
bool | debug_loaded |
unsigned | expectedArgs |
std::vector< EPExportedFunction > | exported_functions |
std::vector< std::string > | fileline |
std::vector< std::string > | function_decls |
std::vector< std::string > | globalvarnames |
bool | haveProgram |
std::vector< Instruction > | instr |
u64 | instr_cycles |
unsigned int | invocations |
std::vector< FunctionalityModule * > | modules |
boost_utils::script_name_flystring | name |
unsigned | nglobals |
Plib::Package const * | pkg |
std::string | program_decl |
unsigned | program_PC |
unsigned | savecurblock |
std::vector< std::string > | sourcelines |
bool | statementbegin |
SymbolContainer | symbols |
StoredTokenContainer | tokens |
unsigned short | version |
Private Member Functions | |
~EScriptProgram () | |
Friends | |
class | EScriptProgramCheckpoint |
class | ref_ptr< EScriptProgram > |
Additional Inherited Members | |
Protected Member Functions inherited from ref_counted | |
ref_counted () | |
~ref_counted ()=default | |
Protected Attributes inherited from ref_counted | |
std::atomic< unsigned int > | _count |
Pol::Bscript::EScriptProgram::EScriptProgram | ( | ) |
Definition at line 18 of file eprog.cpp.
References blocks, Pol::Bscript::escript_program_count, Pol::Bscript::EPDbgBlock::parentblockidx, and Pol::Bscript::EPDbgBlock::parentvariables.
Referenced by sizeEstimate().
|
private |
Definition at line 63 of file eprog.cpp.
References Pol::Clib::delete_all(), Pol::Bscript::escript_program_count, modules, and name.
int Pol::Bscript::EScriptProgram::_readToken | ( | Token & | token, |
unsigned | position | ||
) | const |
Definition at line 198 of file eprog_read.cpp.
References Pol::Bscript::SymbolContainer::array(), Pol::Bscript::StoredTokenContainer::atGet1(), Pol::Bscript::CTRL_JSR_USERFUNC, Pol::Bscript::CTRL_LEAVE_BLOCK, Pol::Bscript::CTRL_STATEMENTBEGIN, Pol::Bscript::Token::dataptr, Pol::Clib::decint(), Pol::Bscript::Token::dval, Pol::Bscript::FunctionalityModule::functions, Pol::Bscript::StoredToken::id, Pol::Bscript::Token::id, Pol::Bscript::INS_ASSIGN_GLOBALVAR, Pol::Bscript::INS_ASSIGN_LOCALVAR, Pol::Bscript::INS_CALL_METHOD, Pol::Bscript::INS_CALL_METHOD_ID, Pol::Bscript::INS_CASEJMP, Pol::Bscript::INS_GET_MEMBER_ID, Pol::Bscript::INS_INITFOR, Pol::Bscript::INS_INITFOREACH, Pol::Bscript::INS_NEXTFOR, Pol::Bscript::INS_SET_MEMBER_ID, Pol::Bscript::INS_SET_MEMBER_ID_CONSUME, Pol::Bscript::INS_SET_MEMBER_ID_CONSUME_DIVIDEEQUAL, Pol::Bscript::INS_SET_MEMBER_ID_CONSUME_MINUSEQUAL, Pol::Bscript::INS_SET_MEMBER_ID_CONSUME_MODULUSEQUAL, Pol::Bscript::INS_SET_MEMBER_ID_CONSUME_PLUSEQUAL, Pol::Bscript::INS_SET_MEMBER_ID_CONSUME_TIMESEQUAL, Pol::Bscript::INS_STEPFOREACH, Pol::Bscript::SymbolContainer::length(), Pol::Bscript::Token::lval, Pol::Bscript::StoredToken::module, Pol::Bscript::Token::module, modules, Pol::Bscript::ModuleFunction::name, Pol::Bscript::Token::nulStr(), Pol::Bscript::StoredToken::offset, Pol::Bscript::RSV_GLOBAL, Pol::Bscript::RSV_GOTO, Pol::Bscript::RSV_JMPIFFALSE, Pol::Bscript::RSV_JMPIFTRUE, Pol::Bscript::RSV_LOCAL, Pol::Bscript::Token::setStr(), Pol::Bscript::Token::sourceFile, symbols, Pol::Bscript::TOK_ARRAY_SUBSCRIPT, Pol::Bscript::TOK_DOUBLE, Pol::Bscript::TOK_FUNC, Pol::Bscript::TOK_FUNCREF, Pol::Bscript::TOK_GLOBALVAR, Pol::Bscript::TOK_LOCALVAR, Pol::Bscript::TOK_LONG, Pol::Bscript::TOK_USERFUNC, tokens, Pol::Bscript::TYP_FUNC, Pol::Bscript::TYP_USERFUNC, Pol::Bscript::StoredToken::type, and Pol::Bscript::Token::type.
Referenced by create_instructions(), and dump().
int Pol::Bscript::EScriptProgram::add_dbg_filename | ( | const std::string & | filename | ) |
Definition at line 486 of file eprog2.cpp.
References dbg_filenames.
void Pol::Bscript::EScriptProgram::add_ins_dbg_info | ( | ) |
Definition at line 55 of file eprog2.cpp.
References Pol::Bscript::StoredTokenContainer::count(), curblock, curfile, curline, dbg_filenum, dbg_ins_blocks, dbg_ins_statementbegin, dbg_linenum, passert, statementbegin, and tokens.
Referenced by addToken(), and append().
void Pol::Bscript::EScriptProgram::addfunction | ( | std::string | name, |
unsigned | firstPC, | ||
unsigned | lastPC | ||
) |
Definition at line 559 of file eprog2.cpp.
References dbg_functions, Pol::Bscript::EPDbgFunction::firstPC, Pol::Bscript::EPDbgFunction::lastPC, and Pol::Bscript::EPDbgFunction::name.
void Pol::Bscript::EScriptProgram::addlocalvar | ( | const std::string & | localvarname | ) |
Definition at line 555 of file eprog2.cpp.
void Pol::Bscript::EScriptProgram::addToken | ( | const Token & | token | ) |
Definition at line 103 of file eprog2.cpp.
References add_ins_dbg_info(), Pol::Bscript::SymbolContainer::append(), Pol::Bscript::StoredTokenContainer::append_tok(), Pol::Bscript::CTRL_JSR_USERFUNC, Pol::Bscript::CTRL_MAKELOCAL, Pol::Bscript::Token::dval, ERROR_PRINT, Pol::Bscript::UserFunction::forward_callers, Pol::Bscript::Token::id, Pol::Bscript::INS_ADDMEMBER2, Pol::Bscript::INS_ADDMEMBER_ASSIGN, Pol::Bscript::INS_CALL_METHOD_ID, Pol::Bscript::INS_GET_MEMBER, Pol::Bscript::INS_POP_PARAM, Pol::Bscript::INS_POP_PARAM_BYREF, Pol::Bscript::INS_SET_MEMBER, Pol::Bscript::INS_SET_MEMBER_CONSUME, Pol::Bscript::Token::lval, Pol::Bscript::Token::module, Pol::Bscript::UserFunction::parameters, passert, symbols, Pol::Bscript::TOK_ARRAY_SUBSCRIPT, Pol::Bscript::TOK_DOUBLE, Pol::Bscript::TOK_FUNCREF, Pol::Bscript::TOK_GLOBALVAR, Pol::Bscript::TOK_IDENT, Pol::Bscript::TOK_LOCALVAR, Pol::Bscript::TOK_LONG, Pol::Bscript::TOK_STRING, tokens, Pol::Bscript::Token::tokval(), Pol::Bscript::TYP_CONTROL, Pol::Bscript::TYP_FUNC, Pol::Bscript::TYP_METHOD, Pol::Bscript::TYP_OPERAND, Pol::Bscript::TYP_OPERATOR, Pol::Bscript::TYP_RESERVED, Pol::Bscript::TYP_UNARY_OPERATOR, Pol::Bscript::TYP_USERFUNC, Pol::Bscript::Token::type, update_dbg_pos(), and Pol::Bscript::Token::userfunc.
void Pol::Bscript::EScriptProgram::append | ( | const StoredToken & | stoken | ) |
Definition at line 71 of file eprog2.cpp.
References add_ins_dbg_info(), Pol::Bscript::StoredTokenContainer::append_tok(), and tokens.
void Pol::Bscript::EScriptProgram::append | ( | const StoredToken & | stoken, |
unsigned * | posn | ||
) |
Definition at line 78 of file eprog2.cpp.
References add_ins_dbg_info(), Pol::Bscript::StoredTokenContainer::append_tok(), and tokens.
void Pol::Bscript::EScriptProgram::append | ( | const StoredToken & | stoken, |
const CompilerContext & | ctx | ||
) |
Definition at line 85 of file eprog2.cpp.
References add_ins_dbg_info(), Pol::Bscript::StoredTokenContainer::append_tok(), setcontext(), and tokens.
void Pol::Bscript::EScriptProgram::append | ( | const StoredToken & | stoken, |
const CompilerContext & | ctx, | ||
unsigned * | posn | ||
) |
Definition at line 94 of file eprog2.cpp.
References add_ins_dbg_info(), Pol::Bscript::StoredTokenContainer::append_tok(), setcontext(), and tokens.
void Pol::Bscript::EScriptProgram::clear_modules | ( | ) |
Definition at line 73 of file eprog.cpp.
References Pol::Clib::delete_all(), and modules.
int Pol::Bscript::EScriptProgram::create_instructions | ( | ) |
Definition at line 143 of file eprog_read.cpp.
References _readToken(), Pol::Bscript::Instruction::func, Pol::Bscript::Executor::GetInstrFunc(), instr, Pol::Bscript::SymbolContainer::length(), Pol::Bscript::Instruction::token, and tokens.
Referenced by read().
std::string Pol::Bscript::EScriptProgram::dbg_get_instruction | ( | size_t | atPC | ) | const |
Definition at line 502 of file eprog2.cpp.
References instr, OSTRINGSTREAM, and OSTRINGSTREAM_STR.
Referenced by Pol::Core::DebugContext::cmd_scriptins().
void Pol::Bscript::EScriptProgram::dump | ( | std::ostream & | os | ) |
Definition at line 19 of file eprog3.cpp.
References _readToken(), dump_casejmp(), exported_functions, fileline, function_decls, Pol::Bscript::Token::id, Pol::Bscript::INS_CASEJMP, Pol::Bscript::SymbolContainer::length(), program_decl, program_PC, sourcelines, and tokens.
Referenced by Pol::Clib::RunEclMain::dumpScript().
void Pol::Bscript::EScriptProgram::dump_casejmp | ( | std::ostream & | os, |
const Token & | token | ||
) |
Definition at line 59 of file eprog3.cpp.
References Pol::Bscript::CASE_TYPE_DEFAULT, Pol::Bscript::CASE_TYPE_LONG, and Pol::Bscript::Token::dataptr.
Referenced by dump().
void Pol::Bscript::EScriptProgram::enterblock | ( | ) |
Definition at line 523 of file eprog2.cpp.
References blocks, curblock, Pol::Bscript::EPDbgBlock::parentblockidx, Pol::Bscript::EPDbgBlock::parentvariables, and varcount().
void Pol::Bscript::EScriptProgram::enterfunction | ( | ) |
Definition at line 514 of file eprog2.cpp.
References curblock, and savecurblock.
void Pol::Bscript::EScriptProgram::erase | ( | ) |
Definition at line 32 of file eprog2.cpp.
References blocks, dbg_filenum, dbg_functions, dbg_ins_blocks, dbg_ins_statementbegin, dbg_linenum, Pol::Bscript::SymbolContainer::erase(), globalvarnames, nglobals, symbols, and tokens.
void Pol::Bscript::EScriptProgram::leaveblock | ( | ) |
Definition at line 540 of file eprog2.cpp.
References blocks, curblock, dbg_ins_blocks, and passert.
void Pol::Bscript::EScriptProgram::leavefunction | ( | ) |
Definition at line 519 of file eprog2.cpp.
References curblock, and savecurblock.
unsigned Pol::Bscript::EScriptProgram::parentvariables | ( | unsigned | parent | ) |
Definition at line 358 of file eprog2.cpp.
References blocks.
int Pol::Bscript::EScriptProgram::read | ( | const char * | fname | ) |
Opens and ECL file containing bytecode and reads it
This is where script bytecode processing is done
Definition at line 33 of file eprog_read.cpp.
References BSCRIPT_FILE_MAGIC0, BSCRIPT_FILE_MAGIC1, Pol::Bscript::BSCRIPT_SECTION_CODE, Pol::Bscript::BSCRIPT_SECTION_EXPORTED_FUNCTIONS, Pol::Bscript::BSCRIPT_SECTION_GLOBALVARNAMES, Pol::Bscript::BSCRIPT_SECTION_MODULE, Pol::Bscript::BSCRIPT_SECTION_PROGDEF, Pol::Bscript::BSCRIPT_SECTION_SYMBOLS, create_instructions(), ERROR_PRINT, ESCRIPT_FILE_VER_CURRENT, Pol::Bscript::BSCRIPT_FILE_HDR::globals, Pol::Bscript::BSCRIPT_FILE_HDR::magic2, name, nglobals, Pol::Bscript::SymbolContainer::read(), Pol::Bscript::StoredTokenContainer::read(), read_exported_functions(), read_globalvarnames(), read_module(), read_progdef_hdr(), symbols, tokens, Pol::Bscript::BSCRIPT_SECTION_HDR::type, Pol::Bscript::BSCRIPT_FILE_HDR::version, and version.
Referenced by Pol::Clib::RunEclMain::dumpScript(), and Pol::Clib::RunEclMain::runeclScript().
int Pol::Bscript::EScriptProgram::read_dbg_file | ( | ) |
Definition at line 396 of file eprog_read.cpp.
References Pol::Bscript::BSCRIPT_DBG_INSTRUCTION::blocknum, blocks, Pol::UoTool::buffer, ref_counted::count(), Pol::Bscript::StoredTokenContainer::count(), dbg_filenames, dbg_filenum, dbg_functions, dbg_ins_blocks, dbg_ins_statementbegin, dbg_linenum, debug_loaded, ERROR_PRINT, Pol::Bscript::BSCRIPT_DBG_INSTRUCTION::filenum, globalvarnames, Pol::Bscript::BSCRIPT_DBG_INSTRUCTION::linenum, name, Pol::Bscript::BSCRIPT_DBG_INSTRUCTION::statementbegin, and tokens.
Referenced by Pol::Core::DebugContext::cmd_attach(), Pol::Core::DebugContext::cmd_scriptins(), Pol::Core::DebugContext::cmd_scriptsrc(), Pol::Core::DebugContext::cmd_setscript(), and Pol::Core::DebugContext::cmd_stacktrace().
int Pol::Bscript::EScriptProgram::read_exported_functions | ( | FILE * | fp, |
BSCRIPT_SECTION_HDR * | hdr | ||
) |
Definition at line 375 of file eprog_read.cpp.
References exported_functions, Pol::Bscript::BSCRIPT_EXPORTED_FUNCTION::funcname, Pol::Bscript::getKnownObjMethod(), Pol::Bscript::BSCRIPT_SECTION_HDR::length, Pol::Bscript::EPExportedFunction::name, Pol::Bscript::EPExportedFunction::nargs, Pol::Bscript::BSCRIPT_EXPORTED_FUNCTION::nargs, Pol::Bscript::ObjMethod::overridden, Pol::Bscript::EPExportedFunction::PC, and Pol::Bscript::BSCRIPT_EXPORTED_FUNCTION::PC.
Referenced by read().
int Pol::Bscript::EScriptProgram::read_globalvarnames | ( | FILE * | fp | ) |
Definition at line 341 of file eprog_read.cpp.
References Pol::UoTool::buffer, globalvarnames, Pol::Bscript::BSCRIPT_GLOBALVARNAME_HDR::namelen, and Pol::Bscript::BSCRIPT_GLOBALVARNAMES_HDR::nGlobalVars.
Referenced by read().
int Pol::Bscript::EScriptProgram::read_module | ( | FILE * | fp | ) |
Reads a module "usages" section from the file pointer
Definition at line 177 of file eprog_read.cpp.
References Pol::Bscript::BSCRIPT_MODULE_FUNCTION::funcname, Pol::Bscript::BSCRIPT_MODULE_HDR::modulename, modules, Pol::Bscript::BSCRIPT_MODULE_FUNCTION::nargs, and Pol::Bscript::BSCRIPT_MODULE_HDR::nfuncs.
Referenced by read().
int Pol::Bscript::EScriptProgram::read_progdef_hdr | ( | FILE * | fp | ) |
Reads the Program Header section from the file pointer
Definition at line 163 of file eprog_read.cpp.
References Pol::Bscript::BSCRIPT_PROGDEF_HDR::expectedArgs, expectedArgs, and haveProgram.
Referenced by read().
void Pol::Bscript::EScriptProgram::setcontext | ( | const CompilerContext & | ctx | ) |
Definition at line 65 of file eprog2.cpp.
References curfile, curline, Pol::Bscript::CompilerContext::dbg_filenum, and Pol::Bscript::CompilerContext::line.
Referenced by append().
void Pol::Bscript::EScriptProgram::setstatementbegin | ( | ) |
Definition at line 510 of file eprog2.cpp.
References statementbegin.
size_t Pol::Bscript::EScriptProgram::sizeEstimate | ( | ) | const |
Definition at line 568 of file eprog2.cpp.
References blocks, dbg_filenames, dbg_filenum, dbg_functions, dbg_ins_blocks, dbg_ins_statementbegin, dbg_linenum, EScriptProgram(), exported_functions, fileline, function_decls, globalvarnames, instr, modules, program_decl, and sourcelines.
void Pol::Bscript::EScriptProgram::update_dbg_pos | ( | const Token & | tkn | ) |
Definition at line 46 of file eprog2.cpp.
References curfile, curline, Pol::Bscript::Token::dbg_filenum, and Pol::Bscript::Token::dbg_linenum.
Referenced by addToken().
unsigned Pol::Bscript::EScriptProgram::varcount | ( | unsigned | block | ) |
int Pol::Bscript::EScriptProgram::write | ( | const char * | fname | ) |
Definition at line 254 of file eprog2.cpp.
References BSCRIPT_FILE_MAGIC0, BSCRIPT_FILE_MAGIC1, Pol::Bscript::BSCRIPT_SECTION_CODE, Pol::Bscript::BSCRIPT_SECTION_EXPORTED_FUNCTIONS, Pol::Bscript::BSCRIPT_SECTION_MODULE, Pol::Bscript::BSCRIPT_SECTION_PROGDEF, Pol::Bscript::BSCRIPT_SECTION_SYMBOLS, ESCRIPT_FILE_VER_CURRENT, Pol::Bscript::BSCRIPT_PROGDEF_HDR::expectedArgs, expectedArgs, exported_functions, Pol::Bscript::BSCRIPT_MODULE_FUNCTION::funcname, Pol::Bscript::BSCRIPT_EXPORTED_FUNCTION::funcname, Pol::Bscript::SymbolContainer::get_write_length(), Pol::Bscript::BSCRIPT_FILE_HDR::globals, globalvarnames, haveProgram, Pol::Bscript::BSCRIPT_SECTION_HDR::length, Pol::Bscript::BSCRIPT_FILE_HDR::magic2, Pol::Bscript::BSCRIPT_MODULE_HDR::modulename, modules, Pol::Bscript::BSCRIPT_MODULE_FUNCTION::nargs, Pol::Bscript::BSCRIPT_EXPORTED_FUNCTION::nargs, Pol::Bscript::BSCRIPT_MODULE_HDR::nfuncs, passert, Pol::Bscript::BSCRIPT_EXPORTED_FUNCTION::PC, strzcpy, symbols, tokens, Pol::Bscript::BSCRIPT_SECTION_HDR::type, Pol::Bscript::BSCRIPT_FILE_HDR::version, and Pol::Bscript::SymbolContainer::write().
int Pol::Bscript::EScriptProgram::write_dbg | ( | const char * | fname, |
bool | gen_txt | ||
) |
Definition at line 367 of file eprog2.cpp.
References Pol::Bscript::BSCRIPT_DBG_INSTRUCTION::blocknum, blocks, ref_counted::count(), Pol::Bscript::StoredTokenContainer::count(), dbg_filenames, dbg_filenum, dbg_functions, dbg_ins_blocks, dbg_ins_statementbegin, dbg_linenum, Pol::Bscript::BSCRIPT_DBG_INSTRUCTION::filenum, Pol::Bscript::EPDbgFunction::firstPC, globalvarnames, Pol::Bscript::EPDbgFunction::lastPC, Pol::Bscript::BSCRIPT_DBG_INSTRUCTION::linenum, Pol::Bscript::EPDbgBlock::localvarnames, Pol::Bscript::EPDbgFunction::name, Pol::Bscript::EPDbgBlock::parentblockidx, Pol::Bscript::EPDbgBlock::parentvariables, Pol::Bscript::BSCRIPT_DBG_INSTRUCTION::rfu1, Pol::Bscript::BSCRIPT_DBG_INSTRUCTION::rfu2, Pol::Bscript::BSCRIPT_DBG_INSTRUCTION::statementbegin, and tokens.
|
friend |
|
friend |
std::vector<EPDbgBlock> Pol::Bscript::EScriptProgram::blocks |
Definition at line 134 of file eprog.h.
Referenced by addlocalvar(), Pol::Core::DebugContext::cmd_localvars(), Pol::Core::DebugContext::cmd_stacktrace(), enterblock(), erase(), EScriptProgram(), leaveblock(), parentvariables(), read_dbg_file(), sizeEstimate(), varcount(), and write_dbg().
unsigned Pol::Bscript::EScriptProgram::curblock |
Definition at line 129 of file eprog.h.
Referenced by add_ins_dbg_info(), addlocalvar(), enterblock(), enterfunction(), leaveblock(), and leavefunction().
unsigned Pol::Bscript::EScriptProgram::curfile |
Definition at line 130 of file eprog.h.
Referenced by add_ins_dbg_info(), setcontext(), and update_dbg_pos().
unsigned Pol::Bscript::EScriptProgram::curline |
Definition at line 131 of file eprog.h.
Referenced by add_ins_dbg_info(), setcontext(), and update_dbg_pos().
std::vector<std::string> Pol::Bscript::EScriptProgram::dbg_filenames |
Definition at line 136 of file eprog.h.
Referenced by add_dbg_filename(), Pol::Core::DebugContext::cmd_filecont(), Pol::Core::DebugContext::cmd_files(), Pol::Core::DebugContext::cmd_inslist(), Pol::Core::get_fileline(), read_dbg_file(), sizeEstimate(), and write_dbg().
std::vector<unsigned> Pol::Bscript::EScriptProgram::dbg_filenum |
Definition at line 139 of file eprog.h.
Referenced by add_ins_dbg_info(), Pol::Core::DebugContext::cmd_fileline(), Pol::Core::DebugContext::cmd_inslist(), Pol::Core::DebugContext::cmd_scriptsrc(), Pol::Core::DebugContext::cmd_stacktrace(), erase(), read_dbg_file(), Pol::Bscript::Compiler::rollback(), sizeEstimate(), and write_dbg().
std::vector<EPDbgFunction> Pol::Bscript::EScriptProgram::dbg_functions |
Definition at line 135 of file eprog.h.
Referenced by addfunction(), erase(), read_dbg_file(), sizeEstimate(), and write_dbg().
std::vector<unsigned> Pol::Bscript::EScriptProgram::dbg_ins_blocks |
Definition at line 141 of file eprog.h.
Referenced by add_ins_dbg_info(), Pol::Core::DebugContext::cmd_localvars(), Pol::Core::DebugContext::cmd_stacktrace(), erase(), leaveblock(), read_dbg_file(), Pol::Bscript::Compiler::rollback(), sizeEstimate(), and write_dbg().
std::vector<bool> Pol::Bscript::EScriptProgram::dbg_ins_statementbegin |
Definition at line 142 of file eprog.h.
Referenced by add_ins_dbg_info(), erase(), read_dbg_file(), Pol::Bscript::Compiler::rollback(), sizeEstimate(), and write_dbg().
std::vector<unsigned> Pol::Bscript::EScriptProgram::dbg_linenum |
Definition at line 140 of file eprog.h.
Referenced by add_ins_dbg_info(), Pol::Core::DebugContext::cmd_fileline(), Pol::Core::DebugContext::cmd_inslist(), Pol::Core::DebugContext::cmd_scriptsrc(), Pol::Core::DebugContext::cmd_stacktrace(), erase(), read_dbg_file(), Pol::Bscript::Compiler::rollback(), sizeEstimate(), and write_dbg().
bool Pol::Bscript::EScriptProgram::debug_loaded |
Definition at line 127 of file eprog.h.
Referenced by Pol::Core::DebugContext::cmd_filecont(), Pol::Core::DebugContext::cmd_fileline(), Pol::Core::DebugContext::cmd_files(), Pol::Core::DebugContext::cmd_globalvars(), Pol::Core::DebugContext::cmd_inslist(), Pol::Core::DebugContext::cmd_localvars(), Pol::Core::DebugContext::cmd_stacktrace(), and read_dbg_file().
unsigned Pol::Bscript::EScriptProgram::expectedArgs |
Definition at line 89 of file eprog.h.
Referenced by read_progdef_hdr(), and write().
std::vector<EPExportedFunction> Pol::Bscript::EScriptProgram::exported_functions |
Definition at line 117 of file eprog.h.
Referenced by dump(), Pol::Core::ExportScript::FindExportedFunction(), read_exported_functions(), sizeEstimate(), and write().
std::vector<std::string> Pol::Bscript::EScriptProgram::fileline |
Definition at line 114 of file eprog.h.
Referenced by Pol::Bscript::EScriptProgramCheckpoint::commit(), dump(), Pol::Bscript::Compiler::rollback(), and sizeEstimate().
std::vector<std::string> Pol::Bscript::EScriptProgram::function_decls |
Definition at line 115 of file eprog.h.
Referenced by dump(), and sizeEstimate().
std::vector<std::string> Pol::Bscript::EScriptProgram::globalvarnames |
Definition at line 133 of file eprog.h.
Referenced by Pol::Core::DebugContext::cmd_globalvars(), erase(), Pol::Core::GetGlobals(), read_dbg_file(), read_globalvarnames(), sizeEstimate(), write(), and write_dbg().
bool Pol::Bscript::EScriptProgram::haveProgram |
Definition at line 90 of file eprog.h.
Referenced by read_progdef_hdr(), Pol::Mobile::Character::start_script(), and write().
std::vector<Instruction> Pol::Bscript::EScriptProgram::instr |
Definition at line 124 of file eprog.h.
Referenced by Pol::Core::DebugContext::cmd_scriptins(), Pol::Core::DebugContext::cmd_scriptprofile(), Pol::Core::DebugContext::cmd_scriptsrc(), create_instructions(), dbg_get_instruction(), and sizeEstimate().
u64 Pol::Bscript::EScriptProgram::instr_cycles |
Definition at line 122 of file eprog.h.
Referenced by Pol::Core::clear_script_profile_counters(), Pol::Module::GetScriptProfiles(), and Pol::Core::log_all_script_cycle_counts().
unsigned int Pol::Bscript::EScriptProgram::invocations |
Definition at line 121 of file eprog.h.
Referenced by Pol::Core::clear_script_profile_counters(), Pol::Module::GetScriptProfiles(), and Pol::Core::log_all_script_cycle_counts().
std::vector<FunctionalityModule*> Pol::Bscript::EScriptProgram::modules |
Definition at line 92 of file eprog.h.
Referenced by _readToken(), clear_modules(), Pol::Bscript::EScriptProgramCheckpoint::commit(), read_module(), Pol::Bscript::Compiler::rollback(), sizeEstimate(), write(), and ~EScriptProgram().
boost_utils::script_name_flystring Pol::Bscript::EScriptProgram::name |
Definition at line 91 of file eprog.h.
Referenced by Pol::Core::DebugContext::cmd_scriptlist(), Pol::Module::GetScriptProfiles(), Pol::Core::log_all_script_cycle_counts(), read(), read_dbg_file(), Pol::Mobile::Character::start_script(), and ~EScriptProgram().
unsigned Pol::Bscript::EScriptProgram::nglobals |
Plib::Package const* Pol::Bscript::EScriptProgram::pkg |
Definition at line 123 of file eprog.h.
Referenced by Pol::Core::BXMLfile::call_method_id(), Pol::Module::ConfigFileExecutorModule::get_cfgfilename(), Pol::Module::DataFileExecutorModule::GetDataStoreFile(), 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::Clib::RunEclMain::runeclScript(), Pol::Module::OSExecutorModule::start_script(), and Pol::Module::OSExecutorModule::start_skill_script().
std::string Pol::Bscript::EScriptProgram::program_decl |
Definition at line 112 of file eprog.h.
Referenced by dump(), and sizeEstimate().
unsigned Pol::Bscript::EScriptProgram::program_PC |
unsigned Pol::Bscript::EScriptProgram::savecurblock |
Definition at line 128 of file eprog.h.
Referenced by enterfunction(), and leavefunction().
std::vector<std::string> Pol::Bscript::EScriptProgram::sourcelines |
Definition at line 113 of file eprog.h.
Referenced by Pol::Bscript::EScriptProgramCheckpoint::commit(), dump(), Pol::Bscript::Compiler::rollback(), and sizeEstimate().
bool Pol::Bscript::EScriptProgram::statementbegin |
Definition at line 132 of file eprog.h.
Referenced by add_ins_dbg_info(), Pol::Bscript::Compiler::rollback(), and setstatementbegin().
SymbolContainer Pol::Bscript::EScriptProgram::symbols |
Definition at line 94 of file eprog.h.
Referenced by _readToken(), addToken(), Pol::Bscript::EScriptProgramCheckpoint::commit(), erase(), read(), Pol::Bscript::Compiler::rollback(), and write().
StoredTokenContainer Pol::Bscript::EScriptProgram::tokens |
Definition at line 93 of file eprog.h.
Referenced by _readToken(), add_ins_dbg_info(), addToken(), append(), Pol::Bscript::EScriptProgramCheckpoint::commit(), create_instructions(), dump(), erase(), read(), read_dbg_file(), Pol::Bscript::Compiler::rollback(), write(), and write_dbg().
unsigned short Pol::Bscript::EScriptProgram::version |