diff options
-rw-r--r-- | components/style/build_gecko.rs | 1 | ||||
-rw-r--r-- | components/style/gecko_bindings/bindings.rs | 16 | ||||
-rw-r--r-- | components/style/gecko_bindings/structs_debug.rs | 312 | ||||
-rw-r--r-- | components/style/gecko_bindings/structs_release.rs | 312 | ||||
-rw-r--r-- | components/style/properties/gecko.mako.rs | 42 | ||||
-rw-r--r-- | components/style/properties/longhand/border.mako.rs | 124 | ||||
-rw-r--r-- | components/style/properties/shorthand/border.mako.rs | 22 |
7 files changed, 536 insertions, 293 deletions
diff --git a/components/style/build_gecko.rs b/components/style/build_gecko.rs index 92d512ee75c..00aac6d8526 100644 --- a/components/style/build_gecko.rs +++ b/components/style/build_gecko.rs @@ -624,6 +624,7 @@ mod bindings { .whitelisted_function("Gecko_.*"); let structs_types = [ "mozilla::css::URLValue", + "mozilla::Side", "RawGeckoAnimationPropertySegment", "RawGeckoComputedTiming", "RawGeckoDocument", diff --git a/components/style/gecko_bindings/bindings.rs b/components/style/gecko_bindings/bindings.rs index e855aa2819e..c663df92012 100644 --- a/components/style/gecko_bindings/bindings.rs +++ b/components/style/gecko_bindings/bindings.rs @@ -4,6 +4,7 @@ pub use nsstring::{nsACString, nsAString, nsString}; type nsACString_internal = nsACString; type nsAString_internal = nsAString; use gecko_bindings::structs::mozilla::css::URLValue; +use gecko_bindings::structs::mozilla::Side; use gecko_bindings::structs::RawGeckoAnimationPropertySegment; use gecko_bindings::structs::RawGeckoComputedTiming; use gecko_bindings::structs::RawGeckoDocument; @@ -720,6 +721,21 @@ extern "C" { aLength: u32) -> bool; } 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_FontFamilyList_Clear(aList: *mut FontFamilyList); } extern "C" { diff --git a/components/style/gecko_bindings/structs_debug.rs b/components/style/gecko_bindings/structs_debug.rs index 56899329401..5f3b90654b3 100644 --- a/components/style/gecko_bindings/structs_debug.rs +++ b/components/style/gecko_bindings/structs_debug.rs @@ -4010,26 +4010,27 @@ pub mod root { mozHandlerBlocked = 59, mozHandlerCrashed = 60, mozMathIncrementScriptLevel = 61, - required = 62, - optional = 63, - valid = 64, - invalid = 65, - inRange = 66, - outOfRange = 67, - defaultPseudo = 68, - placeholderShown = 69, - mozReadOnly = 70, - mozReadWrite = 71, - mozSubmitInvalid = 72, - mozUIInvalid = 73, - mozUIValid = 74, - mozMeterOptimum = 75, - mozMeterSubOptimum = 76, - mozMeterSubSubOptimum = 77, - mozPlaceholder = 78, - Count = 79, - NotPseudo = 80, - MAX = 81, + mozAutofill = 62, + required = 63, + optional = 64, + valid = 65, + invalid = 66, + inRange = 67, + outOfRange = 68, + defaultPseudo = 69, + placeholderShown = 70, + mozReadOnly = 71, + mozReadWrite = 72, + mozSubmitInvalid = 73, + mozUIInvalid = 74, + mozUIValid = 75, + mozMeterOptimum = 76, + mozMeterSubOptimum = 77, + mozMeterSubSubOptimum = 78, + mozPlaceholder = 79, + Count = 80, + NotPseudo = 81, + MAX = 82, } pub const SERVO_PREF_ENABLED_align_content: bool = false; pub const SERVO_PREF_ENABLED_align_items: bool = false; @@ -4660,6 +4661,24 @@ pub mod root { pub type IntRect = [u32; 4usize]; pub type Matrix4x4 = [u32; 16usize]; #[repr(C)] + #[derive(Debug, Copy)] + pub struct FontVariation { + pub _bindgen_opaque_blob: [u32; 2usize], + } + #[test] + fn bindgen_test_layout_FontVariation() { + assert_eq!(::std::mem::size_of::<FontVariation>() , 8usize , + concat ! ( + "Size of: " , stringify ! ( FontVariation ) )); + assert_eq! (::std::mem::align_of::<FontVariation>() , 4usize , + concat ! ( + "Alignment of " , stringify ! ( FontVariation ) + )); + } + impl Clone for FontVariation { + fn clone(&self) -> Self { *self } + } + #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct SourceSurface([u8; 0]); #[repr(C)] @@ -9319,6 +9338,24 @@ pub mod root { } pub type FILE = root::_IO_FILE; pub type va_list = root::__builtin_va_list; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct InfallibleAllocPolicy { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_InfallibleAllocPolicy() { + assert_eq!(::std::mem::size_of::<InfallibleAllocPolicy>() , 1usize , + concat ! ( + "Size of: " , stringify ! ( InfallibleAllocPolicy ) )); + assert_eq! (::std::mem::align_of::<InfallibleAllocPolicy>() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( InfallibleAllocPolicy ) + )); + } + impl Clone for InfallibleAllocPolicy { + fn clone(&self) -> Self { *self } + } /** * MozRefCountType is Mozilla's reference count type. * @@ -9611,6 +9648,7 @@ pub mod root { = 2152924160, NS_ERROR_DOM_INVALID_ACCESS_XHR_TIMEOUT_AND_RESPONSETYPE_UNSUPPORTED_FOR_SYNC = 2152924161, + NS_ERROR_DOM_JS_DECODING_ERROR = 2152924162, NS_SUCCESS_DOM_NO_OPERATION = 5439489, NS_SUCCESS_DOM_SCRIPT_EVALUATION_THREW = 5439490, NS_SUCCESS_DOM_SCRIPT_EVALUATION_THREW_UNCATCHABLE = 5439491, @@ -12548,7 +12586,7 @@ pub mod root { pub mStyleAttrStyleSheet: root::RefPtr<root::nsHTMLCSSStyleSheet>, pub mImageTracker: root::RefPtr<root::mozilla::dom::ImageTracker>, pub mActivityObservers: root::nsAutoPtr<()>, - pub mLinksToUpdate: [u64; 6usize], + pub mLinksToUpdate: [u64; 3usize], pub mAnimationController: root::RefPtr<root::nsSMILAnimationController>, pub mPropertyTable: root::nsPropertyTable, pub mExtraPropertyTables: root::nsTArray<root::nsAutoPtr<root::nsPropertyTable>>, @@ -12612,7 +12650,7 @@ pub mod root { pub mXPathEvaluator: root::RefPtr<root::mozilla::dom::XPathEvaluator>, pub mAnonymousContents: root::nsTArray<root::RefPtr<root::mozilla::dom::AnonymousContent>>, pub mBlockDOMContentLoaded: u32, - pub mDOMMediaQueryLists: root::PRCList, + pub mDOMMediaQueryLists: root::mozilla::LinkedList<root::mozilla::dom::MediaQueryList>, pub mUseCounters: [u64; 2usize], pub mChildDocumentUseCounters: [u64; 2usize], pub mNotifiedPageForUseCounter: [u64; 2usize], @@ -12896,9 +12934,10 @@ pub mod root { #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct nsIDocument_FrameRequest([u8; 0]); + pub const nsIDocument_kSegmentSize: usize = 128; #[test] fn bindgen_test_layout_nsIDocument() { - assert_eq!(::std::mem::size_of::<nsIDocument>() , 912usize , concat ! + assert_eq!(::std::mem::size_of::<nsIDocument>() , 896usize , concat ! ( "Size of: " , stringify ! ( nsIDocument ) )); assert_eq! (::std::mem::align_of::<nsIDocument>() , 8usize , concat ! ( "Alignment of " , stringify ! ( nsIDocument ) )); @@ -16987,33 +17026,6 @@ pub mod root { fn clone(&self) -> Self { *self } } #[repr(C)] - #[derive(Debug, Copy)] - pub struct PRCListStr { - pub next: *mut root::PRCList, - pub prev: *mut root::PRCList, - } - #[test] - fn bindgen_test_layout_PRCListStr() { - assert_eq!(::std::mem::size_of::<PRCListStr>() , 16usize , concat ! ( - "Size of: " , stringify ! ( PRCListStr ) )); - assert_eq! (::std::mem::align_of::<PRCListStr>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( PRCListStr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PRCListStr ) ) . next as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( PRCListStr ) , "::" - , stringify ! ( next ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PRCListStr ) ) . prev as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( PRCListStr ) , "::" - , stringify ! ( prev ) )); - } - impl Clone for PRCListStr { - fn clone(&self) -> Self { *self } - } - pub type PRCList = root::PRCListStr; - #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gfxUserFontSet([u8; 0]); #[repr(C)] @@ -17076,6 +17088,21 @@ pub mod root { CORS_ANONYMOUS = 2, CORS_USE_CREDENTIALS = 3, } + pub const imgIRequest_CATEGORY_FRAME_INIT: root::imgIRequest__bindgen_ty_3 + = + imgIRequest__bindgen_ty_3::CATEGORY_FRAME_INIT; + pub const imgIRequest_CATEGORY_SIZE_QUERY: root::imgIRequest__bindgen_ty_3 + = + imgIRequest__bindgen_ty_3::CATEGORY_SIZE_QUERY; + pub const imgIRequest_CATEGORY_DISPLAY: root::imgIRequest__bindgen_ty_3 = + imgIRequest__bindgen_ty_3::CATEGORY_DISPLAY; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum imgIRequest__bindgen_ty_3 { + CATEGORY_FRAME_INIT = 1, + CATEGORY_SIZE_QUERY = 2, + CATEGORY_DISPLAY = 4, + } #[test] fn bindgen_test_layout_imgIRequest() { assert_eq!(::std::mem::size_of::<imgIRequest>() , 8usize , concat ! ( @@ -17725,33 +17752,7 @@ pub mod root { gfxFontFeatureValueSet ) , "::" , stringify ! ( mFontFeatureValues ) )); } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct gfxFontVariation { - pub mTag: u32, - pub mValue: f32, - } - #[test] - fn bindgen_test_layout_gfxFontVariation() { - assert_eq!(::std::mem::size_of::<gfxFontVariation>() , 8usize , concat - ! ( "Size of: " , stringify ! ( gfxFontVariation ) )); - assert_eq! (::std::mem::align_of::<gfxFontVariation>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( gfxFontVariation ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontVariation ) ) . mTag as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxFontVariation ) - , "::" , stringify ! ( mTag ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontVariation ) ) . mValue as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxFontVariation ) - , "::" , stringify ! ( mValue ) )); - } - impl Clone for gfxFontVariation { - fn clone(&self) -> Self { *self } - } + pub type gfxFontVariation = root::mozilla::gfx::FontVariation; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gfxFontStyle([u8; 0]); @@ -17786,7 +17787,7 @@ pub mod root { pub alternateValues: root::nsTArray<root::gfxAlternateValue>, pub featureValueLookup: root::RefPtr<root::gfxFontFeatureValueSet>, pub fontFeatureSettings: root::nsTArray<root::gfxFontFeature>, - pub fontVariationSettings: root::nsTArray<root::gfxFontVariation>, + pub fontVariationSettings: root::nsTArray<root::mozilla::gfx::FontVariation>, pub languageOverride: u32, } #[test] @@ -23514,6 +23515,7 @@ pub mod root { pub mCORSMode: i32, pub mReferrerPolicy: root::imgRequest_ReferrerPolicy, pub mImageErrorCode: root::nsresult, + pub mBoostCategoriesRequested: u32, pub mMutex: root::mozilla::Mutex, pub mProgressTracker: root::RefPtr<root::mozilla::image::ProgressTracker>, pub mImage: root::RefPtr<root::mozilla::image::Image>, @@ -28166,6 +28168,19 @@ pub mod root { } #[test] fn __bindgen_test_layout_template_42() { + assert_eq!(::std::mem::size_of::<root::mozilla::LinkedList<root::mozilla::dom::MediaQueryList>>() + , 24usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::LinkedList<root::mozilla::dom::MediaQueryList> + ) )); + assert_eq!(::std::mem::align_of::<root::mozilla::LinkedList<root::mozilla::dom::MediaQueryList>>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::LinkedList<root::mozilla::dom::MediaQueryList> + ) )); + } + #[test] + fn __bindgen_test_layout_template_43() { assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::Element>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28176,7 +28191,7 @@ pub mod root { root::RefPtr<root::mozilla::dom::Element> ) )); } #[test] - fn __bindgen_test_layout_template_43() { + fn __bindgen_test_layout_template_44() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::Element>>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28189,7 +28204,7 @@ pub mod root { )); } #[test] - fn __bindgen_test_layout_template_44() { + fn __bindgen_test_layout_template_45() { assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIObserver>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28200,7 +28215,7 @@ pub mod root { root::nsCOMPtr<root::nsIObserver> ) )); } #[test] - fn __bindgen_test_layout_template_45() { + fn __bindgen_test_layout_template_46() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsCOMPtr<root::nsIObserver>>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28211,7 +28226,7 @@ pub mod root { root::nsTArray<root::nsCOMPtr<root::nsIObserver>> ) )); } #[test] - fn __bindgen_test_layout_template_46() { + fn __bindgen_test_layout_template_47() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIDocument>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28222,7 +28237,7 @@ pub mod root { root::already_AddRefed<root::nsIDocument> ) )); } #[test] - fn __bindgen_test_layout_template_47() { + fn __bindgen_test_layout_template_48() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsContentList>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28233,7 +28248,7 @@ pub mod root { root::already_AddRefed<root::nsContentList> ) )); } #[test] - fn __bindgen_test_layout_template_48() { + fn __bindgen_test_layout_template_49() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsINode>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28244,7 +28259,18 @@ pub mod root { root::already_AddRefed<root::nsINode> ) )); } #[test] - fn __bindgen_test_layout_template_49() { + fn __bindgen_test_layout_template_50() { + assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::mozilla::dom::Link>>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsCOMPtr<root::mozilla::dom::Link> ) )); + assert_eq!(::std::mem::align_of::<root::nsCOMPtr<root::mozilla::dom::Link>>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCOMPtr<root::mozilla::dom::Link> ) )); + } + #[test] + fn __bindgen_test_layout_template_51() { assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIWeakReference>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28255,7 +28281,7 @@ pub mod root { root::nsCOMPtr<root::nsIWeakReference> ) )); } #[test] - fn __bindgen_test_layout_template_50() { + fn __bindgen_test_layout_template_52() { assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -28264,7 +28290,7 @@ pub mod root { u64 ) )); } #[test] - fn __bindgen_test_layout_template_51() { + fn __bindgen_test_layout_template_53() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsRect>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28275,7 +28301,7 @@ pub mod root { root::nsTArray<root::nsRect> ) )); } #[test] - fn __bindgen_test_layout_template_52() { + fn __bindgen_test_layout_template_54() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsBidi>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28286,7 +28312,7 @@ pub mod root { root::mozilla::DefaultDelete<root::nsBidi> ) )); } #[test] - fn __bindgen_test_layout_template_53() { + fn __bindgen_test_layout_template_55() { assert_eq!(::std::mem::size_of::<[u64; 29usize]>() , 232usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28297,7 +28323,7 @@ pub mod root { [u64; 29usize] ) )); } #[test] - fn __bindgen_test_layout_template_54() { + fn __bindgen_test_layout_template_56() { assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::nsIContent>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28308,7 +28334,7 @@ pub mod root { root::nsTArray<*mut root::nsIContent> ) )); } #[test] - fn __bindgen_test_layout_template_55() { + fn __bindgen_test_layout_template_57() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::mozilla::dom::CSSValue>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28319,7 +28345,7 @@ pub mod root { root::already_AddRefed<root::mozilla::dom::CSSValue> ) )); } #[test] - fn __bindgen_test_layout_template_56() { + fn __bindgen_test_layout_template_58() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::mozilla::dom::TimeoutManager>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28332,7 +28358,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_57() { + fn __bindgen_test_layout_template_59() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsISupports>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28343,7 +28369,7 @@ pub mod root { root::already_AddRefed<root::nsISupports> ) )); } #[test] - fn __bindgen_test_layout_template_58() { + fn __bindgen_test_layout_template_60() { assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIRunnable>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28354,7 +28380,7 @@ pub mod root { root::nsCOMPtr<root::nsIRunnable> ) )); } #[test] - fn __bindgen_test_layout_template_59() { + fn __bindgen_test_layout_template_61() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIContent>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28365,7 +28391,7 @@ pub mod root { root::already_AddRefed<root::nsIContent> ) )); } #[test] - fn __bindgen_test_layout_template_60() { + fn __bindgen_test_layout_template_62() { assert_eq!(::std::mem::size_of::<[u64; 6usize]>() , 48usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28376,7 +28402,7 @@ pub mod root { [u64; 6usize] ) )); } #[test] - fn __bindgen_test_layout_template_61() { + fn __bindgen_test_layout_template_63() { assert_eq!(::std::mem::size_of::<root::mozilla::OwningNonNull<root::nsINode>>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28387,7 +28413,7 @@ pub mod root { root::mozilla::OwningNonNull<root::nsINode> ) )); } #[test] - fn __bindgen_test_layout_template_62() { + fn __bindgen_test_layout_template_64() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28398,7 +28424,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_63() { + fn __bindgen_test_layout_template_65() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28409,7 +28435,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_64() { + fn __bindgen_test_layout_template_66() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28420,7 +28446,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_65() { + fn __bindgen_test_layout_template_67() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28431,7 +28457,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_66() { + fn __bindgen_test_layout_template_68() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28442,7 +28468,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_67() { + fn __bindgen_test_layout_template_69() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28453,7 +28479,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_68() { + fn __bindgen_test_layout_template_70() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28464,7 +28490,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_69() { + fn __bindgen_test_layout_template_71() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28475,7 +28501,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_70() { + fn __bindgen_test_layout_template_72() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28486,7 +28512,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_71() { + fn __bindgen_test_layout_template_73() { assert_eq!(::std::mem::size_of::<u32>() , 4usize , concat ! ( "Size of template specialization: " , stringify ! ( u32 ) )); @@ -28495,7 +28521,7 @@ pub mod root { u32 ) )); } #[test] - fn __bindgen_test_layout_template_72() { + fn __bindgen_test_layout_template_74() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28506,7 +28532,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_73() { + fn __bindgen_test_layout_template_75() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28517,7 +28543,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_74() { + fn __bindgen_test_layout_template_76() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28528,7 +28554,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_75() { + fn __bindgen_test_layout_template_77() { assert_eq!(::std::mem::size_of::<root::nsTArray<f64>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28539,7 +28565,7 @@ pub mod root { root::nsTArray<f64> ) )); } #[test] - fn __bindgen_test_layout_template_76() { + fn __bindgen_test_layout_template_78() { assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28552,7 +28578,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_77() { + fn __bindgen_test_layout_template_79() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28565,7 +28591,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_78() { + fn __bindgen_test_layout_template_80() { assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::ProfilerBacktrace, root::ProfilerBacktraceDestructor>>() , 8usize , concat ! ( @@ -28582,7 +28608,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_79() { + fn __bindgen_test_layout_template_81() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::FontFamilyName>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28593,7 +28619,7 @@ pub mod root { root::nsTArray<root::mozilla::FontFamilyName> ) )); } #[test] - fn __bindgen_test_layout_template_80() { + fn __bindgen_test_layout_template_82() { assert_eq!(::std::mem::size_of::<root::nsTArray<::std::os::raw::c_uint>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28604,7 +28630,7 @@ pub mod root { root::nsTArray<::std::os::raw::c_uint> ) )); } #[test] - fn __bindgen_test_layout_template_81() { + fn __bindgen_test_layout_template_83() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::FramePropertyTable_PropertyValue>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28617,7 +28643,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_82() { + fn __bindgen_test_layout_template_84() { assert_eq!(::std::mem::size_of::<root::nsPtrHashKey<root::nsIFrame>>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28628,7 +28654,7 @@ pub mod root { root::nsPtrHashKey<root::nsIFrame> ) )); } #[test] - fn __bindgen_test_layout_template_83() { + fn __bindgen_test_layout_template_85() { assert_eq!(::std::mem::size_of::<[u64; 6usize]>() , 48usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28639,7 +28665,7 @@ pub mod root { [u64; 6usize] ) )); } #[test] - fn __bindgen_test_layout_template_84() { + fn __bindgen_test_layout_template_86() { assert_eq!(::std::mem::size_of::<root::mozilla::OwningNonNull<root::mozilla::EffectCompositor_AnimationStyleRuleProcessor>>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28652,7 +28678,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_85() { + fn __bindgen_test_layout_template_87() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::ProxyBehaviour>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28663,7 +28689,7 @@ pub mod root { root::mozilla::DefaultDelete<root::ProxyBehaviour> ) )); } #[test] - fn __bindgen_test_layout_template_86() { + fn __bindgen_test_layout_template_88() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::mozilla::URLExtraData>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28674,7 +28700,7 @@ pub mod root { root::already_AddRefed<root::mozilla::URLExtraData> ) )); } #[test] - fn __bindgen_test_layout_template_87() { + fn __bindgen_test_layout_template_89() { assert_eq!(::std::mem::size_of::<root::nsMainThreadPtrHolder<root::nsIURI>>() , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28685,7 +28711,7 @@ pub mod root { root::nsMainThreadPtrHolder<root::nsIURI> ) )); } #[test] - fn __bindgen_test_layout_template_88() { + fn __bindgen_test_layout_template_90() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsCSSValueList>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28696,7 +28722,7 @@ pub mod root { root::mozilla::DefaultDelete<root::nsCSSValueList> ) )); } #[test] - fn __bindgen_test_layout_template_89() { + fn __bindgen_test_layout_template_91() { assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsCSSValueList, root::mozilla::DefaultDelete<root::nsCSSValueList>>>() , 8usize , concat ! ( @@ -28713,7 +28739,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_90() { + fn __bindgen_test_layout_template_92() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsCSSValuePairList>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28726,7 +28752,7 @@ pub mod root { )); } #[test] - fn __bindgen_test_layout_template_91() { + fn __bindgen_test_layout_template_93() { assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsCSSValuePairList, root::mozilla::DefaultDelete<root::nsCSSValuePairList>>>() , 8usize , concat ! ( @@ -28743,7 +28769,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_92() { + fn __bindgen_test_layout_template_94() { assert_eq!(::std::mem::size_of::<[u64; 2usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28754,7 +28780,7 @@ pub mod root { [u64; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_93() { + fn __bindgen_test_layout_template_95() { assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -28763,7 +28789,7 @@ pub mod root { u64 ) )); } #[test] - fn __bindgen_test_layout_template_94() { + fn __bindgen_test_layout_template_96() { assert_eq!(::std::mem::size_of::<[u32; 3usize]>() , 12usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28774,7 +28800,7 @@ pub mod root { [u32; 3usize] ) )); } #[test] - fn __bindgen_test_layout_template_95() { + fn __bindgen_test_layout_template_97() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsStyleImageRequest>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28785,7 +28811,7 @@ pub mod root { root::already_AddRefed<root::nsStyleImageRequest> ) )); } #[test] - fn __bindgen_test_layout_template_96() { + fn __bindgen_test_layout_template_98() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsStyleSides>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28796,7 +28822,7 @@ pub mod root { root::mozilla::DefaultDelete<root::nsStyleSides> ) )); } #[test] - fn __bindgen_test_layout_template_97() { + fn __bindgen_test_layout_template_99() { assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsStyleSides, root::mozilla::DefaultDelete<root::nsStyleSides>>>() , 8usize , concat ! ( @@ -28813,7 +28839,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_98() { + fn __bindgen_test_layout_template_100() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::CachedBorderImageData>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28826,7 +28852,7 @@ pub mod root { )); } #[test] - fn __bindgen_test_layout_template_99() { + fn __bindgen_test_layout_template_101() { assert_eq!(::std::mem::size_of::<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>() , 32usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28837,7 +28863,7 @@ pub mod root { root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr> ) )); } #[test] - fn __bindgen_test_layout_template_100() { + fn __bindgen_test_layout_template_102() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>>() , 8usize , concat ! ( @@ -28852,7 +28878,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_101() { + fn __bindgen_test_layout_template_103() { assert_eq!(::std::mem::size_of::<[u64; 18usize]>() , 144usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28863,7 +28889,7 @@ pub mod root { [u64; 18usize] ) )); } #[test] - fn __bindgen_test_layout_template_102() { + fn __bindgen_test_layout_template_104() { assert_eq!(::std::mem::size_of::<root::mozilla::BaseTimeDuration<root::mozilla::StickyTimeDurationValueCalculator>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28876,7 +28902,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_103() { + fn __bindgen_test_layout_template_105() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::DisplayItemClip_RoundedRect>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28889,7 +28915,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_104() { + fn __bindgen_test_layout_template_106() { assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::DOMRect>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28900,7 +28926,7 @@ pub mod root { root::RefPtr<root::mozilla::dom::DOMRect> ) )); } #[test] - fn __bindgen_test_layout_template_105() { + fn __bindgen_test_layout_template_107() { assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -28909,7 +28935,7 @@ pub mod root { u64 ) )); } #[test] - fn __bindgen_test_layout_template_106() { + fn __bindgen_test_layout_template_108() { assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::mozilla::css::DocumentRule>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28920,7 +28946,7 @@ pub mod root { root::nsTArray<*mut root::mozilla::css::DocumentRule> ) )); } #[test] - fn __bindgen_test_layout_template_107() { + fn __bindgen_test_layout_template_109() { assert_eq!(::std::mem::size_of::<root::nsAutoPtr<root::nsMediaQuery>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( diff --git a/components/style/gecko_bindings/structs_release.rs b/components/style/gecko_bindings/structs_release.rs index f463825a2d4..9b3be9962bb 100644 --- a/components/style/gecko_bindings/structs_release.rs +++ b/components/style/gecko_bindings/structs_release.rs @@ -3962,26 +3962,27 @@ pub mod root { mozHandlerBlocked = 59, mozHandlerCrashed = 60, mozMathIncrementScriptLevel = 61, - required = 62, - optional = 63, - valid = 64, - invalid = 65, - inRange = 66, - outOfRange = 67, - defaultPseudo = 68, - placeholderShown = 69, - mozReadOnly = 70, - mozReadWrite = 71, - mozSubmitInvalid = 72, - mozUIInvalid = 73, - mozUIValid = 74, - mozMeterOptimum = 75, - mozMeterSubOptimum = 76, - mozMeterSubSubOptimum = 77, - mozPlaceholder = 78, - Count = 79, - NotPseudo = 80, - MAX = 81, + mozAutofill = 62, + required = 63, + optional = 64, + valid = 65, + invalid = 66, + inRange = 67, + outOfRange = 68, + defaultPseudo = 69, + placeholderShown = 70, + mozReadOnly = 71, + mozReadWrite = 72, + mozSubmitInvalid = 73, + mozUIInvalid = 74, + mozUIValid = 75, + mozMeterOptimum = 76, + mozMeterSubOptimum = 77, + mozMeterSubSubOptimum = 78, + mozPlaceholder = 79, + Count = 80, + NotPseudo = 81, + MAX = 82, } pub const SERVO_PREF_ENABLED_align_content: bool = false; pub const SERVO_PREF_ENABLED_align_items: bool = false; @@ -4611,6 +4612,24 @@ pub mod root { pub type IntRect = [u32; 4usize]; pub type Matrix4x4 = [u32; 16usize]; #[repr(C)] + #[derive(Debug, Copy)] + pub struct FontVariation { + pub _bindgen_opaque_blob: [u32; 2usize], + } + #[test] + fn bindgen_test_layout_FontVariation() { + assert_eq!(::std::mem::size_of::<FontVariation>() , 8usize , + concat ! ( + "Size of: " , stringify ! ( FontVariation ) )); + assert_eq! (::std::mem::align_of::<FontVariation>() , 4usize , + concat ! ( + "Alignment of " , stringify ! ( FontVariation ) + )); + } + impl Clone for FontVariation { + fn clone(&self) -> Self { *self } + } + #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct SourceSurface([u8; 0]); #[repr(C)] @@ -8922,6 +8941,24 @@ pub mod root { } } pub type va_list = root::__builtin_va_list; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct InfallibleAllocPolicy { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_InfallibleAllocPolicy() { + assert_eq!(::std::mem::size_of::<InfallibleAllocPolicy>() , 1usize , + concat ! ( + "Size of: " , stringify ! ( InfallibleAllocPolicy ) )); + assert_eq! (::std::mem::align_of::<InfallibleAllocPolicy>() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( InfallibleAllocPolicy ) + )); + } + impl Clone for InfallibleAllocPolicy { + fn clone(&self) -> Self { *self } + } /** * MozRefCountType is Mozilla's reference count type. * @@ -9214,6 +9251,7 @@ pub mod root { = 2152924160, NS_ERROR_DOM_INVALID_ACCESS_XHR_TIMEOUT_AND_RESPONSETYPE_UNSUPPORTED_FOR_SYNC = 2152924161, + NS_ERROR_DOM_JS_DECODING_ERROR = 2152924162, NS_SUCCESS_DOM_NO_OPERATION = 5439489, NS_SUCCESS_DOM_SCRIPT_EVALUATION_THREW = 5439490, NS_SUCCESS_DOM_SCRIPT_EVALUATION_THREW_UNCATCHABLE = 5439491, @@ -12083,7 +12121,7 @@ pub mod root { pub mStyleAttrStyleSheet: root::RefPtr<root::nsHTMLCSSStyleSheet>, pub mImageTracker: root::RefPtr<root::mozilla::dom::ImageTracker>, pub mActivityObservers: root::nsAutoPtr<()>, - pub mLinksToUpdate: [u64; 5usize], + pub mLinksToUpdate: [u64; 3usize], pub mAnimationController: root::RefPtr<root::nsSMILAnimationController>, pub mPropertyTable: root::nsPropertyTable, pub mExtraPropertyTables: root::nsTArray<root::nsAutoPtr<root::nsPropertyTable>>, @@ -12142,7 +12180,7 @@ pub mod root { pub mXPathEvaluator: root::RefPtr<root::mozilla::dom::XPathEvaluator>, pub mAnonymousContents: root::nsTArray<root::RefPtr<root::mozilla::dom::AnonymousContent>>, pub mBlockDOMContentLoaded: u32, - pub mDOMMediaQueryLists: root::PRCList, + pub mDOMMediaQueryLists: root::mozilla::LinkedList<root::mozilla::dom::MediaQueryList>, pub mUseCounters: [u64; 2usize], pub mChildDocumentUseCounters: [u64; 2usize], pub mNotifiedPageForUseCounter: [u64; 2usize], @@ -12426,9 +12464,10 @@ pub mod root { #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct nsIDocument_FrameRequest([u8; 0]); + pub const nsIDocument_kSegmentSize: usize = 128; #[test] fn bindgen_test_layout_nsIDocument() { - assert_eq!(::std::mem::size_of::<nsIDocument>() , 880usize , concat ! + assert_eq!(::std::mem::size_of::<nsIDocument>() , 872usize , concat ! ( "Size of: " , stringify ! ( nsIDocument ) )); assert_eq! (::std::mem::align_of::<nsIDocument>() , 8usize , concat ! ( "Alignment of " , stringify ! ( nsIDocument ) )); @@ -16429,33 +16468,6 @@ pub mod root { fn clone(&self) -> Self { *self } } #[repr(C)] - #[derive(Debug, Copy)] - pub struct PRCListStr { - pub next: *mut root::PRCList, - pub prev: *mut root::PRCList, - } - #[test] - fn bindgen_test_layout_PRCListStr() { - assert_eq!(::std::mem::size_of::<PRCListStr>() , 16usize , concat ! ( - "Size of: " , stringify ! ( PRCListStr ) )); - assert_eq! (::std::mem::align_of::<PRCListStr>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( PRCListStr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PRCListStr ) ) . next as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( PRCListStr ) , "::" - , stringify ! ( next ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PRCListStr ) ) . prev as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( PRCListStr ) , "::" - , stringify ! ( prev ) )); - } - impl Clone for PRCListStr { - fn clone(&self) -> Self { *self } - } - pub type PRCList = root::PRCListStr; - #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gfxUserFontSet([u8; 0]); #[repr(C)] @@ -16518,6 +16530,21 @@ pub mod root { CORS_ANONYMOUS = 2, CORS_USE_CREDENTIALS = 3, } + pub const imgIRequest_CATEGORY_FRAME_INIT: root::imgIRequest__bindgen_ty_3 + = + imgIRequest__bindgen_ty_3::CATEGORY_FRAME_INIT; + pub const imgIRequest_CATEGORY_SIZE_QUERY: root::imgIRequest__bindgen_ty_3 + = + imgIRequest__bindgen_ty_3::CATEGORY_SIZE_QUERY; + pub const imgIRequest_CATEGORY_DISPLAY: root::imgIRequest__bindgen_ty_3 = + imgIRequest__bindgen_ty_3::CATEGORY_DISPLAY; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum imgIRequest__bindgen_ty_3 { + CATEGORY_FRAME_INIT = 1, + CATEGORY_SIZE_QUERY = 2, + CATEGORY_DISPLAY = 4, + } #[test] fn bindgen_test_layout_imgIRequest() { assert_eq!(::std::mem::size_of::<imgIRequest>() , 8usize , concat ! ( @@ -17159,33 +17186,7 @@ pub mod root { gfxFontFeatureValueSet ) , "::" , stringify ! ( mFontFeatureValues ) )); } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct gfxFontVariation { - pub mTag: u32, - pub mValue: f32, - } - #[test] - fn bindgen_test_layout_gfxFontVariation() { - assert_eq!(::std::mem::size_of::<gfxFontVariation>() , 8usize , concat - ! ( "Size of: " , stringify ! ( gfxFontVariation ) )); - assert_eq! (::std::mem::align_of::<gfxFontVariation>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( gfxFontVariation ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontVariation ) ) . mTag as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxFontVariation ) - , "::" , stringify ! ( mTag ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontVariation ) ) . mValue as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxFontVariation ) - , "::" , stringify ! ( mValue ) )); - } - impl Clone for gfxFontVariation { - fn clone(&self) -> Self { *self } - } + pub type gfxFontVariation = root::mozilla::gfx::FontVariation; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gfxFontStyle([u8; 0]); @@ -17220,7 +17221,7 @@ pub mod root { pub alternateValues: root::nsTArray<root::gfxAlternateValue>, pub featureValueLookup: root::RefPtr<root::gfxFontFeatureValueSet>, pub fontFeatureSettings: root::nsTArray<root::gfxFontFeature>, - pub fontVariationSettings: root::nsTArray<root::gfxFontVariation>, + pub fontVariationSettings: root::nsTArray<root::mozilla::gfx::FontVariation>, pub languageOverride: u32, } #[test] @@ -22855,6 +22856,7 @@ pub mod root { pub mCORSMode: i32, pub mReferrerPolicy: root::imgRequest_ReferrerPolicy, pub mImageErrorCode: root::nsresult, + pub mBoostCategoriesRequested: u32, pub mMutex: root::mozilla::Mutex, pub mProgressTracker: root::RefPtr<root::mozilla::image::ProgressTracker>, pub mImage: root::RefPtr<root::mozilla::image::Image>, @@ -27507,6 +27509,19 @@ pub mod root { } #[test] fn __bindgen_test_layout_template_42() { + assert_eq!(::std::mem::size_of::<root::mozilla::LinkedList<root::mozilla::dom::MediaQueryList>>() + , 24usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::LinkedList<root::mozilla::dom::MediaQueryList> + ) )); + assert_eq!(::std::mem::align_of::<root::mozilla::LinkedList<root::mozilla::dom::MediaQueryList>>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::LinkedList<root::mozilla::dom::MediaQueryList> + ) )); + } + #[test] + fn __bindgen_test_layout_template_43() { assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::Element>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27517,7 +27532,7 @@ pub mod root { root::RefPtr<root::mozilla::dom::Element> ) )); } #[test] - fn __bindgen_test_layout_template_43() { + fn __bindgen_test_layout_template_44() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::Element>>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27530,7 +27545,7 @@ pub mod root { )); } #[test] - fn __bindgen_test_layout_template_44() { + fn __bindgen_test_layout_template_45() { assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIObserver>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27541,7 +27556,7 @@ pub mod root { root::nsCOMPtr<root::nsIObserver> ) )); } #[test] - fn __bindgen_test_layout_template_45() { + fn __bindgen_test_layout_template_46() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsCOMPtr<root::nsIObserver>>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27552,7 +27567,7 @@ pub mod root { root::nsTArray<root::nsCOMPtr<root::nsIObserver>> ) )); } #[test] - fn __bindgen_test_layout_template_46() { + fn __bindgen_test_layout_template_47() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIDocument>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27563,7 +27578,7 @@ pub mod root { root::already_AddRefed<root::nsIDocument> ) )); } #[test] - fn __bindgen_test_layout_template_47() { + fn __bindgen_test_layout_template_48() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsContentList>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27574,7 +27589,7 @@ pub mod root { root::already_AddRefed<root::nsContentList> ) )); } #[test] - fn __bindgen_test_layout_template_48() { + fn __bindgen_test_layout_template_49() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsINode>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27585,7 +27600,18 @@ pub mod root { root::already_AddRefed<root::nsINode> ) )); } #[test] - fn __bindgen_test_layout_template_49() { + fn __bindgen_test_layout_template_50() { + assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::mozilla::dom::Link>>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsCOMPtr<root::mozilla::dom::Link> ) )); + assert_eq!(::std::mem::align_of::<root::nsCOMPtr<root::mozilla::dom::Link>>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCOMPtr<root::mozilla::dom::Link> ) )); + } + #[test] + fn __bindgen_test_layout_template_51() { assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIWeakReference>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27596,7 +27622,7 @@ pub mod root { root::nsCOMPtr<root::nsIWeakReference> ) )); } #[test] - fn __bindgen_test_layout_template_50() { + fn __bindgen_test_layout_template_52() { assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -27605,7 +27631,7 @@ pub mod root { u64 ) )); } #[test] - fn __bindgen_test_layout_template_51() { + fn __bindgen_test_layout_template_53() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsRect>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27616,7 +27642,7 @@ pub mod root { root::nsTArray<root::nsRect> ) )); } #[test] - fn __bindgen_test_layout_template_52() { + fn __bindgen_test_layout_template_54() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsBidi>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27627,7 +27653,7 @@ pub mod root { root::mozilla::DefaultDelete<root::nsBidi> ) )); } #[test] - fn __bindgen_test_layout_template_53() { + fn __bindgen_test_layout_template_55() { assert_eq!(::std::mem::size_of::<[u64; 28usize]>() , 224usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27638,7 +27664,7 @@ pub mod root { [u64; 28usize] ) )); } #[test] - fn __bindgen_test_layout_template_54() { + fn __bindgen_test_layout_template_56() { assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::nsIContent>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27649,7 +27675,7 @@ pub mod root { root::nsTArray<*mut root::nsIContent> ) )); } #[test] - fn __bindgen_test_layout_template_55() { + fn __bindgen_test_layout_template_57() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::mozilla::dom::CSSValue>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27660,7 +27686,7 @@ pub mod root { root::already_AddRefed<root::mozilla::dom::CSSValue> ) )); } #[test] - fn __bindgen_test_layout_template_56() { + fn __bindgen_test_layout_template_58() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::mozilla::dom::TimeoutManager>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27673,7 +27699,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_57() { + fn __bindgen_test_layout_template_59() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsISupports>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27684,7 +27710,7 @@ pub mod root { root::already_AddRefed<root::nsISupports> ) )); } #[test] - fn __bindgen_test_layout_template_58() { + fn __bindgen_test_layout_template_60() { assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIRunnable>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27695,7 +27721,7 @@ pub mod root { root::nsCOMPtr<root::nsIRunnable> ) )); } #[test] - fn __bindgen_test_layout_template_59() { + fn __bindgen_test_layout_template_61() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIContent>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27706,7 +27732,7 @@ pub mod root { root::already_AddRefed<root::nsIContent> ) )); } #[test] - fn __bindgen_test_layout_template_60() { + fn __bindgen_test_layout_template_62() { assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27717,7 +27743,7 @@ pub mod root { [u64; 5usize] ) )); } #[test] - fn __bindgen_test_layout_template_61() { + fn __bindgen_test_layout_template_63() { assert_eq!(::std::mem::size_of::<root::mozilla::OwningNonNull<root::nsINode>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27728,7 +27754,7 @@ pub mod root { root::mozilla::OwningNonNull<root::nsINode> ) )); } #[test] - fn __bindgen_test_layout_template_62() { + fn __bindgen_test_layout_template_64() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27739,7 +27765,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_63() { + fn __bindgen_test_layout_template_65() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27750,7 +27776,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_64() { + fn __bindgen_test_layout_template_66() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27761,7 +27787,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_65() { + fn __bindgen_test_layout_template_67() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27772,7 +27798,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_66() { + fn __bindgen_test_layout_template_68() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27783,7 +27809,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_67() { + fn __bindgen_test_layout_template_69() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27794,7 +27820,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_68() { + fn __bindgen_test_layout_template_70() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27805,7 +27831,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_69() { + fn __bindgen_test_layout_template_71() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27816,7 +27842,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_70() { + fn __bindgen_test_layout_template_72() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27827,7 +27853,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_71() { + fn __bindgen_test_layout_template_73() { assert_eq!(::std::mem::size_of::<u32>() , 4usize , concat ! ( "Size of template specialization: " , stringify ! ( u32 ) )); @@ -27836,7 +27862,7 @@ pub mod root { u32 ) )); } #[test] - fn __bindgen_test_layout_template_72() { + fn __bindgen_test_layout_template_74() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27847,7 +27873,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_73() { + fn __bindgen_test_layout_template_75() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27858,7 +27884,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_74() { + fn __bindgen_test_layout_template_76() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27869,7 +27895,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_75() { + fn __bindgen_test_layout_template_77() { assert_eq!(::std::mem::size_of::<root::nsTArray<f64>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27880,7 +27906,7 @@ pub mod root { root::nsTArray<f64> ) )); } #[test] - fn __bindgen_test_layout_template_76() { + fn __bindgen_test_layout_template_78() { assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27893,7 +27919,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_77() { + fn __bindgen_test_layout_template_79() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27906,7 +27932,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_78() { + fn __bindgen_test_layout_template_80() { assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::ProfilerBacktrace, root::ProfilerBacktraceDestructor>>() , 8usize , concat ! ( @@ -27923,7 +27949,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_79() { + fn __bindgen_test_layout_template_81() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::FontFamilyName>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27934,7 +27960,7 @@ pub mod root { root::nsTArray<root::mozilla::FontFamilyName> ) )); } #[test] - fn __bindgen_test_layout_template_80() { + fn __bindgen_test_layout_template_82() { assert_eq!(::std::mem::size_of::<root::nsTArray<::std::os::raw::c_uint>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27945,7 +27971,7 @@ pub mod root { root::nsTArray<::std::os::raw::c_uint> ) )); } #[test] - fn __bindgen_test_layout_template_81() { + fn __bindgen_test_layout_template_83() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::FramePropertyTable_PropertyValue>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27958,7 +27984,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_82() { + fn __bindgen_test_layout_template_84() { assert_eq!(::std::mem::size_of::<root::nsPtrHashKey<root::nsIFrame>>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27969,7 +27995,7 @@ pub mod root { root::nsPtrHashKey<root::nsIFrame> ) )); } #[test] - fn __bindgen_test_layout_template_83() { + fn __bindgen_test_layout_template_85() { assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27980,7 +28006,7 @@ pub mod root { [u64; 5usize] ) )); } #[test] - fn __bindgen_test_layout_template_84() { + fn __bindgen_test_layout_template_86() { assert_eq!(::std::mem::size_of::<root::mozilla::OwningNonNull<root::mozilla::EffectCompositor_AnimationStyleRuleProcessor>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27993,7 +28019,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_85() { + fn __bindgen_test_layout_template_87() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::ProxyBehaviour>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28004,7 +28030,7 @@ pub mod root { root::mozilla::DefaultDelete<root::ProxyBehaviour> ) )); } #[test] - fn __bindgen_test_layout_template_86() { + fn __bindgen_test_layout_template_88() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::mozilla::URLExtraData>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28015,7 +28041,7 @@ pub mod root { root::already_AddRefed<root::mozilla::URLExtraData> ) )); } #[test] - fn __bindgen_test_layout_template_87() { + fn __bindgen_test_layout_template_89() { assert_eq!(::std::mem::size_of::<root::nsMainThreadPtrHolder<root::nsIURI>>() , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28026,7 +28052,7 @@ pub mod root { root::nsMainThreadPtrHolder<root::nsIURI> ) )); } #[test] - fn __bindgen_test_layout_template_88() { + fn __bindgen_test_layout_template_90() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsCSSValueList>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28037,7 +28063,7 @@ pub mod root { root::mozilla::DefaultDelete<root::nsCSSValueList> ) )); } #[test] - fn __bindgen_test_layout_template_89() { + fn __bindgen_test_layout_template_91() { assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsCSSValueList, root::mozilla::DefaultDelete<root::nsCSSValueList>>>() , 8usize , concat ! ( @@ -28054,7 +28080,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_90() { + fn __bindgen_test_layout_template_92() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsCSSValuePairList>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28067,7 +28093,7 @@ pub mod root { )); } #[test] - fn __bindgen_test_layout_template_91() { + fn __bindgen_test_layout_template_93() { assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsCSSValuePairList, root::mozilla::DefaultDelete<root::nsCSSValuePairList>>>() , 8usize , concat ! ( @@ -28084,7 +28110,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_92() { + fn __bindgen_test_layout_template_94() { assert_eq!(::std::mem::size_of::<[u64; 2usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28095,7 +28121,7 @@ pub mod root { [u64; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_93() { + fn __bindgen_test_layout_template_95() { assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -28104,7 +28130,7 @@ pub mod root { u64 ) )); } #[test] - fn __bindgen_test_layout_template_94() { + fn __bindgen_test_layout_template_96() { assert_eq!(::std::mem::size_of::<[u32; 3usize]>() , 12usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28115,7 +28141,7 @@ pub mod root { [u32; 3usize] ) )); } #[test] - fn __bindgen_test_layout_template_95() { + fn __bindgen_test_layout_template_97() { assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsStyleImageRequest>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28126,7 +28152,7 @@ pub mod root { root::already_AddRefed<root::nsStyleImageRequest> ) )); } #[test] - fn __bindgen_test_layout_template_96() { + fn __bindgen_test_layout_template_98() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsStyleSides>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28137,7 +28163,7 @@ pub mod root { root::mozilla::DefaultDelete<root::nsStyleSides> ) )); } #[test] - fn __bindgen_test_layout_template_97() { + fn __bindgen_test_layout_template_99() { assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsStyleSides, root::mozilla::DefaultDelete<root::nsStyleSides>>>() , 8usize , concat ! ( @@ -28154,7 +28180,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_98() { + fn __bindgen_test_layout_template_100() { assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::CachedBorderImageData>>() , 1usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28167,7 +28193,7 @@ pub mod root { )); } #[test] - fn __bindgen_test_layout_template_99() { + fn __bindgen_test_layout_template_101() { assert_eq!(::std::mem::size_of::<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>() , 32usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28178,7 +28204,7 @@ pub mod root { root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr> ) )); } #[test] - fn __bindgen_test_layout_template_100() { + fn __bindgen_test_layout_template_102() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>>() , 8usize , concat ! ( @@ -28193,7 +28219,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_101() { + fn __bindgen_test_layout_template_103() { assert_eq!(::std::mem::size_of::<[u64; 18usize]>() , 144usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28204,7 +28230,7 @@ pub mod root { [u64; 18usize] ) )); } #[test] - fn __bindgen_test_layout_template_102() { + fn __bindgen_test_layout_template_104() { assert_eq!(::std::mem::size_of::<root::mozilla::BaseTimeDuration<root::mozilla::StickyTimeDurationValueCalculator>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28217,7 +28243,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_103() { + fn __bindgen_test_layout_template_105() { assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::DisplayItemClip_RoundedRect>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28230,7 +28256,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_104() { + fn __bindgen_test_layout_template_106() { assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::DOMRect>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28241,7 +28267,7 @@ pub mod root { root::RefPtr<root::mozilla::dom::DOMRect> ) )); } #[test] - fn __bindgen_test_layout_template_105() { + fn __bindgen_test_layout_template_107() { assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -28250,7 +28276,7 @@ pub mod root { u64 ) )); } #[test] - fn __bindgen_test_layout_template_106() { + fn __bindgen_test_layout_template_108() { assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::mozilla::css::DocumentRule>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28261,7 +28287,7 @@ pub mod root { root::nsTArray<*mut root::mozilla::css::DocumentRule> ) )); } #[test] - fn __bindgen_test_layout_template_107() { + fn __bindgen_test_layout_template_109() { assert_eq!(::std::mem::size_of::<root::nsAutoPtr<root::nsMediaQuery>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( diff --git a/components/style/properties/gecko.mako.rs b/components/style/properties/gecko.mako.rs index 9ab78fa0bba..3c2ab7280be 100644 --- a/components/style/properties/gecko.mako.rs +++ b/components/style/properties/gecko.mako.rs @@ -827,9 +827,13 @@ fn static_assert() { for y in ["color", "style", "width"]] + ["border-{0}-radius".format(x.ident.replace("_", "-")) for x in CORNERS]) %> + +<% skip_moz_border_color_longhands = " ".join("-moz-border-{0}-colors".format(x.ident) + for x in SIDES) %> <%self:impl_trait style_struct_name="Border" skip_longhands="${skip_border_longhands} border-image-source border-image-outset - border-image-repeat border-image-width border-image-slice" + border-image-repeat border-image-width border-image-slice + ${skip_moz_border_color_longhands}" skip_additionals="*"> % for side in SIDES: @@ -880,6 +884,42 @@ fn static_assert() { pub fn border_${side.ident}_has_nonzero_width(&self) -> bool { self.gecko.mComputedBorder.${side.ident} != 0 } + + #[allow(non_snake_case)] + pub fn set__moz_border_${side.ident}_colors(&mut self, + v: longhands::_moz_border_${side.ident}_colors::computed_value::T) { + match v.0 { + None => { + unsafe { + bindings::Gecko_ClearMozBorderColors(&mut self.gecko, + structs::Side::eSide${to_camel_case(side.ident)}); + } + }, + Some(ref colors) => { + unsafe { + bindings::Gecko_EnsureMozBorderColors(&mut self.gecko); + bindings::Gecko_ClearMozBorderColors(&mut self.gecko, + structs::Side::eSide${to_camel_case(side.ident)}); + } + for color in colors { + let c = color_to_nscolor_zero_currentcolor(*color); + unsafe { + bindings::Gecko_AppendMozBorderColors(&mut self.gecko, + structs::Side::eSide${to_camel_case(side.ident)}, + c); + } + } + } + } + } + + #[allow(non_snake_case)] + pub fn copy__moz_border_${side.ident}_colors_from(&mut self, other: &Self) { + unsafe { + bindings::Gecko_CopyMozBorderColors(&mut self.gecko, &other.gecko, + structs::Side::eSide${to_camel_case(side.ident)}); + } + } % endfor % for corner in CORNERS: diff --git a/components/style/properties/longhand/border.mako.rs b/components/style/properties/longhand/border.mako.rs index cad750ba165..64c64c700fb 100644 --- a/components/style/properties/longhand/border.mako.rs +++ b/components/style/properties/longhand/border.mako.rs @@ -73,6 +73,130 @@ ${helpers.gecko_keyword_conversion(Keyword('border-style', animation_value_type="ComputedValue")} % endfor +/// -moz-border-*-colors: color, string, enum, none, inherit/initial +/// These non-spec properties are just for Gecko (Stylo) internal use. +% for side in PHYSICAL_SIDES: + <%helpers:longhand name="-moz-border-${side}-colors" animation_value_type="none" + spec="Nonstandard (https://developer.mozilla.org/en-US/docs/Web/CSS/-moz-border-*-colors)" + products="gecko"> + use std::fmt; + use style_traits::ToCss; + use values::HasViewportPercentage; + use values::specified::CSSColor; + no_viewport_percentage!(SpecifiedValue); + + pub mod computed_value { + use values::computed::CSSColor; + #[derive(Debug, Clone, PartialEq)] + #[cfg_attr(feature = "servo", derive(HeapSizeOf))] + pub struct T(pub Option<Vec<CSSColor>>); + } + + #[derive(Debug, Clone, PartialEq)] + #[cfg_attr(feature = "servo", derive(HeapSizeOf))] + pub enum SpecifiedValue { + None, + Colors(Vec<CSSColor>), + } + + impl ToCss for computed_value::T { + fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write { + match self.0 { + None => return dest.write_str("none"), + Some(ref vec) => { + let mut first = true; + for ref color in vec { + if !first { + try!(dest.write_str(" ")); + } + first = false; + try!(color.to_css(dest)) + } + Ok(()) + } + } + } + } + + impl ToCss for SpecifiedValue { + fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write { + match *self { + SpecifiedValue::None => return dest.write_str("none"), + SpecifiedValue::Colors(ref vec) => { + let mut first = true; + for ref color in vec { + if !first { + try!(dest.write_str(" ")); + } + first = false; + try!(color.to_css(dest)) + } + Ok(()) + } + } + } + } + + #[inline] pub fn get_initial_value() -> computed_value::T { + computed_value::T(None) + } + + #[inline] pub fn get_initial_specified_value() -> SpecifiedValue { + SpecifiedValue::None + } + + impl ToComputedValue for SpecifiedValue { + type ComputedValue = computed_value::T; + + #[inline] + fn to_computed_value(&self, context: &Context) -> computed_value::T { + match *self { + SpecifiedValue::Colors(ref vec) => { + computed_value::T(Some(vec.iter() + .map(|c| c.to_computed_value(context)) + .collect())) + }, + SpecifiedValue::None => { + computed_value::T(None) + } + } + } + #[inline] + fn from_computed_value(computed: &computed_value::T) -> Self { + match *computed { + computed_value::T(Some(ref vec)) => { + SpecifiedValue::Colors(vec.iter() + .map(|c| ToComputedValue::from_computed_value((c))) + .collect()) + }, + computed_value::T(None) => { + SpecifiedValue::None + } + } + } + } + + #[inline] + pub fn parse(context: &ParserContext, input: &mut Parser) + -> Result<SpecifiedValue, ()> { + if input.try(|input| input.expect_ident_matching("none")).is_ok() { + return Ok(SpecifiedValue::None) + } + + let mut result = Vec::new(); + while let Ok(value) = input.try(|i| CSSColor::parse(context, i)) { + result.push(value); + } + + if !result.is_empty() { + Ok(SpecifiedValue::Colors(result)) + } else { + Err(()) + } + } + </%helpers:longhand> +% endfor + ${helpers.single_keyword("box-decoration-break", "slice clone", gecko_enum_prefix="StyleBoxDecorationBreak", gecko_inexhaustive=True, diff --git a/components/style/properties/shorthand/border.mako.rs b/components/style/properties/shorthand/border.mako.rs index 1ee9d3ff8da..35afe623205 100644 --- a/components/style/properties/shorthand/border.mako.rs +++ b/components/style/properties/shorthand/border.mako.rs @@ -14,7 +14,7 @@ ${helpers.four_sides_shorthand("border-style", "border-%s-style", <%helpers:shorthand name="border-width" sub_properties="${ ' '.join('border-%s-width' % side - for side in ['top', 'right', 'bottom', 'left'])}" + for side in PHYSICAL_SIDES)}" spec="https://drafts.csswg.org/css-backgrounds/#border-width"> use super::parse_four_sides; use parser::Parse; @@ -23,7 +23,7 @@ ${helpers.four_sides_shorthand("border-style", "border-%s-style", pub fn parse_value(context: &ParserContext, input: &mut Parser) -> Result<Longhands, ()> { let (top, right, bottom, left) = try!(parse_four_sides(input, |i| specified::BorderWidth::parse(context, i))); Ok(Longhands { - % for side in ["top", "right", "bottom", "left"]: + % for side in PHYSICAL_SIDES: ${to_rust_ident('border-%s-width' % side)}: ${side}, % endfor }) @@ -31,7 +31,7 @@ ${helpers.four_sides_shorthand("border-style", "border-%s-style", impl<'a> ToCss for LonghandsToSerialize<'a> { fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write { - % for side in ["top", "right", "bottom", "left"]: + % for side in PHYSICAL_SIDES: let ${side} = self.border_${side}_width.clone(); % endfor @@ -124,22 +124,32 @@ pub fn parse_border(context: &ParserContext, input: &mut Parser) <%helpers:shorthand name="border" sub_properties="${' '.join('border-%s-%s' % (side, prop) - for side in ['top', 'right', 'bottom', 'left'] + for side in PHYSICAL_SIDES for prop in ['color', 'style', 'width'])} ${' '.join('border-image-%s' % name - for name in ['outset', 'repeat', 'slice', 'source', 'width'])}" + for name in ['outset', 'repeat', 'slice', 'source', 'width'])} + ${' '.join('-moz-border-%s-colors' % side + for side in PHYSICAL_SIDES) if product == 'gecko' else ''}" spec="https://drafts.csswg.org/css-backgrounds/#border"> + % if product == "gecko": + use properties::longhands::{_moz_border_top_colors, _moz_border_right_colors, + _moz_border_bottom_colors, _moz_border_left_colors}; + % endif + pub fn parse_value(context: &ParserContext, input: &mut Parser) -> Result<Longhands, ()> { use properties::longhands::{border_image_outset, border_image_repeat, border_image_slice}; use properties::longhands::{border_image_source, border_image_width}; let (color, style, width) = try!(super::parse_border(context, input)); Ok(Longhands { - % for side in ["top", "right", "bottom", "left"]: + % for side in PHYSICAL_SIDES: border_${side}_color: color.clone(), border_${side}_style: style, border_${side}_width: width.clone(), + % if product == "gecko": + _moz_border_${side}_colors: _moz_border_${side}_colors::get_initial_specified_value(), + % endif % endfor // The ‘border’ shorthand resets ‘border-image’ to its initial value. |