4 #include "scriptinst.h"
6 struct invoke_visitor
: public boost::static_visitor
<bool>
8 bool operator()(std::string filename
) const
10 if (filename
.empty()) {
12 "trying to run script, but filename is empty");
16 Resourcer
* rc
= Resourcer::instance();
17 return rc
->runPythonScript(filename
);
20 bool operator()(boost::python::object pyfn
) const
27 } catch (boost::python::error_already_set
) {
35 ScriptInst::ScriptInst(const std::string
& filename
)
40 ScriptInst::ScriptInst(boost::python::object pyfn
)
45 bool ScriptInst::invoke()
47 return boost::apply_visitor(invoke_visitor(), data
);