我不确定我是否正确,但我很确定我正在寻找一个可以放入我的C++程序的LISP解释器.
我想象的理想情况是一个函数或者其他东西,我可以传递包含LISP代码的字符串,文件或文件名,然后在其他部分使用LISP代码的输出.
换句话说(print (eval (read))),我想read成为我所输入的内容,以及我可以从打印中解析的字符串.
我可能误解了它们的使用或误读了文档,但是如何访问作为light userdata传递给Lua的结构或类的成员?例如,如果一个向量使用以下结构
typedef struct Foo {
int x;
int y;
} Foo;
Run Code Online (Sandbox Code Playgroud)
被声明为'test'并定义为x = 413和y = 612,并且通过调用推送
lua_pushlightuserdata( L, (void *) &test ) ;
Run Code Online (Sandbox Code Playgroud)
操作或打印x和y的函数的Lua代码是什么样的?