1use crate::deps::*;
4use crate::acb_types::*;
5use crate::ca_types::*;
6use crate::qqbar::*;
7
8
9extern "C" {
10 pub fn ca_ext_init_qqbar(
11 res: *mut ca_ext_struct,
12 x: *const qqbar_struct,
13 ctx: *mut ca_ctx_struct,
14 );
15 pub fn ca_ext_init_const(
16 res: *mut ca_ext_struct,
17 func: calcium_func_code,
18 ctx: *mut ca_ctx_struct,
19 );
20 pub fn ca_ext_init_fx(
21 res: *mut ca_ext_struct,
22 func: calcium_func_code,
23 x: *const ca_struct,
24 ctx: *mut ca_ctx_struct,
25 );
26 pub fn ca_ext_init_fxy(
27 res: *mut ca_ext_struct,
28 func: calcium_func_code,
29 x: *const ca_struct,
30 y: *const ca_struct,
31 ctx: *mut ca_ctx_struct,
32 );
33 pub fn ca_ext_init_fxn(
34 res: *mut ca_ext_struct,
35 func: calcium_func_code,
36 x: ca_srcptr,
37 nargs: slong,
38 ctx: *mut ca_ctx_struct,
39 );
40 #[link_name = "ca_ext_init_set__extern"]
41 pub fn ca_ext_init_set(
42 res: *mut ca_ext_struct,
43 x: *const ca_ext_struct,
44 ctx: *mut ca_ctx_struct,
45 );
46 pub fn ca_ext_clear(res: *mut ca_ext_struct, ctx: *mut ca_ctx_struct);
47 #[link_name = "ca_ext_nargs__extern"]
48 pub fn ca_ext_nargs(x: *const ca_ext_struct, ctx: *mut ca_ctx_struct) -> slong;
49 #[link_name = "ca_ext_get_arg__extern"]
50 pub fn ca_ext_get_arg(
51 res: *mut ca_struct,
52 x: *const ca_ext_struct,
53 i: slong,
54 ctx: *mut ca_ctx_struct,
55 );
56 #[link_name = "ca_ext_hash__extern"]
57 pub fn ca_ext_hash(x: *const ca_ext_struct, ctx: *mut ca_ctx_struct) -> ulong;
58 pub fn ca_ext_equal_repr(
59 x: *const ca_ext_struct,
60 y: *const ca_ext_struct,
61 ctx: *mut ca_ctx_struct,
62 ) -> libc::c_int;
63 pub fn ca_ext_cmp_repr(
64 x: *const ca_ext_struct,
65 y: *const ca_ext_struct,
66 ctx: *mut ca_ctx_struct,
67 ) -> libc::c_int;
68 pub fn ca_ext_print(x: *const ca_ext_struct, ctx: *mut ca_ctx_struct);
69 pub fn ca_ext_get_acb_raw(
70 res: *mut acb_struct,
71 x: *mut ca_ext_struct,
72 prec: slong,
73 ctx: *mut ca_ctx_struct,
74 );
75 pub fn ca_ext_cache_init(cache: *mut ca_ext_cache_struct, ctx: *mut ca_ctx_struct);
76 pub fn ca_ext_cache_clear(cache: *mut ca_ext_cache_struct, ctx: *mut ca_ctx_struct);
77 pub fn ca_ext_cache_insert(
78 cache: *mut ca_ext_cache_struct,
79 x: *const ca_ext_struct,
80 ctx: *mut ca_ctx_struct,
81 ) -> ca_ext_ptr;
82}