import cffi | |
ffi = cffi.FFI() | |
ffi.embedding_api(""" | |
int add2(int, int, int); | |
""") | |
ffi.embedding_init_code(r""" | |
import sys | |
sys.stdout.write("prepADD2\n") | |
assert '_add2_cffi' in sys.modules | |
m = sys.modules['_add2_cffi'] | |
import _add2_cffi | |
ffi = _add2_cffi.ffi | |
@ffi.def_extern() | |
def add2(x, y, z): | |
sys.stdout.write("adding %d and %d and %d\n" % (x, y, z)) | |
sys.stdout.flush() | |
return x + y + z | |
""") | |
ffi.set_source("_add2_cffi", """ | |
""") | |
fn = ffi.compile(verbose=True) | |
print('FILENAME: %s' % (fn,)) |