Skip to main content

flint_sys/
arf_types.rs

1/* automatically generated by rust-bindgen 0.70.1 */
2
3use crate::deps::*;
4use crate::flint::*;
5
6
7#[repr(C)]
8pub struct __BindgenUnionField<T>(::std::marker::PhantomData<T>);
9impl<T> __BindgenUnionField<T> {
10    #[inline]
11    pub const fn new() -> Self {
12        __BindgenUnionField(::std::marker::PhantomData)
13    }
14    #[inline]
15    pub unsafe fn as_ref(&self) -> &T {
16        ::std::mem::transmute(self)
17    }
18    #[inline]
19    pub unsafe fn as_mut(&mut self) -> &mut T {
20        ::std::mem::transmute(self)
21    }
22}
23impl<T> ::std::default::Default for __BindgenUnionField<T> {
24    #[inline]
25    fn default() -> Self {
26        Self::new()
27    }
28}
29impl<T> ::std::clone::Clone for __BindgenUnionField<T> {
30    #[inline]
31    fn clone(&self) -> Self {
32        *self
33    }
34}
35impl<T> ::std::marker::Copy for __BindgenUnionField<T> {}
36impl<T> ::std::fmt::Debug for __BindgenUnionField<T> {
37    fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
38        fmt.write_str("__BindgenUnionField")
39    }
40}
41impl<T> ::std::hash::Hash for __BindgenUnionField<T> {
42    fn hash<H: ::std::hash::Hasher>(&self, _state: &mut H) {}
43}
44impl<T> ::std::cmp::PartialEq for __BindgenUnionField<T> {
45    fn eq(&self, _other: &__BindgenUnionField<T>) -> bool {
46        true
47    }
48}
49impl<T> ::std::cmp::Eq for __BindgenUnionField<T> {}
50pub const ARF_NOPTR_LIMBS: u32 = 2;
51#[repr(C)]
52pub struct mantissa_noptr_struct {
53    pub d: [ulong; 2usize],
54}
55#[allow(clippy::unnecessary_operation, clippy::identity_op)]
56const _: () = {
57    ["Size of mantissa_noptr_struct"][::std::mem::size_of::<mantissa_noptr_struct>() - 16usize];
58    ["Alignment of mantissa_noptr_struct"]
59        [::std::mem::align_of::<mantissa_noptr_struct>() - 8usize];
60    ["Offset of field: mantissa_noptr_struct::d"]
61        [::std::mem::offset_of!(mantissa_noptr_struct, d) - 0usize];
62};
63impl Default for mantissa_noptr_struct {
64    fn default() -> Self {
65        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
66        unsafe {
67            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
68            s.assume_init()
69        }
70    }
71}
72#[repr(C)]
73pub struct mantissa_ptr_struct {
74    pub alloc: slong,
75    pub d: nn_ptr,
76}
77#[allow(clippy::unnecessary_operation, clippy::identity_op)]
78const _: () = {
79    ["Size of mantissa_ptr_struct"][::std::mem::size_of::<mantissa_ptr_struct>() - 16usize];
80    ["Alignment of mantissa_ptr_struct"][::std::mem::align_of::<mantissa_ptr_struct>() - 8usize];
81    ["Offset of field: mantissa_ptr_struct::alloc"]
82        [::std::mem::offset_of!(mantissa_ptr_struct, alloc) - 0usize];
83    ["Offset of field: mantissa_ptr_struct::d"]
84        [::std::mem::offset_of!(mantissa_ptr_struct, d) - 8usize];
85};
86impl Default for mantissa_ptr_struct {
87    fn default() -> Self {
88        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
89        unsafe {
90            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
91            s.assume_init()
92        }
93    }
94}
95#[repr(C)]
96pub struct mantissa_struct {
97    pub noptr: __BindgenUnionField<mantissa_noptr_struct>,
98    pub ptr: __BindgenUnionField<mantissa_ptr_struct>,
99    pub bindgen_union_field: [u64; 2usize],
100}
101#[allow(clippy::unnecessary_operation, clippy::identity_op)]
102const _: () = {
103    ["Size of mantissa_struct"][::std::mem::size_of::<mantissa_struct>() - 16usize];
104    ["Alignment of mantissa_struct"][::std::mem::align_of::<mantissa_struct>() - 8usize];
105    ["Offset of field: mantissa_struct::noptr"]
106        [::std::mem::offset_of!(mantissa_struct, noptr) - 0usize];
107    ["Offset of field: mantissa_struct::ptr"]
108        [::std::mem::offset_of!(mantissa_struct, ptr) - 0usize];
109};
110impl Default for mantissa_struct {
111    fn default() -> Self {
112        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
113        unsafe {
114            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
115            s.assume_init()
116        }
117    }
118}
119#[repr(C)]
120pub struct arf_struct {
121    pub exp: fmpz,
122    pub size: slong,
123    pub d: mantissa_struct,
124}
125#[allow(clippy::unnecessary_operation, clippy::identity_op)]
126const _: () = {
127    ["Size of arf_struct"][::std::mem::size_of::<arf_struct>() - 32usize];
128    ["Alignment of arf_struct"][::std::mem::align_of::<arf_struct>() - 8usize];
129    ["Offset of field: arf_struct::exp"][::std::mem::offset_of!(arf_struct, exp) - 0usize];
130    ["Offset of field: arf_struct::size"][::std::mem::offset_of!(arf_struct, size) - 8usize];
131    ["Offset of field: arf_struct::d"][::std::mem::offset_of!(arf_struct, d) - 16usize];
132};
133impl Default for arf_struct {
134    fn default() -> Self {
135        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
136        unsafe {
137            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
138            s.assume_init()
139        }
140    }
141}
142pub type arf_t = [arf_struct; 1usize];
143pub type arf_ptr = *mut arf_struct;
144pub type arf_srcptr = *const arf_struct;
145#[repr(C)]
146pub struct arf_interval_struct {
147    pub a: arf_struct,
148    pub b: arf_struct,
149}
150#[allow(clippy::unnecessary_operation, clippy::identity_op)]
151const _: () = {
152    ["Size of arf_interval_struct"][::std::mem::size_of::<arf_interval_struct>() - 64usize];
153    ["Alignment of arf_interval_struct"][::std::mem::align_of::<arf_interval_struct>() - 8usize];
154    ["Offset of field: arf_interval_struct::a"]
155        [::std::mem::offset_of!(arf_interval_struct, a) - 0usize];
156    ["Offset of field: arf_interval_struct::b"]
157        [::std::mem::offset_of!(arf_interval_struct, b) - 32usize];
158};
159impl Default for arf_interval_struct {
160    fn default() -> Self {
161        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
162        unsafe {
163            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
164            s.assume_init()
165        }
166    }
167}
168pub type arf_interval_t = [arf_interval_struct; 1usize];
169pub type arf_interval_ptr = *mut arf_interval_struct;
170pub type arf_interval_srcptr = *const arf_interval_struct;