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.

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.

Public Functions

inline MurxlaConfigException(const std::string &msg)

Constructor.

Parameters:

msg – The exception message.

inline MurxlaConfigException(const std::stringstream &stream)

Constructor.

Parameters:

stream – The exception message given as a std::stringstream.

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.

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().

Public Functions

inline MurxlaUntraceIdException(const std::string &msg)

Constructor.

Parameters:

msg – The exception message.

inline MurxlaUntraceIdException(const std::stringstream &msg)

Constructor.

Parameters:

msg – The exception message given as a std::stringstream.

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().

Public Functions

inline MurxlaActionUntraceException(const std::string &msg)

Constructor.

Parameters:

msg – The exception message.

inline MurxlaActionUntraceException(const std::stringstream &msg)

Constructor.

Parameters:

msg – The exception message given as a std::stringstream.

class MurxlaSolverOptionException : public murxla::MurxlaException

The exception used for invalid solver option configurations in Solver::set_opt().

Public Functions

inline MurxlaSolverOptionException(const std::string &msg)

Constructor.

Parameters:

msg – The exception message.

inline MurxlaSolverOptionException(const std::stringstream &msg)

Constructor.

Parameters:

msg – The exception message given as a std::stringstream.