1use crate::deps::*;
4use crate::flint::*;
5use crate::fmpz_types::*;
6
7
8#[repr(C)]
9pub struct fmpz_mod_ctx {
10 pub n: fmpz_t,
11 pub add_fxn: ::std::option::Option<
12 unsafe extern "C" fn(
13 arg1: *mut fmpz,
14 arg2: *const fmpz,
15 arg3: *const fmpz,
16 arg4: *const fmpz_mod_ctx,
17 ),
18 >,
19 pub sub_fxn: ::std::option::Option<
20 unsafe extern "C" fn(
21 arg1: *mut fmpz,
22 arg2: *const fmpz,
23 arg3: *const fmpz,
24 arg4: *const fmpz_mod_ctx,
25 ),
26 >,
27 pub mul_fxn: ::std::option::Option<
28 unsafe extern "C" fn(
29 arg1: *mut fmpz,
30 arg2: *const fmpz,
31 arg3: *const fmpz,
32 arg4: *const fmpz_mod_ctx,
33 ),
34 >,
35 pub mod_: nmod_t,
36 pub n_limbs: [ulong; 3usize],
37 pub ninv_limbs: [ulong; 3usize],
38 pub ninv_huge: *mut fmpz_preinvn_struct,
39}
40#[allow(clippy::unnecessary_operation, clippy::identity_op)]
41const _: () = {
42 ["Size of fmpz_mod_ctx"][::std::mem::size_of::<fmpz_mod_ctx>() - 112usize];
43 ["Alignment of fmpz_mod_ctx"][::std::mem::align_of::<fmpz_mod_ctx>() - 8usize];
44 ["Offset of field: fmpz_mod_ctx::n"][::std::mem::offset_of!(fmpz_mod_ctx, n) - 0usize];
45 ["Offset of field: fmpz_mod_ctx::add_fxn"]
46 [::std::mem::offset_of!(fmpz_mod_ctx, add_fxn) - 8usize];
47 ["Offset of field: fmpz_mod_ctx::sub_fxn"]
48 [::std::mem::offset_of!(fmpz_mod_ctx, sub_fxn) - 16usize];
49 ["Offset of field: fmpz_mod_ctx::mul_fxn"]
50 [::std::mem::offset_of!(fmpz_mod_ctx, mul_fxn) - 24usize];
51 ["Offset of field: fmpz_mod_ctx::mod_"][::std::mem::offset_of!(fmpz_mod_ctx, mod_) - 32usize];
52 ["Offset of field: fmpz_mod_ctx::n_limbs"]
53 [::std::mem::offset_of!(fmpz_mod_ctx, n_limbs) - 56usize];
54 ["Offset of field: fmpz_mod_ctx::ninv_limbs"]
55 [::std::mem::offset_of!(fmpz_mod_ctx, ninv_limbs) - 80usize];
56 ["Offset of field: fmpz_mod_ctx::ninv_huge"]
57 [::std::mem::offset_of!(fmpz_mod_ctx, ninv_huge) - 104usize];
58};
59impl Default for fmpz_mod_ctx {
60 fn default() -> Self {
61 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
62 unsafe {
63 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
64 s.assume_init()
65 }
66 }
67}
68pub type fmpz_mod_ctx_struct = fmpz_mod_ctx;
69pub type fmpz_mod_ctx_t = [fmpz_mod_ctx_struct; 1usize];
70pub type fmpz_mod_mat_struct = fmpz_mat_struct;
71pub type fmpz_mod_mat_t = [fmpz_mod_mat_struct; 1usize];
72#[repr(C)]
73pub struct fmpz_mod_poly_struct {
74 pub coeffs: *mut fmpz,
75 pub alloc: slong,
76 pub length: slong,
77}
78#[allow(clippy::unnecessary_operation, clippy::identity_op)]
79const _: () = {
80 ["Size of fmpz_mod_poly_struct"][::std::mem::size_of::<fmpz_mod_poly_struct>() - 24usize];
81 ["Alignment of fmpz_mod_poly_struct"][::std::mem::align_of::<fmpz_mod_poly_struct>() - 8usize];
82 ["Offset of field: fmpz_mod_poly_struct::coeffs"]
83 [::std::mem::offset_of!(fmpz_mod_poly_struct, coeffs) - 0usize];
84 ["Offset of field: fmpz_mod_poly_struct::alloc"]
85 [::std::mem::offset_of!(fmpz_mod_poly_struct, alloc) - 8usize];
86 ["Offset of field: fmpz_mod_poly_struct::length"]
87 [::std::mem::offset_of!(fmpz_mod_poly_struct, length) - 16usize];
88};
89impl Default for fmpz_mod_poly_struct {
90 fn default() -> Self {
91 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
92 unsafe {
93 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
94 s.assume_init()
95 }
96 }
97}
98pub type fmpz_mod_poly_t = [fmpz_mod_poly_struct; 1usize];
99#[repr(C)]
100pub struct fmpz_mod_poly_factor_struct {
101 pub poly: *mut fmpz_mod_poly_struct,
102 pub exp: *mut slong,
103 pub num: slong,
104 pub alloc: slong,
105}
106#[allow(clippy::unnecessary_operation, clippy::identity_op)]
107const _: () = {
108 ["Size of fmpz_mod_poly_factor_struct"]
109 [::std::mem::size_of::<fmpz_mod_poly_factor_struct>() - 32usize];
110 ["Alignment of fmpz_mod_poly_factor_struct"]
111 [::std::mem::align_of::<fmpz_mod_poly_factor_struct>() - 8usize];
112 ["Offset of field: fmpz_mod_poly_factor_struct::poly"]
113 [::std::mem::offset_of!(fmpz_mod_poly_factor_struct, poly) - 0usize];
114 ["Offset of field: fmpz_mod_poly_factor_struct::exp"]
115 [::std::mem::offset_of!(fmpz_mod_poly_factor_struct, exp) - 8usize];
116 ["Offset of field: fmpz_mod_poly_factor_struct::num"]
117 [::std::mem::offset_of!(fmpz_mod_poly_factor_struct, num) - 16usize];
118 ["Offset of field: fmpz_mod_poly_factor_struct::alloc"]
119 [::std::mem::offset_of!(fmpz_mod_poly_factor_struct, alloc) - 24usize];
120};
121impl Default for fmpz_mod_poly_factor_struct {
122 fn default() -> Self {
123 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
124 unsafe {
125 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
126 s.assume_init()
127 }
128 }
129}
130pub type fmpz_mod_poly_factor_t = [fmpz_mod_poly_factor_struct; 1usize];
131#[repr(C)]
132pub struct fmpz_mod_mpoly_struct {
133 pub coeffs: *mut fmpz,
134 pub exps: *mut ulong,
135 pub length: slong,
136 pub bits: flint_bitcnt_t,
137 pub coeffs_alloc: slong,
138 pub exps_alloc: slong,
139}
140#[allow(clippy::unnecessary_operation, clippy::identity_op)]
141const _: () = {
142 ["Size of fmpz_mod_mpoly_struct"][::std::mem::size_of::<fmpz_mod_mpoly_struct>() - 48usize];
143 ["Alignment of fmpz_mod_mpoly_struct"]
144 [::std::mem::align_of::<fmpz_mod_mpoly_struct>() - 8usize];
145 ["Offset of field: fmpz_mod_mpoly_struct::coeffs"]
146 [::std::mem::offset_of!(fmpz_mod_mpoly_struct, coeffs) - 0usize];
147 ["Offset of field: fmpz_mod_mpoly_struct::exps"]
148 [::std::mem::offset_of!(fmpz_mod_mpoly_struct, exps) - 8usize];
149 ["Offset of field: fmpz_mod_mpoly_struct::length"]
150 [::std::mem::offset_of!(fmpz_mod_mpoly_struct, length) - 16usize];
151 ["Offset of field: fmpz_mod_mpoly_struct::bits"]
152 [::std::mem::offset_of!(fmpz_mod_mpoly_struct, bits) - 24usize];
153 ["Offset of field: fmpz_mod_mpoly_struct::coeffs_alloc"]
154 [::std::mem::offset_of!(fmpz_mod_mpoly_struct, coeffs_alloc) - 32usize];
155 ["Offset of field: fmpz_mod_mpoly_struct::exps_alloc"]
156 [::std::mem::offset_of!(fmpz_mod_mpoly_struct, exps_alloc) - 40usize];
157};
158impl Default for fmpz_mod_mpoly_struct {
159 fn default() -> Self {
160 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
161 unsafe {
162 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
163 s.assume_init()
164 }
165 }
166}
167pub type fmpz_mod_mpoly_t = [fmpz_mod_mpoly_struct; 1usize];
168#[repr(C)]
169pub struct fmpz_mod_mpoly_factor_struct {
170 pub constant: fmpz_t,
171 pub poly: *mut fmpz_mod_mpoly_struct,
172 pub exp: *mut fmpz,
173 pub num: slong,
174 pub alloc: slong,
175}
176#[allow(clippy::unnecessary_operation, clippy::identity_op)]
177const _: () = {
178 ["Size of fmpz_mod_mpoly_factor_struct"]
179 [::std::mem::size_of::<fmpz_mod_mpoly_factor_struct>() - 40usize];
180 ["Alignment of fmpz_mod_mpoly_factor_struct"]
181 [::std::mem::align_of::<fmpz_mod_mpoly_factor_struct>() - 8usize];
182 ["Offset of field: fmpz_mod_mpoly_factor_struct::constant"]
183 [::std::mem::offset_of!(fmpz_mod_mpoly_factor_struct, constant) - 0usize];
184 ["Offset of field: fmpz_mod_mpoly_factor_struct::poly"]
185 [::std::mem::offset_of!(fmpz_mod_mpoly_factor_struct, poly) - 8usize];
186 ["Offset of field: fmpz_mod_mpoly_factor_struct::exp"]
187 [::std::mem::offset_of!(fmpz_mod_mpoly_factor_struct, exp) - 16usize];
188 ["Offset of field: fmpz_mod_mpoly_factor_struct::num"]
189 [::std::mem::offset_of!(fmpz_mod_mpoly_factor_struct, num) - 24usize];
190 ["Offset of field: fmpz_mod_mpoly_factor_struct::alloc"]
191 [::std::mem::offset_of!(fmpz_mod_mpoly_factor_struct, alloc) - 32usize];
192};
193impl Default for fmpz_mod_mpoly_factor_struct {
194 fn default() -> Self {
195 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
196 unsafe {
197 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
198 s.assume_init()
199 }
200 }
201}
202pub type fmpz_mod_mpoly_factor_t = [fmpz_mod_mpoly_factor_struct; 1usize];
203#[repr(C)]
204pub struct fmpz_mod_mpoly_q_struct {
205 pub num: fmpz_mod_mpoly_struct,
206 pub den: fmpz_mod_mpoly_struct,
207}
208#[allow(clippy::unnecessary_operation, clippy::identity_op)]
209const _: () = {
210 ["Size of fmpz_mod_mpoly_q_struct"][::std::mem::size_of::<fmpz_mod_mpoly_q_struct>() - 96usize];
211 ["Alignment of fmpz_mod_mpoly_q_struct"]
212 [::std::mem::align_of::<fmpz_mod_mpoly_q_struct>() - 8usize];
213 ["Offset of field: fmpz_mod_mpoly_q_struct::num"]
214 [::std::mem::offset_of!(fmpz_mod_mpoly_q_struct, num) - 0usize];
215 ["Offset of field: fmpz_mod_mpoly_q_struct::den"]
216 [::std::mem::offset_of!(fmpz_mod_mpoly_q_struct, den) - 48usize];
217};
218impl Default for fmpz_mod_mpoly_q_struct {
219 fn default() -> Self {
220 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
221 unsafe {
222 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
223 s.assume_init()
224 }
225 }
226}
227pub type fmpz_mod_mpoly_q_t = [fmpz_mod_mpoly_q_struct; 1usize];