#define INCLUDE__Guile_hxx_
#include <libguile.h>
+#include <log4cxx/logger.h>
#include "Interpreter.hxx"
-class GuileInterpreter : public Interpreter {
+class GuileInterpreter : public QObject, public Interpreter {
+ Q_OBJECT
+ Q_PLUGIN_METADATA(IID "xyz.frida.Interpreter")
+ Q_INTERFACES(Interpreter)
public:
GuileInterpreter();
std::string fileExtension() const {return "scm";}
private:
+ int evaluateWithErrorHandling(SCM (*fun)(void *),
+ void* data,
+ std::ostream& stdout,
+ std::ostream& stderr,
+ std::string& result);
+
SCM guile_output_port;
SCM guile_error_port;
+ log4cxx::LoggerPtr logger;
};
#endif /* INCLUDE__Guile_hxx_ */