mirror of
https://github.com/servo/servo.git
synced 2025-06-25 09:34:32 +01:00
Use a wrapper class to maintain the mBinding invariant and stop resolving during the cascade.
This commit is contained in:
parent
e0f1855c10
commit
16e04046b5
4 changed files with 369 additions and 428 deletions
|
@ -8357,12 +8357,7 @@ pub mod root {
|
||||||
}
|
}
|
||||||
pub type pair_first_type<_T1> = _T1;
|
pub type pair_first_type<_T1> = _T1;
|
||||||
pub type pair_second_type<_T2> = _T2;
|
pub type pair_second_type<_T2> = _T2;
|
||||||
#[repr(C)]
|
pub type pair__PCCP = [u8; 0usize];
|
||||||
pub struct atomic<_Tp> {
|
|
||||||
pub _base: (),
|
|
||||||
pub _phantom_0: ::std::marker::PhantomData<_Tp>,
|
|
||||||
}
|
|
||||||
pub type atomic___base = [u8; 0usize];
|
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Copy)]
|
#[derive(Debug, Copy)]
|
||||||
pub struct input_iterator_tag {
|
pub struct input_iterator_tag {
|
||||||
|
@ -8382,62 +8377,6 @@ pub mod root {
|
||||||
fn clone(&self) -> Self { *self }
|
fn clone(&self) -> Self { *self }
|
||||||
}
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Copy)]
|
|
||||||
pub struct forward_iterator_tag {
|
|
||||||
pub _address: u8,
|
|
||||||
}
|
|
||||||
#[test]
|
|
||||||
fn bindgen_test_layout_forward_iterator_tag() {
|
|
||||||
assert_eq!(::std::mem::size_of::<forward_iterator_tag>() , 1usize
|
|
||||||
, concat ! (
|
|
||||||
"Size of: " , stringify ! ( forward_iterator_tag ) ));
|
|
||||||
assert_eq! (::std::mem::align_of::<forward_iterator_tag>() ,
|
|
||||||
1usize , concat ! (
|
|
||||||
"Alignment of " , stringify ! ( forward_iterator_tag )
|
|
||||||
));
|
|
||||||
}
|
|
||||||
impl Clone for forward_iterator_tag {
|
|
||||||
fn clone(&self) -> Self { *self }
|
|
||||||
}
|
|
||||||
#[repr(C)]
|
|
||||||
#[derive(Debug, Copy)]
|
|
||||||
pub struct bidirectional_iterator_tag {
|
|
||||||
pub _address: u8,
|
|
||||||
}
|
|
||||||
#[test]
|
|
||||||
fn bindgen_test_layout_bidirectional_iterator_tag() {
|
|
||||||
assert_eq!(::std::mem::size_of::<bidirectional_iterator_tag>() ,
|
|
||||||
1usize , concat ! (
|
|
||||||
"Size of: " , stringify ! ( bidirectional_iterator_tag
|
|
||||||
) ));
|
|
||||||
assert_eq! (::std::mem::align_of::<bidirectional_iterator_tag>() ,
|
|
||||||
1usize , concat ! (
|
|
||||||
"Alignment of " , stringify ! (
|
|
||||||
bidirectional_iterator_tag ) ));
|
|
||||||
}
|
|
||||||
impl Clone for bidirectional_iterator_tag {
|
|
||||||
fn clone(&self) -> Self { *self }
|
|
||||||
}
|
|
||||||
#[repr(C)]
|
|
||||||
#[derive(Debug, Copy)]
|
|
||||||
pub struct random_access_iterator_tag {
|
|
||||||
pub _address: u8,
|
|
||||||
}
|
|
||||||
#[test]
|
|
||||||
fn bindgen_test_layout_random_access_iterator_tag() {
|
|
||||||
assert_eq!(::std::mem::size_of::<random_access_iterator_tag>() ,
|
|
||||||
1usize , concat ! (
|
|
||||||
"Size of: " , stringify ! ( random_access_iterator_tag
|
|
||||||
) ));
|
|
||||||
assert_eq! (::std::mem::align_of::<random_access_iterator_tag>() ,
|
|
||||||
1usize , concat ! (
|
|
||||||
"Alignment of " , stringify ! (
|
|
||||||
random_access_iterator_tag ) ));
|
|
||||||
}
|
|
||||||
impl Clone for random_access_iterator_tag {
|
|
||||||
fn clone(&self) -> Self { *self }
|
|
||||||
}
|
|
||||||
#[repr(C)]
|
|
||||||
#[derive(Debug, Copy, Clone)]
|
#[derive(Debug, Copy, Clone)]
|
||||||
pub struct iterator<_Category, _Tp, _Distance, _Pointer, _Reference> {
|
pub struct iterator<_Category, _Tp, _Distance, _Pointer, _Reference> {
|
||||||
pub _address: u8,
|
pub _address: u8,
|
||||||
|
@ -8447,209 +8386,250 @@ pub mod root {
|
||||||
pub _phantom_3: ::std::marker::PhantomData<_Pointer>,
|
pub _phantom_3: ::std::marker::PhantomData<_Pointer>,
|
||||||
pub _phantom_4: ::std::marker::PhantomData<_Reference>,
|
pub _phantom_4: ::std::marker::PhantomData<_Reference>,
|
||||||
}
|
}
|
||||||
|
pub type iterator_iterator_category<_Category> = _Category;
|
||||||
pub type iterator_value_type<_Tp> = _Tp;
|
pub type iterator_value_type<_Tp> = _Tp;
|
||||||
pub type iterator_difference_type<_Distance> = _Distance;
|
pub type iterator_difference_type<_Distance> = _Distance;
|
||||||
pub type iterator_pointer<_Pointer> = _Pointer;
|
pub type iterator_pointer<_Pointer> = _Pointer;
|
||||||
pub type iterator_reference<_Reference> = _Reference;
|
pub type iterator_reference<_Reference> = _Reference;
|
||||||
pub type iterator_iterator_category<_Category> = _Category;
|
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Copy, Clone)]
|
#[derive(Debug)]
|
||||||
pub struct __bit_const_reference<_Cp> {
|
pub struct atomic<_Tp> {
|
||||||
pub __seg_: root::std::__bit_const_reference___storage_pointer<_Cp>,
|
pub _M_i: _Tp,
|
||||||
pub __mask_: root::std::__bit_const_reference___storage_type<_Cp>,
|
|
||||||
}
|
}
|
||||||
pub type __bit_const_reference___storage_type<_Cp> = _Cp;
|
pub mod chrono {
|
||||||
pub type __bit_const_reference___storage_pointer<_Cp> = _Cp;
|
#[allow(unused_imports)]
|
||||||
|
use self::super::super::super::root;
|
||||||
}
|
}
|
||||||
pub type __int64_t = ::std::os::raw::c_longlong;
|
}
|
||||||
pub type __darwin_va_list = root::__builtin_va_list;
|
pub mod __gnu_cxx {
|
||||||
pub type __darwin_off_t = root::__int64_t;
|
#[allow(unused_imports)]
|
||||||
pub type va_list = root::__darwin_va_list;
|
use self::super::super::root;
|
||||||
pub type fpos_t = root::__darwin_off_t;
|
}
|
||||||
|
pub type __off_t = ::std::os::raw::c_long;
|
||||||
|
pub type __off64_t = ::std::os::raw::c_long;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Copy)]
|
#[derive(Debug, Copy)]
|
||||||
pub struct __sbuf {
|
pub struct _IO_FILE {
|
||||||
pub _base: *mut ::std::os::raw::c_uchar,
|
pub _flags: ::std::os::raw::c_int,
|
||||||
pub _size: ::std::os::raw::c_int,
|
pub _IO_read_ptr: *mut ::std::os::raw::c_char,
|
||||||
|
pub _IO_read_end: *mut ::std::os::raw::c_char,
|
||||||
|
pub _IO_read_base: *mut ::std::os::raw::c_char,
|
||||||
|
pub _IO_write_base: *mut ::std::os::raw::c_char,
|
||||||
|
pub _IO_write_ptr: *mut ::std::os::raw::c_char,
|
||||||
|
pub _IO_write_end: *mut ::std::os::raw::c_char,
|
||||||
|
pub _IO_buf_base: *mut ::std::os::raw::c_char,
|
||||||
|
pub _IO_buf_end: *mut ::std::os::raw::c_char,
|
||||||
|
pub _IO_save_base: *mut ::std::os::raw::c_char,
|
||||||
|
pub _IO_backup_base: *mut ::std::os::raw::c_char,
|
||||||
|
pub _IO_save_end: *mut ::std::os::raw::c_char,
|
||||||
|
pub _markers: *mut root::_IO_marker,
|
||||||
|
pub _chain: *mut root::_IO_FILE,
|
||||||
|
pub _fileno: ::std::os::raw::c_int,
|
||||||
|
pub _flags2: ::std::os::raw::c_int,
|
||||||
|
pub _old_offset: root::__off_t,
|
||||||
|
pub _cur_column: ::std::os::raw::c_ushort,
|
||||||
|
pub _vtable_offset: ::std::os::raw::c_char,
|
||||||
|
pub _shortbuf: [::std::os::raw::c_char; 1usize],
|
||||||
|
pub _lock: *mut root::_IO_lock_t,
|
||||||
|
pub _offset: root::__off64_t,
|
||||||
|
pub __pad1: *mut ::std::os::raw::c_void,
|
||||||
|
pub __pad2: *mut ::std::os::raw::c_void,
|
||||||
|
pub __pad3: *mut ::std::os::raw::c_void,
|
||||||
|
pub __pad4: *mut ::std::os::raw::c_void,
|
||||||
|
pub __pad5: usize,
|
||||||
|
pub _mode: ::std::os::raw::c_int,
|
||||||
|
pub _unused2: [::std::os::raw::c_char; 20usize],
|
||||||
}
|
}
|
||||||
#[test]
|
#[test]
|
||||||
fn bindgen_test_layout___sbuf() {
|
fn bindgen_test_layout__IO_FILE() {
|
||||||
assert_eq!(::std::mem::size_of::<__sbuf>() , 16usize , concat ! (
|
assert_eq!(::std::mem::size_of::<_IO_FILE>() , 216usize , concat ! (
|
||||||
"Size of: " , stringify ! ( __sbuf ) ));
|
"Size of: " , stringify ! ( _IO_FILE ) ));
|
||||||
assert_eq! (::std::mem::align_of::<__sbuf>() , 8usize , concat ! (
|
assert_eq! (::std::mem::align_of::<_IO_FILE>() , 8usize , concat ! (
|
||||||
"Alignment of " , stringify ! ( __sbuf ) ));
|
"Alignment of " , stringify ! ( _IO_FILE ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sbuf ) ) . _base as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _flags as * const _ as
|
||||||
usize } , 0usize , concat ! (
|
usize } , 0usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sbuf ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _base ) ));
|
|
||||||
assert_eq! (unsafe {
|
|
||||||
& ( * ( 0 as * const __sbuf ) ) . _size as * const _ as
|
|
||||||
usize } , 8usize , concat ! (
|
|
||||||
"Alignment of field: " , stringify ! ( __sbuf ) , "::" ,
|
|
||||||
stringify ! ( _size ) ));
|
|
||||||
}
|
|
||||||
impl Clone for __sbuf {
|
|
||||||
fn clone(&self) -> Self { *self }
|
|
||||||
}
|
|
||||||
#[repr(C)]
|
|
||||||
#[derive(Debug, Copy, Clone)]
|
|
||||||
pub struct __sFILEX([u8; 0]);
|
|
||||||
#[repr(C)]
|
|
||||||
#[derive(Debug, Copy)]
|
|
||||||
pub struct __sFILE {
|
|
||||||
pub _p: *mut ::std::os::raw::c_uchar,
|
|
||||||
pub _r: ::std::os::raw::c_int,
|
|
||||||
pub _w: ::std::os::raw::c_int,
|
|
||||||
pub _flags: ::std::os::raw::c_short,
|
|
||||||
pub _file: ::std::os::raw::c_short,
|
|
||||||
pub _bf: root::__sbuf,
|
|
||||||
pub _lbfsize: ::std::os::raw::c_int,
|
|
||||||
pub _cookie: *mut ::std::os::raw::c_void,
|
|
||||||
pub _close: ::std::option::Option<unsafe extern "C" fn(arg1:
|
|
||||||
*mut ::std::os::raw::c_void)
|
|
||||||
-> ::std::os::raw::c_int>,
|
|
||||||
pub _read: ::std::option::Option<unsafe extern "C" fn(arg1:
|
|
||||||
*mut ::std::os::raw::c_void,
|
|
||||||
arg2:
|
|
||||||
*mut ::std::os::raw::c_char,
|
|
||||||
arg3:
|
|
||||||
::std::os::raw::c_int)
|
|
||||||
-> ::std::os::raw::c_int>,
|
|
||||||
pub _seek: ::std::option::Option<unsafe extern "C" fn(arg1:
|
|
||||||
*mut ::std::os::raw::c_void,
|
|
||||||
arg2:
|
|
||||||
root::fpos_t,
|
|
||||||
arg3:
|
|
||||||
::std::os::raw::c_int)
|
|
||||||
-> ::std::os::raw::c_longlong>,
|
|
||||||
pub _write: ::std::option::Option<unsafe extern "C" fn(arg1:
|
|
||||||
*mut ::std::os::raw::c_void,
|
|
||||||
arg2:
|
|
||||||
*const ::std::os::raw::c_char,
|
|
||||||
arg3:
|
|
||||||
::std::os::raw::c_int)
|
|
||||||
-> ::std::os::raw::c_int>,
|
|
||||||
pub _ub: root::__sbuf,
|
|
||||||
pub _extra: *mut root::__sFILEX,
|
|
||||||
pub _ur: ::std::os::raw::c_int,
|
|
||||||
pub _ubuf: [::std::os::raw::c_uchar; 3usize],
|
|
||||||
pub _nbuf: [::std::os::raw::c_uchar; 1usize],
|
|
||||||
pub _lb: root::__sbuf,
|
|
||||||
pub _blksize: ::std::os::raw::c_int,
|
|
||||||
pub _offset: root::fpos_t,
|
|
||||||
}
|
|
||||||
#[test]
|
|
||||||
fn bindgen_test_layout___sFILE() {
|
|
||||||
assert_eq!(::std::mem::size_of::<__sFILE>() , 152usize , concat ! (
|
|
||||||
"Size of: " , stringify ! ( __sFILE ) ));
|
|
||||||
assert_eq! (::std::mem::align_of::<__sFILE>() , 8usize , concat ! (
|
|
||||||
"Alignment of " , stringify ! ( __sFILE ) ));
|
|
||||||
assert_eq! (unsafe {
|
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _p as * const _ as
|
|
||||||
usize } , 0usize , concat ! (
|
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
|
||||||
stringify ! ( _p ) ));
|
|
||||||
assert_eq! (unsafe {
|
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _r as * const _ as
|
|
||||||
usize } , 8usize , concat ! (
|
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
|
||||||
stringify ! ( _r ) ));
|
|
||||||
assert_eq! (unsafe {
|
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _w as * const _ as
|
|
||||||
usize } , 12usize , concat ! (
|
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
|
||||||
stringify ! ( _w ) ));
|
|
||||||
assert_eq! (unsafe {
|
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _flags as * const _ as
|
|
||||||
usize } , 16usize , concat ! (
|
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
|
||||||
stringify ! ( _flags ) ));
|
stringify ! ( _flags ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _file as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_read_ptr as *
|
||||||
usize } , 18usize , concat ! (
|
const _ as usize } , 8usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _file ) ));
|
stringify ! ( _IO_read_ptr ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _bf as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_read_end as *
|
||||||
usize } , 24usize , concat ! (
|
const _ as usize } , 16usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _bf ) ));
|
stringify ! ( _IO_read_end ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _lbfsize as * const _
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_read_base as *
|
||||||
as usize } , 40usize , concat ! (
|
const _ as usize } , 24usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _lbfsize ) ));
|
stringify ! ( _IO_read_base ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _cookie as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_write_base as *
|
||||||
usize } , 48usize , concat ! (
|
const _ as usize } , 32usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _cookie ) ));
|
stringify ! ( _IO_write_base ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _close as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_write_ptr as *
|
||||||
usize } , 56usize , concat ! (
|
const _ as usize } , 40usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _close ) ));
|
stringify ! ( _IO_write_ptr ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _read as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_write_end as *
|
||||||
usize } , 64usize , concat ! (
|
const _ as usize } , 48usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _read ) ));
|
stringify ! ( _IO_write_end ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _seek as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_buf_base as *
|
||||||
usize } , 72usize , concat ! (
|
const _ as usize } , 56usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _seek ) ));
|
stringify ! ( _IO_buf_base ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _write as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_buf_end as * const
|
||||||
usize } , 80usize , concat ! (
|
_ as usize } , 64usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _write ) ));
|
stringify ! ( _IO_buf_end ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _ub as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_save_base as *
|
||||||
usize } , 88usize , concat ! (
|
const _ as usize } , 72usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _ub ) ));
|
stringify ! ( _IO_save_base ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _extra as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_backup_base as *
|
||||||
|
const _ as usize } , 80usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( _IO_backup_base ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . _IO_save_end as *
|
||||||
|
const _ as usize } , 88usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( _IO_save_end ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . _markers as * const _
|
||||||
|
as usize } , 96usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( _markers ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . _chain as * const _ as
|
||||||
usize } , 104usize , concat ! (
|
usize } , 104usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _extra ) ));
|
stringify ! ( _chain ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _ur as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _fileno as * const _
|
||||||
usize } , 112usize , concat ! (
|
as usize } , 112usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _ur ) ));
|
stringify ! ( _fileno ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _ubuf as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _flags2 as * const _
|
||||||
usize } , 116usize , concat ! (
|
as usize } , 116usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _ubuf ) ));
|
stringify ! ( _flags2 ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _nbuf as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _old_offset as * const
|
||||||
usize } , 119usize , concat ! (
|
_ as usize } , 120usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _nbuf ) ));
|
stringify ! ( _old_offset ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _lb as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _cur_column as * const
|
||||||
usize } , 120usize , concat ! (
|
_ as usize } , 128usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _lb ) ));
|
stringify ! ( _cur_column ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _blksize as * const _
|
& ( * ( 0 as * const _IO_FILE ) ) . _vtable_offset as *
|
||||||
as usize } , 136usize , concat ! (
|
const _ as usize } , 130usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _blksize ) ));
|
stringify ! ( _vtable_offset ) ));
|
||||||
assert_eq! (unsafe {
|
assert_eq! (unsafe {
|
||||||
& ( * ( 0 as * const __sFILE ) ) . _offset as * const _ as
|
& ( * ( 0 as * const _IO_FILE ) ) . _shortbuf as * const _
|
||||||
usize } , 144usize , concat ! (
|
as usize } , 131usize , concat ! (
|
||||||
"Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( _shortbuf ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . _lock as * const _ as
|
||||||
|
usize } , 136usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( _lock ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . _offset as * const _
|
||||||
|
as usize } , 144usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
stringify ! ( _offset ) ));
|
stringify ! ( _offset ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . __pad1 as * const _ as
|
||||||
|
usize } , 152usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( __pad1 ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . __pad2 as * const _ as
|
||||||
|
usize } , 160usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( __pad2 ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . __pad3 as * const _ as
|
||||||
|
usize } , 168usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( __pad3 ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . __pad4 as * const _ as
|
||||||
|
usize } , 176usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( __pad4 ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . __pad5 as * const _ as
|
||||||
|
usize } , 184usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( __pad5 ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . _mode as * const _ as
|
||||||
|
usize } , 192usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( _mode ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_FILE ) ) . _unused2 as * const _
|
||||||
|
as usize } , 196usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
|
||||||
|
stringify ! ( _unused2 ) ));
|
||||||
}
|
}
|
||||||
impl Clone for __sFILE {
|
impl Clone for _IO_FILE {
|
||||||
|
fn clone(&self) -> Self { *self }
|
||||||
|
}
|
||||||
|
pub type FILE = root::_IO_FILE;
|
||||||
|
pub type va_list = root::__builtin_va_list;
|
||||||
|
pub type _IO_lock_t = ::std::os::raw::c_void;
|
||||||
|
#[repr(C)]
|
||||||
|
#[derive(Debug, Copy)]
|
||||||
|
pub struct _IO_marker {
|
||||||
|
pub _next: *mut root::_IO_marker,
|
||||||
|
pub _sbuf: *mut root::_IO_FILE,
|
||||||
|
pub _pos: ::std::os::raw::c_int,
|
||||||
|
}
|
||||||
|
#[test]
|
||||||
|
fn bindgen_test_layout__IO_marker() {
|
||||||
|
assert_eq!(::std::mem::size_of::<_IO_marker>() , 24usize , concat ! (
|
||||||
|
"Size of: " , stringify ! ( _IO_marker ) ));
|
||||||
|
assert_eq! (::std::mem::align_of::<_IO_marker>() , 8usize , concat ! (
|
||||||
|
"Alignment of " , stringify ! ( _IO_marker ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_marker ) ) . _next as * const _
|
||||||
|
as usize } , 0usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_marker ) , "::"
|
||||||
|
, stringify ! ( _next ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_marker ) ) . _sbuf as * const _
|
||||||
|
as usize } , 8usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_marker ) , "::"
|
||||||
|
, stringify ! ( _sbuf ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const _IO_marker ) ) . _pos as * const _ as
|
||||||
|
usize } , 16usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( _IO_marker ) , "::"
|
||||||
|
, stringify ! ( _pos ) ));
|
||||||
|
}
|
||||||
|
impl Clone for _IO_marker {
|
||||||
fn clone(&self) -> Self { *self }
|
fn clone(&self) -> Self { *self }
|
||||||
}
|
}
|
||||||
pub type FILE = root::__sFILE;
|
|
||||||
/**
|
/**
|
||||||
* MozRefCountType is Mozilla's reference count type.
|
* MozRefCountType is Mozilla's reference count type.
|
||||||
*
|
*
|
||||||
|
@ -15664,63 +15644,63 @@ pub mod root {
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Copy, Clone)]
|
#[derive(Debug, Copy, Clone)]
|
||||||
pub struct nsDOMMutationObserver([u8; 0]);
|
pub struct nsDOMMutationObserver([u8; 0]);
|
||||||
pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_28 =
|
pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_HAS_LISTENERMANAGER;
|
_bindgen_ty_104::NODE_HAS_LISTENERMANAGER;
|
||||||
pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_28 =
|
pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_HAS_PROPERTIES;
|
_bindgen_ty_104::NODE_HAS_PROPERTIES;
|
||||||
pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_28 =
|
pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_IS_ANONYMOUS_ROOT;
|
_bindgen_ty_104::NODE_IS_ANONYMOUS_ROOT;
|
||||||
pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_28 =
|
pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
|
_bindgen_ty_104::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
|
||||||
pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_28 =
|
pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_IS_NATIVE_ANONYMOUS_ROOT;
|
_bindgen_ty_104::NODE_IS_NATIVE_ANONYMOUS_ROOT;
|
||||||
pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_28 =
|
pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_FORCE_XBL_BINDINGS;
|
_bindgen_ty_104::NODE_FORCE_XBL_BINDINGS;
|
||||||
pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_28 =
|
pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_MAY_BE_IN_BINDING_MNGR;
|
_bindgen_ty_104::NODE_MAY_BE_IN_BINDING_MNGR;
|
||||||
pub const NODE_IS_EDITABLE: root::_bindgen_ty_28 =
|
pub const NODE_IS_EDITABLE: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_IS_EDITABLE;
|
_bindgen_ty_104::NODE_IS_EDITABLE;
|
||||||
pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_28 =
|
pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_IS_NATIVE_ANONYMOUS;
|
_bindgen_ty_104::NODE_IS_NATIVE_ANONYMOUS;
|
||||||
pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_28 =
|
pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_IS_IN_SHADOW_TREE;
|
_bindgen_ty_104::NODE_IS_IN_SHADOW_TREE;
|
||||||
pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_28 =
|
pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_HAS_EMPTY_SELECTOR;
|
_bindgen_ty_104::NODE_HAS_EMPTY_SELECTOR;
|
||||||
pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_28 =
|
pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_HAS_SLOW_SELECTOR;
|
_bindgen_ty_104::NODE_HAS_SLOW_SELECTOR;
|
||||||
pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_28 =
|
pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_HAS_EDGE_CHILD_SELECTOR;
|
_bindgen_ty_104::NODE_HAS_EDGE_CHILD_SELECTOR;
|
||||||
pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_28 =
|
pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
|
_bindgen_ty_104::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
|
||||||
pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_28 =
|
pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_ALL_SELECTOR_FLAGS;
|
_bindgen_ty_104::NODE_ALL_SELECTOR_FLAGS;
|
||||||
pub const NODE_NEEDS_FRAME: root::_bindgen_ty_28 =
|
pub const NODE_NEEDS_FRAME: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_NEEDS_FRAME;
|
_bindgen_ty_104::NODE_NEEDS_FRAME;
|
||||||
pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_28 =
|
pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_DESCENDANTS_NEED_FRAMES;
|
_bindgen_ty_104::NODE_DESCENDANTS_NEED_FRAMES;
|
||||||
pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_28 =
|
pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_HAS_ACCESSKEY;
|
_bindgen_ty_104::NODE_HAS_ACCESSKEY;
|
||||||
pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_28 =
|
pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_HAS_DIRECTION_RTL;
|
_bindgen_ty_104::NODE_HAS_DIRECTION_RTL;
|
||||||
pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_28 =
|
pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_HAS_DIRECTION_LTR;
|
_bindgen_ty_104::NODE_HAS_DIRECTION_LTR;
|
||||||
pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_28 =
|
pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_ALL_DIRECTION_FLAGS;
|
_bindgen_ty_104::NODE_ALL_DIRECTION_FLAGS;
|
||||||
pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_28 =
|
pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_CHROME_ONLY_ACCESS;
|
_bindgen_ty_104::NODE_CHROME_ONLY_ACCESS;
|
||||||
pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_28 =
|
pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
|
_bindgen_ty_104::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
|
||||||
pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_28 =
|
pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_1;
|
_bindgen_ty_104::NODE_SHARED_RESTYLE_BIT_1;
|
||||||
pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_28 =
|
pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_2;
|
_bindgen_ty_104::NODE_SHARED_RESTYLE_BIT_2;
|
||||||
pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_28 =
|
pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_1;
|
_bindgen_ty_104::NODE_SHARED_RESTYLE_BIT_1;
|
||||||
pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_28 =
|
pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_104 =
|
||||||
_bindgen_ty_28::NODE_TYPE_SPECIFIC_BITS_OFFSET;
|
_bindgen_ty_104::NODE_TYPE_SPECIFIC_BITS_OFFSET;
|
||||||
#[repr(u32)]
|
#[repr(u32)]
|
||||||
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
|
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
|
||||||
pub enum _bindgen_ty_28 {
|
pub enum _bindgen_ty_104 {
|
||||||
NODE_HAS_LISTENERMANAGER = 4,
|
NODE_HAS_LISTENERMANAGER = 4,
|
||||||
NODE_HAS_PROPERTIES = 8,
|
NODE_HAS_PROPERTIES = 8,
|
||||||
NODE_IS_ANONYMOUS_ROOT = 16,
|
NODE_IS_ANONYMOUS_ROOT = 16,
|
||||||
|
@ -21792,7 +21772,7 @@ pub mod root {
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub struct nsStyleDisplay {
|
pub struct nsStyleDisplay {
|
||||||
pub mBinding: root::RefPtr<root::mozilla::css::URLValue>,
|
pub mBinding: root::BindingHolder,
|
||||||
pub mDisplay: root::mozilla::StyleDisplay,
|
pub mDisplay: root::mozilla::StyleDisplay,
|
||||||
pub mOriginalDisplay: root::mozilla::StyleDisplay,
|
pub mOriginalDisplay: root::mozilla::StyleDisplay,
|
||||||
pub mContain: u8,
|
pub mContain: u8,
|
||||||
|
@ -24754,6 +24734,23 @@ pub mod root {
|
||||||
}
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
|
pub struct BindingHolder {
|
||||||
|
pub mPtr: root::RefPtr<root::mozilla::css::URLValue>,
|
||||||
|
}
|
||||||
|
#[test]
|
||||||
|
fn bindgen_test_layout_BindingHolder() {
|
||||||
|
assert_eq!(::std::mem::size_of::<BindingHolder>() , 8usize , concat !
|
||||||
|
( "Size of: " , stringify ! ( BindingHolder ) ));
|
||||||
|
assert_eq! (::std::mem::align_of::<BindingHolder>() , 8usize , concat
|
||||||
|
! ( "Alignment of " , stringify ! ( BindingHolder ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const BindingHolder ) ) . mPtr as * const _
|
||||||
|
as usize } , 0usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( BindingHolder ) ,
|
||||||
|
"::" , stringify ! ( mPtr ) ));
|
||||||
|
}
|
||||||
|
#[repr(C)]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct nsStyleTable {
|
pub struct nsStyleTable {
|
||||||
pub mLayoutStrategy: u8,
|
pub mLayoutStrategy: u8,
|
||||||
pub mSpan: i32,
|
pub mSpan: i32,
|
||||||
|
|
|
@ -8169,12 +8169,7 @@ pub mod root {
|
||||||
}
|
}
|
||||||
pub type pair_first_type<_T1> = _T1;
|
pub type pair_first_type<_T1> = _T1;
|
||||||
pub type pair_second_type<_T2> = _T2;
|
pub type pair_second_type<_T2> = _T2;
|
||||||
#[repr(C)]
|
pub type pair__PCCP = [u8; 0usize];
|
||||||
pub struct atomic<_Tp> {
|
|
||||||
pub _base: (),
|
|
||||||
pub _phantom_0: ::std::marker::PhantomData<_Tp>,
|
|
||||||
}
|
|
||||||
pub type atomic___base = [u8; 0usize];
|
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Copy)]
|
#[derive(Debug, Copy)]
|
||||||
pub struct input_iterator_tag {
|
pub struct input_iterator_tag {
|
||||||
|
@ -8194,62 +8189,6 @@ pub mod root {
|
||||||
fn clone(&self) -> Self { *self }
|
fn clone(&self) -> Self { *self }
|
||||||
}
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Copy)]
|
|
||||||
pub struct forward_iterator_tag {
|
|
||||||
pub _address: u8,
|
|
||||||
}
|
|
||||||
#[test]
|
|
||||||
fn bindgen_test_layout_forward_iterator_tag() {
|
|
||||||
assert_eq!(::std::mem::size_of::<forward_iterator_tag>() , 1usize
|
|
||||||
, concat ! (
|
|
||||||
"Size of: " , stringify ! ( forward_iterator_tag ) ));
|
|
||||||
assert_eq! (::std::mem::align_of::<forward_iterator_tag>() ,
|
|
||||||
1usize , concat ! (
|
|
||||||
"Alignment of " , stringify ! ( forward_iterator_tag )
|
|
||||||
));
|
|
||||||
}
|
|
||||||
impl Clone for forward_iterator_tag {
|
|
||||||
fn clone(&self) -> Self { *self }
|
|
||||||
}
|
|
||||||
#[repr(C)]
|
|
||||||
#[derive(Debug, Copy)]
|
|
||||||
pub struct bidirectional_iterator_tag {
|
|
||||||
pub _address: u8,
|
|
||||||
}
|
|
||||||
#[test]
|
|
||||||
fn bindgen_test_layout_bidirectional_iterator_tag() {
|
|
||||||
assert_eq!(::std::mem::size_of::<bidirectional_iterator_tag>() ,
|
|
||||||
1usize , concat ! (
|
|
||||||
"Size of: " , stringify ! ( bidirectional_iterator_tag
|
|
||||||
) ));
|
|
||||||
assert_eq! (::std::mem::align_of::<bidirectional_iterator_tag>() ,
|
|
||||||
1usize , concat ! (
|
|
||||||
"Alignment of " , stringify ! (
|
|
||||||
bidirectional_iterator_tag ) ));
|
|
||||||
}
|
|
||||||
impl Clone for bidirectional_iterator_tag {
|
|
||||||
fn clone(&self) -> Self { *self }
|
|
||||||
}
|
|
||||||
#[repr(C)]
|
|
||||||
#[derive(Debug, Copy)]
|
|
||||||
pub struct random_access_iterator_tag {
|
|
||||||
pub _address: u8,
|
|
||||||
}
|
|
||||||
#[test]
|
|
||||||
fn bindgen_test_layout_random_access_iterator_tag() {
|
|
||||||
assert_eq!(::std::mem::size_of::<random_access_iterator_tag>() ,
|
|
||||||
1usize , concat ! (
|
|
||||||
"Size of: " , stringify ! ( random_access_iterator_tag
|
|
||||||
) ));
|
|
||||||
assert_eq! (::std::mem::align_of::<random_access_iterator_tag>() ,
|
|
||||||
1usize , concat ! (
|
|
||||||
"Alignment of " , stringify ! (
|
|
||||||
random_access_iterator_tag ) ));
|
|
||||||
}
|
|
||||||
impl Clone for random_access_iterator_tag {
|
|
||||||
fn clone(&self) -> Self { *self }
|
|
||||||
}
|
|
||||||
#[repr(C)]
|
|
||||||
#[derive(Debug, Copy, Clone)]
|
#[derive(Debug, Copy, Clone)]
|
||||||
pub struct iterator<_Category, _Tp, _Distance, _Pointer, _Reference> {
|
pub struct iterator<_Category, _Tp, _Distance, _Pointer, _Reference> {
|
||||||
pub _address: u8,
|
pub _address: u8,
|
||||||
|
@ -8259,22 +8198,22 @@ pub mod root {
|
||||||
pub _phantom_3: ::std::marker::PhantomData<_Pointer>,
|
pub _phantom_3: ::std::marker::PhantomData<_Pointer>,
|
||||||
pub _phantom_4: ::std::marker::PhantomData<_Reference>,
|
pub _phantom_4: ::std::marker::PhantomData<_Reference>,
|
||||||
}
|
}
|
||||||
|
pub type iterator_iterator_category<_Category> = _Category;
|
||||||
pub type iterator_value_type<_Tp> = _Tp;
|
pub type iterator_value_type<_Tp> = _Tp;
|
||||||
pub type iterator_difference_type<_Distance> = _Distance;
|
pub type iterator_difference_type<_Distance> = _Distance;
|
||||||
pub type iterator_pointer<_Pointer> = _Pointer;
|
pub type iterator_pointer<_Pointer> = _Pointer;
|
||||||
pub type iterator_reference<_Reference> = _Reference;
|
pub type iterator_reference<_Reference> = _Reference;
|
||||||
pub type iterator_iterator_category<_Category> = _Category;
|
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Copy, Clone)]
|
#[derive(Debug)]
|
||||||
pub struct __bit_const_reference<_Cp> {
|
pub struct atomic<_Tp> {
|
||||||
pub __seg_: root::std::__bit_const_reference___storage_pointer<_Cp>,
|
pub _M_i: _Tp,
|
||||||
pub __mask_: root::std::__bit_const_reference___storage_type<_Cp>,
|
|
||||||
}
|
}
|
||||||
pub type __bit_const_reference___storage_type<_Cp> = _Cp;
|
|
||||||
pub type __bit_const_reference___storage_pointer<_Cp> = _Cp;
|
|
||||||
}
|
}
|
||||||
pub type __darwin_va_list = root::__builtin_va_list;
|
pub mod __gnu_cxx {
|
||||||
pub type va_list = root::__darwin_va_list;
|
#[allow(unused_imports)]
|
||||||
|
use self::super::super::root;
|
||||||
|
}
|
||||||
|
pub type va_list = root::__builtin_va_list;
|
||||||
/**
|
/**
|
||||||
* MozRefCountType is Mozilla's reference count type.
|
* MozRefCountType is Mozilla's reference count type.
|
||||||
*
|
*
|
||||||
|
@ -15132,63 +15071,63 @@ pub mod root {
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Copy, Clone)]
|
#[derive(Debug, Copy, Clone)]
|
||||||
pub struct nsDOMMutationObserver([u8; 0]);
|
pub struct nsDOMMutationObserver([u8; 0]);
|
||||||
pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_28 =
|
pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_HAS_LISTENERMANAGER;
|
_bindgen_ty_91::NODE_HAS_LISTENERMANAGER;
|
||||||
pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_28 =
|
pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_HAS_PROPERTIES;
|
_bindgen_ty_91::NODE_HAS_PROPERTIES;
|
||||||
pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_28 =
|
pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_IS_ANONYMOUS_ROOT;
|
_bindgen_ty_91::NODE_IS_ANONYMOUS_ROOT;
|
||||||
pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_28 =
|
pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
|
_bindgen_ty_91::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
|
||||||
pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_28 =
|
pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_IS_NATIVE_ANONYMOUS_ROOT;
|
_bindgen_ty_91::NODE_IS_NATIVE_ANONYMOUS_ROOT;
|
||||||
pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_28 =
|
pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_FORCE_XBL_BINDINGS;
|
_bindgen_ty_91::NODE_FORCE_XBL_BINDINGS;
|
||||||
pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_28 =
|
pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_MAY_BE_IN_BINDING_MNGR;
|
_bindgen_ty_91::NODE_MAY_BE_IN_BINDING_MNGR;
|
||||||
pub const NODE_IS_EDITABLE: root::_bindgen_ty_28 =
|
pub const NODE_IS_EDITABLE: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_IS_EDITABLE;
|
_bindgen_ty_91::NODE_IS_EDITABLE;
|
||||||
pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_28 =
|
pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_IS_NATIVE_ANONYMOUS;
|
_bindgen_ty_91::NODE_IS_NATIVE_ANONYMOUS;
|
||||||
pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_28 =
|
pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_IS_IN_SHADOW_TREE;
|
_bindgen_ty_91::NODE_IS_IN_SHADOW_TREE;
|
||||||
pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_28 =
|
pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_HAS_EMPTY_SELECTOR;
|
_bindgen_ty_91::NODE_HAS_EMPTY_SELECTOR;
|
||||||
pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_28 =
|
pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_HAS_SLOW_SELECTOR;
|
_bindgen_ty_91::NODE_HAS_SLOW_SELECTOR;
|
||||||
pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_28 =
|
pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_HAS_EDGE_CHILD_SELECTOR;
|
_bindgen_ty_91::NODE_HAS_EDGE_CHILD_SELECTOR;
|
||||||
pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_28 =
|
pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
|
_bindgen_ty_91::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
|
||||||
pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_28 =
|
pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_ALL_SELECTOR_FLAGS;
|
_bindgen_ty_91::NODE_ALL_SELECTOR_FLAGS;
|
||||||
pub const NODE_NEEDS_FRAME: root::_bindgen_ty_28 =
|
pub const NODE_NEEDS_FRAME: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_NEEDS_FRAME;
|
_bindgen_ty_91::NODE_NEEDS_FRAME;
|
||||||
pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_28 =
|
pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_DESCENDANTS_NEED_FRAMES;
|
_bindgen_ty_91::NODE_DESCENDANTS_NEED_FRAMES;
|
||||||
pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_28 =
|
pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_HAS_ACCESSKEY;
|
_bindgen_ty_91::NODE_HAS_ACCESSKEY;
|
||||||
pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_28 =
|
pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_HAS_DIRECTION_RTL;
|
_bindgen_ty_91::NODE_HAS_DIRECTION_RTL;
|
||||||
pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_28 =
|
pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_HAS_DIRECTION_LTR;
|
_bindgen_ty_91::NODE_HAS_DIRECTION_LTR;
|
||||||
pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_28 =
|
pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_ALL_DIRECTION_FLAGS;
|
_bindgen_ty_91::NODE_ALL_DIRECTION_FLAGS;
|
||||||
pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_28 =
|
pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_CHROME_ONLY_ACCESS;
|
_bindgen_ty_91::NODE_CHROME_ONLY_ACCESS;
|
||||||
pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_28 =
|
pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
|
_bindgen_ty_91::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
|
||||||
pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_28 =
|
pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_1;
|
_bindgen_ty_91::NODE_SHARED_RESTYLE_BIT_1;
|
||||||
pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_28 =
|
pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_2;
|
_bindgen_ty_91::NODE_SHARED_RESTYLE_BIT_2;
|
||||||
pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_28 =
|
pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_1;
|
_bindgen_ty_91::NODE_SHARED_RESTYLE_BIT_1;
|
||||||
pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_28 =
|
pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_91 =
|
||||||
_bindgen_ty_28::NODE_TYPE_SPECIFIC_BITS_OFFSET;
|
_bindgen_ty_91::NODE_TYPE_SPECIFIC_BITS_OFFSET;
|
||||||
#[repr(u32)]
|
#[repr(u32)]
|
||||||
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
|
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
|
||||||
pub enum _bindgen_ty_28 {
|
pub enum _bindgen_ty_91 {
|
||||||
NODE_HAS_LISTENERMANAGER = 4,
|
NODE_HAS_LISTENERMANAGER = 4,
|
||||||
NODE_HAS_PROPERTIES = 8,
|
NODE_HAS_PROPERTIES = 8,
|
||||||
NODE_IS_ANONYMOUS_ROOT = 16,
|
NODE_IS_ANONYMOUS_ROOT = 16,
|
||||||
|
@ -21192,7 +21131,7 @@ pub mod root {
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub struct nsStyleDisplay {
|
pub struct nsStyleDisplay {
|
||||||
pub mBinding: root::RefPtr<root::mozilla::css::URLValue>,
|
pub mBinding: root::BindingHolder,
|
||||||
pub mDisplay: root::mozilla::StyleDisplay,
|
pub mDisplay: root::mozilla::StyleDisplay,
|
||||||
pub mOriginalDisplay: root::mozilla::StyleDisplay,
|
pub mOriginalDisplay: root::mozilla::StyleDisplay,
|
||||||
pub mContain: u8,
|
pub mContain: u8,
|
||||||
|
@ -24153,6 +24092,23 @@ pub mod root {
|
||||||
}
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
|
pub struct BindingHolder {
|
||||||
|
pub mPtr: root::RefPtr<root::mozilla::css::URLValue>,
|
||||||
|
}
|
||||||
|
#[test]
|
||||||
|
fn bindgen_test_layout_BindingHolder() {
|
||||||
|
assert_eq!(::std::mem::size_of::<BindingHolder>() , 8usize , concat !
|
||||||
|
( "Size of: " , stringify ! ( BindingHolder ) ));
|
||||||
|
assert_eq! (::std::mem::align_of::<BindingHolder>() , 8usize , concat
|
||||||
|
! ( "Alignment of " , stringify ! ( BindingHolder ) ));
|
||||||
|
assert_eq! (unsafe {
|
||||||
|
& ( * ( 0 as * const BindingHolder ) ) . mPtr as * const _
|
||||||
|
as usize } , 0usize , concat ! (
|
||||||
|
"Alignment of field: " , stringify ! ( BindingHolder ) ,
|
||||||
|
"::" , stringify ! ( mPtr ) ));
|
||||||
|
}
|
||||||
|
#[repr(C)]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct nsStyleTable {
|
pub struct nsStyleTable {
|
||||||
pub mLayoutStrategy: u8,
|
pub mLayoutStrategy: u8,
|
||||||
pub mSpan: i32,
|
pub mSpan: i32,
|
||||||
|
|
|
@ -156,7 +156,7 @@ impl ComputedValues {
|
||||||
|
|
||||||
#[allow(non_snake_case)]
|
#[allow(non_snake_case)]
|
||||||
pub fn has_moz_binding(&self) -> bool {
|
pub fn has_moz_binding(&self) -> bool {
|
||||||
!self.get_box().gecko.mBinding.mRawPtr.is_null()
|
!self.get_box().gecko.mBinding.mPtr.mRawPtr.is_null()
|
||||||
}
|
}
|
||||||
|
|
||||||
// FIXME(bholley): Implement this properly.
|
// FIXME(bholley): Implement this properly.
|
||||||
|
@ -507,20 +507,13 @@ fn color_to_nscolor_zero_currentcolor(color: Color) -> structs::nscolor {
|
||||||
% endif
|
% endif
|
||||||
</%def>
|
</%def>
|
||||||
|
|
||||||
<%def name="impl_css_url(ident, gecko_ffi_name, need_clone=False, only_resolved=False)">
|
<%def name="impl_css_url(ident, gecko_ffi_name, need_clone=False)">
|
||||||
#[allow(non_snake_case)]
|
#[allow(non_snake_case)]
|
||||||
pub fn set_${ident}(&mut self, v: longhands::${ident}::computed_value::T) {
|
pub fn set_${ident}(&mut self, v: longhands::${ident}::computed_value::T) {
|
||||||
use gecko_bindings::sugar::refptr::RefPtr;
|
use gecko_bindings::sugar::refptr::RefPtr;
|
||||||
match v {
|
match v {
|
||||||
Either::First(url) => {
|
Either::First(url) => {
|
||||||
let refptr = unsafe {
|
let refptr = unsafe {
|
||||||
% if only_resolved:
|
|
||||||
// -moz-binding can't handle relative URIs
|
|
||||||
if !url.has_resolved() {
|
|
||||||
self.gecko.${gecko_ffi_name}.clear();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
% endif
|
|
||||||
let ptr = bindings::Gecko_NewURLValue(url.for_ffi());
|
let ptr = bindings::Gecko_NewURLValue(url.for_ffi());
|
||||||
if ptr.is_null() {
|
if ptr.is_null() {
|
||||||
self.gecko.${gecko_ffi_name}.clear();
|
self.gecko.${gecko_ffi_name}.clear();
|
||||||
|
@ -1632,7 +1625,7 @@ fn static_assert() {
|
||||||
longhands::scroll_snap_coordinate::computed_value::T(vec)
|
longhands::scroll_snap_coordinate::computed_value::T(vec)
|
||||||
}
|
}
|
||||||
|
|
||||||
${impl_css_url('_moz_binding', 'mBinding', only_resolved=True)}
|
${impl_css_url('_moz_binding', 'mBinding.mPtr')}
|
||||||
|
|
||||||
<%def name="transform_function_arm(name, keyword, items)">
|
<%def name="transform_function_arm(name, keyword, items)">
|
||||||
<%
|
<%
|
||||||
|
|
|
@ -150,11 +150,6 @@ impl SpecifiedUrl {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Check if it has a resolved URI
|
|
||||||
pub fn has_resolved(&self) -> bool {
|
|
||||||
self.resolved.is_some()
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Creates an already specified url value from an already resolved URL
|
/// Creates an already specified url value from an already resolved URL
|
||||||
/// for insertion in the cascade.
|
/// for insertion in the cascade.
|
||||||
pub fn for_cascade(url: ServoUrl, extra_data: UrlExtraData) -> Self {
|
pub fn for_cascade(url: ServoUrl, extra_data: UrlExtraData) -> Self {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue