Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use array instead of linked list for -moz-border-*-colors #18574

Merged
merged 1 commit into from Sep 20, 2017
Merged
Changes from all commits
Commits
File filter...
Filter file types
Jump to…
Jump to file
Failed to load files.

Always

Just for now

@@ -71,7 +71,6 @@ use gecko_bindings::structs::StyleBasicShapeType;
use gecko_bindings::structs::StyleShapeSource;
use gecko_bindings::structs::StyleTransition;
use gecko_bindings::structs::gfxFontFeatureValueSet;
use gecko_bindings::structs::nsBorderColors;
use gecko_bindings::structs::nsCSSCounterStyleRule;
use gecko_bindings::structs::nsCSSFontFaceRule;
use gecko_bindings::structs::nsCSSKeyword;
@@ -876,22 +875,10 @@ extern "C" {
extern "C" {
pub fn Gecko_EnsureMozBorderColors(aBorder: *mut nsStyleBorder);
}
extern "C" {
pub fn Gecko_ClearMozBorderColors(aBorder: *mut nsStyleBorder,
aSide: Side);
}
extern "C" {
pub fn Gecko_AppendMozBorderColors(aBorder: *mut nsStyleBorder,
aSide: Side, aColor: nscolor);
}
extern "C" {
pub fn Gecko_CopyMozBorderColors(aDest: *mut nsStyleBorder,
aSrc: *const nsStyleBorder, aSide: Side);
}
extern "C" {
pub fn Gecko_GetMozBorderColors(aBorder: *const nsStyleBorder,
aSide: Side) -> *const nsBorderColors;
}
extern "C" {
pub fn Gecko_FontFamilyList_Clear(aList: *mut FontFamilyList);
}
#[repr(C)]
#[derive(Debug)]
pub struct nsStyleBorder {
pub mBorderColors: *mut *mut root::nsBorderColors,
pub mBorderColors: root::mozilla::UniquePtr<root::nsBorderColors>,
pub mBorderRadius: root::nsStyleCorners,
pub mBorderImageSource: root::nsStyleImage,
pub mBorderImageSlice: root::nsStyleSides,
}
#[repr(C)]
#[derive(Debug)]
pub struct nsBorderColors {
pub mNext: *mut root::nsBorderColors,
pub mColor: root::nscolor,
}
#[test]
fn bindgen_test_layout_nsBorderColors() {
assert_eq!(::std::mem::size_of::<nsBorderColors>() , 16usize , concat
! ( "Size of: " , stringify ! ( nsBorderColors ) ));
assert_eq! (::std::mem::align_of::<nsBorderColors>() , 8usize , concat
! ( "Alignment of " , stringify ! ( nsBorderColors ) ));
assert_eq! (unsafe {
& ( * ( 0 as * const nsBorderColors ) ) . mNext as * const
_ as usize } , 0usize , concat ! (
"Alignment of field: " , stringify ! ( nsBorderColors ) ,
"::" , stringify ! ( mNext ) ));
assert_eq! (unsafe {
& ( * ( 0 as * const nsBorderColors ) ) . mColor as *
const _ as usize } , 8usize , concat ! (
"Alignment of field: " , stringify ! ( nsBorderColors ) ,
"::" , stringify ! ( mColor ) ));
}
#[repr(C)]
#[derive(Debug)]
pub struct nsCSSShadowItem {
pub mXOffset: root::nscoord,
pub mYOffset: root::nscoord,
"Alignment of field: " , stringify ! ( nsCSSShadowArray )
, "::" , stringify ! ( mArray ) ));
}
#[repr(C)]
#[derive(Debug)]
pub struct nsBorderColors {
pub mColors: [root::nsTArray<::std::os::raw::c_uint>; 4usize],
}
#[test]
fn bindgen_test_layout_nsBorderColors() {
assert_eq!(::std::mem::size_of::<nsBorderColors>() , 32usize , concat
! ( "Size of: " , stringify ! ( nsBorderColors ) ));
assert_eq! (::std::mem::align_of::<nsBorderColors>() , 8usize , concat
! ( "Alignment of " , stringify ! ( nsBorderColors ) ));
assert_eq! (unsafe {
& ( * ( 0 as * const nsBorderColors ) ) . mColors as *
const _ as usize } , 0usize , concat ! (
"Alignment of field: " , stringify ! ( nsBorderColors ) ,
"::" , stringify ! ( mColors ) ));
}
/// An object that allows sharing of arrays that store 'quotes' property
/// values. This is particularly important for inheritance, where we want
/// to share the same 'quotes' value with a parent style context.
root::RefPtr<root::nsCSSValueSharedList> ) ));
}
#[test]
fn __bindgen_test_layout_UniquePtr_open0_nsBorderColors_DefaultDelete_open1_nsBorderColors_close1_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsBorderColors>>()
, 8usize , concat ! (
"Size of template specialization: " , stringify ! (
root::mozilla::UniquePtr<root::nsBorderColors> ) ));
assert_eq!(::std::mem::align_of::<root::mozilla::UniquePtr<root::nsBorderColors>>()
, 8usize , concat ! (
"Alignment of template specialization: " , stringify ! (
root::mozilla::UniquePtr<root::nsBorderColors> ) ));
}
#[test]
fn __bindgen_test_layout_DefaultDelete_open0_nsBorderColors_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete>() ,
1usize , concat ! (
"Size of template specialization: " , stringify ! (
root::mozilla::DefaultDelete ) ));
assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete>() ,
1usize , concat ! (
"Alignment of template specialization: " , stringify ! (
root::mozilla::DefaultDelete ) ));
}
#[test]
fn __bindgen_test_layout_nsTArray_open0_nsStyleFilter_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsStyleFilter>>()
, 8usize , concat ! (
root::nsTArray<::nsstring::nsStringRepr> ) ));
}
#[test]
fn __bindgen_test_layout_nsTString_open0_char16_t_close0_instantiation_2() {
assert_eq!(::std::mem::size_of::<::nsstring::nsStringRepr>() , 16usize ,
concat ! (
"Size of template specialization: " , stringify ! (
::nsstring::nsStringRepr ) ));
assert_eq!(::std::mem::align_of::<::nsstring::nsStringRepr>() , 8usize ,
concat ! (
"Alignment of template specialization: " , stringify ! (
::nsstring::nsStringRepr ) ));
}
#[test]
fn __bindgen_test_layout_nsTArray_open0__bindgen_ty_id_202536_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::mozilla::StyleSheet>>()
, 8usize , concat ! (
root::nsTArray<::nsstring::nsStringRepr> ) ));
}
#[test]
fn __bindgen_test_layout_nsTString_open0_char16_t_close0_instantiation_3() {
assert_eq!(::std::mem::size_of::<::nsstring::nsStringRepr>() , 16usize ,
concat ! (
"Size of template specialization: " , stringify ! (
::nsstring::nsStringRepr ) ));
assert_eq!(::std::mem::align_of::<::nsstring::nsStringRepr>() , 8usize ,
concat ! (
"Alignment of template specialization: " , stringify ! (
::nsstring::nsStringRepr ) ));
}
#[test]
fn __bindgen_test_layout_nsTArray_open0__bindgen_ty_id_213307_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::mozilla::StyleSheet>>()
, 8usize , concat ! (
));
}
#[test]
fn __bindgen_test_layout_nsTArray_open0_unsigned_int_close0_instantiation_5() {
assert_eq!(::std::mem::size_of::<root::nsTArray<::std::os::raw::c_uint>>()
, 8usize , concat ! (
"Size of template specialization: " , stringify ! (
root::nsTArray<::std::os::raw::c_uint> ) ));
assert_eq!(::std::mem::align_of::<root::nsTArray<::std::os::raw::c_uint>>()
, 8usize , concat ! (
"Alignment of template specialization: " , stringify ! (
root::nsTArray<::std::os::raw::c_uint> ) ));
}
#[test]
fn __bindgen_test_layout_nsTArray_open0_pair_open1_nsString_nsString_close1_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::nsTArray<root::std::pair<::nsstring::nsStringRepr,
::nsstring::nsStringRepr>>>()
#[repr(C)]
#[derive(Debug)]
pub struct nsStyleBorder {
pub mBorderColors: *mut *mut root::nsBorderColors,
pub mBorderColors: root::mozilla::UniquePtr<root::nsBorderColors>,
pub mBorderRadius: root::nsStyleCorners,
pub mBorderImageSource: root::nsStyleImage,
pub mBorderImageSlice: root::nsStyleSides,
}
#[repr(C)]
#[derive(Debug)]
pub struct nsBorderColors {
pub mNext: *mut root::nsBorderColors,
pub mColor: root::nscolor,
}
#[test]
fn bindgen_test_layout_nsBorderColors() {
assert_eq!(::std::mem::size_of::<nsBorderColors>() , 16usize , concat
! ( "Size of: " , stringify ! ( nsBorderColors ) ));
assert_eq! (::std::mem::align_of::<nsBorderColors>() , 8usize , concat
! ( "Alignment of " , stringify ! ( nsBorderColors ) ));
assert_eq! (unsafe {
& ( * ( 0 as * const nsBorderColors ) ) . mNext as * const
_ as usize } , 0usize , concat ! (
"Alignment of field: " , stringify ! ( nsBorderColors ) ,
"::" , stringify ! ( mNext ) ));
assert_eq! (unsafe {
& ( * ( 0 as * const nsBorderColors ) ) . mColor as *
const _ as usize } , 8usize , concat ! (
"Alignment of field: " , stringify ! ( nsBorderColors ) ,
"::" , stringify ! ( mColor ) ));
}
#[repr(C)]
#[derive(Debug)]
pub struct nsCSSShadowItem {
pub mXOffset: root::nscoord,
pub mYOffset: root::nscoord,
"Alignment of field: " , stringify ! ( nsCSSShadowArray )
, "::" , stringify ! ( mArray ) ));
}
#[repr(C)]
#[derive(Debug)]
pub struct nsBorderColors {
pub mColors: [root::nsTArray<::std::os::raw::c_uint>; 4usize],
}
#[test]
fn bindgen_test_layout_nsBorderColors() {
assert_eq!(::std::mem::size_of::<nsBorderColors>() , 32usize , concat
! ( "Size of: " , stringify ! ( nsBorderColors ) ));
assert_eq! (::std::mem::align_of::<nsBorderColors>() , 8usize , concat
! ( "Alignment of " , stringify ! ( nsBorderColors ) ));
assert_eq! (unsafe {
& ( * ( 0 as * const nsBorderColors ) ) . mColors as *
const _ as usize } , 0usize , concat ! (
"Alignment of field: " , stringify ! ( nsBorderColors ) ,
"::" , stringify ! ( mColors ) ));
}
/// An object that allows sharing of arrays that store 'quotes' property
/// values. This is particularly important for inheritance, where we want
/// to share the same 'quotes' value with a parent style context.
root::RefPtr<root::nsCSSValueSharedList> ) ));
}
#[test]
fn __bindgen_test_layout_UniquePtr_open0_nsBorderColors_DefaultDelete_open1_nsBorderColors_close1_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsBorderColors>>()
, 8usize , concat ! (
"Size of template specialization: " , stringify ! (
root::mozilla::UniquePtr<root::nsBorderColors> ) ));
assert_eq!(::std::mem::align_of::<root::mozilla::UniquePtr<root::nsBorderColors>>()
, 8usize , concat ! (
"Alignment of template specialization: " , stringify ! (
root::mozilla::UniquePtr<root::nsBorderColors> ) ));
}
#[test]
fn __bindgen_test_layout_DefaultDelete_open0_nsBorderColors_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete>() ,
1usize , concat ! (
"Size of template specialization: " , stringify ! (
root::mozilla::DefaultDelete ) ));
assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete>() ,
1usize , concat ! (
"Alignment of template specialization: " , stringify ! (
root::mozilla::DefaultDelete ) ));
}
#[test]
fn __bindgen_test_layout_nsTArray_open0_nsStyleFilter_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsStyleFilter>>()
, 8usize , concat ! (
root::nsTArray<::nsstring::nsStringRepr> ) ));
}
#[test]
fn __bindgen_test_layout_nsTString_open0_char16_t_close0_instantiation_2() {
assert_eq!(::std::mem::size_of::<::nsstring::nsStringRepr>() , 16usize ,
concat ! (
"Size of template specialization: " , stringify ! (
::nsstring::nsStringRepr ) ));
assert_eq!(::std::mem::align_of::<::nsstring::nsStringRepr>() , 8usize ,
concat ! (
"Alignment of template specialization: " , stringify ! (
::nsstring::nsStringRepr ) ));
}
#[test]
fn __bindgen_test_layout_nsTArray_open0__bindgen_ty_id_200130_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::mozilla::StyleSheet>>()
, 8usize , concat ! (
root::nsTArray<::nsstring::nsStringRepr> ) ));
}
#[test]
fn __bindgen_test_layout_nsTString_open0_char16_t_close0_instantiation_3() {
assert_eq!(::std::mem::size_of::<::nsstring::nsStringRepr>() , 16usize ,
concat ! (
"Size of template specialization: " , stringify ! (
::nsstring::nsStringRepr ) ));
assert_eq!(::std::mem::align_of::<::nsstring::nsStringRepr>() , 8usize ,
concat ! (
"Alignment of template specialization: " , stringify ! (
::nsstring::nsStringRepr ) ));
}
#[test]
fn __bindgen_test_layout_nsTArray_open0__bindgen_ty_id_210857_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::mozilla::StyleSheet>>()
, 8usize , concat ! (
));
}
#[test]
fn __bindgen_test_layout_nsTArray_open0_unsigned_int_close0_instantiation_5() {
assert_eq!(::std::mem::size_of::<root::nsTArray<::std::os::raw::c_uint>>()
, 8usize , concat ! (
"Size of template specialization: " , stringify ! (
root::nsTArray<::std::os::raw::c_uint> ) ));
assert_eq!(::std::mem::align_of::<root::nsTArray<::std::os::raw::c_uint>>()
, 8usize , concat ! (
"Alignment of template specialization: " , stringify ! (
root::nsTArray<::std::os::raw::c_uint> ) ));
}
#[test]
fn __bindgen_test_layout_nsTArray_open0_pair_open1_nsString_nsString_close1_close0_instantiation() {
assert_eq!(::std::mem::size_of::<root::nsTArray<root::std::pair<::nsstring::nsStringRepr,
::nsstring::nsStringRepr>>>()
ProTip! Use n and p to navigate between commits in a pull request.
You can’t perform that action at this time.