use crate::deps::*;
use crate::flint::*;
use crate::fmpz_mod_types::*;
use crate::fmpz_types::*;
pub type fq_t = fmpz_poly_t;
pub type fq_struct = fmpz_poly_struct;
#[repr(C)]
pub struct fq_ctx_struct {
pub ctxp: fmpz_mod_ctx_t,
pub sparse_modulus: libc::c_int,
pub is_conway: libc::c_int,
pub a: *mut fmpz,
pub j: *mut slong,
pub len: slong,
pub modulus: fmpz_mod_poly_t,
pub inv: fmpz_mod_poly_t,
pub var: *mut libc::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of fq_ctx_struct"][::std::mem::size_of::<fq_ctx_struct>() - 200usize];
["Alignment of fq_ctx_struct"][::std::mem::align_of::<fq_ctx_struct>() - 8usize];
["Offset of field: fq_ctx_struct::ctxp"][::std::mem::offset_of!(fq_ctx_struct, ctxp) - 0usize];
["Offset of field: fq_ctx_struct::sparse_modulus"]
[::std::mem::offset_of!(fq_ctx_struct, sparse_modulus) - 112usize];
["Offset of field: fq_ctx_struct::is_conway"]
[::std::mem::offset_of!(fq_ctx_struct, is_conway) - 116usize];
["Offset of field: fq_ctx_struct::a"][::std::mem::offset_of!(fq_ctx_struct, a) - 120usize];
["Offset of field: fq_ctx_struct::j"][::std::mem::offset_of!(fq_ctx_struct, j) - 128usize];
["Offset of field: fq_ctx_struct::len"][::std::mem::offset_of!(fq_ctx_struct, len) - 136usize];
["Offset of field: fq_ctx_struct::modulus"]
[::std::mem::offset_of!(fq_ctx_struct, modulus) - 144usize];
["Offset of field: fq_ctx_struct::inv"][::std::mem::offset_of!(fq_ctx_struct, inv) - 168usize];
["Offset of field: fq_ctx_struct::var"][::std::mem::offset_of!(fq_ctx_struct, var) - 192usize];
};
impl Default for fq_ctx_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type fq_ctx_t = [fq_ctx_struct; 1usize];
#[repr(C)]
pub struct fq_mat_struct {
pub entries: *mut fq_struct,
pub r: slong,
pub c: slong,
pub stride: slong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of fq_mat_struct"][::std::mem::size_of::<fq_mat_struct>() - 32usize];
["Alignment of fq_mat_struct"][::std::mem::align_of::<fq_mat_struct>() - 8usize];
["Offset of field: fq_mat_struct::entries"]
[::std::mem::offset_of!(fq_mat_struct, entries) - 0usize];
["Offset of field: fq_mat_struct::r"][::std::mem::offset_of!(fq_mat_struct, r) - 8usize];
["Offset of field: fq_mat_struct::c"][::std::mem::offset_of!(fq_mat_struct, c) - 16usize];
["Offset of field: fq_mat_struct::stride"]
[::std::mem::offset_of!(fq_mat_struct, stride) - 24usize];
};
impl Default for fq_mat_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type fq_mat_t = [fq_mat_struct; 1usize];
#[repr(C)]
pub struct fq_poly_struct {
pub coeffs: *mut fq_struct,
pub alloc: slong,
pub length: slong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of fq_poly_struct"][::std::mem::size_of::<fq_poly_struct>() - 24usize];
["Alignment of fq_poly_struct"][::std::mem::align_of::<fq_poly_struct>() - 8usize];
["Offset of field: fq_poly_struct::coeffs"]
[::std::mem::offset_of!(fq_poly_struct, coeffs) - 0usize];
["Offset of field: fq_poly_struct::alloc"]
[::std::mem::offset_of!(fq_poly_struct, alloc) - 8usize];
["Offset of field: fq_poly_struct::length"]
[::std::mem::offset_of!(fq_poly_struct, length) - 16usize];
};
impl Default for fq_poly_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type fq_poly_t = [fq_poly_struct; 1usize];
#[repr(C)]
pub struct fq_poly_factor_struct {
pub poly: *mut fq_poly_struct,
pub exp: *mut slong,
pub num: slong,
pub alloc: slong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
["Size of fq_poly_factor_struct"][::std::mem::size_of::<fq_poly_factor_struct>() - 32usize];
["Alignment of fq_poly_factor_struct"]
[::std::mem::align_of::<fq_poly_factor_struct>() - 8usize];
["Offset of field: fq_poly_factor_struct::poly"]
[::std::mem::offset_of!(fq_poly_factor_struct, poly) - 0usize];
["Offset of field: fq_poly_factor_struct::exp"]
[::std::mem::offset_of!(fq_poly_factor_struct, exp) - 8usize];
["Offset of field: fq_poly_factor_struct::num"]
[::std::mem::offset_of!(fq_poly_factor_struct, num) - 16usize];
["Offset of field: fq_poly_factor_struct::alloc"]
[::std::mem::offset_of!(fq_poly_factor_struct, alloc) - 24usize];
};
impl Default for fq_poly_factor_struct {
fn default() -> Self {
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
unsafe {
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
pub type fq_poly_factor_t = [fq_poly_factor_struct; 1usize];