mirror of
https://github.com/grumpycoders/pcsx-redux.git
synced 2024-06-01 02:38:33 -04:00
.. | ||
api.html | ||
default.css | ||
README.md | ||
reflect.lua | ||
test.lua |
Taken and adapted from https://github.com/corsix/ffi-reflect.
LuaJIT FFI reflection library
Quick examples:
local ffi = require "ffi"
local reflect = require "reflect"
ffi.cdef 'int sc(const char*, const char*) __asm__("strcmp");'
print(reflect.typeof(ffi.C.sc).sym_name) --> "strcmp"
for refct in reflect.typeof"int(*)(int x, int y)".element_type:arguments() do
print(refct.name)
end --> x, y
t = {}
assert(reflect.getmetatable(ffi.metatype("struct {}", t)) == t)
For the full API reference, see http://corsix.github.io/ffi-reflect/.