1#![allow(non_camel_case_types)]
2
3use crate::deps::*;
6use crate::flint::*;
7use crate::fq_zech::{fq_zech_ctx_struct, fq_zech_struct};
8use libc::{c_int, FILE};
9
10extern "C" {
11 pub fn _fq_zech_vec_init(
12 len: mp_limb_signed_t,
13 ctx: *mut fq_zech_ctx_struct,
14 ) -> *mut fq_zech_struct;
15 pub fn _fq_zech_vec_clear(
16 vec: *mut fq_zech_struct,
17 len: mp_limb_signed_t,
18 ctx: *mut fq_zech_ctx_struct,
19 );
20 pub fn _fq_zech_vec_randtest(
21 f: *mut fq_zech_struct,
22 state: *mut flint_rand_s,
23 len: mp_limb_signed_t,
24 ctx: *mut fq_zech_ctx_struct,
25 );
26 pub fn _fq_zech_vec_fprint(
27 file: *mut FILE,
28 vec: *const fq_zech_struct,
29 len: mp_limb_signed_t,
30 ctx: *mut fq_zech_ctx_struct,
31 ) -> c_int;
32 pub fn _fq_zech_vec_print(
33 vec: *const fq_zech_struct,
34 len: mp_limb_signed_t,
35 ctx: *mut fq_zech_ctx_struct,
36 ) -> c_int;
37 pub fn _fq_zech_vec_set(
38 v: *mut fq_zech_struct,
39 f: *const fq_zech_struct,
40 len: mp_limb_signed_t,
41 ctx: *mut fq_zech_ctx_struct,
42 );
43 pub fn _fq_zech_vec_swap(
44 vec1: *mut fq_zech_struct,
45 vec2: *mut fq_zech_struct,
46 len2: mp_limb_signed_t,
47 ctx: *mut fq_zech_ctx_struct,
48 );
49 pub fn _fq_zech_vec_zero(
50 v: *mut fq_zech_struct,
51 len: mp_limb_signed_t,
52 ctx: *mut fq_zech_ctx_struct,
53 );
54 pub fn _fq_zech_vec_neg(
55 vec1: *mut fq_zech_struct,
56 vec2: *const fq_zech_struct,
57 len2: mp_limb_signed_t,
58 ctx: *mut fq_zech_ctx_struct,
59 );
60 pub fn _fq_zech_vec_is_zero(
61 vec: *const fq_zech_struct,
62 len: mp_limb_signed_t,
63 ctx: *mut fq_zech_ctx_struct,
64 ) -> c_int;
65 pub fn _fq_zech_vec_equal(
66 vec1: *const fq_zech_struct,
67 vec2: *const fq_zech_struct,
68 len: mp_limb_signed_t,
69 ctx: *mut fq_zech_ctx_struct,
70 ) -> c_int;
71 pub fn _fq_zech_vec_add(
72 res: *mut fq_zech_struct,
73 vec1: *const fq_zech_struct,
74 vec2: *const fq_zech_struct,
75 len2: mp_limb_signed_t,
76 ctx: *mut fq_zech_ctx_struct,
77 );
78 pub fn _fq_zech_vec_sub(
79 res: *mut fq_zech_struct,
80 vec1: *const fq_zech_struct,
81 vec2: *const fq_zech_struct,
82 len2: mp_limb_signed_t,
83 ctx: *mut fq_zech_ctx_struct,
84 );
85 pub fn _fq_zech_vec_scalar_addmul_fq_zech(
86 poly1: *mut fq_zech_struct,
87 poly2: *const fq_zech_struct,
88 len2: mp_limb_signed_t,
89 x: *mut fq_zech_struct,
90 ctx: *mut fq_zech_ctx_struct,
91 );
92 pub fn _fq_zech_vec_scalar_submul_fq_zech(
93 poly1: *mut fq_zech_struct,
94 poly2: *const fq_zech_struct,
95 len2: mp_limb_signed_t,
96 x: *mut fq_zech_struct,
97 ctx: *mut fq_zech_ctx_struct,
98 );
99 pub fn _fq_zech_vec_scalar_mul_fq_zech(
100 poly1: *mut fq_zech_struct,
101 poly2: *const fq_zech_struct,
102 len2: mp_limb_signed_t,
103 x: *mut fq_zech_struct,
104 ctx: *mut fq_zech_ctx_struct,
105 );
106 pub fn _fq_zech_vec_dot(
107 res: *mut fq_zech_struct,
108 vec1: *const fq_zech_struct,
109 vec2: *const fq_zech_struct,
110 len2: mp_limb_signed_t,
111 ctx: *mut fq_zech_ctx_struct,
112 );
113}