Exceptions
-
class MurxlaException : public std::exception
Base class for exceptions thrown by Murxla.
Subclassed by murxla::MurxlaActionUntraceException, murxla::MurxlaConfigException, murxla::MurxlaSolverOptionException, murxla::MurxlaUntraceException, murxla::MurxlaUntraceIdException
Public Functions
-
inline MurxlaException(const std::string &msg)
Constructor.
- Parameters:
msg – The exception message.
-
inline MurxlaException(const std::stringstream &stream)
Constructor.
- Parameters:
stream – The exception message given as a std::stringstream.
-
inline std::string get_msg() const
Get the exception message.
- Returns:
The exception message.
-
inline MurxlaException(const std::string &msg)
-
class MurxlaConfigException : public murxla::MurxlaException
The exception used for configuration errors.
For example, when passing the wrong arguments to a solver wrapper API function, or when adding an action to a state of the FSM that is a decision state but the actions’ next state is neither the same state nor a choice state.
-
class MurxlaUntraceException : public murxla::MurxlaException
The exception used for any issues during untracing.
Note
Invalid trace tokens encountered in Action::untrace() trigger a MurxlaActionUntraceException or MurxlaUntraceIdException, which is then caught and rethrown as MurxlaUntraceException in FSM::untrace().
Public Functions
-
inline MurxlaUntraceException(const std::string &trace_file_name, uint32_t nline, const std::string &msg)
Constructor.
- Parameters:
trace_file_name – The name of the trace file.
nline – The line number of the invalid trace line.
msg – The exception message.
-
inline MurxlaUntraceException(const std::string &trace_file_name, uint32_t nline, const std::stringstream &msg)
Constructor.
- Parameters:
trace_file_name – The name of the trace file.
nline – The line number of the invalid trace line.
msg – The exception message given as a std::stringstream.
-
inline MurxlaUntraceException(const std::string &trace_file_name, uint32_t nline, const std::string &msg)
-
class MurxlaUntraceIdException : public murxla::MurxlaException
The exception used for trace lines that are invalid due to unknown sort or term ids.
This exception is only used in Action::untrace_str_to_id() and caught in rethrown as MurxlaUntraceException in FSM::untrace().
-
class MurxlaActionUntraceException : public murxla::MurxlaException
The exception used for invalid trace lines encountered during Action::untrace().
This exception is thrown in all the MURXLA_CHECK_TRACE_* macros. For trace lines with unknown sort or term ids, we use MurxlaUntraceIdException.
This exception is only used in Action::untrace(), and caught and rethrown as MurxlaUntraceException in FSM::untrace().
-
class MurxlaSolverOptionException : public murxla::MurxlaException
The exception used for invalid solver option configurations in Solver::set_opt().