#include <string>

#define private public
#include "emc/rs274ngc/rs274ngc_interp.hh"
#undef private

#include "emc/rs274ngc/rs274ngc_return.hh"
#include "interp_python.hh"
#include "pythonplugin/python_plugin.hh"

PythonPlugin *python_plugin = nullptr;
int _task = 0;

struct _inittab {
    const char *name;
    void *initfunc;
};

_inittab builtin_modules[] = {{nullptr, nullptr}};

InterpBase::~InterpBase() {}

PythonPlugin *PythonPlugin::instantiate(struct _inittab *)
{
    static PythonPlugin standalone_plugin;
    python_plugin = &standalone_plugin;
    return python_plugin;
}

std::string handle_pyerror()
{
    return {};
}

bool Interp::is_pycallable(setup_pointer, const char *, const char *) { return false; }
int Interp::pycall(setup_pointer, context_pointer, const char *, const char *, int)
{
    return INTERP_ERROR;
}
int Interp::py_execute(const char *, bool) { return INTERP_ERROR; }
int Interp::py_reload() { return INTERP_OK; }
