diff options
-rw-r--r-- | ports/geckolib/gecko_style_structs.rs | 1684 |
1 files changed, 932 insertions, 752 deletions
diff --git a/ports/geckolib/gecko_style_structs.rs b/ports/geckolib/gecko_style_structs.rs index 4e94c216d1b..ae64f97b41a 100644 --- a/ports/geckolib/gecko_style_structs.rs +++ b/ports/geckolib/gecko_style_structs.rs @@ -1,5 +1,19 @@ /* automatically generated by rust-bindgen */ +#[derive(Copy, Clone, Debug)] +pub struct __BindgenUnionField<T>(::std::marker::PhantomData<T>); +impl <T> __BindgenUnionField<T> { + #[inline] + pub fn new() -> Self { __BindgenUnionField(::std::marker::PhantomData) } + #[inline] + pub unsafe fn as_ref(&self) -> &T { ::std::mem::transmute(self) } + #[inline] + pub unsafe fn as_mut(&mut self) -> &mut T { ::std::mem::transmute(self) } +} +impl <T> ::std::default::Default for __BindgenUnionField<T> { + #[inline] + fn default() -> Self { Self::new() } +} pub const NS_ERROR_MODULE_XPCOM: ::std::os::raw::c_uint = 1; pub const NS_ERROR_MODULE_BASE: ::std::os::raw::c_uint = 2; pub const NS_ERROR_MODULE_GFX: ::std::os::raw::c_uint = 3; @@ -733,6 +747,8 @@ pub const NS_STYLE_TEXT_RENDERING_OPTIMIZELEGIBILITY: ::std::os::raw::c_uint = 2; pub const NS_STYLE_TEXT_RENDERING_GEOMETRICPRECISION: ::std::os::raw::c_uint = 3; +pub const NS_STYLE_COLOR_ADJUST_ECONOMY: ::std::os::raw::c_uint = 0; +pub const NS_STYLE_COLOR_ADJUST_EXACT: ::std::os::raw::c_uint = 1; pub const NS_STYLE_COLOR_INTERPOLATION_AUTO: ::std::os::raw::c_uint = 0; pub const NS_STYLE_COLOR_INTERPOLATION_SRGB: ::std::os::raw::c_uint = 1; pub const NS_STYLE_COLOR_INTERPOLATION_LINEARRGB: ::std::os::raw::c_uint = 2; @@ -1328,7 +1344,7 @@ pub type nsASingleFragmentCString = nsCSubstring; * @see nsTAString */ #[repr(C)] -#[derive(Copy, Clone)] +#[derive(Copy, Clone, Debug)] pub struct nsReadingIterator<CharT> { pub mStart: *const CharT, pub mEnd: *const CharT, @@ -1338,20 +1354,20 @@ pub struct nsReadingIterator<CharT> { * @see nsTAString */ #[repr(C)] -#[derive(Copy, Clone)] +#[derive(Copy, Clone, Debug)] pub struct nsWritingIterator<CharT> { pub mStart: *mut CharT, pub mEnd: *mut CharT, pub mPosition: *mut CharT, } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsStringComparator; impl ::std::clone::Clone for nsStringComparator { fn clone(&self) -> Self { *self } } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsDefaultStringComparator { pub _base: nsStringComparator, } @@ -1382,13 +1398,13 @@ fn bindgen_test_layout_nsAString_internal() { assert_eq!(::std::mem::align_of::<nsAString_internal>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsCStringComparator; impl ::std::clone::Clone for nsCStringComparator { fn clone(&self) -> Self { *self } } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsDefaultCStringComparator { pub _base: nsCStringComparator, } @@ -1423,7 +1439,7 @@ fn bindgen_test_layout_nsACString_internal() { * comparision, see nsUnicharUtils.h) */ #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsCaseInsensitiveCStringComparator { pub _base: nsCStringComparator, } @@ -1431,13 +1447,13 @@ impl ::std::clone::Clone for nsCaseInsensitiveCStringComparator { fn clone(&self) -> Self { *self } } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsCaseInsensitiveCStringArrayComparator; impl ::std::clone::Clone for nsCaseInsensitiveCStringArrayComparator { fn clone(&self) -> Self { *self } } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsSubstringTuple { pub mHead: *const nsSubstringTuple, pub mFragA: *const nsAString_internal, @@ -1452,7 +1468,7 @@ fn bindgen_test_layout_nsSubstringTuple() { assert_eq!(::std::mem::align_of::<nsSubstringTuple>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsCSubstringTuple { pub mHead: *const nsCSubstringTuple, pub mFragA: *const nsACString_internal, @@ -1471,7 +1487,7 @@ pub struct nsString { pub _base: nsAString_internal, } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsString_Segment { pub mBegin: u32, pub mLength: u32, @@ -1514,7 +1530,7 @@ fn bindgen_test_layout_nsAutoString() { assert_eq!(::std::mem::align_of::<nsAutoString>() , 8usize); } #[repr(C)] -#[derive(Copy, Clone)] +#[derive(Copy, Clone, Debug)] pub struct nsTArrayElementTraits<> { pub _phantom0: ::std::marker::PhantomData<nsAutoString>, } @@ -1551,7 +1567,7 @@ pub struct nsCString { pub _base: nsACString_internal, } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsCString_Segment { pub mBegin: u32, pub mLength: u32, @@ -1739,7 +1755,7 @@ fn bindgen_test_layout_nsCSSToken() { assert_eq!(::std::mem::align_of::<nsCSSToken>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsCSSScannerPosition { pub mOffset: u32, pub mLineNumber: u32, @@ -1811,7 +1827,7 @@ fn bindgen_test_layout_nsCSSGridTemplateAreaToken() { assert_eq!(::std::mem::align_of::<nsCSSGridTemplateAreaToken>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsCSSGridTemplateAreaScanner { pub mBuffer: *const ::std::os::raw::c_ushort, pub mOffset: u32, @@ -1831,7 +1847,7 @@ fn bindgen_test_layout_nsCSSGridTemplateAreaScanner() { * A "unique identifier". This is modeled after OSF DCE UUIDs. */ #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsID { pub m0: u32, pub m1: u16, @@ -1878,7 +1894,7 @@ pub type nsIID = nsID; * modelled after the win32 IUnknown API. */ #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsISupports { pub _vftable: *const _vftable_nsISupports, } @@ -1895,7 +1911,7 @@ fn bindgen_test_layout_nsISupports() { assert_eq!(::std::mem::align_of::<nsISupports>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsAutoOwningThread { pub mThread: *mut ::std::os::raw::c_void, } @@ -1908,7 +1924,7 @@ fn bindgen_test_layout_nsAutoOwningThread() { assert_eq!(::std::mem::align_of::<nsAutoOwningThread>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsCycleCollectingAutoRefCnt { pub mRefCntAndFlags: usize, } @@ -1922,7 +1938,7 @@ fn bindgen_test_layout_nsCycleCollectingAutoRefCnt() { 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsAutoRefCnt { pub mValue: nsrefcnt, } @@ -1958,7 +1974,7 @@ fn bindgen_test_layout_ThreadSafeAutoRefCnt() { * by custom code for tearoffs and conditionals. */ #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct QITableEntry { pub iid: *const nsIID, pub offset: i32, @@ -1972,7 +1988,7 @@ fn bindgen_test_layout_QITableEntry() { assert_eq!(::std::mem::align_of::<QITableEntry>() , 8usize); } #[repr(C)] -#[derive(Copy, Clone)] +#[derive(Copy, Clone, Debug)] pub struct RefPtrTraits<U> { pub _phantom0: ::std::marker::PhantomData<U>, } @@ -1981,19 +1997,19 @@ pub struct RefPtr<T> { pub mRawPtr: *mut T, } #[repr(C)] -#[derive(Copy, Clone)] +#[derive(Copy, Clone, Debug)] pub struct RefPtrGetterAddRefs<T> { pub mTargetSmartPtr: *mut RefPtr<T>, pub _phantom0: ::std::marker::PhantomData<T>, } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsCOMPtr_helper; impl ::std::clone::Clone for nsCOMPtr_helper { fn clone(&self) -> Self { *self } } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsQueryInterface { pub mRawPtr: *mut nsISupports, } @@ -2006,7 +2022,7 @@ fn bindgen_test_layout_nsQueryInterface() { assert_eq!(::std::mem::align_of::<nsQueryInterface>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsQueryInterfaceWithError { pub mRawPtr: *mut nsISupports, pub mErrorPtr: *mut nsresult, @@ -2021,7 +2037,7 @@ fn bindgen_test_layout_nsQueryInterfaceWithError() { } //////////////////////////////////////////////////////////////////////////// #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsGetServiceByCID { pub mCID: *const nsCID, } @@ -2034,7 +2050,7 @@ fn bindgen_test_layout_nsGetServiceByCID() { assert_eq!(::std::mem::align_of::<nsGetServiceByCID>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsGetServiceByCIDWithError { pub mCID: *const nsCID, pub mErrorPtr: *mut nsresult, @@ -2048,7 +2064,7 @@ fn bindgen_test_layout_nsGetServiceByCIDWithError() { assert_eq!(::std::mem::align_of::<nsGetServiceByCIDWithError>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsGetServiceByContractID { pub mContractID: *const ::std::os::raw::c_char, } @@ -2061,7 +2077,7 @@ fn bindgen_test_layout_nsGetServiceByContractID() { assert_eq!(::std::mem::align_of::<nsGetServiceByContractID>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsGetServiceByContractIDWithError { pub mContractID: *const ::std::os::raw::c_char, pub mErrorPtr: *mut nsresult, @@ -2123,14 +2139,19 @@ pub struct nsAutoPtr<T> { pub mRawPtr: *mut T, } #[repr(C)] -#[derive(Copy, Clone)] +#[derive(Copy, Clone, Debug)] +pub struct nsAutoPtr_Ptr<T> { + pub mPtr: *mut T, +} +#[repr(C)] +#[derive(Copy, Clone, Debug)] pub struct nsAutoPtrGetterTransfers<T> { pub mTargetSmartPtr: *mut nsAutoPtr<T>, pub _phantom0: ::std::marker::PhantomData<T>, } pub type PLDHashNumber = u32; #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct PLDHashEntryHdr { pub mKeyHash: PLDHashNumber, } @@ -2159,9 +2180,34 @@ pub struct PLDHashTable { pub mEntrySize: u32, pub mEntryCount: u32, pub mRemovedCount: u32, - pub mEntryStore: [u64; 2usize], + pub mEntryStore: PLDHashTable_EntryStore, pub mChecker: Checker, } +#[repr(C)] +pub struct PLDHashTable_EntryStore { + pub mEntryStore: *mut ::std::os::raw::c_char, + pub mGeneration: u32, +} +#[test] +fn bindgen_test_layout_PLDHashTable_EntryStore() { + assert_eq!(::std::mem::size_of::<PLDHashTable_EntryStore>() , 16usize); + assert_eq!(::std::mem::align_of::<PLDHashTable_EntryStore>() , 8usize); +} +#[repr(C)] +pub struct PLDHashTable_Iterator { + pub mTable: *mut PLDHashTable, + pub mStart: *mut ::std::os::raw::c_char, + pub mLimit: *mut ::std::os::raw::c_char, + pub mCurrent: *mut ::std::os::raw::c_char, + pub mNexts: u32, + pub mNextsLimit: u32, + pub mHaveRemoved: bool, +} +#[test] +fn bindgen_test_layout_PLDHashTable_Iterator() { + assert_eq!(::std::mem::size_of::<PLDHashTable_Iterator>() , 48usize); + assert_eq!(::std::mem::align_of::<PLDHashTable_Iterator>() , 8usize); +} #[repr(u32)] #[derive(Debug, Copy, Clone)] pub enum PLDHashTable_SearchReason { ForSearchOrRemove = 0, ForAdd = 1, } @@ -2191,7 +2237,7 @@ pub type PLDHashInitEntry = aKey: *const ::std::os::raw::c_void)>; #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct PLDHashTableOps { pub hashKey: PLDHashHashKey, pub matchEntry: PLDHashMatchEntry, @@ -2208,7 +2254,7 @@ fn bindgen_test_layout_PLDHashTableOps() { assert_eq!(::std::mem::align_of::<PLDHashTableOps>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct PLDHashEntryStub { pub _base: PLDHashEntryHdr, pub key: *const ::std::os::raw::c_void, @@ -2278,6 +2324,11 @@ pub struct nsTHashtable<EntryType> { pub _phantom0: ::std::marker::PhantomData<EntryType>, } #[repr(C)] +pub struct nsTHashtable_Iterator<EntryType> { + pub _base: PLDHashTable_Iterator, + pub _phantom0: ::std::marker::PhantomData<EntryType>, +} +#[repr(C)] pub struct nsDataHashtable; #[test] fn bindgen_test_layout_nsDataHashtable() { @@ -2323,7 +2374,6 @@ pub enum SheetType { Count = 10, Unknown = -1, } -pub type nscolor = u32; pub type nscoord = i32; #[repr(C)] pub struct nsIntPoint { @@ -2344,7 +2394,7 @@ fn bindgen_test_layout_nsIntPoint() { * <div rustbindgen="true" replaces="nsPoint"> */ #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsPoint { pub x: nscoord, pub y: nscoord, @@ -2361,7 +2411,7 @@ fn bindgen_test_layout_nsPoint() { * <div rustbindgen="true" replaces="nsMargin"> */ #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsMargin { pub top: nscoord, pub right: nscoord, @@ -2385,6 +2435,34 @@ fn bindgen_test_layout_nsIntMargin() { assert_eq!(::std::mem::size_of::<nsIntMargin>() , 16usize); assert_eq!(::std::mem::align_of::<nsIntMargin>() , 4usize); } +#[repr(C)] +pub struct nsIntRect { + pub _bindgen_opaque_blob: [u32; 4usize], +} +#[test] +fn bindgen_test_layout_nsIntRect() { + assert_eq!(::std::mem::size_of::<nsIntRect>() , 16usize); + assert_eq!(::std::mem::align_of::<nsIntRect>() , 4usize); +} +/** + * <div rustbindgen="true" replaces="nsRect"> + */ +#[repr(C)] +#[derive(Debug, Copy)] +pub struct nsRect { + pub x: nscoord, + pub y: nscoord, + pub width: nscoord, + pub height: nscoord, +} +impl ::std::clone::Clone for nsRect { + fn clone(&self) -> Self { *self } +} +#[test] +fn bindgen_test_layout_nsRect() { + assert_eq!(::std::mem::size_of::<nsRect>() , 16usize); + assert_eq!(::std::mem::align_of::<nsRect>() , 4usize); +} pub const eFamily_generic_first: FontFamilyType = FontFamilyType::eFamily_serif; pub const eFamily_generic_last: FontFamilyType = @@ -2443,7 +2521,7 @@ fn bindgen_test_layout_FontFamilyList() { assert_eq!(::std::mem::align_of::<FontFamilyList>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct gfxFontFeature { pub mTag: u32, pub mValue: u32, @@ -2510,34 +2588,6 @@ fn bindgen_test_layout_nsFont() { assert_eq!(::std::mem::size_of::<nsFont>() , 88usize); assert_eq!(::std::mem::align_of::<nsFont>() , 8usize); } -#[repr(C)] -pub struct nsIntRect { - pub _bindgen_opaque_blob: [u32; 4usize], -} -#[test] -fn bindgen_test_layout_nsIntRect() { - assert_eq!(::std::mem::size_of::<nsIntRect>() , 16usize); - assert_eq!(::std::mem::align_of::<nsIntRect>() , 4usize); -} -/** - * <div rustbindgen="true" replaces="nsRect"> - */ -#[repr(C)] -#[derive(Copy)] -pub struct nsRect { - pub x: nscoord, - pub y: nscoord, - pub width: nscoord, - pub height: nscoord, -} -impl ::std::clone::Clone for nsRect { - fn clone(&self) -> Self { *self } -} -#[test] -fn bindgen_test_layout_nsRect() { - assert_eq!(::std::mem::size_of::<nsRect>() , 16usize); - assert_eq!(::std::mem::align_of::<nsRect>() , 4usize); -} #[repr(i8)] #[derive(Debug, Copy, Clone)] pub enum StyleBoxSizing { Content = 0, Padding = 1, Border = 2, } @@ -2547,158 +2597,6 @@ pub enum PlaybackDirection { _BindgenOpaqueEnum = 0, } #[repr(i32)] #[derive(Debug, Copy, Clone)] pub enum FillMode { _BindgenOpaqueEnum = 0, } -pub enum WritingMode { } -#[repr(u32)] -#[derive(Debug, Copy, Clone)] -pub enum LogicalAxis { eLogicalAxisBlock = 0, eLogicalAxisInline = 1, } -#[repr(u32)] -#[derive(Debug, Copy, Clone)] -pub enum LogicalEdge { eLogicalEdgeStart = 0, eLogicalEdgeEnd = 1, } -#[repr(u32)] -#[derive(Debug, Copy, Clone)] -pub enum LogicalSide { - eLogicalSideBStart = 0, - eLogicalSideBEnd = 1, - eLogicalSideIStart = 2, - eLogicalSideIEnd = 3, -} -pub const eStyleUnit_MAX: nsStyleUnit = nsStyleUnit::eStyleUnit_Calc; -#[repr(i8)] -#[derive(Debug, Copy, Clone)] -pub enum nsStyleUnit { - eStyleUnit_Null = 0, - eStyleUnit_Normal = 1, - eStyleUnit_Auto = 2, - eStyleUnit_None = 3, - eStyleUnit_Percent = 10, - eStyleUnit_Factor = 11, - eStyleUnit_Degree = 12, - eStyleUnit_Grad = 13, - eStyleUnit_Radian = 14, - eStyleUnit_Turn = 15, - eStyleUnit_FlexFraction = 16, - eStyleUnit_Coord = 20, - eStyleUnit_Integer = 30, - eStyleUnit_Enumerated = 32, - eStyleUnit_Calc = 40, -} -#[repr(C)] -#[derive(Copy, Debug)] -pub struct nsStyleCoord_h_unnamed_5 { - pub _bindgen_data_: u64, -} -impl nsStyleCoord_h_unnamed_5 { } -impl ::std::clone::Clone for nsStyleCoord_h_unnamed_5 { - fn clone(&self) -> Self { *self } -} -pub type nsStyleUnion = nsStyleCoord_h_unnamed_5; -/** - * Class that hold a single size specification used by the style - * system. The size specification consists of two parts -- a number - * and a unit. The number is an integer, a floating point value, an - * nscoord, or undefined, and the unit is an nsStyleUnit. Checking - * the unit is a must before asking for the value in any particular - * form. - */ -#[repr(C)] -pub struct nsStyleCoord { - pub mUnit: nsStyleUnit, - pub mValue: nsStyleUnion, -} -#[repr(C)] -#[derive(Copy)] -pub struct nsStyleCoord_CalcValue { - pub mLength: nscoord, - pub mPercent: f32, - pub mHasPercent: bool, -} -impl ::std::clone::Clone for nsStyleCoord_CalcValue { - fn clone(&self) -> Self { *self } -} -#[test] -fn bindgen_test_layout_nsStyleCoord_CalcValue() { - assert_eq!(::std::mem::size_of::<nsStyleCoord_CalcValue>() , 12usize); - assert_eq!(::std::mem::align_of::<nsStyleCoord_CalcValue>() , 4usize); -} -#[repr(C)] -pub struct nsStyleCoord_Calc { - pub _base: nsStyleCoord_CalcValue, - pub mRefCnt: nsAutoRefCnt, - pub _mOwningThread: nsAutoOwningThread, -} -#[test] -fn bindgen_test_layout_nsStyleCoord_Calc() { - assert_eq!(::std::mem::size_of::<nsStyleCoord_Calc>() , 32usize); - assert_eq!(::std::mem::align_of::<nsStyleCoord_Calc>() , 8usize); -} -#[repr(u32)] -#[derive(Debug, Copy, Clone)] -pub enum nsStyleCoord_CoordConstructorType { CoordConstructor = 0, } -#[test] -fn bindgen_test_layout_nsStyleCoord() { - assert_eq!(::std::mem::size_of::<nsStyleCoord>() , 16usize); - assert_eq!(::std::mem::align_of::<nsStyleCoord>() , 8usize); -} -/** - * Class that represents a set of top/right/bottom/left nsStyleCoords. - * This is commonly used to hold the widths of the borders, margins, - * or paddings of a box. - */ -#[repr(C)] -pub struct nsStyleSides { - pub mUnits: [nsStyleUnit; 4usize], - pub mValues: [nsStyleUnion; 4usize], -} -#[test] -fn bindgen_test_layout_nsStyleSides() { - assert_eq!(::std::mem::size_of::<nsStyleSides>() , 40usize); - assert_eq!(::std::mem::align_of::<nsStyleSides>() , 8usize); -} -/** - * Class that represents a set of top-left/top-right/bottom-left/bottom-right - * nsStyleCoord pairs. This is used to hold the dimensions of the - * corners of a box (for, e.g., border-radius and outline-radius). - */ -#[repr(C)] -pub struct nsStyleCorners { - pub mUnits: [nsStyleUnit; 8usize], - pub mValues: [nsStyleUnion; 8usize], -} -#[test] -fn bindgen_test_layout_nsStyleCorners() { - assert_eq!(::std::mem::size_of::<nsStyleCorners>() , 72usize); - assert_eq!(::std::mem::align_of::<nsStyleCorners>() , 8usize); -} -pub type nsLoadFlags = u32; -#[repr(C)] -#[derive(Copy)] -pub struct nsIRequest { - pub _base: nsISupports, -} -#[repr(C)] -pub struct _vftable_nsIRequest { - pub _base: _vftable_nsISupports, -} -#[repr(u32)] -#[derive(Debug, Copy, Clone)] -pub enum nsIRequest_nsIRequest_h_unnamed_6 { - LOAD_REQUESTMASK = 65535, - LOAD_NORMAL = 0, - LOAD_BACKGROUND = 1, - INHIBIT_PIPELINE = 64, - INHIBIT_CACHING = 128, - INHIBIT_PERSISTENT_CACHING = 256, - LOAD_BYPASS_CACHE = 512, - LOAD_FROM_CACHE = 1024, - VALIDATE_ALWAYS = 2048, - VALIDATE_NEVER = 4096, - VALIDATE_ONCE_PER_SESSION = 8192, - LOAD_ANONYMOUS = 16384, - LOAD_FRESH_CONNECTION = 32768, -} -impl ::std::clone::Clone for nsIRequest { - fn clone(&self) -> Self { *self } -} pub enum nsIContentSecurityPolicy { } pub enum nsIDOMDocument { } #[repr(C)] @@ -2711,7 +2609,7 @@ fn bindgen_test_layout_nsIPrincipal() { assert_eq!(::std::mem::align_of::<nsIPrincipal>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsIExpandedPrincipal { pub _base: nsISupports, } @@ -2722,120 +2620,8 @@ pub struct _vftable_nsIExpandedPrincipal { impl ::std::clone::Clone for nsIExpandedPrincipal { fn clone(&self) -> Self { *self } } -/** - * This structure precedes the string buffers "we" allocate. It may be the - * case that nsTAString::mData does not point to one of these special - * buffers. The mFlags member variable distinguishes the buffer type. - * - * When this header is in use, it enables reference counting, and capacity - * tracking. NOTE: A string buffer can be modified only if its reference - * count is 1. - */ -#[repr(C)] -pub struct nsStringBuffer { - pub mRefCount: u32, - pub mStorageSize: u32, -} -#[test] -fn bindgen_test_layout_nsStringBuffer() { - assert_eq!(::std::mem::size_of::<nsStringBuffer>() , 8usize); - assert_eq!(::std::mem::align_of::<nsStringBuffer>() , 4usize); -} -#[repr(C)] -#[derive(Copy)] -pub struct nsIAtom { - pub _base: nsISupports, - pub mLength: u32, - pub mHash: u32, - /** - * WARNING! There is an invisible constraint on |mString|: the chars it - * points to must belong to an nsStringBuffer. This is so that the - * nsStringBuffer::FromData() calls above are valid. - */ - pub mString: *mut ::std::os::raw::c_ushort, -} -#[repr(C)] -pub struct _vftable_nsIAtom { - pub _base: _vftable_nsISupports, -} -impl ::std::clone::Clone for nsIAtom { - fn clone(&self) -> Self { *self } -} -#[test] -fn bindgen_test_layout_nsIAtom() { - assert_eq!(::std::mem::size_of::<nsIAtom>() , 24usize); - assert_eq!(::std::mem::align_of::<nsIAtom>() , 8usize); -} -#[repr(C)] -pub struct nsAtomString { - pub _base: nsString, -} -#[test] -fn bindgen_test_layout_nsAtomString() { - assert_eq!(::std::mem::size_of::<nsAtomString>() , 16usize); - assert_eq!(::std::mem::align_of::<nsAtomString>() , 8usize); -} -#[repr(C)] -pub struct nsAtomCString { - pub _base: nsCString, -} -#[test] -fn bindgen_test_layout_nsAtomCString() { - assert_eq!(::std::mem::size_of::<nsAtomCString>() , 16usize); - assert_eq!(::std::mem::align_of::<nsAtomCString>() , 8usize); -} -#[repr(C)] -#[derive(Copy)] -pub struct nsDependentAtomString { - pub _base: [u64; 2usize], -} -impl ::std::clone::Clone for nsDependentAtomString { - fn clone(&self) -> Self { *self } -} -/** - * A class for holding strong references to handle-managed objects. - * - * This is intended for use with objects like StyleSheetHandle, where - * the handle type is not a pointer but which can still have ->AddRef() - * and ->Release() called on it. - */ -#[repr(C)] -pub struct HandleRefPtr<T> { - pub mHandle: T, -} -/** - * A class for holding strong references to nsPresArena-allocated - * objects. - * - * Since the arena's lifetime is not related to the refcounts - * of the objects allocated within it, it is possible to have a strong - * reference to an arena-allocated object that lives until the - * destruction of the arena. An ArenaRefPtr acts like a weak reference - * in that it will clear its referent if the arena is about to go away. - * - * T must be a class that has these two methods: - * - * static mozilla::ArenaObjectID ArenaObjectID(); - * U* Arena(); - * - * where U is a class that has these two methods: - * - * void RegisterArenaRefPtr(ArenaRefPtr<T>*); - * void DeregisterArenaRefPtr(ArenaRefPtr<T>*); - * - * Currently, both nsPresArena and nsIPresShell can be used as U. - * - * The ArenaObjectID method must return the mozilla::ArenaObjectID that - * uniquely identifies T, and the Arena method must return the nsPresArena - * (or a proxy for it) in which the object was allocated. - */ -#[repr(C)] -pub struct ArenaRefPtr<T> { - pub mPtr: RefPtr<T>, - pub _phantom0: ::std::marker::PhantomData<T>, -} #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsIURI { pub _base: nsISupports, } @@ -2935,354 +2721,355 @@ pub enum nsCSSProperty { eCSSProperty_clear = 70, eCSSProperty_clip = 71, eCSSProperty_color = 72, - eCSSProperty__moz_column_count = 73, - eCSSProperty__moz_column_fill = 74, - eCSSProperty__moz_column_width = 75, - eCSSProperty__moz_column_gap = 76, - eCSSProperty__moz_column_rule_color = 77, - eCSSProperty__moz_column_rule_style = 78, - eCSSProperty__moz_column_rule_width = 79, - eCSSProperty_contain = 80, - eCSSProperty_content = 81, - eCSSProperty__moz_control_character_visibility = 82, - eCSSProperty_counter_increment = 83, - eCSSProperty_counter_reset = 84, - eCSSProperty_cursor = 85, - eCSSProperty_direction = 86, - eCSSProperty_display = 87, - eCSSProperty_empty_cells = 88, - eCSSProperty_align_content = 89, - eCSSProperty_align_items = 90, - eCSSProperty_align_self = 91, - eCSSProperty_flex_basis = 92, - eCSSProperty_flex_direction = 93, - eCSSProperty_webkit_box_orient = 94, - eCSSProperty_flex_grow = 95, - eCSSProperty_flex_shrink = 96, - eCSSProperty_flex_wrap = 97, - eCSSProperty_order = 98, - eCSSProperty_justify_content = 99, - eCSSProperty_justify_items = 100, - eCSSProperty_justify_self = 101, - eCSSProperty_float = 102, - eCSSProperty_float_edge = 103, - eCSSProperty_font_family = 104, - eCSSProperty_font_feature_settings = 105, - eCSSProperty_font_kerning = 106, - eCSSProperty_font_language_override = 107, - eCSSProperty_font_size = 108, - eCSSProperty_font_size_adjust = 109, - eCSSProperty_osx_font_smoothing = 110, - eCSSProperty_font_stretch = 111, - eCSSProperty_font_style = 112, - eCSSProperty_font_synthesis = 113, - eCSSProperty_font_variant_alternates = 114, - eCSSProperty_font_variant_caps = 115, - eCSSProperty_font_variant_east_asian = 116, - eCSSProperty_font_variant_ligatures = 117, - eCSSProperty_font_variant_numeric = 118, - eCSSProperty_font_variant_position = 119, - eCSSProperty_font_weight = 120, - eCSSProperty_force_broken_image_icon = 121, - eCSSProperty_grid_auto_flow = 122, - eCSSProperty_grid_auto_columns = 123, - eCSSProperty_grid_auto_rows = 124, - eCSSProperty_grid_template_areas = 125, - eCSSProperty_grid_template_columns = 126, - eCSSProperty_grid_template_rows = 127, - eCSSProperty_grid_column_start = 128, - eCSSProperty_grid_column_end = 129, - eCSSProperty_grid_row_start = 130, - eCSSProperty_grid_row_end = 131, - eCSSProperty_grid_column_gap = 132, - eCSSProperty_grid_row_gap = 133, - eCSSProperty_height = 134, - eCSSProperty_image_orientation = 135, - eCSSProperty_image_region = 136, - eCSSProperty_ime_mode = 137, - eCSSProperty_inline_size = 138, - eCSSProperty_left = 139, - eCSSProperty_letter_spacing = 140, - eCSSProperty_line_height = 141, - eCSSProperty_list_style_image = 142, - eCSSProperty_list_style_position = 143, - eCSSProperty_list_style_type = 144, - eCSSProperty_margin_block_end = 145, - eCSSProperty_margin_block_start = 146, - eCSSProperty_margin_bottom = 147, - eCSSProperty_margin_inline_end = 148, - eCSSProperty_margin_inline_start = 149, - eCSSProperty_margin_left = 150, - eCSSProperty_margin_right = 151, - eCSSProperty_margin_top = 152, - eCSSProperty_marker_offset = 153, - eCSSProperty_max_block_size = 154, - eCSSProperty_max_height = 155, - eCSSProperty_max_inline_size = 156, - eCSSProperty_max_width = 157, - eCSSProperty__moz_min_font_size_ratio = 158, - eCSSProperty_min_height = 159, - eCSSProperty_min_block_size = 160, - eCSSProperty_min_inline_size = 161, - eCSSProperty_min_width = 162, - eCSSProperty_mix_blend_mode = 163, - eCSSProperty_isolation = 164, - eCSSProperty_object_fit = 165, - eCSSProperty_object_position = 166, - eCSSProperty_offset_block_end = 167, - eCSSProperty_offset_block_start = 168, - eCSSProperty_offset_inline_end = 169, - eCSSProperty_offset_inline_start = 170, - eCSSProperty_opacity = 171, - eCSSProperty_orient = 172, - eCSSProperty_outline_color = 173, - eCSSProperty_outline_style = 174, - eCSSProperty_outline_width = 175, - eCSSProperty_outline_offset = 176, - eCSSProperty_overflow_clip_box = 177, - eCSSProperty_overflow_x = 178, - eCSSProperty_overflow_y = 179, - eCSSProperty_padding_block_end = 180, - eCSSProperty_padding_block_start = 181, - eCSSProperty_padding_bottom = 182, - eCSSProperty_padding_inline_end = 183, - eCSSProperty_padding_inline_start = 184, - eCSSProperty_padding_left = 185, - eCSSProperty_padding_right = 186, - eCSSProperty_padding_top = 187, - eCSSProperty_page_break_after = 188, - eCSSProperty_page_break_before = 189, - eCSSProperty_page_break_inside = 190, - eCSSProperty_paint_order = 191, - eCSSProperty_pointer_events = 192, - eCSSProperty_position = 193, - eCSSProperty_quotes = 194, - eCSSProperty_resize = 195, - eCSSProperty_right = 196, - eCSSProperty_ruby_align = 197, - eCSSProperty_ruby_position = 198, - eCSSProperty_scroll_behavior = 199, - eCSSProperty_scroll_snap_coordinate = 200, - eCSSProperty_scroll_snap_destination = 201, - eCSSProperty_scroll_snap_points_x = 202, - eCSSProperty_scroll_snap_points_y = 203, - eCSSProperty_scroll_snap_type_x = 204, - eCSSProperty_scroll_snap_type_y = 205, - eCSSProperty_table_layout = 206, - eCSSProperty_text_align = 207, - eCSSProperty_text_align_last = 208, - eCSSProperty_text_combine_upright = 209, - eCSSProperty_text_decoration_color = 210, - eCSSProperty_text_decoration_line = 211, - eCSSProperty_text_decoration_style = 212, - eCSSProperty_text_emphasis_color = 213, - eCSSProperty_text_emphasis_position = 214, - eCSSProperty_text_emphasis_style = 215, - eCSSProperty__webkit_text_fill_color = 216, - eCSSProperty_text_indent = 217, - eCSSProperty_text_orientation = 218, - eCSSProperty_text_overflow = 219, - eCSSProperty_text_shadow = 220, - eCSSProperty_text_size_adjust = 221, - eCSSProperty_text_transform = 222, - eCSSProperty_transform = 223, - eCSSProperty_transform_box = 224, - eCSSProperty_transform_origin = 225, - eCSSProperty_perspective_origin = 226, - eCSSProperty_perspective = 227, - eCSSProperty_transform_style = 228, - eCSSProperty_backface_visibility = 229, - eCSSProperty_top = 230, - eCSSProperty__moz_top_layer = 231, - eCSSProperty_touch_action = 232, - eCSSProperty_transition_delay = 233, - eCSSProperty_transition_duration = 234, - eCSSProperty_transition_property = 235, - eCSSProperty_transition_timing_function = 236, - eCSSProperty_unicode_bidi = 237, - eCSSProperty_user_focus = 238, - eCSSProperty_user_input = 239, - eCSSProperty_user_modify = 240, - eCSSProperty_user_select = 241, - eCSSProperty_vertical_align = 242, - eCSSProperty_visibility = 243, - eCSSProperty_white_space = 244, - eCSSProperty_width = 245, - eCSSProperty__moz_window_dragging = 246, - eCSSProperty__moz_window_shadow = 247, - eCSSProperty_word_break = 248, - eCSSProperty_word_spacing = 249, - eCSSProperty_word_wrap = 250, - eCSSProperty_hyphens = 251, - eCSSProperty_writing_mode = 252, - eCSSProperty_z_index = 253, - eCSSProperty_box_align = 254, - eCSSProperty_box_direction = 255, - eCSSProperty_box_flex = 256, - eCSSProperty_box_orient = 257, - eCSSProperty_box_pack = 258, - eCSSProperty_box_ordinal_group = 259, - eCSSProperty_stack_sizing = 260, - eCSSProperty_script_level = 261, - eCSSProperty_script_size_multiplier = 262, - eCSSProperty_script_min_size = 263, - eCSSProperty_math_variant = 264, - eCSSProperty_math_display = 265, - eCSSProperty_clip_path = 266, - eCSSProperty_clip_rule = 267, - eCSSProperty_color_interpolation = 268, - eCSSProperty_color_interpolation_filters = 269, - eCSSProperty_dominant_baseline = 270, - eCSSProperty_fill = 271, - eCSSProperty_fill_opacity = 272, - eCSSProperty_fill_rule = 273, - eCSSProperty_filter = 274, - eCSSProperty_flood_color = 275, - eCSSProperty_flood_opacity = 276, - eCSSProperty_image_rendering = 277, - eCSSProperty_lighting_color = 278, - eCSSProperty_marker_end = 279, - eCSSProperty_marker_mid = 280, - eCSSProperty_marker_start = 281, - eCSSProperty_mask = 282, - eCSSProperty_mask_type = 283, - eCSSProperty_shape_rendering = 284, - eCSSProperty_stop_color = 285, - eCSSProperty_stop_opacity = 286, - eCSSProperty_stroke = 287, - eCSSProperty_stroke_dasharray = 288, - eCSSProperty_stroke_dashoffset = 289, - eCSSProperty_stroke_linecap = 290, - eCSSProperty_stroke_linejoin = 291, - eCSSProperty_stroke_miterlimit = 292, - eCSSProperty_stroke_opacity = 293, - eCSSProperty_stroke_width = 294, - eCSSProperty_text_anchor = 295, - eCSSProperty_text_rendering = 296, - eCSSProperty_vector_effect = 297, - eCSSProperty_will_change = 298, - eCSSProperty__x_lang = 299, - eCSSProperty__x_span = 300, - eCSSProperty__x_text_zoom = 301, - eCSSProperty_COUNT_no_shorthands = 302, - eCSSProperty_all = 303, - eCSSProperty_animation = 304, - eCSSProperty_background = 305, - eCSSProperty_border = 306, - eCSSProperty_border_block_end = 307, - eCSSProperty_border_block_start = 308, - eCSSProperty_border_bottom = 309, - eCSSProperty_border_color = 310, - eCSSProperty_border_image = 311, - eCSSProperty_border_inline_end = 312, - eCSSProperty_border_inline_start = 313, - eCSSProperty_border_left = 314, - eCSSProperty_border_right = 315, - eCSSProperty_border_style = 316, - eCSSProperty_border_top = 317, - eCSSProperty_border_width = 318, - eCSSProperty_border_radius = 319, - eCSSProperty__moz_columns = 320, - eCSSProperty__moz_column_rule = 321, - eCSSProperty_flex = 322, - eCSSProperty_flex_flow = 323, - eCSSProperty_font = 324, - eCSSProperty_font_variant = 325, - eCSSProperty_grid = 326, - eCSSProperty_grid_column = 327, - eCSSProperty_grid_row = 328, - eCSSProperty_grid_area = 329, - eCSSProperty_grid_gap = 330, - eCSSProperty_list_style = 331, - eCSSProperty_margin = 332, - eCSSProperty_outline = 333, - eCSSProperty_overflow = 334, - eCSSProperty_padding = 335, - eCSSProperty_scroll_snap_type = 336, - eCSSProperty_text_decoration = 337, - eCSSProperty_text_emphasis = 338, - eCSSProperty_transition = 339, - eCSSProperty_marker = 340, - eCSSProperty__moz_transform = 341, - eCSSProperty_COUNT = 342, - eCSSPropertyAlias_MozPerspectiveOrigin = 343, - eCSSPropertyAlias_MozPerspective = 344, - eCSSPropertyAlias_MozTransformStyle = 345, - eCSSPropertyAlias_MozBackfaceVisibility = 346, - eCSSPropertyAlias_MozBorderImage = 347, - eCSSPropertyAlias_MozTransition = 348, - eCSSPropertyAlias_MozTransitionDelay = 349, - eCSSPropertyAlias_MozTransitionDuration = 350, - eCSSPropertyAlias_MozTransitionProperty = 351, - eCSSPropertyAlias_MozTransitionTimingFunction = 352, - eCSSPropertyAlias_MozAnimation = 353, - eCSSPropertyAlias_MozAnimationDelay = 354, - eCSSPropertyAlias_MozAnimationDirection = 355, - eCSSPropertyAlias_MozAnimationDuration = 356, - eCSSPropertyAlias_MozAnimationFillMode = 357, - eCSSPropertyAlias_MozAnimationIterationCount = 358, - eCSSPropertyAlias_MozAnimationName = 359, - eCSSPropertyAlias_MozAnimationPlayState = 360, - eCSSPropertyAlias_MozAnimationTimingFunction = 361, - eCSSPropertyAlias_MozBoxSizing = 362, - eCSSPropertyAlias_MozFontFeatureSettings = 363, - eCSSPropertyAlias_MozFontLanguageOverride = 364, - eCSSPropertyAlias_MozPaddingEnd = 365, - eCSSPropertyAlias_MozPaddingStart = 366, - eCSSPropertyAlias_MozMarginEnd = 367, - eCSSPropertyAlias_MozMarginStart = 368, - eCSSPropertyAlias_MozBorderEnd = 369, - eCSSPropertyAlias_MozBorderEndColor = 370, - eCSSPropertyAlias_MozBorderEndStyle = 371, - eCSSPropertyAlias_MozBorderEndWidth = 372, - eCSSPropertyAlias_MozBorderStart = 373, - eCSSPropertyAlias_MozBorderStartColor = 374, - eCSSPropertyAlias_MozBorderStartStyle = 375, - eCSSPropertyAlias_MozBorderStartWidth = 376, - eCSSPropertyAlias_MozHyphens = 377, - eCSSPropertyAlias_WebkitAnimation = 378, - eCSSPropertyAlias_WebkitAnimationDelay = 379, - eCSSPropertyAlias_WebkitAnimationDirection = 380, - eCSSPropertyAlias_WebkitAnimationDuration = 381, - eCSSPropertyAlias_WebkitAnimationFillMode = 382, - eCSSPropertyAlias_WebkitAnimationIterationCount = 383, - eCSSPropertyAlias_WebkitAnimationName = 384, - eCSSPropertyAlias_WebkitAnimationPlayState = 385, - eCSSPropertyAlias_WebkitAnimationTimingFunction = 386, - eCSSPropertyAlias_WebkitFilter = 387, - eCSSPropertyAlias_WebkitTextSizeAdjust = 388, - eCSSPropertyAlias_WebkitTransform = 389, - eCSSPropertyAlias_WebkitTransformOrigin = 390, - eCSSPropertyAlias_WebkitTransformStyle = 391, - eCSSPropertyAlias_WebkitBackfaceVisibility = 392, - eCSSPropertyAlias_WebkitPerspective = 393, - eCSSPropertyAlias_WebkitPerspectiveOrigin = 394, - eCSSPropertyAlias_WebkitTransition = 395, - eCSSPropertyAlias_WebkitTransitionDelay = 396, - eCSSPropertyAlias_WebkitTransitionDuration = 397, - eCSSPropertyAlias_WebkitTransitionProperty = 398, - eCSSPropertyAlias_WebkitTransitionTimingFunction = 399, - eCSSPropertyAlias_WebkitBorderRadius = 400, - eCSSPropertyAlias_WebkitBorderTopLeftRadius = 401, - eCSSPropertyAlias_WebkitBorderTopRightRadius = 402, - eCSSPropertyAlias_WebkitBorderBottomLeftRadius = 403, - eCSSPropertyAlias_WebkitBorderBottomRightRadius = 404, - eCSSPropertyAlias_WebkitBackgroundClip = 405, - eCSSPropertyAlias_WebkitBackgroundOrigin = 406, - eCSSPropertyAlias_WebkitBackgroundSize = 407, - eCSSPropertyAlias_WebkitBorderImage = 408, - eCSSPropertyAlias_WebkitBoxShadow = 409, - eCSSPropertyAlias_WebkitBoxSizing = 410, - eCSSPropertyAlias_WebkitBoxFlex = 411, - eCSSPropertyAlias_WebkitBoxOrdinalGroup = 412, - eCSSPropertyAlias_WebkitBoxAlign = 413, - eCSSPropertyAlias_WebkitBoxPack = 414, - eCSSPropertyAlias_WebkitUserSelect = 415, - eCSSProperty_COUNT_with_aliases = 416, - eCSSPropertyExtra_all_properties = 417, - eCSSPropertyExtra_x_none_value = 418, - eCSSPropertyExtra_x_auto_value = 419, - eCSSPropertyExtra_variable = 420, + eCSSProperty_color_adjust = 73, + eCSSProperty__moz_column_count = 74, + eCSSProperty__moz_column_fill = 75, + eCSSProperty__moz_column_width = 76, + eCSSProperty__moz_column_gap = 77, + eCSSProperty__moz_column_rule_color = 78, + eCSSProperty__moz_column_rule_style = 79, + eCSSProperty__moz_column_rule_width = 80, + eCSSProperty_contain = 81, + eCSSProperty_content = 82, + eCSSProperty__moz_control_character_visibility = 83, + eCSSProperty_counter_increment = 84, + eCSSProperty_counter_reset = 85, + eCSSProperty_cursor = 86, + eCSSProperty_direction = 87, + eCSSProperty_display = 88, + eCSSProperty_empty_cells = 89, + eCSSProperty_align_content = 90, + eCSSProperty_align_items = 91, + eCSSProperty_align_self = 92, + eCSSProperty_flex_basis = 93, + eCSSProperty_flex_direction = 94, + eCSSProperty_webkit_box_orient = 95, + eCSSProperty_flex_grow = 96, + eCSSProperty_flex_shrink = 97, + eCSSProperty_flex_wrap = 98, + eCSSProperty_order = 99, + eCSSProperty_justify_content = 100, + eCSSProperty_justify_items = 101, + eCSSProperty_justify_self = 102, + eCSSProperty_float = 103, + eCSSProperty_float_edge = 104, + eCSSProperty_font_family = 105, + eCSSProperty_font_feature_settings = 106, + eCSSProperty_font_kerning = 107, + eCSSProperty_font_language_override = 108, + eCSSProperty_font_size = 109, + eCSSProperty_font_size_adjust = 110, + eCSSProperty_osx_font_smoothing = 111, + eCSSProperty_font_stretch = 112, + eCSSProperty_font_style = 113, + eCSSProperty_font_synthesis = 114, + eCSSProperty_font_variant_alternates = 115, + eCSSProperty_font_variant_caps = 116, + eCSSProperty_font_variant_east_asian = 117, + eCSSProperty_font_variant_ligatures = 118, + eCSSProperty_font_variant_numeric = 119, + eCSSProperty_font_variant_position = 120, + eCSSProperty_font_weight = 121, + eCSSProperty_force_broken_image_icon = 122, + eCSSProperty_grid_auto_flow = 123, + eCSSProperty_grid_auto_columns = 124, + eCSSProperty_grid_auto_rows = 125, + eCSSProperty_grid_template_areas = 126, + eCSSProperty_grid_template_columns = 127, + eCSSProperty_grid_template_rows = 128, + eCSSProperty_grid_column_start = 129, + eCSSProperty_grid_column_end = 130, + eCSSProperty_grid_row_start = 131, + eCSSProperty_grid_row_end = 132, + eCSSProperty_grid_column_gap = 133, + eCSSProperty_grid_row_gap = 134, + eCSSProperty_height = 135, + eCSSProperty_image_orientation = 136, + eCSSProperty_image_region = 137, + eCSSProperty_ime_mode = 138, + eCSSProperty_inline_size = 139, + eCSSProperty_left = 140, + eCSSProperty_letter_spacing = 141, + eCSSProperty_line_height = 142, + eCSSProperty_list_style_image = 143, + eCSSProperty_list_style_position = 144, + eCSSProperty_list_style_type = 145, + eCSSProperty_margin_block_end = 146, + eCSSProperty_margin_block_start = 147, + eCSSProperty_margin_bottom = 148, + eCSSProperty_margin_inline_end = 149, + eCSSProperty_margin_inline_start = 150, + eCSSProperty_margin_left = 151, + eCSSProperty_margin_right = 152, + eCSSProperty_margin_top = 153, + eCSSProperty_marker_offset = 154, + eCSSProperty_max_block_size = 155, + eCSSProperty_max_height = 156, + eCSSProperty_max_inline_size = 157, + eCSSProperty_max_width = 158, + eCSSProperty__moz_min_font_size_ratio = 159, + eCSSProperty_min_height = 160, + eCSSProperty_min_block_size = 161, + eCSSProperty_min_inline_size = 162, + eCSSProperty_min_width = 163, + eCSSProperty_mix_blend_mode = 164, + eCSSProperty_isolation = 165, + eCSSProperty_object_fit = 166, + eCSSProperty_object_position = 167, + eCSSProperty_offset_block_end = 168, + eCSSProperty_offset_block_start = 169, + eCSSProperty_offset_inline_end = 170, + eCSSProperty_offset_inline_start = 171, + eCSSProperty_opacity = 172, + eCSSProperty_orient = 173, + eCSSProperty_outline_color = 174, + eCSSProperty_outline_style = 175, + eCSSProperty_outline_width = 176, + eCSSProperty_outline_offset = 177, + eCSSProperty_overflow_clip_box = 178, + eCSSProperty_overflow_x = 179, + eCSSProperty_overflow_y = 180, + eCSSProperty_padding_block_end = 181, + eCSSProperty_padding_block_start = 182, + eCSSProperty_padding_bottom = 183, + eCSSProperty_padding_inline_end = 184, + eCSSProperty_padding_inline_start = 185, + eCSSProperty_padding_left = 186, + eCSSProperty_padding_right = 187, + eCSSProperty_padding_top = 188, + eCSSProperty_page_break_after = 189, + eCSSProperty_page_break_before = 190, + eCSSProperty_page_break_inside = 191, + eCSSProperty_paint_order = 192, + eCSSProperty_pointer_events = 193, + eCSSProperty_position = 194, + eCSSProperty_quotes = 195, + eCSSProperty_resize = 196, + eCSSProperty_right = 197, + eCSSProperty_ruby_align = 198, + eCSSProperty_ruby_position = 199, + eCSSProperty_scroll_behavior = 200, + eCSSProperty_scroll_snap_coordinate = 201, + eCSSProperty_scroll_snap_destination = 202, + eCSSProperty_scroll_snap_points_x = 203, + eCSSProperty_scroll_snap_points_y = 204, + eCSSProperty_scroll_snap_type_x = 205, + eCSSProperty_scroll_snap_type_y = 206, + eCSSProperty_table_layout = 207, + eCSSProperty_text_align = 208, + eCSSProperty_text_align_last = 209, + eCSSProperty_text_combine_upright = 210, + eCSSProperty_text_decoration_color = 211, + eCSSProperty_text_decoration_line = 212, + eCSSProperty_text_decoration_style = 213, + eCSSProperty_text_emphasis_color = 214, + eCSSProperty_text_emphasis_position = 215, + eCSSProperty_text_emphasis_style = 216, + eCSSProperty__webkit_text_fill_color = 217, + eCSSProperty_text_indent = 218, + eCSSProperty_text_orientation = 219, + eCSSProperty_text_overflow = 220, + eCSSProperty_text_shadow = 221, + eCSSProperty_text_size_adjust = 222, + eCSSProperty_text_transform = 223, + eCSSProperty_transform = 224, + eCSSProperty_transform_box = 225, + eCSSProperty_transform_origin = 226, + eCSSProperty_perspective_origin = 227, + eCSSProperty_perspective = 228, + eCSSProperty_transform_style = 229, + eCSSProperty_backface_visibility = 230, + eCSSProperty_top = 231, + eCSSProperty__moz_top_layer = 232, + eCSSProperty_touch_action = 233, + eCSSProperty_transition_delay = 234, + eCSSProperty_transition_duration = 235, + eCSSProperty_transition_property = 236, + eCSSProperty_transition_timing_function = 237, + eCSSProperty_unicode_bidi = 238, + eCSSProperty_user_focus = 239, + eCSSProperty_user_input = 240, + eCSSProperty_user_modify = 241, + eCSSProperty_user_select = 242, + eCSSProperty_vertical_align = 243, + eCSSProperty_visibility = 244, + eCSSProperty_white_space = 245, + eCSSProperty_width = 246, + eCSSProperty__moz_window_dragging = 247, + eCSSProperty__moz_window_shadow = 248, + eCSSProperty_word_break = 249, + eCSSProperty_word_spacing = 250, + eCSSProperty_word_wrap = 251, + eCSSProperty_hyphens = 252, + eCSSProperty_writing_mode = 253, + eCSSProperty_z_index = 254, + eCSSProperty_box_align = 255, + eCSSProperty_box_direction = 256, + eCSSProperty_box_flex = 257, + eCSSProperty_box_orient = 258, + eCSSProperty_box_pack = 259, + eCSSProperty_box_ordinal_group = 260, + eCSSProperty_stack_sizing = 261, + eCSSProperty_script_level = 262, + eCSSProperty_script_size_multiplier = 263, + eCSSProperty_script_min_size = 264, + eCSSProperty_math_variant = 265, + eCSSProperty_math_display = 266, + eCSSProperty_clip_path = 267, + eCSSProperty_clip_rule = 268, + eCSSProperty_color_interpolation = 269, + eCSSProperty_color_interpolation_filters = 270, + eCSSProperty_dominant_baseline = 271, + eCSSProperty_fill = 272, + eCSSProperty_fill_opacity = 273, + eCSSProperty_fill_rule = 274, + eCSSProperty_filter = 275, + eCSSProperty_flood_color = 276, + eCSSProperty_flood_opacity = 277, + eCSSProperty_image_rendering = 278, + eCSSProperty_lighting_color = 279, + eCSSProperty_marker_end = 280, + eCSSProperty_marker_mid = 281, + eCSSProperty_marker_start = 282, + eCSSProperty_mask = 283, + eCSSProperty_mask_type = 284, + eCSSProperty_shape_rendering = 285, + eCSSProperty_stop_color = 286, + eCSSProperty_stop_opacity = 287, + eCSSProperty_stroke = 288, + eCSSProperty_stroke_dasharray = 289, + eCSSProperty_stroke_dashoffset = 290, + eCSSProperty_stroke_linecap = 291, + eCSSProperty_stroke_linejoin = 292, + eCSSProperty_stroke_miterlimit = 293, + eCSSProperty_stroke_opacity = 294, + eCSSProperty_stroke_width = 295, + eCSSProperty_text_anchor = 296, + eCSSProperty_text_rendering = 297, + eCSSProperty_vector_effect = 298, + eCSSProperty_will_change = 299, + eCSSProperty__x_lang = 300, + eCSSProperty__x_span = 301, + eCSSProperty__x_text_zoom = 302, + eCSSProperty_COUNT_no_shorthands = 303, + eCSSProperty_all = 304, + eCSSProperty_animation = 305, + eCSSProperty_background = 306, + eCSSProperty_border = 307, + eCSSProperty_border_block_end = 308, + eCSSProperty_border_block_start = 309, + eCSSProperty_border_bottom = 310, + eCSSProperty_border_color = 311, + eCSSProperty_border_image = 312, + eCSSProperty_border_inline_end = 313, + eCSSProperty_border_inline_start = 314, + eCSSProperty_border_left = 315, + eCSSProperty_border_right = 316, + eCSSProperty_border_style = 317, + eCSSProperty_border_top = 318, + eCSSProperty_border_width = 319, + eCSSProperty_border_radius = 320, + eCSSProperty__moz_columns = 321, + eCSSProperty__moz_column_rule = 322, + eCSSProperty_flex = 323, + eCSSProperty_flex_flow = 324, + eCSSProperty_font = 325, + eCSSProperty_font_variant = 326, + eCSSProperty_grid = 327, + eCSSProperty_grid_column = 328, + eCSSProperty_grid_row = 329, + eCSSProperty_grid_area = 330, + eCSSProperty_grid_gap = 331, + eCSSProperty_list_style = 332, + eCSSProperty_margin = 333, + eCSSProperty_outline = 334, + eCSSProperty_overflow = 335, + eCSSProperty_padding = 336, + eCSSProperty_scroll_snap_type = 337, + eCSSProperty_text_decoration = 338, + eCSSProperty_text_emphasis = 339, + eCSSProperty_transition = 340, + eCSSProperty_marker = 341, + eCSSProperty__moz_transform = 342, + eCSSProperty_COUNT = 343, + eCSSPropertyAlias_MozPerspectiveOrigin = 344, + eCSSPropertyAlias_MozPerspective = 345, + eCSSPropertyAlias_MozTransformStyle = 346, + eCSSPropertyAlias_MozBackfaceVisibility = 347, + eCSSPropertyAlias_MozBorderImage = 348, + eCSSPropertyAlias_MozTransition = 349, + eCSSPropertyAlias_MozTransitionDelay = 350, + eCSSPropertyAlias_MozTransitionDuration = 351, + eCSSPropertyAlias_MozTransitionProperty = 352, + eCSSPropertyAlias_MozTransitionTimingFunction = 353, + eCSSPropertyAlias_MozAnimation = 354, + eCSSPropertyAlias_MozAnimationDelay = 355, + eCSSPropertyAlias_MozAnimationDirection = 356, + eCSSPropertyAlias_MozAnimationDuration = 357, + eCSSPropertyAlias_MozAnimationFillMode = 358, + eCSSPropertyAlias_MozAnimationIterationCount = 359, + eCSSPropertyAlias_MozAnimationName = 360, + eCSSPropertyAlias_MozAnimationPlayState = 361, + eCSSPropertyAlias_MozAnimationTimingFunction = 362, + eCSSPropertyAlias_MozBoxSizing = 363, + eCSSPropertyAlias_MozFontFeatureSettings = 364, + eCSSPropertyAlias_MozFontLanguageOverride = 365, + eCSSPropertyAlias_MozPaddingEnd = 366, + eCSSPropertyAlias_MozPaddingStart = 367, + eCSSPropertyAlias_MozMarginEnd = 368, + eCSSPropertyAlias_MozMarginStart = 369, + eCSSPropertyAlias_MozBorderEnd = 370, + eCSSPropertyAlias_MozBorderEndColor = 371, + eCSSPropertyAlias_MozBorderEndStyle = 372, + eCSSPropertyAlias_MozBorderEndWidth = 373, + eCSSPropertyAlias_MozBorderStart = 374, + eCSSPropertyAlias_MozBorderStartColor = 375, + eCSSPropertyAlias_MozBorderStartStyle = 376, + eCSSPropertyAlias_MozBorderStartWidth = 377, + eCSSPropertyAlias_MozHyphens = 378, + eCSSPropertyAlias_WebkitAnimation = 379, + eCSSPropertyAlias_WebkitAnimationDelay = 380, + eCSSPropertyAlias_WebkitAnimationDirection = 381, + eCSSPropertyAlias_WebkitAnimationDuration = 382, + eCSSPropertyAlias_WebkitAnimationFillMode = 383, + eCSSPropertyAlias_WebkitAnimationIterationCount = 384, + eCSSPropertyAlias_WebkitAnimationName = 385, + eCSSPropertyAlias_WebkitAnimationPlayState = 386, + eCSSPropertyAlias_WebkitAnimationTimingFunction = 387, + eCSSPropertyAlias_WebkitFilter = 388, + eCSSPropertyAlias_WebkitTextSizeAdjust = 389, + eCSSPropertyAlias_WebkitTransform = 390, + eCSSPropertyAlias_WebkitTransformOrigin = 391, + eCSSPropertyAlias_WebkitTransformStyle = 392, + eCSSPropertyAlias_WebkitBackfaceVisibility = 393, + eCSSPropertyAlias_WebkitPerspective = 394, + eCSSPropertyAlias_WebkitPerspectiveOrigin = 395, + eCSSPropertyAlias_WebkitTransition = 396, + eCSSPropertyAlias_WebkitTransitionDelay = 397, + eCSSPropertyAlias_WebkitTransitionDuration = 398, + eCSSPropertyAlias_WebkitTransitionProperty = 399, + eCSSPropertyAlias_WebkitTransitionTimingFunction = 400, + eCSSPropertyAlias_WebkitBorderRadius = 401, + eCSSPropertyAlias_WebkitBorderTopLeftRadius = 402, + eCSSPropertyAlias_WebkitBorderTopRightRadius = 403, + eCSSPropertyAlias_WebkitBorderBottomLeftRadius = 404, + eCSSPropertyAlias_WebkitBorderBottomRightRadius = 405, + eCSSPropertyAlias_WebkitBackgroundClip = 406, + eCSSPropertyAlias_WebkitBackgroundOrigin = 407, + eCSSPropertyAlias_WebkitBackgroundSize = 408, + eCSSPropertyAlias_WebkitBorderImage = 409, + eCSSPropertyAlias_WebkitBoxShadow = 410, + eCSSPropertyAlias_WebkitBoxSizing = 411, + eCSSPropertyAlias_WebkitBoxFlex = 412, + eCSSPropertyAlias_WebkitBoxOrdinalGroup = 413, + eCSSPropertyAlias_WebkitBoxAlign = 414, + eCSSPropertyAlias_WebkitBoxPack = 415, + eCSSPropertyAlias_WebkitUserSelect = 416, + eCSSProperty_COUNT_with_aliases = 417, + eCSSPropertyExtra_all_properties = 418, + eCSSPropertyExtra_x_none_value = 419, + eCSSPropertyExtra_x_auto_value = 420, + eCSSPropertyExtra_variable = 421, } #[repr(i32)] #[derive(Debug, Copy, Clone)] @@ -3331,6 +3118,26 @@ pub enum nsCSSPropertyLogicalGroup { eCSSPropertyLogicalGroup_WebkitBoxOrient = 9, eCSSPropertyLogicalGroup_COUNT = 10, } +pub type nscolor = u32; +/** + * This structure precedes the string buffers "we" allocate. It may be the + * case that nsTAString::mData does not point to one of these special + * buffers. The mFlags member variable distinguishes the buffer type. + * + * When this header is in use, it enables reference counting, and capacity + * tracking. NOTE: A string buffer can be modified only if its reference + * count is 1. + */ +#[repr(C)] +pub struct nsStringBuffer { + pub mRefCount: u32, + pub mStorageSize: u32, +} +#[test] +fn bindgen_test_layout_nsStringBuffer() { + assert_eq!(::std::mem::size_of::<nsStringBuffer>() , 8usize); + assert_eq!(::std::mem::align_of::<nsStringBuffer>() , 4usize); +} pub enum CSSStyleSheet { } #[repr(C)] pub struct URLValue { @@ -3475,21 +3282,48 @@ pub enum nsCSSUnit { #[repr(C)] pub struct nsCSSValue { pub mUnit: nsCSSUnit, - pub mValue: nsCSSValue_nsCSSValue_h_unnamed_8, + pub mValue: nsCSSValue_nsCSSValue_h_unnamed_7, } #[repr(u32)] #[derive(Debug, Copy, Clone)] pub enum nsCSSValue_Serialization { eNormalized = 0, eAuthorSpecified = 1, } #[repr(C)] #[derive(Copy, Debug)] -pub struct nsCSSValue_nsCSSValue_h_unnamed_8 { +pub struct nsCSSValue_nsCSSValue_h_unnamed_7 { + pub mInt: __BindgenUnionField<i32>, + pub mFloat: __BindgenUnionField<f32>, + pub mString: __BindgenUnionField<*mut nsStringBuffer>, + pub mColor: __BindgenUnionField<nscolor>, + pub mArray: __BindgenUnionField<*mut Array>, + pub mURL: __BindgenUnionField<*mut URLValue>, + pub mImage: __BindgenUnionField<*mut ImageValue>, + pub mGridTemplateAreas: __BindgenUnionField<*mut GridTemplateAreasValue>, + pub mGradient: __BindgenUnionField<*mut nsCSSValueGradient>, + pub mTokenStream: __BindgenUnionField<*mut nsCSSValueTokenStream>, + pub mPair: __BindgenUnionField<*mut nsCSSValuePair_heap>, + pub mRect: __BindgenUnionField<*mut nsCSSRect_heap>, + pub mTriplet: __BindgenUnionField<*mut nsCSSValueTriplet_heap>, + pub mList: __BindgenUnionField<*mut nsCSSValueList_heap>, + pub mListDependent: __BindgenUnionField<*mut nsCSSValueList>, + pub mSharedList: __BindgenUnionField<*mut nsCSSValueSharedList>, + pub mPairList: __BindgenUnionField<*mut nsCSSValuePairList_heap>, + pub mPairListDependent: __BindgenUnionField<*mut nsCSSValuePairList>, + pub mFloatColor: __BindgenUnionField<*mut nsCSSValueFloatColor>, + pub mFontFamilyList: __BindgenUnionField<*mut FontFamilyListRefCnt>, pub _bindgen_data_: u64, } -impl nsCSSValue_nsCSSValue_h_unnamed_8 { } -impl ::std::clone::Clone for nsCSSValue_nsCSSValue_h_unnamed_8 { +impl nsCSSValue_nsCSSValue_h_unnamed_7 { } +impl ::std::clone::Clone for nsCSSValue_nsCSSValue_h_unnamed_7 { fn clone(&self) -> Self { *self } } #[test] +fn bindgen_test_layout_nsCSSValue_nsCSSValue_h_unnamed_7() { + assert_eq!(::std::mem::size_of::<nsCSSValue_nsCSSValue_h_unnamed_7>() , + 8usize); + assert_eq!(::std::mem::align_of::<nsCSSValue_nsCSSValue_h_unnamed_7>() , + 8usize); +} +#[test] fn bindgen_test_layout_nsCSSValue() { assert_eq!(::std::mem::size_of::<nsCSSValue>() , 16usize); assert_eq!(::std::mem::align_of::<nsCSSValue>() , 8usize); @@ -3699,44 +3533,12 @@ fn bindgen_test_layout_nsCSSCornerSizes() { assert_eq!(::std::mem::size_of::<nsCSSCornerSizes>() , 64usize); assert_eq!(::std::mem::align_of::<nsCSSCornerSizes>() , 8usize); } -pub enum imgIContainer { } -#[repr(C)] -pub struct imgIRequest { - pub _bindgen_opaque_blob: u64, -} -#[test] -fn bindgen_test_layout_imgIRequest() { - assert_eq!(::std::mem::size_of::<imgIRequest>() , 8usize); - assert_eq!(::std::mem::align_of::<imgIRequest>() , 8usize); -} -pub enum imgStatusNotifyRunnable { } -pub enum ProxyBehaviour { } -pub enum Image { } -pub enum ImageURL { } -pub enum ProgressTracker { } -#[repr(C)] -pub struct imgRequestProxy { - pub _bindgen_opaque_blob: [u64; 15usize], -} -#[test] -fn bindgen_test_layout_imgRequestProxy() { - assert_eq!(::std::mem::size_of::<imgRequestProxy>() , 120usize); - assert_eq!(::std::mem::align_of::<imgRequestProxy>() , 8usize); -} -#[repr(C)] -pub struct imgRequestProxyStatic { - pub _bindgen_opaque_blob: [u64; 16usize], -} -#[test] -fn bindgen_test_layout_imgRequestProxyStatic() { - assert_eq!(::std::mem::size_of::<imgRequestProxyStatic>() , 128usize); - assert_eq!(::std::mem::align_of::<imgRequestProxyStatic>() , 8usize); -} +pub enum WritingMode { } pub type CounterValue = i32; pub enum NegativeType { } pub enum PadType { } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct CounterStyle { pub _vftable: *const _vftable_CounterStyle, pub mStyle: i32, @@ -3780,6 +3582,291 @@ fn bindgen_test_layout_CounterStyleManager() { assert_eq!(::std::mem::size_of::<CounterStyleManager>() , 72usize); assert_eq!(::std::mem::align_of::<CounterStyleManager>() , 8usize); } +pub type nsLoadFlags = u32; +#[repr(C)] +#[derive(Debug, Copy)] +pub struct nsIRequest { + pub _base: nsISupports, +} +#[repr(C)] +pub struct _vftable_nsIRequest { + pub _base: _vftable_nsISupports, +} +#[repr(u32)] +#[derive(Debug, Copy, Clone)] +pub enum nsIRequest_nsIRequest_h_unnamed_8 { + LOAD_REQUESTMASK = 65535, + LOAD_NORMAL = 0, + LOAD_BACKGROUND = 1, + INHIBIT_PIPELINE = 64, + INHIBIT_CACHING = 128, + INHIBIT_PERSISTENT_CACHING = 256, + LOAD_BYPASS_CACHE = 512, + LOAD_FROM_CACHE = 1024, + VALIDATE_ALWAYS = 2048, + VALIDATE_NEVER = 4096, + VALIDATE_ONCE_PER_SESSION = 8192, + LOAD_ANONYMOUS = 16384, + LOAD_FRESH_CONNECTION = 32768, +} +impl ::std::clone::Clone for nsIRequest { + fn clone(&self) -> Self { *self } +} +#[repr(C)] +#[derive(Debug, Copy)] +pub struct nsIAtom { + pub _base: nsISupports, + pub _bitfield_1: u32, + pub mHash: u32, + /** + * WARNING! There is an invisible constraint on |mString|: the chars it + * points to must belong to an nsStringBuffer. This is so that the + * nsStringBuffer::FromData() calls above are valid. + */ + pub mString: *mut ::std::os::raw::c_ushort, +} +#[repr(C)] +pub struct _vftable_nsIAtom { + pub _base: _vftable_nsISupports, +} +impl ::std::clone::Clone for nsIAtom { + fn clone(&self) -> Self { *self } +} +#[test] +fn bindgen_test_layout_nsIAtom() { + assert_eq!(::std::mem::size_of::<nsIAtom>() , 24usize); + assert_eq!(::std::mem::align_of::<nsIAtom>() , 8usize); +} +#[repr(C)] +pub struct nsAtomString { + pub _base: nsString, +} +#[test] +fn bindgen_test_layout_nsAtomString() { + assert_eq!(::std::mem::size_of::<nsAtomString>() , 16usize); + assert_eq!(::std::mem::align_of::<nsAtomString>() , 8usize); +} +#[repr(C)] +pub struct nsAtomCString { + pub _base: nsCString, +} +#[test] +fn bindgen_test_layout_nsAtomCString() { + assert_eq!(::std::mem::size_of::<nsAtomCString>() , 16usize); + assert_eq!(::std::mem::align_of::<nsAtomCString>() , 8usize); +} +#[repr(C)] +#[derive(Debug, Copy)] +pub struct nsDependentAtomString { + pub _base: [u64; 2usize], +} +impl ::std::clone::Clone for nsDependentAtomString { + fn clone(&self) -> Self { *self } +} +/** + * A class for holding strong references to handle-managed objects. + * + * This is intended for use with objects like StyleSheetHandle, where + * the handle type is not a pointer but which can still have ->AddRef() + * and ->Release() called on it. + */ +#[repr(C)] +pub struct HandleRefPtr<T> { + pub mHandle: T, +} +/** + * A class for holding strong references to nsPresArena-allocated + * objects. + * + * Since the arena's lifetime is not related to the refcounts + * of the objects allocated within it, it is possible to have a strong + * reference to an arena-allocated object that lives until the + * destruction of the arena. An ArenaRefPtr acts like a weak reference + * in that it will clear its referent if the arena is about to go away. + * + * T must be a class that has these two methods: + * + * static mozilla::ArenaObjectID ArenaObjectID(); + * U* Arena(); + * + * where U is a class that has these two methods: + * + * void RegisterArenaRefPtr(ArenaRefPtr<T>*); + * void DeregisterArenaRefPtr(ArenaRefPtr<T>*); + * + * Currently, both nsPresArena and nsIPresShell can be used as U. + * + * The ArenaObjectID method must return the mozilla::ArenaObjectID that + * uniquely identifies T, and the Arena method must return the nsPresArena + * (or a proxy for it) in which the object was allocated. + */ +#[repr(C)] +pub struct ArenaRefPtr<T> { + pub mPtr: RefPtr<T>, + pub _phantom0: ::std::marker::PhantomData<T>, +} +#[repr(u32)] +#[derive(Debug, Copy, Clone)] +pub enum LogicalAxis { eLogicalAxisBlock = 0, eLogicalAxisInline = 1, } +#[repr(u32)] +#[derive(Debug, Copy, Clone)] +pub enum LogicalEdge { eLogicalEdgeStart = 0, eLogicalEdgeEnd = 1, } +#[repr(u32)] +#[derive(Debug, Copy, Clone)] +pub enum LogicalSide { + eLogicalSideBStart = 0, + eLogicalSideBEnd = 1, + eLogicalSideIStart = 2, + eLogicalSideIEnd = 3, +} +pub const eStyleUnit_MAX: nsStyleUnit = nsStyleUnit::eStyleUnit_Calc; +#[repr(i8)] +#[derive(Debug, Copy, Clone)] +pub enum nsStyleUnit { + eStyleUnit_Null = 0, + eStyleUnit_Normal = 1, + eStyleUnit_Auto = 2, + eStyleUnit_None = 3, + eStyleUnit_Percent = 10, + eStyleUnit_Factor = 11, + eStyleUnit_Degree = 12, + eStyleUnit_Grad = 13, + eStyleUnit_Radian = 14, + eStyleUnit_Turn = 15, + eStyleUnit_FlexFraction = 16, + eStyleUnit_Coord = 20, + eStyleUnit_Integer = 30, + eStyleUnit_Enumerated = 32, + eStyleUnit_Calc = 40, +} +#[repr(C)] +#[derive(Copy, Debug)] +pub struct nsStyleCoord_h_unnamed_9 { + pub mInt: __BindgenUnionField<i32>, + pub mFloat: __BindgenUnionField<f32>, + pub mPointer: __BindgenUnionField<*mut ::std::os::raw::c_void>, + pub _bindgen_data_: u64, +} +impl nsStyleCoord_h_unnamed_9 { } +impl ::std::clone::Clone for nsStyleCoord_h_unnamed_9 { + fn clone(&self) -> Self { *self } +} +#[test] +fn bindgen_test_layout_nsStyleCoord_h_unnamed_9() { + assert_eq!(::std::mem::size_of::<nsStyleCoord_h_unnamed_9>() , 8usize); + assert_eq!(::std::mem::align_of::<nsStyleCoord_h_unnamed_9>() , 8usize); +} +pub type nsStyleUnion = nsStyleCoord_h_unnamed_9; +/** + * Class that hold a single size specification used by the style + * system. The size specification consists of two parts -- a number + * and a unit. The number is an integer, a floating point value, an + * nscoord, or undefined, and the unit is an nsStyleUnit. Checking + * the unit is a must before asking for the value in any particular + * form. + */ +#[repr(C)] +pub struct nsStyleCoord { + pub mUnit: nsStyleUnit, + pub mValue: nsStyleUnion, +} +#[repr(C)] +#[derive(Debug, Copy)] +pub struct nsStyleCoord_CalcValue { + pub mLength: nscoord, + pub mPercent: f32, + pub mHasPercent: bool, +} +impl ::std::clone::Clone for nsStyleCoord_CalcValue { + fn clone(&self) -> Self { *self } +} +#[test] +fn bindgen_test_layout_nsStyleCoord_CalcValue() { + assert_eq!(::std::mem::size_of::<nsStyleCoord_CalcValue>() , 12usize); + assert_eq!(::std::mem::align_of::<nsStyleCoord_CalcValue>() , 4usize); +} +#[repr(C)] +pub struct nsStyleCoord_Calc { + pub _base: nsStyleCoord_CalcValue, + pub mRefCnt: nsAutoRefCnt, + pub _mOwningThread: nsAutoOwningThread, +} +#[test] +fn bindgen_test_layout_nsStyleCoord_Calc() { + assert_eq!(::std::mem::size_of::<nsStyleCoord_Calc>() , 32usize); + assert_eq!(::std::mem::align_of::<nsStyleCoord_Calc>() , 8usize); +} +#[repr(u32)] +#[derive(Debug, Copy, Clone)] +pub enum nsStyleCoord_CoordConstructorType { CoordConstructor = 0, } +#[test] +fn bindgen_test_layout_nsStyleCoord() { + assert_eq!(::std::mem::size_of::<nsStyleCoord>() , 16usize); + assert_eq!(::std::mem::align_of::<nsStyleCoord>() , 8usize); +} +/** + * Class that represents a set of top/right/bottom/left nsStyleCoords. + * This is commonly used to hold the widths of the borders, margins, + * or paddings of a box. + */ +#[repr(C)] +pub struct nsStyleSides { + pub mUnits: [nsStyleUnit; 4usize], + pub mValues: [nsStyleUnion; 4usize], +} +#[test] +fn bindgen_test_layout_nsStyleSides() { + assert_eq!(::std::mem::size_of::<nsStyleSides>() , 40usize); + assert_eq!(::std::mem::align_of::<nsStyleSides>() , 8usize); +} +/** + * Class that represents a set of top-left/top-right/bottom-left/bottom-right + * nsStyleCoord pairs. This is used to hold the dimensions of the + * corners of a box (for, e.g., border-radius and outline-radius). + */ +#[repr(C)] +pub struct nsStyleCorners { + pub mUnits: [nsStyleUnit; 8usize], + pub mValues: [nsStyleUnion; 8usize], +} +#[test] +fn bindgen_test_layout_nsStyleCorners() { + assert_eq!(::std::mem::size_of::<nsStyleCorners>() , 72usize); + assert_eq!(::std::mem::align_of::<nsStyleCorners>() , 8usize); +} +pub enum imgIContainer { } +#[repr(C)] +pub struct imgIRequest { + pub _bindgen_opaque_blob: u64, +} +#[test] +fn bindgen_test_layout_imgIRequest() { + assert_eq!(::std::mem::size_of::<imgIRequest>() , 8usize); + assert_eq!(::std::mem::align_of::<imgIRequest>() , 8usize); +} +pub enum imgStatusNotifyRunnable { } +pub enum ProxyBehaviour { } +pub enum Image { } +pub enum ImageURL { } +pub enum ProgressTracker { } +#[repr(C)] +pub struct imgRequestProxy { + pub _bindgen_opaque_blob: [u64; 15usize], +} +#[test] +fn bindgen_test_layout_imgRequestProxy() { + assert_eq!(::std::mem::size_of::<imgRequestProxy>() , 120usize); + assert_eq!(::std::mem::align_of::<imgRequestProxy>() , 8usize); +} +#[repr(C)] +pub struct imgRequestProxyStatic { + pub _bindgen_opaque_blob: [u64; 16usize], +} +#[test] +fn bindgen_test_layout_imgRequestProxyStatic() { + assert_eq!(::std::mem::size_of::<imgRequestProxyStatic>() , 128usize); + assert_eq!(::std::mem::align_of::<imgRequestProxyStatic>() , 8usize); +} pub enum nsIFrame { } pub enum nsStyleContext { } pub enum nsTextFrame { } @@ -3857,20 +3944,30 @@ pub enum nsStyleImageType { pub struct nsStyleImage { pub mSubImages: u64, pub mType: nsStyleImageType, - pub nsStyleStruct_h_unnamed_11: nsStyleImage_nsStyleStruct_h_unnamed_11, + pub nsStyleImage_nsStyleStruct_h_unnamed_12: nsStyleImage_nsStyleStruct_h_unnamed_12, pub mCropRect: nsAutoPtr<nsStyleSides>, pub mImageTracked: bool, } #[repr(C)] #[derive(Copy, Debug)] -pub struct nsStyleImage_nsStyleStruct_h_unnamed_11 { +pub struct nsStyleImage_nsStyleStruct_h_unnamed_12 { + pub mImage: __BindgenUnionField<*mut imgRequestProxy>, + pub mGradient: __BindgenUnionField<*mut nsStyleGradient>, + pub mElementId: __BindgenUnionField<*mut ::std::os::raw::c_ushort>, pub _bindgen_data_: u64, } -impl nsStyleImage_nsStyleStruct_h_unnamed_11 { } -impl ::std::clone::Clone for nsStyleImage_nsStyleStruct_h_unnamed_11 { +impl nsStyleImage_nsStyleStruct_h_unnamed_12 { } +impl ::std::clone::Clone for nsStyleImage_nsStyleStruct_h_unnamed_12 { fn clone(&self) -> Self { *self } } #[test] +fn bindgen_test_layout_nsStyleImage_nsStyleStruct_h_unnamed_12() { + assert_eq!(::std::mem::size_of::<nsStyleImage_nsStyleStruct_h_unnamed_12>() + , 8usize); + assert_eq!(::std::mem::align_of::<nsStyleImage_nsStyleStruct_h_unnamed_12>() + , 8usize); +} +#[test] fn bindgen_test_layout_nsStyleImage() { assert_eq!(::std::mem::size_of::<nsStyleImage>() , 40usize); assert_eq!(::std::mem::align_of::<nsStyleImage>() , 8usize); @@ -3900,7 +3997,7 @@ pub struct nsStyleImageLayers { } #[repr(u32)] #[derive(Debug, Copy, Clone)] -pub enum nsStyleImageLayers_nsStyleStruct_h_unnamed_12 { +pub enum nsStyleImageLayers_nsStyleStruct_h_unnamed_13 { shorthand = 0, color = 1, image = 2, @@ -3914,7 +4011,7 @@ pub enum nsStyleImageLayers_nsStyleStruct_h_unnamed_12 { composite = 10, } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsStyleImageLayers_Position { pub mXPosition: nsStyleCoord_CalcValue, pub mYPosition: nsStyleCoord_CalcValue, @@ -3930,7 +4027,7 @@ fn bindgen_test_layout_nsStyleImageLayers_Position() { 4usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsStyleImageLayers_Size { pub mWidth: nsStyleImageLayers_Size_Dimension, pub mHeight: nsStyleImageLayers_Size_Dimension, @@ -3938,7 +4035,7 @@ pub struct nsStyleImageLayers_Size { pub mHeightType: u8, } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsStyleImageLayers_Size_Dimension { pub _base: nsStyleCoord_CalcValue, } @@ -3970,7 +4067,7 @@ fn bindgen_test_layout_nsStyleImageLayers_Size() { assert_eq!(::std::mem::align_of::<nsStyleImageLayers_Size>() , 4usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsStyleImageLayers_Repeat { pub mXRepeat: u8, pub mYRepeat: u8, @@ -4269,7 +4366,7 @@ fn bindgen_test_layout_nsStyleText() { assert_eq!(::std::mem::align_of::<nsStyleText>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsStyleImageOrientation { pub mOrientation: u8, } @@ -4304,17 +4401,18 @@ pub struct nsStyleVisibility { pub mPointerEvents: u8, pub mWritingMode: u8, pub mTextOrientation: u8, + pub mColorAdjust: u8, } #[test] fn bindgen_test_layout_nsStyleVisibility() { - assert_eq!(::std::mem::size_of::<nsStyleVisibility>() , 6usize); + assert_eq!(::std::mem::size_of::<nsStyleVisibility>() , 7usize); assert_eq!(::std::mem::align_of::<nsStyleVisibility>() , 1usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsTimingFunction { pub mType: nsTimingFunction_Type, - pub nsStyleStruct_h_unnamed_13: nsTimingFunction_nsStyleStruct_h_unnamed_13, + pub nsTimingFunction_nsStyleStruct_h_unnamed_14: nsTimingFunction_nsStyleStruct_h_unnamed_14, } #[repr(i32)] #[derive(Debug, Copy, Clone)] @@ -4341,13 +4439,58 @@ pub enum nsTimingFunction_StepSyntax { pub enum nsTimingFunction_Keyword { Implicit = 0, Explicit = 1, } #[repr(C)] #[derive(Copy, Debug)] -pub struct nsTimingFunction_nsStyleStruct_h_unnamed_13 { +pub struct nsTimingFunction_nsStyleStruct_h_unnamed_14 { + pub mFunc: __BindgenUnionField<nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_15>, + pub nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_16: __BindgenUnionField<nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_16>, pub _bindgen_data_: [u32; 4usize], } -impl nsTimingFunction_nsStyleStruct_h_unnamed_13 { } -impl ::std::clone::Clone for nsTimingFunction_nsStyleStruct_h_unnamed_13 { +impl nsTimingFunction_nsStyleStruct_h_unnamed_14 { } +impl ::std::clone::Clone for nsTimingFunction_nsStyleStruct_h_unnamed_14 { fn clone(&self) -> Self { *self } } +#[test] +fn bindgen_test_layout_nsTimingFunction_nsStyleStruct_h_unnamed_14() { + assert_eq!(::std::mem::size_of::<nsTimingFunction_nsStyleStruct_h_unnamed_14>() + , 16usize); + assert_eq!(::std::mem::align_of::<nsTimingFunction_nsStyleStruct_h_unnamed_14>() + , 4usize); +} +#[repr(C)] +#[derive(Debug, Copy)] +pub struct nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_15 { + pub mX1: f32, + pub mY1: f32, + pub mX2: f32, + pub mY2: f32, +} +impl ::std::clone::Clone for + nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_15 { + fn clone(&self) -> Self { *self } +} +#[test] +fn bindgen_test_layout_nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_15() { + assert_eq!(::std::mem::size_of::<nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_15>() + , 16usize); + assert_eq!(::std::mem::align_of::<nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_15>() + , 4usize); +} +#[repr(C)] +#[derive(Debug, Copy)] +pub struct nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_16 { + pub mStepSyntax: nsTimingFunction_StepSyntax, + pub mSteps: u32, +} +impl ::std::clone::Clone for + nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_16 { + fn clone(&self) -> Self { *self } +} +#[test] +fn bindgen_test_layout_nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_16() { + assert_eq!(::std::mem::size_of::<nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_16>() + , 8usize); + assert_eq!(::std::mem::align_of::<nsTimingFunction_nsStyleStruct_h_unnamed_14_nsStyleStruct_h_unnamed_16>() + , 4usize); +} impl ::std::clone::Clone for nsTimingFunction { fn clone(&self) -> Self { *self } } @@ -4488,19 +4631,29 @@ pub enum nsStyleContentType { #[repr(C)] pub struct nsStyleContentData { pub mType: nsStyleContentType, - pub mContent: nsStyleContentData_nsStyleStruct_h_unnamed_16, + pub mContent: nsStyleContentData_nsStyleStruct_h_unnamed_17, pub mImageTracked: bool, } #[repr(C)] #[derive(Copy, Debug)] -pub struct nsStyleContentData_nsStyleStruct_h_unnamed_16 { +pub struct nsStyleContentData_nsStyleStruct_h_unnamed_17 { + pub mString: __BindgenUnionField<*mut ::std::os::raw::c_ushort>, + pub mImage: __BindgenUnionField<*mut imgRequestProxy>, + pub mCounters: __BindgenUnionField<*mut Array>, pub _bindgen_data_: u64, } -impl nsStyleContentData_nsStyleStruct_h_unnamed_16 { } -impl ::std::clone::Clone for nsStyleContentData_nsStyleStruct_h_unnamed_16 { +impl nsStyleContentData_nsStyleStruct_h_unnamed_17 { } +impl ::std::clone::Clone for nsStyleContentData_nsStyleStruct_h_unnamed_17 { fn clone(&self) -> Self { *self } } #[test] +fn bindgen_test_layout_nsStyleContentData_nsStyleStruct_h_unnamed_17() { + assert_eq!(::std::mem::size_of::<nsStyleContentData_nsStyleStruct_h_unnamed_17>() + , 8usize); + assert_eq!(::std::mem::align_of::<nsStyleContentData_nsStyleStruct_h_unnamed_17>() + , 8usize); +} +#[test] fn bindgen_test_layout_nsStyleContentData() { assert_eq!(::std::mem::size_of::<nsStyleContentData>() , 24usize); assert_eq!(::std::mem::align_of::<nsStyleContentData>() , 8usize); @@ -4629,20 +4782,29 @@ pub enum nsStyleSVGOpacitySource { } #[repr(C)] pub struct nsStyleSVGPaint { - pub mPaint: nsStyleSVGPaint_nsStyleStruct_h_unnamed_17, + pub mPaint: nsStyleSVGPaint_nsStyleStruct_h_unnamed_18, pub mType: nsStyleSVGPaintType, pub mFallbackColor: nscolor, } #[repr(C)] #[derive(Copy, Debug)] -pub struct nsStyleSVGPaint_nsStyleStruct_h_unnamed_17 { +pub struct nsStyleSVGPaint_nsStyleStruct_h_unnamed_18 { + pub mColor: __BindgenUnionField<nscolor>, + pub mPaintServer: __BindgenUnionField<*mut nsIURI>, pub _bindgen_data_: u64, } -impl nsStyleSVGPaint_nsStyleStruct_h_unnamed_17 { } -impl ::std::clone::Clone for nsStyleSVGPaint_nsStyleStruct_h_unnamed_17 { +impl nsStyleSVGPaint_nsStyleStruct_h_unnamed_18 { } +impl ::std::clone::Clone for nsStyleSVGPaint_nsStyleStruct_h_unnamed_18 { fn clone(&self) -> Self { *self } } #[test] +fn bindgen_test_layout_nsStyleSVGPaint_nsStyleStruct_h_unnamed_18() { + assert_eq!(::std::mem::size_of::<nsStyleSVGPaint_nsStyleStruct_h_unnamed_18>() + , 8usize); + assert_eq!(::std::mem::align_of::<nsStyleSVGPaint_nsStyleStruct_h_unnamed_18>() + , 8usize); +} +#[test] fn bindgen_test_layout_nsStyleSVGPaint() { assert_eq!(::std::mem::size_of::<nsStyleSVGPaint>() , 16usize); assert_eq!(::std::mem::align_of::<nsStyleSVGPaint>() , 8usize); @@ -4706,19 +4868,28 @@ fn bindgen_test_layout_nsStyleBasicShape() { #[repr(C)] pub struct nsStyleClipPath { pub mType: i32, - pub nsStyleStruct_h_unnamed_18: nsStyleClipPath_nsStyleStruct_h_unnamed_18, + pub nsStyleClipPath_nsStyleStruct_h_unnamed_19: nsStyleClipPath_nsStyleStruct_h_unnamed_19, pub mSizingBox: u8, } #[repr(C)] #[derive(Copy, Debug)] -pub struct nsStyleClipPath_nsStyleStruct_h_unnamed_18 { +pub struct nsStyleClipPath_nsStyleStruct_h_unnamed_19 { + pub mBasicShape: __BindgenUnionField<*mut nsStyleBasicShape>, + pub mURL: __BindgenUnionField<*mut nsIURI>, pub _bindgen_data_: u64, } -impl nsStyleClipPath_nsStyleStruct_h_unnamed_18 { } -impl ::std::clone::Clone for nsStyleClipPath_nsStyleStruct_h_unnamed_18 { +impl nsStyleClipPath_nsStyleStruct_h_unnamed_19 { } +impl ::std::clone::Clone for nsStyleClipPath_nsStyleStruct_h_unnamed_19 { fn clone(&self) -> Self { *self } } #[test] +fn bindgen_test_layout_nsStyleClipPath_nsStyleStruct_h_unnamed_19() { + assert_eq!(::std::mem::size_of::<nsStyleClipPath_nsStyleStruct_h_unnamed_19>() + , 8usize); + assert_eq!(::std::mem::align_of::<nsStyleClipPath_nsStyleStruct_h_unnamed_19>() + , 8usize); +} +#[test] fn bindgen_test_layout_nsStyleClipPath() { assert_eq!(::std::mem::size_of::<nsStyleClipPath>() , 24usize); assert_eq!(::std::mem::align_of::<nsStyleClipPath>() , 8usize); @@ -4727,24 +4898,33 @@ fn bindgen_test_layout_nsStyleClipPath() { pub struct nsStyleFilter { pub mType: i32, pub mFilterParameter: nsStyleCoord, - pub nsStyleStruct_h_unnamed_19: nsStyleFilter_nsStyleStruct_h_unnamed_19, + pub nsStyleFilter_nsStyleStruct_h_unnamed_20: nsStyleFilter_nsStyleStruct_h_unnamed_20, } #[repr(C)] #[derive(Copy, Debug)] -pub struct nsStyleFilter_nsStyleStruct_h_unnamed_19 { +pub struct nsStyleFilter_nsStyleStruct_h_unnamed_20 { + pub mURL: __BindgenUnionField<*mut nsIURI>, + pub mDropShadow: __BindgenUnionField<*mut nsCSSShadowArray>, pub _bindgen_data_: u64, } -impl nsStyleFilter_nsStyleStruct_h_unnamed_19 { } -impl ::std::clone::Clone for nsStyleFilter_nsStyleStruct_h_unnamed_19 { +impl nsStyleFilter_nsStyleStruct_h_unnamed_20 { } +impl ::std::clone::Clone for nsStyleFilter_nsStyleStruct_h_unnamed_20 { fn clone(&self) -> Self { *self } } #[test] +fn bindgen_test_layout_nsStyleFilter_nsStyleStruct_h_unnamed_20() { + assert_eq!(::std::mem::size_of::<nsStyleFilter_nsStyleStruct_h_unnamed_20>() + , 8usize); + assert_eq!(::std::mem::align_of::<nsStyleFilter_nsStyleStruct_h_unnamed_20>() + , 8usize); +} +#[test] fn bindgen_test_layout_nsStyleFilter() { assert_eq!(::std::mem::size_of::<nsStyleFilter>() , 32usize); assert_eq!(::std::mem::align_of::<nsStyleFilter>() , 8usize); } #[repr(C)] -#[derive(Copy)] +#[derive(Debug, Copy)] pub struct nsTArray_CopyChooser; impl ::std::clone::Clone for nsTArray_CopyChooser { fn clone(&self) -> Self { *self } |