GitHub - javierguerragiraldez/parseback: 一个用于 LuaJIT 的 FFI ctype 对象的纯 Lua 自省库

主要观点:LuaJIT 的 FFI 中 ctype 对象可携带 C 数据结构和函数,但 introspection 能力弱,此库通过 inspect ffi.typeinfo()提供的信息,以 Lua 表、C 声明和 GraphViz 图表形式重建 ctype 对象的有用描述。
关键信息:

  • 包含安装(单个 Lua 文件放于$LUA_PATH)、许可证(MIT 许可)及用法等部分。
  • parseback.typeinfo(ct)可返回描述给定类型的表树,包含typenamecsizefieldssubtype等字段。
  • parseback.asdot(ct [, horizgroups])以 GraphViz 的'dot'语言创建整个类型结构的图表,horizgroups可选,影响元素排列。
    重要细节:
  • 库用于处理 ctype 对象的相关信息重建。
  • typeinfo函数返回的表中各字段的作用及适用类型。
  • asdot函数创建图表的方式及horizgroups参数的影响。
阅读 16
0 条评论