• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1import cffi
2
3ffi = cffi.FFI()
4
5ffi.embedding_api("""
6    int add1(int, int);
7""")
8
9ffi.embedding_init_code(r"""
10    import sys, time
11    sys.stdout.write("preparing")
12    for i in range(3):
13        sys.stdout.flush()
14        # Windows: sometimes time.sleep() doesn't sleep at all.
15        # This appears to occur on recent versions of python only.
16        t_end = time.time() + 0.19
17        while time.time() < t_end:
18            time.sleep(0.2)
19        sys.stdout.write(".")
20    sys.stdout.write("\n")
21
22    from _add1_cffi import ffi
23
24    int(ord("A"))    # check that built-ins are there
25
26    @ffi.def_extern()
27    def add1(x, y):
28        sys.stdout.write("adding %d and %d\n" % (x, y))
29        sys.stdout.flush()
30        return x + y
31""")
32
33ffi.set_source("_add1_cffi", """
34""")
35
36fn = ffi.compile(verbose=True)
37print('FILENAME: %s' % (fn,))
38