29#include "../ui/error.hpp"
31#include "../ParserLib/muParserDef.h"
65 std::string
decodeType(std::string& sArgumentValue,
const std::string& sArgumentName =
"");
114 void showError(
const std::string& sTitle);
120 bool select(
size_t nStackElement);
126 const std::string& _sErraticCommand,
const std::string& _sErraticModule,
unsigned int _nLineNumber);
128 void gatherInformations(
const std::map<std::string, std::pair<std::string, mu::value_type*>>& _mLocalVars,
129 const std::map<std::string, std::pair<std::string, std::string>>& _mLocalStrings,
130 const std::map<std::string, std::string>& _mLocalTables,
131 const std::map<std::string, std::string>& _mLocalClusters,
132 const std::map<std::string, std::string>& _mArguments,
133 const std::string& _sErraticCommand,
const std::string& _sErraticModule,
unsigned int _nLineNumber);
135 void gatherLoopBasedInformations(
const std::string& _sErraticCommand,
unsigned int _nLineNumber, std::map<std::string,std::string>& mVarMap,
const std::vector<mu::value_type>& vVarArray,
const std::vector<std::string>& sVarArray);
std::vector< std::string > getNumVars()
This member function returns the numerical variables as a vector.
void throwException(SyntaxError error)
This member function shows the debugger with the corresponding error message obtained by the passed S...
void formatMessage()
This function replaces unmasked dollars with regular line break characters and also removes the maski...
void gatherInformations(ProcedureVarFactory *_varFactory, const std::string &_sErraticCommand, const std::string &_sErraticModule, unsigned int _nLineNumber)
This member function gathers all information from the current workspace and stores them internally to...
int showBreakPoint()
This member function shows the debugger for the current breakpoint and returns the debugger code (i....
BreakpointManager _breakpointManager
std::string sErrorMessage
void showError(std::exception_ptr e_ptr)
void reset()
This member function resets the debugger after a thrown and displayed error.
std::string getErrorMessage() const
std::vector< std::string > getClusters()
This member function returns the clusters as a vector.
std::map< std::string, mu::value_type > mLocalVars
std::vector< std::string > getGlobals()
This member function returns the current global variables as a vector.
void gatherLoopBasedInformations(const std::string &_sErraticCommand, unsigned int _nLineNumber, std::map< std::string, std::string > &mVarMap, const std::vector< mu::value_type > &vVarArray, const std::vector< std::string > &sVarArray)
This member funciton gathers the necessary debugging informations from the current executed control f...
std::map< std::string, std::string > mArguments
std::map< std::string, std::string > mLocalClusters
std::vector< std::pair< std::string, Procedure * > > vStackTrace
std::string sErraticModule
void resetBP()
This member function resets the debugger after an evaluated breakpoint. This excludes resetting the s...
std::string getErrorModule() const
bool validDebuggingInformations() const
std::vector< std::string > getStringVars()
This member function returns the string variables as a vector.
size_t nCurrentStackElement
std::vector< std::string > getTables()
This member function returns the tables as a vector.
std::map< std::string, std::string > mLocalTables
size_t getStackSize() const
int showEvent(const std::string &sTitle)
This private member function shows the debugger for the current selected event and returns the debugg...
std::vector< std::string > getStackTrace()
This member function returns the stack trace as a vector.
bool select(size_t nStackElement)
This member function can be used to select a specific element in the current stack trace to read the ...
std::string decodeType(std::string &sArgumentValue, const std::string &sArgumentName="")
This private member function decodes the type of the arguments by looking at their values and apply s...
unsigned int getLineNumber() const
std::map< std::string, std::string > mLocalStrings
void popStackItem()
This member function removes the last item from the stack.
std::vector< std::string > getModuleInformations()
This member function returns the module informations as a vector.
std::string sErraticCommand
void showError(const std::string &sTitle)
This member function shows the debugger with the passed error message.
std::vector< std::string > getArguments()
This member function returns the procedure argument as a vector.
void setActive(bool active)
BreakpointManager & getBreakpointManager()
void pushStackItem(const std::string &sStackItem, Procedure *_currentProcedure)
This member function adds a new stack item to the monitored stack. Additionally, it cleanes the proce...
NumeReDebugger()
Constructor.
void gatherInformations(const std::map< std::string, std::pair< std::string, mu::value_type * > > &_mLocalVars, const std::map< std::string, std::pair< std::string, std::string > > &_mLocalStrings, const std::map< std::string, std::string > &_mLocalTables, const std::map< std::string, std::string > &_mLocalClusters, const std::map< std::string, std::string > &_mArguments, const std::string &_sErraticCommand, const std::string &_sErraticModule, unsigned int _nLineNumber)
This class implements the logic to evaluate complex procedures, which may be called recursively.
This class is the variable factory used by procedure instances to create their local variables and re...
Common exception class for all exceptions thrown in NumeRe.