From 0b1cf902d63d15d118b656393af207c1df652380 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= Date: Mon, 8 May 2017 18:59:33 -0500 Subject: [PATCH] servo: Merge #16774 - Unbust stylo (from emilio:unbust-stylo); r=Manishearth Source-Repo: https://github.com/servo/servo Source-Revision: fca15d378257c6ec558ee06527245c637a3eea8d --HG-- extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear extra : subtree_revision : 7c55e518e5b9fb06e42b1ba238bfab39588fd25d --- .../style/gecko/generated/atom_macro.rs | 1904 +- .../style/gecko/generated/bindings.rs | 2 + .../style/gecko/generated/structs_debug.rs | 25449 +++++++++------- .../style/gecko/generated/structs_release.rs | 24599 ++++++++------- servo/components/style/gecko/wrapper.rs | 2 +- .../style/gecko_bindings/sugar/ns_com_ptr.rs | 10 +- .../components/style/properties/gecko.mako.rs | 6 +- .../style/properties/longhand/font.mako.rs | 4 +- 8 files changed, 29660 insertions(+), 22316 deletions(-) diff --git a/servo/components/style/gecko/generated/atom_macro.rs b/servo/components/style/gecko/generated/atom_macro.rs index 6d99ed66fb11..f0b96361fdf9 100644 --- a/servo/components/style/gecko/generated/atom_macro.rs +++ b/servo/components/style/gecko/generated/atom_macro.rs @@ -168,8 +168,6 @@ cfg_if! { pub static nsGkAtoms_applyImports: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms14applyTemplatesE"] pub static nsGkAtoms_applyTemplates: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms10mozapptypeE"] - pub static nsGkAtoms_mozapptype: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms7archiveE"] pub static nsGkAtoms_archive: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms4areaE"] @@ -212,8 +210,6 @@ cfg_if! { pub static nsGkAtoms_axis: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms1bE"] pub static nsGkAtoms_b: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13backdropFrameE"] - pub static nsGkAtoms_backdropFrame: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms10backgroundE"] pub static nsGkAtoms_background: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms4baseE"] @@ -362,6 +358,8 @@ cfg_if! { pub static nsGkAtoms_circle: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms4citeE"] pub static nsGkAtoms_cite: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10cjkDecimalE"] + pub static nsGkAtoms_cjkDecimal: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms6_classE"] pub static nsGkAtoms__class: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms7classidE"] @@ -508,6 +506,8 @@ cfg_if! { pub static nsGkAtoms_dd: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms5debugE"] pub static nsGkAtoms_debug: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7decimalE"] + pub static nsGkAtoms_decimal: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms13decimalFormatE"] pub static nsGkAtoms_decimalFormat: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms16decimalSeparatorE"] @@ -1086,8 +1086,12 @@ cfg_if! { pub static nsGkAtoms_loop: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms3lowE"] pub static nsGkAtoms_low: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10lowerAlphaE"] + pub static nsGkAtoms_lowerAlpha: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms10lowerFirstE"] pub static nsGkAtoms_lowerFirst: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10lowerRomanE"] + pub static nsGkAtoms_lowerRoman: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms6lowestE"] pub static nsGkAtoms_lowest: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms6lowsrcE"] @@ -1214,8 +1218,6 @@ cfg_if! { pub static nsGkAtoms_mousethrough: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms7mouseupE"] pub static nsGkAtoms_mouseup: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms15mozaudiochannelE"] - pub static nsGkAtoms_mozaudiochannel: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms19mozfullscreenchangeE"] pub static nsGkAtoms_mozfullscreenchange: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms18mozfullscreenerrorE"] @@ -1264,6 +1266,8 @@ cfg_if! { pub static nsGkAtoms_newline: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms8nextBidiE"] pub static nsGkAtoms_nextBidi: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms15nextTabParentIdE"] + pub static nsGkAtoms_nextTabParentId: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms2noE"] pub static nsGkAtoms_no: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms11noautofocusE"] @@ -1288,6 +1292,8 @@ cfg_if! { pub static nsGkAtoms_nohref: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms11noisolationE"] pub static nsGkAtoms_noisolation: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8nomoduleE"] + pub static nsGkAtoms_nomodule: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms5nonceE"] pub static nsGkAtoms_nonce: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms4noneE"] @@ -2536,8 +2542,12 @@ cfg_if! { pub static nsGkAtoms_unload: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms17unparsedEntityUriE"] pub static nsGkAtoms_unparsedEntityUri: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10upperAlphaE"] + pub static nsGkAtoms_upperAlpha: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms10upperFirstE"] pub static nsGkAtoms_upperFirst: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10upperRomanE"] + pub static nsGkAtoms_upperRoman: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms3uriE"] pub static nsGkAtoms_uri: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms3useE"] @@ -2740,6 +2750,8 @@ cfg_if! { pub static nsGkAtoms_direction: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms7disableE"] pub static nsGkAtoms_disable: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms4discE"] + pub static nsGkAtoms_disc: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms8discreteE"] pub static nsGkAtoms_discrete: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms7divisorE"] @@ -3848,10 +3860,6 @@ cfg_if! { pub static nsGkAtoms_onuserproximity: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms13ondevicelightE"] pub static nsGkAtoms_ondevicelight: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms19onmozinterruptbeginE"] - pub static nsGkAtoms_onmozinterruptbegin: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms17onmozinterruptendE"] - pub static nsGkAtoms_onmozinterruptend: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms14ondevicechangeE"] pub static nsGkAtoms_ondevicechange: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms33mozinputrangeignorepreventdefaultE"] @@ -3870,192 +3878,8 @@ cfg_if! { pub static nsGkAtoms_processingInstructionTagName: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms11textTagNameE"] pub static nsGkAtoms_textTagName: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16bcTableCellFrameE"] - pub static nsGkAtoms_bcTableCellFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms10blockFrameE"] - pub static nsGkAtoms_blockFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms8boxFrameE"] - pub static nsGkAtoms_boxFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms7brFrameE"] - pub static nsGkAtoms_brFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms11bulletFrameE"] - pub static nsGkAtoms_bulletFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms17colorControlFrameE"] - pub static nsGkAtoms_colorControlFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14columnSetFrameE"] - pub static nsGkAtoms_columnSetFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms20comboboxControlFrameE"] - pub static nsGkAtoms_comboboxControlFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms20comboboxDisplayFrameE"] - pub static nsGkAtoms_comboboxDisplayFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms20dateTimeControlFrameE"] - pub static nsGkAtoms_dateTimeControlFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms9deckFrameE"] - pub static nsGkAtoms_deckFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms12detailsFrameE"] - pub static nsGkAtoms_detailsFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13fieldSetFrameE"] - pub static nsGkAtoms_fieldSetFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms18flexContainerFrameE"] - pub static nsGkAtoms_flexContainerFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16formControlFrameE"] - pub static nsGkAtoms_formControlFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13frameSetFrameE"] - pub static nsGkAtoms_frameSetFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms21gfxButtonControlFrameE"] - pub static nsGkAtoms_gfxButtonControlFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms18gridContainerFrameE"] - pub static nsGkAtoms_gridContainerFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms22HTMLButtonControlFrameE"] - pub static nsGkAtoms_HTMLButtonControlFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms15HTMLCanvasFrameE"] - pub static nsGkAtoms_HTMLCanvasFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16subDocumentFrameE"] - pub static nsGkAtoms_subDocumentFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13imageBoxFrameE"] - pub static nsGkAtoms_imageBoxFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms10imageFrameE"] - pub static nsGkAtoms_imageFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms17imageControlFrameE"] - pub static nsGkAtoms_imageControlFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms11inlineFrameE"] - pub static nsGkAtoms_inlineFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms12leafBoxFrameE"] - pub static nsGkAtoms_leafBoxFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms11legendFrameE"] - pub static nsGkAtoms_legendFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms11letterFrameE"] - pub static nsGkAtoms_letterFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms9lineFrameE"] - pub static nsGkAtoms_lineFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16listControlFrameE"] - pub static nsGkAtoms_listControlFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms9menuFrameE"] - pub static nsGkAtoms_menuFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms10meterFrameE"] - pub static nsGkAtoms_meterFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14menuPopupFrameE"] - pub static nsGkAtoms_menuPopupFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms18numberControlFrameE"] - pub static nsGkAtoms_numberControlFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms11objectFrameE"] - pub static nsGkAtoms_objectFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms9pageFrameE"] - pub static nsGkAtoms_pageFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14pageBreakFrameE"] - pub static nsGkAtoms_pageBreakFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16pageContentFrameE"] - pub static nsGkAtoms_pageContentFrame: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms16placeholderFrameE"] pub static nsGkAtoms_placeholderFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13popupSetFrameE"] - pub static nsGkAtoms_popupSetFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13progressFrameE"] - pub static nsGkAtoms_progressFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms11canvasFrameE"] - pub static nsGkAtoms_canvasFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms10rangeFrameE"] - pub static nsGkAtoms_rangeFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms9rootFrameE"] - pub static nsGkAtoms_rootFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms22rubyBaseContainerFrameE"] - pub static nsGkAtoms_rubyBaseContainerFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13rubyBaseFrameE"] - pub static nsGkAtoms_rubyBaseFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms9rubyFrameE"] - pub static nsGkAtoms_rubyFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms22rubyTextContainerFrameE"] - pub static nsGkAtoms_rubyTextContainerFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13rubyTextFrameE"] - pub static nsGkAtoms_rubyTextFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms11scrollFrameE"] - pub static nsGkAtoms_scrollFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14scrollbarFrameE"] - pub static nsGkAtoms_scrollbarFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13sequenceFrameE"] - pub static nsGkAtoms_sequenceFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms11sliderFrameE"] - pub static nsGkAtoms_sliderFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14tableCellFrameE"] - pub static nsGkAtoms_tableCellFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13tableColFrameE"] - pub static nsGkAtoms_tableColFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms18tableColGroupFrameE"] - pub static nsGkAtoms_tableColGroupFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms10tableFrameE"] - pub static nsGkAtoms_tableFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms17tableWrapperFrameE"] - pub static nsGkAtoms_tableWrapperFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms18tableRowGroupFrameE"] - pub static nsGkAtoms_tableRowGroupFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13tableRowFrameE"] - pub static nsGkAtoms_tableRowFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14textInputFrameE"] - pub static nsGkAtoms_textInputFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms9textFrameE"] - pub static nsGkAtoms_textFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13viewportFrameE"] - pub static nsGkAtoms_viewportFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13XULLabelFrameE"] - pub static nsGkAtoms_XULLabelFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms9svgAFrameE"] - pub static nsGkAtoms_svgAFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16svgClipPathFrameE"] - pub static nsGkAtoms_svgClipPathFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms12svgDefsFrameE"] - pub static nsGkAtoms_svgDefsFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms19svgFEContainerFrameE"] - pub static nsGkAtoms_svgFEContainerFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms15svgFEImageFrameE"] - pub static nsGkAtoms_svgFEImageFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14svgFELeafFrameE"] - pub static nsGkAtoms_svgFELeafFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms22svgFEUnstyledLeafFrameE"] - pub static nsGkAtoms_svgFEUnstyledLeafFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14svgFilterFrameE"] - pub static nsGkAtoms_svgFilterFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms21svgForeignObjectFrameE"] - pub static nsGkAtoms_svgForeignObjectFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms24svgGenericContainerFrameE"] - pub static nsGkAtoms_svgGenericContainerFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16svgGeometryFrameE"] - pub static nsGkAtoms_svgGeometryFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms9svgGFrameE"] - pub static nsGkAtoms_svgGFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16svgGradientFrameE"] - pub static nsGkAtoms_svgGradientFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms13svgImageFrameE"] - pub static nsGkAtoms_svgImageFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16svgInnerSVGFrameE"] - pub static nsGkAtoms_svgInnerSVGFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms22svgLinearGradientFrameE"] - pub static nsGkAtoms_svgLinearGradientFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14svgMarkerFrameE"] - pub static nsGkAtoms_svgMarkerFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms23svgMarkerAnonChildFrameE"] - pub static nsGkAtoms_svgMarkerAnonChildFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms12svgMaskFrameE"] - pub static nsGkAtoms_svgMaskFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16svgOuterSVGFrameE"] - pub static nsGkAtoms_svgOuterSVGFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms25svgOuterSVGAnonChildFrameE"] - pub static nsGkAtoms_svgOuterSVGAnonChildFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms15svgPatternFrameE"] - pub static nsGkAtoms_svgPatternFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms22svgRadialGradientFrameE"] - pub static nsGkAtoms_svgRadialGradientFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms12svgStopFrameE"] - pub static nsGkAtoms_svgStopFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14svgSwitchFrameE"] - pub static nsGkAtoms_svgSwitchFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms12svgTextFrameE"] - pub static nsGkAtoms_svgTextFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms11svgUseFrameE"] - pub static nsGkAtoms_svgUseFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms12svgViewFrameE"] - pub static nsGkAtoms_svgViewFrame: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms14HTMLVideoFrameE"] - pub static nsGkAtoms_HTMLVideoFrame: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms9onloadendE"] pub static nsGkAtoms_onloadend: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms11onloadstartE"] @@ -4180,6 +4004,8 @@ cfg_if! { pub static nsGkAtoms_ongamepadconnected: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms21ongamepaddisconnectedE"] pub static nsGkAtoms_ongamepaddisconnected: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms19afterPseudoPropertyE"] + pub static nsGkAtoms_afterPseudoProperty: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms18animationsPropertyE"] pub static nsGkAtoms_animationsProperty: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms26animationsOfBeforePropertyE"] @@ -4192,6 +4018,8 @@ cfg_if! { pub static nsGkAtoms_animationEffectsForBeforeProperty: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms32animationEffectsForAfterPropertyE"] pub static nsGkAtoms_animationEffectsForAfterProperty: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms20beforePseudoPropertyE"] + pub static nsGkAtoms_beforePseudoProperty: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms30cssPseudoElementBeforePropertyE"] pub static nsGkAtoms_cssPseudoElementBeforeProperty: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms29cssPseudoElementAfterPropertyE"] @@ -4570,8 +4398,6 @@ cfg_if! { pub static nsGkAtoms_aria_valuemax: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms14aria_valuetextE"] pub static nsGkAtoms_aria_valuetext: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms9AreaFrameE"] - pub static nsGkAtoms_AreaFrame: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms14auto_generatedE"] pub static nsGkAtoms_auto_generated: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms6bannerE"] @@ -4612,8 +4438,6 @@ cfg_if! { pub static nsGkAtoms_heading: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms9hitregionE"] pub static nsGkAtoms_hitregion: *mut nsIAtom; - #[link_name = "_ZN9nsGkAtoms16InlineBlockFrameE"] - pub static nsGkAtoms_InlineBlockFrame: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms11inlinevalueE"] pub static nsGkAtoms_inlinevalue: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms7invalidE"] @@ -4784,6 +4608,262 @@ cfg_if! { pub static nsGkAtoms_onaddsourcebuffer: *mut nsIAtom; #[link_name = "_ZN9nsGkAtoms20onremovesourcebufferE"] pub static nsGkAtoms_onremovesourcebuffer: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms5xlinkE"] + pub static nsGkAtoms_xlink: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms9xml_spaceE"] + pub static nsGkAtoms_xml_space: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8xml_langE"] + pub static nsGkAtoms_xml_lang: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8xml_baseE"] + pub static nsGkAtoms_xml_base: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms9aria_grabE"] + pub static nsGkAtoms_aria_grab: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12aria_channelE"] + pub static nsGkAtoms_aria_channel: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11aria_secretE"] + pub static nsGkAtoms_aria_secret: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms15aria_templateidE"] + pub static nsGkAtoms_aria_templateid: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13aria_datatypeE"] + pub static nsGkAtoms_aria_datatype: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms5localE"] + pub static nsGkAtoms_local: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16xchannelselectorE"] + pub static nsGkAtoms_xchannelselector: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16ychannelselectorE"] + pub static nsGkAtoms_ychannelselector: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms17enable_backgroundE"] + pub static nsGkAtoms_enable_background: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8calcmodeE"] + pub static nsGkAtoms_calcmode: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16specularexponentE"] + pub static nsGkAtoms_specularexponent: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16specularconstantE"] + pub static nsGkAtoms_specularconstant: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms17gradienttransformE"] + pub static nsGkAtoms_gradienttransform: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13gradientunitsE"] + pub static nsGkAtoms_gradientunits: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16rendering_intentE"] + pub static nsGkAtoms_rendering_intent: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12stddeviationE"] + pub static nsGkAtoms_stddeviation: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13basefrequencyE"] + pub static nsGkAtoms_basefrequency: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11baseprofileE"] + pub static nsGkAtoms_baseprofile: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11baseProfileE"] + pub static nsGkAtoms_baseProfile: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8edgemodeE"] + pub static nsGkAtoms_edgemode: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11repeatcountE"] + pub static nsGkAtoms_repeatcount: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms9repeatdurE"] + pub static nsGkAtoms_repeatdur: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12spreadmethodE"] + pub static nsGkAtoms_spreadmethod: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms15diffuseconstantE"] + pub static nsGkAtoms_diffuseconstant: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12surfacescaleE"] + pub static nsGkAtoms_surfacescale: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12lengthadjustE"] + pub static nsGkAtoms_lengthadjust: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms6originE"] + pub static nsGkAtoms_origin: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7targetxE"] + pub static nsGkAtoms_targetx: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7targetyE"] + pub static nsGkAtoms_targety: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10pathlengthE"] + pub static nsGkAtoms_pathlength: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13definitionurlE"] + pub static nsGkAtoms_definitionurl: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms17limitingconeangleE"] + pub static nsGkAtoms_limitingconeangle: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12markerheightE"] + pub static nsGkAtoms_markerheight: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11markerwidthE"] + pub static nsGkAtoms_markerwidth: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms9maskunitsE"] + pub static nsGkAtoms_maskunits: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11markerunitsE"] + pub static nsGkAtoms_markerunits: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16maskcontentunitsE"] + pub static nsGkAtoms_maskcontentunits: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11tablevaluesE"] + pub static nsGkAtoms_tablevalues: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms14primitiveunitsE"] + pub static nsGkAtoms_primitiveunits: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10zoomandpanE"] + pub static nsGkAtoms_zoomandpan: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12kernelmatrixE"] + pub static nsGkAtoms_kernelmatrix: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7kerningE"] + pub static nsGkAtoms_kerning: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16kernelunitlengthE"] + pub static nsGkAtoms_kernelunitlength: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms9pointsatxE"] + pub static nsGkAtoms_pointsatx: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms9pointsatyE"] + pub static nsGkAtoms_pointsaty: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms9pointsatzE"] + pub static nsGkAtoms_pointsatz: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10xlink_hrefE"] + pub static nsGkAtoms_xlink_href: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11xlink_titleE"] + pub static nsGkAtoms_xlink_title: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10xlink_roleE"] + pub static nsGkAtoms_xlink_role: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13xlink_arcroleE"] + pub static nsGkAtoms_xlink_arcrole: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7arcroleE"] + pub static nsGkAtoms_arcrole: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11xmlns_xlinkE"] + pub static nsGkAtoms_xmlns_xlink: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10xlink_typeE"] + pub static nsGkAtoms_xlink_type: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10xlink_showE"] + pub static nsGkAtoms_xlink_show: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13xlink_actuateE"] + pub static nsGkAtoms_xlink_actuate: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms15color_renderingE"] + pub static nsGkAtoms_color_rendering: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10numoctavesE"] + pub static nsGkAtoms_numoctaves: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12onmousewheelE"] + pub static nsGkAtoms_onmousewheel: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13clippathunitsE"] + pub static nsGkAtoms_clippathunits: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms26glyph_orientation_verticalE"] + pub static nsGkAtoms_glyph_orientation_vertical: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms28glyph_orientation_horizontalE"] + pub static nsGkAtoms_glyph_orientation_horizontal: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8glyphrefE"] + pub static nsGkAtoms_glyphref: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms9keypointsE"] + pub static nsGkAtoms_keypoints: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13attributenameE"] + pub static nsGkAtoms_attributename: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13attributetypeE"] + pub static nsGkAtoms_attributetype: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11startoffsetE"] + pub static nsGkAtoms_startoffset: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10keysplinesE"] + pub static nsGkAtoms_keysplines: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13preservealphaE"] + pub static nsGkAtoms_preservealpha: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms19preserveaspectratioE"] + pub static nsGkAtoms_preserveaspectratio: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7alttextE"] + pub static nsGkAtoms_alttext: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11filterunitsE"] + pub static nsGkAtoms_filterunits: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8keytimesE"] + pub static nsGkAtoms_keytimes: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16patterntransformE"] + pub static nsGkAtoms_patterntransform: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12patternunitsE"] + pub static nsGkAtoms_patternunits: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms19patterncontentunitsE"] + pub static nsGkAtoms_patterncontentunits: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11stitchtilesE"] + pub static nsGkAtoms_stitchtiles: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms14systemlanguageE"] + pub static nsGkAtoms_systemlanguage: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10textlengthE"] + pub static nsGkAtoms_textlength: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16requiredfeaturesE"] + pub static nsGkAtoms_requiredfeatures: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms18requiredextensionsE"] + pub static nsGkAtoms_requiredextensions: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms10viewtargetE"] + pub static nsGkAtoms_viewtarget: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7viewboxE"] + pub static nsGkAtoms_viewbox: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms4refxE"] + pub static nsGkAtoms_refx: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms4refyE"] + pub static nsGkAtoms_refy: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7isindexE"] + pub static nsGkAtoms_isindex: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7fefuncaE"] + pub static nsGkAtoms_fefunca: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7fefuncbE"] + pub static nsGkAtoms_fefuncb: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7feblendE"] + pub static nsGkAtoms_feblend: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7fefloodE"] + pub static nsGkAtoms_feflood: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12feturbulenceE"] + pub static nsGkAtoms_feturbulence: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11femergenodeE"] + pub static nsGkAtoms_femergenode: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7feimageE"] + pub static nsGkAtoms_feimage: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7femergeE"] + pub static nsGkAtoms_femerge: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms6fetileE"] + pub static nsGkAtoms_fetile: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11fecompositeE"] + pub static nsGkAtoms_fecomposite: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11altglyphdefE"] + pub static nsGkAtoms_altglyphdef: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11altGlyphDefE"] + pub static nsGkAtoms_altGlyphDef: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7fefuncgE"] + pub static nsGkAtoms_fefuncg: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms17fediffuselightingE"] + pub static nsGkAtoms_fediffuselighting: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms18fespecularlightingE"] + pub static nsGkAtoms_fespecularlighting: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8altglyphE"] + pub static nsGkAtoms_altglyph: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8altGlyphE"] + pub static nsGkAtoms_altGlyph: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8clippathE"] + pub static nsGkAtoms_clippath: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8textpathE"] + pub static nsGkAtoms_textpath: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12altglyphitemE"] + pub static nsGkAtoms_altglyphitem: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12altGlyphItemE"] + pub static nsGkAtoms_altGlyphItem: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16animatetransformE"] + pub static nsGkAtoms_animatetransform: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13animatemotionE"] + pub static nsGkAtoms_animatemotion: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms17fedisplacementmapE"] + pub static nsGkAtoms_fedisplacementmap: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12animatecolorE"] + pub static nsGkAtoms_animatecolor: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms7fefuncrE"] + pub static nsGkAtoms_fefuncr: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms19fecomponenttransferE"] + pub static nsGkAtoms_fecomponenttransfer: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms14fegaussianblurE"] + pub static nsGkAtoms_fegaussianblur: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13foreignobjectE"] + pub static nsGkAtoms_foreignobject: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms8feoffsetE"] + pub static nsGkAtoms_feoffset: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms11fespotlightE"] + pub static nsGkAtoms_fespotlight: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12fepointlightE"] + pub static nsGkAtoms_fepointlight: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms14fedistantlightE"] + pub static nsGkAtoms_fedistantlight: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms14lineargradientE"] + pub static nsGkAtoms_lineargradient: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms14radialgradientE"] + pub static nsGkAtoms_radialgradient: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12fedropshadowE"] + pub static nsGkAtoms_fedropshadow: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms13fecolormatrixE"] + pub static nsGkAtoms_fecolormatrix: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms16feconvolvematrixE"] + pub static nsGkAtoms_feconvolvematrix: *mut nsIAtom; + #[link_name = "_ZN9nsGkAtoms12femorphologyE"] + pub static nsGkAtoms_femorphology: *mut nsIAtom; #[link_name = "_ZN19nsCSSPseudoElements5afterE"] pub static nsCSSPseudoElements_after: *mut nsICSSPseudoElement; #[link_name = "_ZN19nsCSSPseudoElements6beforeE"] @@ -5101,8 +5181,6 @@ cfg_if! { pub static nsGkAtoms_applyImports: *mut nsIAtom; #[link_name = "?applyTemplates@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_applyTemplates: *mut nsIAtom; - #[link_name = "?mozapptype@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_mozapptype: *mut nsIAtom; #[link_name = "?archive@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_archive: *mut nsIAtom; #[link_name = "?area@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -5145,8 +5223,6 @@ cfg_if! { pub static nsGkAtoms_axis: *mut nsIAtom; #[link_name = "?b@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_b: *mut nsIAtom; - #[link_name = "?backdropFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_backdropFrame: *mut nsIAtom; #[link_name = "?background@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_background: *mut nsIAtom; #[link_name = "?base@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -5295,6 +5371,8 @@ cfg_if! { pub static nsGkAtoms_circle: *mut nsIAtom; #[link_name = "?cite@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_cite: *mut nsIAtom; + #[link_name = "?cjkDecimal@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_cjkDecimal: *mut nsIAtom; #[link_name = "?_class@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms__class: *mut nsIAtom; #[link_name = "?classid@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -5441,6 +5519,8 @@ cfg_if! { pub static nsGkAtoms_dd: *mut nsIAtom; #[link_name = "?debug@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_debug: *mut nsIAtom; + #[link_name = "?decimal@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_decimal: *mut nsIAtom; #[link_name = "?decimalFormat@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_decimalFormat: *mut nsIAtom; #[link_name = "?decimalSeparator@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -6019,8 +6099,12 @@ cfg_if! { pub static nsGkAtoms_loop: *mut nsIAtom; #[link_name = "?low@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_low: *mut nsIAtom; + #[link_name = "?lowerAlpha@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_lowerAlpha: *mut nsIAtom; #[link_name = "?lowerFirst@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_lowerFirst: *mut nsIAtom; + #[link_name = "?lowerRoman@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_lowerRoman: *mut nsIAtom; #[link_name = "?lowest@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_lowest: *mut nsIAtom; #[link_name = "?lowsrc@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -6147,8 +6231,6 @@ cfg_if! { pub static nsGkAtoms_mousethrough: *mut nsIAtom; #[link_name = "?mouseup@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_mouseup: *mut nsIAtom; - #[link_name = "?mozaudiochannel@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_mozaudiochannel: *mut nsIAtom; #[link_name = "?mozfullscreenchange@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_mozfullscreenchange: *mut nsIAtom; #[link_name = "?mozfullscreenerror@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -6197,6 +6279,8 @@ cfg_if! { pub static nsGkAtoms_newline: *mut nsIAtom; #[link_name = "?nextBidi@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_nextBidi: *mut nsIAtom; + #[link_name = "?nextTabParentId@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_nextTabParentId: *mut nsIAtom; #[link_name = "?no@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_no: *mut nsIAtom; #[link_name = "?noautofocus@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -6221,6 +6305,8 @@ cfg_if! { pub static nsGkAtoms_nohref: *mut nsIAtom; #[link_name = "?noisolation@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_noisolation: *mut nsIAtom; + #[link_name = "?nomodule@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_nomodule: *mut nsIAtom; #[link_name = "?nonce@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_nonce: *mut nsIAtom; #[link_name = "?none@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -7469,8 +7555,12 @@ cfg_if! { pub static nsGkAtoms_unload: *mut nsIAtom; #[link_name = "?unparsedEntityUri@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_unparsedEntityUri: *mut nsIAtom; + #[link_name = "?upperAlpha@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_upperAlpha: *mut nsIAtom; #[link_name = "?upperFirst@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_upperFirst: *mut nsIAtom; + #[link_name = "?upperRoman@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_upperRoman: *mut nsIAtom; #[link_name = "?uri@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_uri: *mut nsIAtom; #[link_name = "?use@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -7673,6 +7763,8 @@ cfg_if! { pub static nsGkAtoms_direction: *mut nsIAtom; #[link_name = "?disable@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_disable: *mut nsIAtom; + #[link_name = "?disc@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_disc: *mut nsIAtom; #[link_name = "?discrete@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_discrete: *mut nsIAtom; #[link_name = "?divisor@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -8781,10 +8873,6 @@ cfg_if! { pub static nsGkAtoms_onuserproximity: *mut nsIAtom; #[link_name = "?ondevicelight@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_ondevicelight: *mut nsIAtom; - #[link_name = "?onmozinterruptbegin@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_onmozinterruptbegin: *mut nsIAtom; - #[link_name = "?onmozinterruptend@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_onmozinterruptend: *mut nsIAtom; #[link_name = "?ondevicechange@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_ondevicechange: *mut nsIAtom; #[link_name = "?mozinputrangeignorepreventdefault@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -8803,192 +8891,8 @@ cfg_if! { pub static nsGkAtoms_processingInstructionTagName: *mut nsIAtom; #[link_name = "?textTagName@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_textTagName: *mut nsIAtom; - #[link_name = "?bcTableCellFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_bcTableCellFrame: *mut nsIAtom; - #[link_name = "?blockFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_blockFrame: *mut nsIAtom; - #[link_name = "?boxFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_boxFrame: *mut nsIAtom; - #[link_name = "?brFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_brFrame: *mut nsIAtom; - #[link_name = "?bulletFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_bulletFrame: *mut nsIAtom; - #[link_name = "?colorControlFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_colorControlFrame: *mut nsIAtom; - #[link_name = "?columnSetFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_columnSetFrame: *mut nsIAtom; - #[link_name = "?comboboxControlFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_comboboxControlFrame: *mut nsIAtom; - #[link_name = "?comboboxDisplayFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_comboboxDisplayFrame: *mut nsIAtom; - #[link_name = "?dateTimeControlFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_dateTimeControlFrame: *mut nsIAtom; - #[link_name = "?deckFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_deckFrame: *mut nsIAtom; - #[link_name = "?detailsFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_detailsFrame: *mut nsIAtom; - #[link_name = "?fieldSetFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_fieldSetFrame: *mut nsIAtom; - #[link_name = "?flexContainerFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_flexContainerFrame: *mut nsIAtom; - #[link_name = "?formControlFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_formControlFrame: *mut nsIAtom; - #[link_name = "?frameSetFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_frameSetFrame: *mut nsIAtom; - #[link_name = "?gfxButtonControlFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_gfxButtonControlFrame: *mut nsIAtom; - #[link_name = "?gridContainerFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_gridContainerFrame: *mut nsIAtom; - #[link_name = "?HTMLButtonControlFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_HTMLButtonControlFrame: *mut nsIAtom; - #[link_name = "?HTMLCanvasFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_HTMLCanvasFrame: *mut nsIAtom; - #[link_name = "?subDocumentFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_subDocumentFrame: *mut nsIAtom; - #[link_name = "?imageBoxFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_imageBoxFrame: *mut nsIAtom; - #[link_name = "?imageFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_imageFrame: *mut nsIAtom; - #[link_name = "?imageControlFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_imageControlFrame: *mut nsIAtom; - #[link_name = "?inlineFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_inlineFrame: *mut nsIAtom; - #[link_name = "?leafBoxFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_leafBoxFrame: *mut nsIAtom; - #[link_name = "?legendFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_legendFrame: *mut nsIAtom; - #[link_name = "?letterFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_letterFrame: *mut nsIAtom; - #[link_name = "?lineFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_lineFrame: *mut nsIAtom; - #[link_name = "?listControlFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_listControlFrame: *mut nsIAtom; - #[link_name = "?menuFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_menuFrame: *mut nsIAtom; - #[link_name = "?meterFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_meterFrame: *mut nsIAtom; - #[link_name = "?menuPopupFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_menuPopupFrame: *mut nsIAtom; - #[link_name = "?numberControlFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_numberControlFrame: *mut nsIAtom; - #[link_name = "?objectFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_objectFrame: *mut nsIAtom; - #[link_name = "?pageFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_pageFrame: *mut nsIAtom; - #[link_name = "?pageBreakFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_pageBreakFrame: *mut nsIAtom; - #[link_name = "?pageContentFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_pageContentFrame: *mut nsIAtom; #[link_name = "?placeholderFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_placeholderFrame: *mut nsIAtom; - #[link_name = "?popupSetFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_popupSetFrame: *mut nsIAtom; - #[link_name = "?progressFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_progressFrame: *mut nsIAtom; - #[link_name = "?canvasFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_canvasFrame: *mut nsIAtom; - #[link_name = "?rangeFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_rangeFrame: *mut nsIAtom; - #[link_name = "?rootFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_rootFrame: *mut nsIAtom; - #[link_name = "?rubyBaseContainerFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_rubyBaseContainerFrame: *mut nsIAtom; - #[link_name = "?rubyBaseFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_rubyBaseFrame: *mut nsIAtom; - #[link_name = "?rubyFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_rubyFrame: *mut nsIAtom; - #[link_name = "?rubyTextContainerFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_rubyTextContainerFrame: *mut nsIAtom; - #[link_name = "?rubyTextFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_rubyTextFrame: *mut nsIAtom; - #[link_name = "?scrollFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_scrollFrame: *mut nsIAtom; - #[link_name = "?scrollbarFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_scrollbarFrame: *mut nsIAtom; - #[link_name = "?sequenceFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_sequenceFrame: *mut nsIAtom; - #[link_name = "?sliderFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_sliderFrame: *mut nsIAtom; - #[link_name = "?tableCellFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_tableCellFrame: *mut nsIAtom; - #[link_name = "?tableColFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_tableColFrame: *mut nsIAtom; - #[link_name = "?tableColGroupFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_tableColGroupFrame: *mut nsIAtom; - #[link_name = "?tableFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_tableFrame: *mut nsIAtom; - #[link_name = "?tableWrapperFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_tableWrapperFrame: *mut nsIAtom; - #[link_name = "?tableRowGroupFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_tableRowGroupFrame: *mut nsIAtom; - #[link_name = "?tableRowFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_tableRowFrame: *mut nsIAtom; - #[link_name = "?textInputFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_textInputFrame: *mut nsIAtom; - #[link_name = "?textFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_textFrame: *mut nsIAtom; - #[link_name = "?viewportFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_viewportFrame: *mut nsIAtom; - #[link_name = "?XULLabelFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_XULLabelFrame: *mut nsIAtom; - #[link_name = "?svgAFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgAFrame: *mut nsIAtom; - #[link_name = "?svgClipPathFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgClipPathFrame: *mut nsIAtom; - #[link_name = "?svgDefsFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgDefsFrame: *mut nsIAtom; - #[link_name = "?svgFEContainerFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgFEContainerFrame: *mut nsIAtom; - #[link_name = "?svgFEImageFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgFEImageFrame: *mut nsIAtom; - #[link_name = "?svgFELeafFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgFELeafFrame: *mut nsIAtom; - #[link_name = "?svgFEUnstyledLeafFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgFEUnstyledLeafFrame: *mut nsIAtom; - #[link_name = "?svgFilterFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgFilterFrame: *mut nsIAtom; - #[link_name = "?svgForeignObjectFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgForeignObjectFrame: *mut nsIAtom; - #[link_name = "?svgGenericContainerFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgGenericContainerFrame: *mut nsIAtom; - #[link_name = "?svgGeometryFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgGeometryFrame: *mut nsIAtom; - #[link_name = "?svgGFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgGFrame: *mut nsIAtom; - #[link_name = "?svgGradientFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgGradientFrame: *mut nsIAtom; - #[link_name = "?svgImageFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgImageFrame: *mut nsIAtom; - #[link_name = "?svgInnerSVGFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgInnerSVGFrame: *mut nsIAtom; - #[link_name = "?svgLinearGradientFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgLinearGradientFrame: *mut nsIAtom; - #[link_name = "?svgMarkerFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgMarkerFrame: *mut nsIAtom; - #[link_name = "?svgMarkerAnonChildFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgMarkerAnonChildFrame: *mut nsIAtom; - #[link_name = "?svgMaskFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgMaskFrame: *mut nsIAtom; - #[link_name = "?svgOuterSVGFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgOuterSVGFrame: *mut nsIAtom; - #[link_name = "?svgOuterSVGAnonChildFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgOuterSVGAnonChildFrame: *mut nsIAtom; - #[link_name = "?svgPatternFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgPatternFrame: *mut nsIAtom; - #[link_name = "?svgRadialGradientFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgRadialGradientFrame: *mut nsIAtom; - #[link_name = "?svgStopFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgStopFrame: *mut nsIAtom; - #[link_name = "?svgSwitchFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgSwitchFrame: *mut nsIAtom; - #[link_name = "?svgTextFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgTextFrame: *mut nsIAtom; - #[link_name = "?svgUseFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgUseFrame: *mut nsIAtom; - #[link_name = "?svgViewFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_svgViewFrame: *mut nsIAtom; - #[link_name = "?HTMLVideoFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_HTMLVideoFrame: *mut nsIAtom; #[link_name = "?onloadend@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_onloadend: *mut nsIAtom; #[link_name = "?onloadstart@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -9113,6 +9017,8 @@ cfg_if! { pub static nsGkAtoms_ongamepadconnected: *mut nsIAtom; #[link_name = "?ongamepaddisconnected@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_ongamepaddisconnected: *mut nsIAtom; + #[link_name = "?afterPseudoProperty@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_afterPseudoProperty: *mut nsIAtom; #[link_name = "?animationsProperty@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_animationsProperty: *mut nsIAtom; #[link_name = "?animationsOfBeforeProperty@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -9125,6 +9031,8 @@ cfg_if! { pub static nsGkAtoms_animationEffectsForBeforeProperty: *mut nsIAtom; #[link_name = "?animationEffectsForAfterProperty@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_animationEffectsForAfterProperty: *mut nsIAtom; + #[link_name = "?beforePseudoProperty@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_beforePseudoProperty: *mut nsIAtom; #[link_name = "?cssPseudoElementBeforeProperty@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_cssPseudoElementBeforeProperty: *mut nsIAtom; #[link_name = "?cssPseudoElementAfterProperty@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -9503,8 +9411,6 @@ cfg_if! { pub static nsGkAtoms_aria_valuemax: *mut nsIAtom; #[link_name = "?aria_valuetext@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_aria_valuetext: *mut nsIAtom; - #[link_name = "?AreaFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_AreaFrame: *mut nsIAtom; #[link_name = "?auto_generated@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_auto_generated: *mut nsIAtom; #[link_name = "?banner@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -9545,8 +9451,6 @@ cfg_if! { pub static nsGkAtoms_heading: *mut nsIAtom; #[link_name = "?hitregion@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_hitregion: *mut nsIAtom; - #[link_name = "?InlineBlockFrame@nsGkAtoms@@2PEAVnsIAtom@@EA"] - pub static nsGkAtoms_InlineBlockFrame: *mut nsIAtom; #[link_name = "?inlinevalue@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_inlinevalue: *mut nsIAtom; #[link_name = "?invalid@nsGkAtoms@@2PEAVnsIAtom@@EA"] @@ -9717,6 +9621,262 @@ cfg_if! { pub static nsGkAtoms_onaddsourcebuffer: *mut nsIAtom; #[link_name = "?onremovesourcebuffer@nsGkAtoms@@2PEAVnsIAtom@@EA"] pub static nsGkAtoms_onremovesourcebuffer: *mut nsIAtom; + #[link_name = "?xlink@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xlink: *mut nsIAtom; + #[link_name = "?xml_space@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xml_space: *mut nsIAtom; + #[link_name = "?xml_lang@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xml_lang: *mut nsIAtom; + #[link_name = "?xml_base@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xml_base: *mut nsIAtom; + #[link_name = "?aria_grab@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_aria_grab: *mut nsIAtom; + #[link_name = "?aria_channel@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_aria_channel: *mut nsIAtom; + #[link_name = "?aria_secret@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_aria_secret: *mut nsIAtom; + #[link_name = "?aria_templateid@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_aria_templateid: *mut nsIAtom; + #[link_name = "?aria_datatype@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_aria_datatype: *mut nsIAtom; + #[link_name = "?local@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_local: *mut nsIAtom; + #[link_name = "?xchannelselector@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xchannelselector: *mut nsIAtom; + #[link_name = "?ychannelselector@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_ychannelselector: *mut nsIAtom; + #[link_name = "?enable_background@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_enable_background: *mut nsIAtom; + #[link_name = "?calcmode@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_calcmode: *mut nsIAtom; + #[link_name = "?specularexponent@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_specularexponent: *mut nsIAtom; + #[link_name = "?specularconstant@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_specularconstant: *mut nsIAtom; + #[link_name = "?gradienttransform@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_gradienttransform: *mut nsIAtom; + #[link_name = "?gradientunits@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_gradientunits: *mut nsIAtom; + #[link_name = "?rendering_intent@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_rendering_intent: *mut nsIAtom; + #[link_name = "?stddeviation@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_stddeviation: *mut nsIAtom; + #[link_name = "?basefrequency@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_basefrequency: *mut nsIAtom; + #[link_name = "?baseprofile@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_baseprofile: *mut nsIAtom; + #[link_name = "?baseProfile@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_baseProfile: *mut nsIAtom; + #[link_name = "?edgemode@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_edgemode: *mut nsIAtom; + #[link_name = "?repeatcount@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_repeatcount: *mut nsIAtom; + #[link_name = "?repeatdur@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_repeatdur: *mut nsIAtom; + #[link_name = "?spreadmethod@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_spreadmethod: *mut nsIAtom; + #[link_name = "?diffuseconstant@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_diffuseconstant: *mut nsIAtom; + #[link_name = "?surfacescale@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_surfacescale: *mut nsIAtom; + #[link_name = "?lengthadjust@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_lengthadjust: *mut nsIAtom; + #[link_name = "?origin@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_origin: *mut nsIAtom; + #[link_name = "?targetx@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_targetx: *mut nsIAtom; + #[link_name = "?targety@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_targety: *mut nsIAtom; + #[link_name = "?pathlength@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_pathlength: *mut nsIAtom; + #[link_name = "?definitionurl@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_definitionurl: *mut nsIAtom; + #[link_name = "?limitingconeangle@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_limitingconeangle: *mut nsIAtom; + #[link_name = "?markerheight@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_markerheight: *mut nsIAtom; + #[link_name = "?markerwidth@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_markerwidth: *mut nsIAtom; + #[link_name = "?maskunits@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_maskunits: *mut nsIAtom; + #[link_name = "?markerunits@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_markerunits: *mut nsIAtom; + #[link_name = "?maskcontentunits@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_maskcontentunits: *mut nsIAtom; + #[link_name = "?tablevalues@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_tablevalues: *mut nsIAtom; + #[link_name = "?primitiveunits@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_primitiveunits: *mut nsIAtom; + #[link_name = "?zoomandpan@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_zoomandpan: *mut nsIAtom; + #[link_name = "?kernelmatrix@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_kernelmatrix: *mut nsIAtom; + #[link_name = "?kerning@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_kerning: *mut nsIAtom; + #[link_name = "?kernelunitlength@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_kernelunitlength: *mut nsIAtom; + #[link_name = "?pointsatx@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_pointsatx: *mut nsIAtom; + #[link_name = "?pointsaty@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_pointsaty: *mut nsIAtom; + #[link_name = "?pointsatz@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_pointsatz: *mut nsIAtom; + #[link_name = "?xlink_href@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xlink_href: *mut nsIAtom; + #[link_name = "?xlink_title@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xlink_title: *mut nsIAtom; + #[link_name = "?xlink_role@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xlink_role: *mut nsIAtom; + #[link_name = "?xlink_arcrole@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xlink_arcrole: *mut nsIAtom; + #[link_name = "?arcrole@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_arcrole: *mut nsIAtom; + #[link_name = "?xmlns_xlink@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xmlns_xlink: *mut nsIAtom; + #[link_name = "?xlink_type@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xlink_type: *mut nsIAtom; + #[link_name = "?xlink_show@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xlink_show: *mut nsIAtom; + #[link_name = "?xlink_actuate@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_xlink_actuate: *mut nsIAtom; + #[link_name = "?color_rendering@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_color_rendering: *mut nsIAtom; + #[link_name = "?numoctaves@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_numoctaves: *mut nsIAtom; + #[link_name = "?onmousewheel@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_onmousewheel: *mut nsIAtom; + #[link_name = "?clippathunits@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_clippathunits: *mut nsIAtom; + #[link_name = "?glyph_orientation_vertical@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_glyph_orientation_vertical: *mut nsIAtom; + #[link_name = "?glyph_orientation_horizontal@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_glyph_orientation_horizontal: *mut nsIAtom; + #[link_name = "?glyphref@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_glyphref: *mut nsIAtom; + #[link_name = "?keypoints@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_keypoints: *mut nsIAtom; + #[link_name = "?attributename@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_attributename: *mut nsIAtom; + #[link_name = "?attributetype@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_attributetype: *mut nsIAtom; + #[link_name = "?startoffset@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_startoffset: *mut nsIAtom; + #[link_name = "?keysplines@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_keysplines: *mut nsIAtom; + #[link_name = "?preservealpha@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_preservealpha: *mut nsIAtom; + #[link_name = "?preserveaspectratio@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_preserveaspectratio: *mut nsIAtom; + #[link_name = "?alttext@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_alttext: *mut nsIAtom; + #[link_name = "?filterunits@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_filterunits: *mut nsIAtom; + #[link_name = "?keytimes@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_keytimes: *mut nsIAtom; + #[link_name = "?patterntransform@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_patterntransform: *mut nsIAtom; + #[link_name = "?patternunits@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_patternunits: *mut nsIAtom; + #[link_name = "?patterncontentunits@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_patterncontentunits: *mut nsIAtom; + #[link_name = "?stitchtiles@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_stitchtiles: *mut nsIAtom; + #[link_name = "?systemlanguage@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_systemlanguage: *mut nsIAtom; + #[link_name = "?textlength@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_textlength: *mut nsIAtom; + #[link_name = "?requiredfeatures@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_requiredfeatures: *mut nsIAtom; + #[link_name = "?requiredextensions@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_requiredextensions: *mut nsIAtom; + #[link_name = "?viewtarget@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_viewtarget: *mut nsIAtom; + #[link_name = "?viewbox@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_viewbox: *mut nsIAtom; + #[link_name = "?refx@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_refx: *mut nsIAtom; + #[link_name = "?refy@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_refy: *mut nsIAtom; + #[link_name = "?isindex@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_isindex: *mut nsIAtom; + #[link_name = "?fefunca@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fefunca: *mut nsIAtom; + #[link_name = "?fefuncb@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fefuncb: *mut nsIAtom; + #[link_name = "?feblend@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_feblend: *mut nsIAtom; + #[link_name = "?feflood@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_feflood: *mut nsIAtom; + #[link_name = "?feturbulence@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_feturbulence: *mut nsIAtom; + #[link_name = "?femergenode@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_femergenode: *mut nsIAtom; + #[link_name = "?feimage@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_feimage: *mut nsIAtom; + #[link_name = "?femerge@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_femerge: *mut nsIAtom; + #[link_name = "?fetile@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fetile: *mut nsIAtom; + #[link_name = "?fecomposite@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fecomposite: *mut nsIAtom; + #[link_name = "?altglyphdef@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_altglyphdef: *mut nsIAtom; + #[link_name = "?altGlyphDef@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_altGlyphDef: *mut nsIAtom; + #[link_name = "?fefuncg@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fefuncg: *mut nsIAtom; + #[link_name = "?fediffuselighting@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fediffuselighting: *mut nsIAtom; + #[link_name = "?fespecularlighting@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fespecularlighting: *mut nsIAtom; + #[link_name = "?altglyph@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_altglyph: *mut nsIAtom; + #[link_name = "?altGlyph@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_altGlyph: *mut nsIAtom; + #[link_name = "?clippath@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_clippath: *mut nsIAtom; + #[link_name = "?textpath@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_textpath: *mut nsIAtom; + #[link_name = "?altglyphitem@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_altglyphitem: *mut nsIAtom; + #[link_name = "?altGlyphItem@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_altGlyphItem: *mut nsIAtom; + #[link_name = "?animatetransform@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_animatetransform: *mut nsIAtom; + #[link_name = "?animatemotion@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_animatemotion: *mut nsIAtom; + #[link_name = "?fedisplacementmap@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fedisplacementmap: *mut nsIAtom; + #[link_name = "?animatecolor@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_animatecolor: *mut nsIAtom; + #[link_name = "?fefuncr@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fefuncr: *mut nsIAtom; + #[link_name = "?fecomponenttransfer@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fecomponenttransfer: *mut nsIAtom; + #[link_name = "?fegaussianblur@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fegaussianblur: *mut nsIAtom; + #[link_name = "?foreignobject@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_foreignobject: *mut nsIAtom; + #[link_name = "?feoffset@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_feoffset: *mut nsIAtom; + #[link_name = "?fespotlight@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fespotlight: *mut nsIAtom; + #[link_name = "?fepointlight@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fepointlight: *mut nsIAtom; + #[link_name = "?fedistantlight@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fedistantlight: *mut nsIAtom; + #[link_name = "?lineargradient@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_lineargradient: *mut nsIAtom; + #[link_name = "?radialgradient@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_radialgradient: *mut nsIAtom; + #[link_name = "?fedropshadow@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fedropshadow: *mut nsIAtom; + #[link_name = "?fecolormatrix@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_fecolormatrix: *mut nsIAtom; + #[link_name = "?feconvolvematrix@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_feconvolvematrix: *mut nsIAtom; + #[link_name = "?femorphology@nsGkAtoms@@2PEAVnsIAtom@@EA"] + pub static nsGkAtoms_femorphology: *mut nsIAtom; #[link_name = "?after@nsCSSPseudoElements@@2PEAVnsICSSPseudoElement@@EA"] pub static nsCSSPseudoElements_after: *mut nsICSSPseudoElement; #[link_name = "?before@nsCSSPseudoElements@@2PEAVnsICSSPseudoElement@@EA"] @@ -10034,8 +10194,6 @@ cfg_if! { pub static nsGkAtoms_applyImports: *mut nsIAtom; #[link_name = "\x01?applyTemplates@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_applyTemplates: *mut nsIAtom; - #[link_name = "\x01?mozapptype@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_mozapptype: *mut nsIAtom; #[link_name = "\x01?archive@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_archive: *mut nsIAtom; #[link_name = "\x01?area@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -10078,8 +10236,6 @@ cfg_if! { pub static nsGkAtoms_axis: *mut nsIAtom; #[link_name = "\x01?b@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_b: *mut nsIAtom; - #[link_name = "\x01?backdropFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_backdropFrame: *mut nsIAtom; #[link_name = "\x01?background@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_background: *mut nsIAtom; #[link_name = "\x01?base@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -10228,6 +10384,8 @@ cfg_if! { pub static nsGkAtoms_circle: *mut nsIAtom; #[link_name = "\x01?cite@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_cite: *mut nsIAtom; + #[link_name = "\x01?cjkDecimal@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_cjkDecimal: *mut nsIAtom; #[link_name = "\x01?_class@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms__class: *mut nsIAtom; #[link_name = "\x01?classid@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -10374,6 +10532,8 @@ cfg_if! { pub static nsGkAtoms_dd: *mut nsIAtom; #[link_name = "\x01?debug@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_debug: *mut nsIAtom; + #[link_name = "\x01?decimal@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_decimal: *mut nsIAtom; #[link_name = "\x01?decimalFormat@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_decimalFormat: *mut nsIAtom; #[link_name = "\x01?decimalSeparator@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -10952,8 +11112,12 @@ cfg_if! { pub static nsGkAtoms_loop: *mut nsIAtom; #[link_name = "\x01?low@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_low: *mut nsIAtom; + #[link_name = "\x01?lowerAlpha@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_lowerAlpha: *mut nsIAtom; #[link_name = "\x01?lowerFirst@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_lowerFirst: *mut nsIAtom; + #[link_name = "\x01?lowerRoman@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_lowerRoman: *mut nsIAtom; #[link_name = "\x01?lowest@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_lowest: *mut nsIAtom; #[link_name = "\x01?lowsrc@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -11080,8 +11244,6 @@ cfg_if! { pub static nsGkAtoms_mousethrough: *mut nsIAtom; #[link_name = "\x01?mouseup@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_mouseup: *mut nsIAtom; - #[link_name = "\x01?mozaudiochannel@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_mozaudiochannel: *mut nsIAtom; #[link_name = "\x01?mozfullscreenchange@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_mozfullscreenchange: *mut nsIAtom; #[link_name = "\x01?mozfullscreenerror@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -11130,6 +11292,8 @@ cfg_if! { pub static nsGkAtoms_newline: *mut nsIAtom; #[link_name = "\x01?nextBidi@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_nextBidi: *mut nsIAtom; + #[link_name = "\x01?nextTabParentId@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_nextTabParentId: *mut nsIAtom; #[link_name = "\x01?no@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_no: *mut nsIAtom; #[link_name = "\x01?noautofocus@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -11154,6 +11318,8 @@ cfg_if! { pub static nsGkAtoms_nohref: *mut nsIAtom; #[link_name = "\x01?noisolation@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_noisolation: *mut nsIAtom; + #[link_name = "\x01?nomodule@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_nomodule: *mut nsIAtom; #[link_name = "\x01?nonce@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_nonce: *mut nsIAtom; #[link_name = "\x01?none@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -12402,8 +12568,12 @@ cfg_if! { pub static nsGkAtoms_unload: *mut nsIAtom; #[link_name = "\x01?unparsedEntityUri@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_unparsedEntityUri: *mut nsIAtom; + #[link_name = "\x01?upperAlpha@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_upperAlpha: *mut nsIAtom; #[link_name = "\x01?upperFirst@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_upperFirst: *mut nsIAtom; + #[link_name = "\x01?upperRoman@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_upperRoman: *mut nsIAtom; #[link_name = "\x01?uri@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_uri: *mut nsIAtom; #[link_name = "\x01?use@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -12606,6 +12776,8 @@ cfg_if! { pub static nsGkAtoms_direction: *mut nsIAtom; #[link_name = "\x01?disable@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_disable: *mut nsIAtom; + #[link_name = "\x01?disc@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_disc: *mut nsIAtom; #[link_name = "\x01?discrete@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_discrete: *mut nsIAtom; #[link_name = "\x01?divisor@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -13714,10 +13886,6 @@ cfg_if! { pub static nsGkAtoms_onuserproximity: *mut nsIAtom; #[link_name = "\x01?ondevicelight@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_ondevicelight: *mut nsIAtom; - #[link_name = "\x01?onmozinterruptbegin@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_onmozinterruptbegin: *mut nsIAtom; - #[link_name = "\x01?onmozinterruptend@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_onmozinterruptend: *mut nsIAtom; #[link_name = "\x01?ondevicechange@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_ondevicechange: *mut nsIAtom; #[link_name = "\x01?mozinputrangeignorepreventdefault@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -13736,192 +13904,8 @@ cfg_if! { pub static nsGkAtoms_processingInstructionTagName: *mut nsIAtom; #[link_name = "\x01?textTagName@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_textTagName: *mut nsIAtom; - #[link_name = "\x01?bcTableCellFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_bcTableCellFrame: *mut nsIAtom; - #[link_name = "\x01?blockFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_blockFrame: *mut nsIAtom; - #[link_name = "\x01?boxFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_boxFrame: *mut nsIAtom; - #[link_name = "\x01?brFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_brFrame: *mut nsIAtom; - #[link_name = "\x01?bulletFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_bulletFrame: *mut nsIAtom; - #[link_name = "\x01?colorControlFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_colorControlFrame: *mut nsIAtom; - #[link_name = "\x01?columnSetFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_columnSetFrame: *mut nsIAtom; - #[link_name = "\x01?comboboxControlFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_comboboxControlFrame: *mut nsIAtom; - #[link_name = "\x01?comboboxDisplayFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_comboboxDisplayFrame: *mut nsIAtom; - #[link_name = "\x01?dateTimeControlFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_dateTimeControlFrame: *mut nsIAtom; - #[link_name = "\x01?deckFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_deckFrame: *mut nsIAtom; - #[link_name = "\x01?detailsFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_detailsFrame: *mut nsIAtom; - #[link_name = "\x01?fieldSetFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_fieldSetFrame: *mut nsIAtom; - #[link_name = "\x01?flexContainerFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_flexContainerFrame: *mut nsIAtom; - #[link_name = "\x01?formControlFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_formControlFrame: *mut nsIAtom; - #[link_name = "\x01?frameSetFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_frameSetFrame: *mut nsIAtom; - #[link_name = "\x01?gfxButtonControlFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_gfxButtonControlFrame: *mut nsIAtom; - #[link_name = "\x01?gridContainerFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_gridContainerFrame: *mut nsIAtom; - #[link_name = "\x01?HTMLButtonControlFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_HTMLButtonControlFrame: *mut nsIAtom; - #[link_name = "\x01?HTMLCanvasFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_HTMLCanvasFrame: *mut nsIAtom; - #[link_name = "\x01?subDocumentFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_subDocumentFrame: *mut nsIAtom; - #[link_name = "\x01?imageBoxFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_imageBoxFrame: *mut nsIAtom; - #[link_name = "\x01?imageFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_imageFrame: *mut nsIAtom; - #[link_name = "\x01?imageControlFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_imageControlFrame: *mut nsIAtom; - #[link_name = "\x01?inlineFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_inlineFrame: *mut nsIAtom; - #[link_name = "\x01?leafBoxFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_leafBoxFrame: *mut nsIAtom; - #[link_name = "\x01?legendFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_legendFrame: *mut nsIAtom; - #[link_name = "\x01?letterFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_letterFrame: *mut nsIAtom; - #[link_name = "\x01?lineFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_lineFrame: *mut nsIAtom; - #[link_name = "\x01?listControlFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_listControlFrame: *mut nsIAtom; - #[link_name = "\x01?menuFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_menuFrame: *mut nsIAtom; - #[link_name = "\x01?meterFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_meterFrame: *mut nsIAtom; - #[link_name = "\x01?menuPopupFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_menuPopupFrame: *mut nsIAtom; - #[link_name = "\x01?numberControlFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_numberControlFrame: *mut nsIAtom; - #[link_name = "\x01?objectFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_objectFrame: *mut nsIAtom; - #[link_name = "\x01?pageFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_pageFrame: *mut nsIAtom; - #[link_name = "\x01?pageBreakFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_pageBreakFrame: *mut nsIAtom; - #[link_name = "\x01?pageContentFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_pageContentFrame: *mut nsIAtom; #[link_name = "\x01?placeholderFrame@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_placeholderFrame: *mut nsIAtom; - #[link_name = "\x01?popupSetFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_popupSetFrame: *mut nsIAtom; - #[link_name = "\x01?progressFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_progressFrame: *mut nsIAtom; - #[link_name = "\x01?canvasFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_canvasFrame: *mut nsIAtom; - #[link_name = "\x01?rangeFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_rangeFrame: *mut nsIAtom; - #[link_name = "\x01?rootFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_rootFrame: *mut nsIAtom; - #[link_name = "\x01?rubyBaseContainerFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_rubyBaseContainerFrame: *mut nsIAtom; - #[link_name = "\x01?rubyBaseFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_rubyBaseFrame: *mut nsIAtom; - #[link_name = "\x01?rubyFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_rubyFrame: *mut nsIAtom; - #[link_name = "\x01?rubyTextContainerFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_rubyTextContainerFrame: *mut nsIAtom; - #[link_name = "\x01?rubyTextFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_rubyTextFrame: *mut nsIAtom; - #[link_name = "\x01?scrollFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_scrollFrame: *mut nsIAtom; - #[link_name = "\x01?scrollbarFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_scrollbarFrame: *mut nsIAtom; - #[link_name = "\x01?sequenceFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_sequenceFrame: *mut nsIAtom; - #[link_name = "\x01?sliderFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_sliderFrame: *mut nsIAtom; - #[link_name = "\x01?tableCellFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_tableCellFrame: *mut nsIAtom; - #[link_name = "\x01?tableColFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_tableColFrame: *mut nsIAtom; - #[link_name = "\x01?tableColGroupFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_tableColGroupFrame: *mut nsIAtom; - #[link_name = "\x01?tableFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_tableFrame: *mut nsIAtom; - #[link_name = "\x01?tableWrapperFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_tableWrapperFrame: *mut nsIAtom; - #[link_name = "\x01?tableRowGroupFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_tableRowGroupFrame: *mut nsIAtom; - #[link_name = "\x01?tableRowFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_tableRowFrame: *mut nsIAtom; - #[link_name = "\x01?textInputFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_textInputFrame: *mut nsIAtom; - #[link_name = "\x01?textFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_textFrame: *mut nsIAtom; - #[link_name = "\x01?viewportFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_viewportFrame: *mut nsIAtom; - #[link_name = "\x01?XULLabelFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_XULLabelFrame: *mut nsIAtom; - #[link_name = "\x01?svgAFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgAFrame: *mut nsIAtom; - #[link_name = "\x01?svgClipPathFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgClipPathFrame: *mut nsIAtom; - #[link_name = "\x01?svgDefsFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgDefsFrame: *mut nsIAtom; - #[link_name = "\x01?svgFEContainerFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgFEContainerFrame: *mut nsIAtom; - #[link_name = "\x01?svgFEImageFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgFEImageFrame: *mut nsIAtom; - #[link_name = "\x01?svgFELeafFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgFELeafFrame: *mut nsIAtom; - #[link_name = "\x01?svgFEUnstyledLeafFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgFEUnstyledLeafFrame: *mut nsIAtom; - #[link_name = "\x01?svgFilterFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgFilterFrame: *mut nsIAtom; - #[link_name = "\x01?svgForeignObjectFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgForeignObjectFrame: *mut nsIAtom; - #[link_name = "\x01?svgGenericContainerFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgGenericContainerFrame: *mut nsIAtom; - #[link_name = "\x01?svgGeometryFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgGeometryFrame: *mut nsIAtom; - #[link_name = "\x01?svgGFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgGFrame: *mut nsIAtom; - #[link_name = "\x01?svgGradientFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgGradientFrame: *mut nsIAtom; - #[link_name = "\x01?svgImageFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgImageFrame: *mut nsIAtom; - #[link_name = "\x01?svgInnerSVGFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgInnerSVGFrame: *mut nsIAtom; - #[link_name = "\x01?svgLinearGradientFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgLinearGradientFrame: *mut nsIAtom; - #[link_name = "\x01?svgMarkerFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgMarkerFrame: *mut nsIAtom; - #[link_name = "\x01?svgMarkerAnonChildFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgMarkerAnonChildFrame: *mut nsIAtom; - #[link_name = "\x01?svgMaskFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgMaskFrame: *mut nsIAtom; - #[link_name = "\x01?svgOuterSVGFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgOuterSVGFrame: *mut nsIAtom; - #[link_name = "\x01?svgOuterSVGAnonChildFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgOuterSVGAnonChildFrame: *mut nsIAtom; - #[link_name = "\x01?svgPatternFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgPatternFrame: *mut nsIAtom; - #[link_name = "\x01?svgRadialGradientFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgRadialGradientFrame: *mut nsIAtom; - #[link_name = "\x01?svgStopFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgStopFrame: *mut nsIAtom; - #[link_name = "\x01?svgSwitchFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgSwitchFrame: *mut nsIAtom; - #[link_name = "\x01?svgTextFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgTextFrame: *mut nsIAtom; - #[link_name = "\x01?svgUseFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgUseFrame: *mut nsIAtom; - #[link_name = "\x01?svgViewFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_svgViewFrame: *mut nsIAtom; - #[link_name = "\x01?HTMLVideoFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_HTMLVideoFrame: *mut nsIAtom; #[link_name = "\x01?onloadend@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_onloadend: *mut nsIAtom; #[link_name = "\x01?onloadstart@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -14046,6 +14030,8 @@ cfg_if! { pub static nsGkAtoms_ongamepadconnected: *mut nsIAtom; #[link_name = "\x01?ongamepaddisconnected@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_ongamepaddisconnected: *mut nsIAtom; + #[link_name = "\x01?afterPseudoProperty@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_afterPseudoProperty: *mut nsIAtom; #[link_name = "\x01?animationsProperty@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_animationsProperty: *mut nsIAtom; #[link_name = "\x01?animationsOfBeforeProperty@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -14058,6 +14044,8 @@ cfg_if! { pub static nsGkAtoms_animationEffectsForBeforeProperty: *mut nsIAtom; #[link_name = "\x01?animationEffectsForAfterProperty@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_animationEffectsForAfterProperty: *mut nsIAtom; + #[link_name = "\x01?beforePseudoProperty@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_beforePseudoProperty: *mut nsIAtom; #[link_name = "\x01?cssPseudoElementBeforeProperty@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_cssPseudoElementBeforeProperty: *mut nsIAtom; #[link_name = "\x01?cssPseudoElementAfterProperty@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -14436,8 +14424,6 @@ cfg_if! { pub static nsGkAtoms_aria_valuemax: *mut nsIAtom; #[link_name = "\x01?aria_valuetext@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_aria_valuetext: *mut nsIAtom; - #[link_name = "\x01?AreaFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_AreaFrame: *mut nsIAtom; #[link_name = "\x01?auto_generated@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_auto_generated: *mut nsIAtom; #[link_name = "\x01?banner@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -14478,8 +14464,6 @@ cfg_if! { pub static nsGkAtoms_heading: *mut nsIAtom; #[link_name = "\x01?hitregion@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_hitregion: *mut nsIAtom; - #[link_name = "\x01?InlineBlockFrame@nsGkAtoms@@2PAVnsIAtom@@A"] - pub static nsGkAtoms_InlineBlockFrame: *mut nsIAtom; #[link_name = "\x01?inlinevalue@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_inlinevalue: *mut nsIAtom; #[link_name = "\x01?invalid@nsGkAtoms@@2PAVnsIAtom@@A"] @@ -14650,6 +14634,262 @@ cfg_if! { pub static nsGkAtoms_onaddsourcebuffer: *mut nsIAtom; #[link_name = "\x01?onremovesourcebuffer@nsGkAtoms@@2PAVnsIAtom@@A"] pub static nsGkAtoms_onremovesourcebuffer: *mut nsIAtom; + #[link_name = "\x01?xlink@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xlink: *mut nsIAtom; + #[link_name = "\x01?xml_space@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xml_space: *mut nsIAtom; + #[link_name = "\x01?xml_lang@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xml_lang: *mut nsIAtom; + #[link_name = "\x01?xml_base@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xml_base: *mut nsIAtom; + #[link_name = "\x01?aria_grab@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_aria_grab: *mut nsIAtom; + #[link_name = "\x01?aria_channel@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_aria_channel: *mut nsIAtom; + #[link_name = "\x01?aria_secret@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_aria_secret: *mut nsIAtom; + #[link_name = "\x01?aria_templateid@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_aria_templateid: *mut nsIAtom; + #[link_name = "\x01?aria_datatype@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_aria_datatype: *mut nsIAtom; + #[link_name = "\x01?local@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_local: *mut nsIAtom; + #[link_name = "\x01?xchannelselector@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xchannelselector: *mut nsIAtom; + #[link_name = "\x01?ychannelselector@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_ychannelselector: *mut nsIAtom; + #[link_name = "\x01?enable_background@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_enable_background: *mut nsIAtom; + #[link_name = "\x01?calcmode@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_calcmode: *mut nsIAtom; + #[link_name = "\x01?specularexponent@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_specularexponent: *mut nsIAtom; + #[link_name = "\x01?specularconstant@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_specularconstant: *mut nsIAtom; + #[link_name = "\x01?gradienttransform@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_gradienttransform: *mut nsIAtom; + #[link_name = "\x01?gradientunits@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_gradientunits: *mut nsIAtom; + #[link_name = "\x01?rendering_intent@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_rendering_intent: *mut nsIAtom; + #[link_name = "\x01?stddeviation@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_stddeviation: *mut nsIAtom; + #[link_name = "\x01?basefrequency@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_basefrequency: *mut nsIAtom; + #[link_name = "\x01?baseprofile@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_baseprofile: *mut nsIAtom; + #[link_name = "\x01?baseProfile@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_baseProfile: *mut nsIAtom; + #[link_name = "\x01?edgemode@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_edgemode: *mut nsIAtom; + #[link_name = "\x01?repeatcount@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_repeatcount: *mut nsIAtom; + #[link_name = "\x01?repeatdur@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_repeatdur: *mut nsIAtom; + #[link_name = "\x01?spreadmethod@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_spreadmethod: *mut nsIAtom; + #[link_name = "\x01?diffuseconstant@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_diffuseconstant: *mut nsIAtom; + #[link_name = "\x01?surfacescale@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_surfacescale: *mut nsIAtom; + #[link_name = "\x01?lengthadjust@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_lengthadjust: *mut nsIAtom; + #[link_name = "\x01?origin@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_origin: *mut nsIAtom; + #[link_name = "\x01?targetx@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_targetx: *mut nsIAtom; + #[link_name = "\x01?targety@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_targety: *mut nsIAtom; + #[link_name = "\x01?pathlength@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_pathlength: *mut nsIAtom; + #[link_name = "\x01?definitionurl@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_definitionurl: *mut nsIAtom; + #[link_name = "\x01?limitingconeangle@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_limitingconeangle: *mut nsIAtom; + #[link_name = "\x01?markerheight@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_markerheight: *mut nsIAtom; + #[link_name = "\x01?markerwidth@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_markerwidth: *mut nsIAtom; + #[link_name = "\x01?maskunits@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_maskunits: *mut nsIAtom; + #[link_name = "\x01?markerunits@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_markerunits: *mut nsIAtom; + #[link_name = "\x01?maskcontentunits@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_maskcontentunits: *mut nsIAtom; + #[link_name = "\x01?tablevalues@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_tablevalues: *mut nsIAtom; + #[link_name = "\x01?primitiveunits@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_primitiveunits: *mut nsIAtom; + #[link_name = "\x01?zoomandpan@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_zoomandpan: *mut nsIAtom; + #[link_name = "\x01?kernelmatrix@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_kernelmatrix: *mut nsIAtom; + #[link_name = "\x01?kerning@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_kerning: *mut nsIAtom; + #[link_name = "\x01?kernelunitlength@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_kernelunitlength: *mut nsIAtom; + #[link_name = "\x01?pointsatx@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_pointsatx: *mut nsIAtom; + #[link_name = "\x01?pointsaty@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_pointsaty: *mut nsIAtom; + #[link_name = "\x01?pointsatz@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_pointsatz: *mut nsIAtom; + #[link_name = "\x01?xlink_href@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xlink_href: *mut nsIAtom; + #[link_name = "\x01?xlink_title@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xlink_title: *mut nsIAtom; + #[link_name = "\x01?xlink_role@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xlink_role: *mut nsIAtom; + #[link_name = "\x01?xlink_arcrole@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xlink_arcrole: *mut nsIAtom; + #[link_name = "\x01?arcrole@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_arcrole: *mut nsIAtom; + #[link_name = "\x01?xmlns_xlink@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xmlns_xlink: *mut nsIAtom; + #[link_name = "\x01?xlink_type@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xlink_type: *mut nsIAtom; + #[link_name = "\x01?xlink_show@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xlink_show: *mut nsIAtom; + #[link_name = "\x01?xlink_actuate@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_xlink_actuate: *mut nsIAtom; + #[link_name = "\x01?color_rendering@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_color_rendering: *mut nsIAtom; + #[link_name = "\x01?numoctaves@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_numoctaves: *mut nsIAtom; + #[link_name = "\x01?onmousewheel@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_onmousewheel: *mut nsIAtom; + #[link_name = "\x01?clippathunits@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_clippathunits: *mut nsIAtom; + #[link_name = "\x01?glyph_orientation_vertical@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_glyph_orientation_vertical: *mut nsIAtom; + #[link_name = "\x01?glyph_orientation_horizontal@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_glyph_orientation_horizontal: *mut nsIAtom; + #[link_name = "\x01?glyphref@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_glyphref: *mut nsIAtom; + #[link_name = "\x01?keypoints@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_keypoints: *mut nsIAtom; + #[link_name = "\x01?attributename@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_attributename: *mut nsIAtom; + #[link_name = "\x01?attributetype@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_attributetype: *mut nsIAtom; + #[link_name = "\x01?startoffset@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_startoffset: *mut nsIAtom; + #[link_name = "\x01?keysplines@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_keysplines: *mut nsIAtom; + #[link_name = "\x01?preservealpha@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_preservealpha: *mut nsIAtom; + #[link_name = "\x01?preserveaspectratio@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_preserveaspectratio: *mut nsIAtom; + #[link_name = "\x01?alttext@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_alttext: *mut nsIAtom; + #[link_name = "\x01?filterunits@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_filterunits: *mut nsIAtom; + #[link_name = "\x01?keytimes@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_keytimes: *mut nsIAtom; + #[link_name = "\x01?patterntransform@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_patterntransform: *mut nsIAtom; + #[link_name = "\x01?patternunits@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_patternunits: *mut nsIAtom; + #[link_name = "\x01?patterncontentunits@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_patterncontentunits: *mut nsIAtom; + #[link_name = "\x01?stitchtiles@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_stitchtiles: *mut nsIAtom; + #[link_name = "\x01?systemlanguage@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_systemlanguage: *mut nsIAtom; + #[link_name = "\x01?textlength@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_textlength: *mut nsIAtom; + #[link_name = "\x01?requiredfeatures@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_requiredfeatures: *mut nsIAtom; + #[link_name = "\x01?requiredextensions@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_requiredextensions: *mut nsIAtom; + #[link_name = "\x01?viewtarget@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_viewtarget: *mut nsIAtom; + #[link_name = "\x01?viewbox@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_viewbox: *mut nsIAtom; + #[link_name = "\x01?refx@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_refx: *mut nsIAtom; + #[link_name = "\x01?refy@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_refy: *mut nsIAtom; + #[link_name = "\x01?isindex@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_isindex: *mut nsIAtom; + #[link_name = "\x01?fefunca@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fefunca: *mut nsIAtom; + #[link_name = "\x01?fefuncb@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fefuncb: *mut nsIAtom; + #[link_name = "\x01?feblend@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_feblend: *mut nsIAtom; + #[link_name = "\x01?feflood@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_feflood: *mut nsIAtom; + #[link_name = "\x01?feturbulence@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_feturbulence: *mut nsIAtom; + #[link_name = "\x01?femergenode@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_femergenode: *mut nsIAtom; + #[link_name = "\x01?feimage@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_feimage: *mut nsIAtom; + #[link_name = "\x01?femerge@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_femerge: *mut nsIAtom; + #[link_name = "\x01?fetile@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fetile: *mut nsIAtom; + #[link_name = "\x01?fecomposite@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fecomposite: *mut nsIAtom; + #[link_name = "\x01?altglyphdef@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_altglyphdef: *mut nsIAtom; + #[link_name = "\x01?altGlyphDef@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_altGlyphDef: *mut nsIAtom; + #[link_name = "\x01?fefuncg@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fefuncg: *mut nsIAtom; + #[link_name = "\x01?fediffuselighting@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fediffuselighting: *mut nsIAtom; + #[link_name = "\x01?fespecularlighting@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fespecularlighting: *mut nsIAtom; + #[link_name = "\x01?altglyph@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_altglyph: *mut nsIAtom; + #[link_name = "\x01?altGlyph@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_altGlyph: *mut nsIAtom; + #[link_name = "\x01?clippath@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_clippath: *mut nsIAtom; + #[link_name = "\x01?textpath@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_textpath: *mut nsIAtom; + #[link_name = "\x01?altglyphitem@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_altglyphitem: *mut nsIAtom; + #[link_name = "\x01?altGlyphItem@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_altGlyphItem: *mut nsIAtom; + #[link_name = "\x01?animatetransform@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_animatetransform: *mut nsIAtom; + #[link_name = "\x01?animatemotion@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_animatemotion: *mut nsIAtom; + #[link_name = "\x01?fedisplacementmap@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fedisplacementmap: *mut nsIAtom; + #[link_name = "\x01?animatecolor@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_animatecolor: *mut nsIAtom; + #[link_name = "\x01?fefuncr@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fefuncr: *mut nsIAtom; + #[link_name = "\x01?fecomponenttransfer@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fecomponenttransfer: *mut nsIAtom; + #[link_name = "\x01?fegaussianblur@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fegaussianblur: *mut nsIAtom; + #[link_name = "\x01?foreignobject@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_foreignobject: *mut nsIAtom; + #[link_name = "\x01?feoffset@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_feoffset: *mut nsIAtom; + #[link_name = "\x01?fespotlight@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fespotlight: *mut nsIAtom; + #[link_name = "\x01?fepointlight@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fepointlight: *mut nsIAtom; + #[link_name = "\x01?fedistantlight@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fedistantlight: *mut nsIAtom; + #[link_name = "\x01?lineargradient@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_lineargradient: *mut nsIAtom; + #[link_name = "\x01?radialgradient@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_radialgradient: *mut nsIAtom; + #[link_name = "\x01?fedropshadow@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fedropshadow: *mut nsIAtom; + #[link_name = "\x01?fecolormatrix@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_fecolormatrix: *mut nsIAtom; + #[link_name = "\x01?feconvolvematrix@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_feconvolvematrix: *mut nsIAtom; + #[link_name = "\x01?femorphology@nsGkAtoms@@2PAVnsIAtom@@A"] + pub static nsGkAtoms_femorphology: *mut nsIAtom; #[link_name = "\x01?after@nsCSSPseudoElements@@2PAVnsICSSPseudoElement@@A"] pub static nsCSSPseudoElements_after: *mut nsICSSPseudoElement; #[link_name = "\x01?before@nsCSSPseudoElements@@2PAVnsICSSPseudoElement@@A"] @@ -14970,8 +15210,6 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_applyImports as *mut _) } }; ("apply-templates") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_applyTemplates as *mut _) } }; -("mozapptype") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_mozapptype as *mut _) } }; ("archive") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_archive as *mut _) } }; ("area") => @@ -15014,8 +15252,6 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_axis as *mut _) } }; ("b") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_b as *mut _) } }; -("BackdropFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_backdropFrame as *mut _) } }; ("background") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_background as *mut _) } }; ("base") => @@ -15164,6 +15400,8 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_circle as *mut _) } }; ("cite") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_cite as *mut _) } }; +("cjk-decimal") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_cjkDecimal as *mut _) } }; ("class") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms__class as *mut _) } }; ("classid") => @@ -15310,6 +15548,8 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_dd as *mut _) } }; ("debug") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_debug as *mut _) } }; +("decimal") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_decimal as *mut _) } }; ("decimal-format") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_decimalFormat as *mut _) } }; ("decimal-separator") => @@ -15888,8 +16128,12 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_loop as *mut _) } }; ("low") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_low as *mut _) } }; +("lower-alpha") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_lowerAlpha as *mut _) } }; ("lower-first") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_lowerFirst as *mut _) } }; +("lower-roman") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_lowerRoman as *mut _) } }; ("lowest") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_lowest as *mut _) } }; ("lowsrc") => @@ -16016,8 +16260,6 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_mousethrough as *mut _) } }; ("mouseup") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_mouseup as *mut _) } }; -("mozaudiochannel") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_mozaudiochannel as *mut _) } }; ("mozfullscreenchange") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_mozfullscreenchange as *mut _) } }; ("mozfullscreenerror") => @@ -16066,6 +16308,8 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_newline as *mut _) } }; ("NextBidi") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_nextBidi as *mut _) } }; +("nextTabParentId") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_nextTabParentId as *mut _) } }; ("no") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_no as *mut _) } }; ("noautofocus") => @@ -16090,6 +16334,8 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_nohref as *mut _) } }; ("noisolation") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_noisolation as *mut _) } }; +("nomodule") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_nomodule as *mut _) } }; ("nonce") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_nonce as *mut _) } }; ("none") => @@ -17338,8 +17584,12 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_unload as *mut _) } }; ("unparsed-entity-uri") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_unparsedEntityUri as *mut _) } }; +("upper-alpha") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_upperAlpha as *mut _) } }; ("upper-first") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_upperFirst as *mut _) } }; +("upper-roman") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_upperRoman as *mut _) } }; ("uri") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_uri as *mut _) } }; ("use") => @@ -17542,6 +17792,8 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_direction as *mut _) } }; ("disable") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_disable as *mut _) } }; +("disc") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_disc as *mut _) } }; ("discrete") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_discrete as *mut _) } }; ("divisor") => @@ -18650,10 +18902,6 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_onuserproximity as *mut _) } }; ("ondevicelight") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_ondevicelight as *mut _) } }; -("onmozinterruptbegin") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_onmozinterruptbegin as *mut _) } }; -("onmozinterruptend") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_onmozinterruptend as *mut _) } }; ("ondevicechange") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_ondevicechange as *mut _) } }; ("mozinputrangeignorepreventdefault") => @@ -18672,192 +18920,8 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_processingInstructionTagName as *mut _) } }; ("#text") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_textTagName as *mut _) } }; -("BCTableCellFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_bcTableCellFrame as *mut _) } }; -("BlockFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_blockFrame as *mut _) } }; -("BoxFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_boxFrame as *mut _) } }; -("BRFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_brFrame as *mut _) } }; -("BulletFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_bulletFrame as *mut _) } }; -("colorControlFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_colorControlFrame as *mut _) } }; -("ColumnSetFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_columnSetFrame as *mut _) } }; -("ComboboxControlFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_comboboxControlFrame as *mut _) } }; -("ComboboxDisplayFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_comboboxDisplayFrame as *mut _) } }; -("DateTimeControlFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_dateTimeControlFrame as *mut _) } }; -("DeckFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_deckFrame as *mut _) } }; -("DetailsFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_detailsFrame as *mut _) } }; -("FieldSetFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fieldSetFrame as *mut _) } }; -("FlexContainerFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_flexContainerFrame as *mut _) } }; -("FormControlFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_formControlFrame as *mut _) } }; -("FrameSetFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_frameSetFrame as *mut _) } }; -("gfxButtonControlFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_gfxButtonControlFrame as *mut _) } }; -("GridContainerFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_gridContainerFrame as *mut _) } }; -("HTMLButtonControlFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_HTMLButtonControlFrame as *mut _) } }; -("HTMLCanvasFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_HTMLCanvasFrame as *mut _) } }; -("subDocumentFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_subDocumentFrame as *mut _) } }; -("ImageBoxFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_imageBoxFrame as *mut _) } }; -("ImageFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_imageFrame as *mut _) } }; -("ImageControlFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_imageControlFrame as *mut _) } }; -("InlineFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_inlineFrame as *mut _) } }; -("LeafBoxFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_leafBoxFrame as *mut _) } }; -("LegendFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_legendFrame as *mut _) } }; -("LetterFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_letterFrame as *mut _) } }; -("LineFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_lineFrame as *mut _) } }; -("ListControlFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_listControlFrame as *mut _) } }; -("MenuFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_menuFrame as *mut _) } }; -("MeterFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_meterFrame as *mut _) } }; -("MenuPopupFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_menuPopupFrame as *mut _) } }; -("NumberControlFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_numberControlFrame as *mut _) } }; -("ObjectFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_objectFrame as *mut _) } }; -("PageFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_pageFrame as *mut _) } }; -("PageBreakFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_pageBreakFrame as *mut _) } }; -("PageContentFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_pageContentFrame as *mut _) } }; ("PlaceholderFrame") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_placeholderFrame as *mut _) } }; -("PopupSetFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_popupSetFrame as *mut _) } }; -("ProgressFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_progressFrame as *mut _) } }; -("CanvasFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_canvasFrame as *mut _) } }; -("RangeFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_rangeFrame as *mut _) } }; -("RootFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_rootFrame as *mut _) } }; -("RubyBaseContainerFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_rubyBaseContainerFrame as *mut _) } }; -("RubyBaseFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_rubyBaseFrame as *mut _) } }; -("RubyFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_rubyFrame as *mut _) } }; -("RubyTextContainerFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_rubyTextContainerFrame as *mut _) } }; -("RubyTextFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_rubyTextFrame as *mut _) } }; -("ScrollFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_scrollFrame as *mut _) } }; -("ScrollbarFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_scrollbarFrame as *mut _) } }; -("SequenceFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_sequenceFrame as *mut _) } }; -("sliderFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_sliderFrame as *mut _) } }; -("TableCellFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_tableCellFrame as *mut _) } }; -("TableColFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_tableColFrame as *mut _) } }; -("TableColGroupFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_tableColGroupFrame as *mut _) } }; -("TableFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_tableFrame as *mut _) } }; -("TableWrapperFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_tableWrapperFrame as *mut _) } }; -("TableRowGroupFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_tableRowGroupFrame as *mut _) } }; -("TableRowFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_tableRowFrame as *mut _) } }; -("TextInputFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_textInputFrame as *mut _) } }; -("TextFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_textFrame as *mut _) } }; -("ViewportFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_viewportFrame as *mut _) } }; -("XULLabelFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_XULLabelFrame as *mut _) } }; -("SVGAFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgAFrame as *mut _) } }; -("SVGClipPathFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgClipPathFrame as *mut _) } }; -("SVGDefsFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgDefsFrame as *mut _) } }; -("SVGFEContainerFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgFEContainerFrame as *mut _) } }; -("SVGFEImageFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgFEImageFrame as *mut _) } }; -("SVGFELeafFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgFELeafFrame as *mut _) } }; -("SVGFEUnstyledLeafFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgFEUnstyledLeafFrame as *mut _) } }; -("SVGFilterFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgFilterFrame as *mut _) } }; -("SVGForeignObjectFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgForeignObjectFrame as *mut _) } }; -("SVGGenericContainerFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgGenericContainerFrame as *mut _) } }; -("SVGGeometryFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgGeometryFrame as *mut _) } }; -("SVGGFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgGFrame as *mut _) } }; -("SVGGradientFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgGradientFrame as *mut _) } }; -("SVGImageFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgImageFrame as *mut _) } }; -("SVGInnerSVGFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgInnerSVGFrame as *mut _) } }; -("SVGLinearGradientFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgLinearGradientFrame as *mut _) } }; -("SVGMarkerFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgMarkerFrame as *mut _) } }; -("SVGMarkerAnonChildFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgMarkerAnonChildFrame as *mut _) } }; -("SVGMaskFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgMaskFrame as *mut _) } }; -("SVGOuterSVGFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgOuterSVGFrame as *mut _) } }; -("SVGOuterSVGAnonChildFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgOuterSVGAnonChildFrame as *mut _) } }; -("SVGPatternFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgPatternFrame as *mut _) } }; -("SVGRadialGradientFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgRadialGradientFrame as *mut _) } }; -("SVGStopFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgStopFrame as *mut _) } }; -("SVGSwitchFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgSwitchFrame as *mut _) } }; -("SVGTextFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgTextFrame as *mut _) } }; -("SVGUseFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgUseFrame as *mut _) } }; -("SVGViewFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_svgViewFrame as *mut _) } }; -("VideoFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_HTMLVideoFrame as *mut _) } }; ("onloadend") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_onloadend as *mut _) } }; ("onloadstart") => @@ -18982,6 +19046,8 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_ongamepadconnected as *mut _) } }; ("ongamepaddisconnected") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_ongamepaddisconnected as *mut _) } }; +("afterPseudoProperty") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_afterPseudoProperty as *mut _) } }; ("AnimationsProperty") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_animationsProperty as *mut _) } }; ("AnimationsOfBeforeProperty") => @@ -18994,6 +19060,8 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_animationEffectsForBeforeProperty as *mut _) } }; ("AnimationsEffectsForAfterProperty") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_animationEffectsForAfterProperty as *mut _) } }; +("beforePseudoProperty") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_beforePseudoProperty as *mut _) } }; ("CSSPseudoElementBeforeProperty") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_cssPseudoElementBeforeProperty as *mut _) } }; ("CSSPseudoElementAfterProperty") => @@ -19372,8 +19440,6 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_aria_valuemax as *mut _) } }; ("aria-valuetext") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_aria_valuetext as *mut _) } }; -("AreaFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_AreaFrame as *mut _) } }; ("auto-generated") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_auto_generated as *mut _) } }; ("banner") => @@ -19414,8 +19480,6 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_heading as *mut _) } }; ("hitregion") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_hitregion as *mut _) } }; -("InlineBlockFrame") => - { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_InlineBlockFrame as *mut _) } }; ("inline") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_inlinevalue as *mut _) } }; ("invalid") => @@ -19586,6 +19650,262 @@ macro_rules! atom { { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_onaddsourcebuffer as *mut _) } }; ("onremovesourcebuffer") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_onremovesourcebuffer as *mut _) } }; +("xlink") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xlink as *mut _) } }; +("xml:space") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xml_space as *mut _) } }; +("xml:lang") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xml_lang as *mut _) } }; +("xml:base") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xml_base as *mut _) } }; +("aria-grab") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_aria_grab as *mut _) } }; +("aria-channel") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_aria_channel as *mut _) } }; +("aria-secret") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_aria_secret as *mut _) } }; +("aria-templateid") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_aria_templateid as *mut _) } }; +("aria-datatype") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_aria_datatype as *mut _) } }; +("local") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_local as *mut _) } }; +("xchannelselector") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xchannelselector as *mut _) } }; +("ychannelselector") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_ychannelselector as *mut _) } }; +("enable-background") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_enable_background as *mut _) } }; +("calcmode") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_calcmode as *mut _) } }; +("specularexponent") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_specularexponent as *mut _) } }; +("specularconstant") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_specularconstant as *mut _) } }; +("gradienttransform") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_gradienttransform as *mut _) } }; +("gradientunits") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_gradientunits as *mut _) } }; +("rendering-intent") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_rendering_intent as *mut _) } }; +("stddeviation") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_stddeviation as *mut _) } }; +("basefrequency") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_basefrequency as *mut _) } }; +("baseprofile") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_baseprofile as *mut _) } }; +("baseProfile") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_baseProfile as *mut _) } }; +("edgemode") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_edgemode as *mut _) } }; +("repeatcount") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_repeatcount as *mut _) } }; +("repeatdur") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_repeatdur as *mut _) } }; +("spreadmethod") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_spreadmethod as *mut _) } }; +("diffuseconstant") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_diffuseconstant as *mut _) } }; +("surfacescale") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_surfacescale as *mut _) } }; +("lengthadjust") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_lengthadjust as *mut _) } }; +("origin") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_origin as *mut _) } }; +("targetx") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_targetx as *mut _) } }; +("targety") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_targety as *mut _) } }; +("pathlength") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_pathlength as *mut _) } }; +("definitionurl") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_definitionurl as *mut _) } }; +("limitingconeangle") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_limitingconeangle as *mut _) } }; +("markerheight") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_markerheight as *mut _) } }; +("markerwidth") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_markerwidth as *mut _) } }; +("maskunits") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_maskunits as *mut _) } }; +("markerunits") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_markerunits as *mut _) } }; +("maskcontentunits") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_maskcontentunits as *mut _) } }; +("tablevalues") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_tablevalues as *mut _) } }; +("primitiveunits") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_primitiveunits as *mut _) } }; +("zoomandpan") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_zoomandpan as *mut _) } }; +("kernelmatrix") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_kernelmatrix as *mut _) } }; +("kerning") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_kerning as *mut _) } }; +("kernelunitlength") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_kernelunitlength as *mut _) } }; +("pointsatx") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_pointsatx as *mut _) } }; +("pointsaty") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_pointsaty as *mut _) } }; +("pointsatz") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_pointsatz as *mut _) } }; +("xlink:href") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xlink_href as *mut _) } }; +("xlink:title") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xlink_title as *mut _) } }; +("xlink:role") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xlink_role as *mut _) } }; +("xlink:arcrole") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xlink_arcrole as *mut _) } }; +("arcrole") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_arcrole as *mut _) } }; +("xmlns:xlink") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xmlns_xlink as *mut _) } }; +("xlink:type") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xlink_type as *mut _) } }; +("xlink:show") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xlink_show as *mut _) } }; +("xlink:actuate") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_xlink_actuate as *mut _) } }; +("color-rendering") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_color_rendering as *mut _) } }; +("numoctaves") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_numoctaves as *mut _) } }; +("onmousewheel") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_onmousewheel as *mut _) } }; +("clippathunits") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_clippathunits as *mut _) } }; +("glyph-orientation-vertical") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_glyph_orientation_vertical as *mut _) } }; +("glyph-orientation-horizontal") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_glyph_orientation_horizontal as *mut _) } }; +("glyphref") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_glyphref as *mut _) } }; +("keypoints") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_keypoints as *mut _) } }; +("attributename") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_attributename as *mut _) } }; +("attributetype") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_attributetype as *mut _) } }; +("startoffset") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_startoffset as *mut _) } }; +("keysplines") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_keysplines as *mut _) } }; +("preservealpha") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_preservealpha as *mut _) } }; +("preserveaspectratio") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_preserveaspectratio as *mut _) } }; +("alttext") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_alttext as *mut _) } }; +("filterunits") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_filterunits as *mut _) } }; +("keytimes") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_keytimes as *mut _) } }; +("patterntransform") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_patterntransform as *mut _) } }; +("patternunits") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_patternunits as *mut _) } }; +("patterncontentunits") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_patterncontentunits as *mut _) } }; +("stitchtiles") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_stitchtiles as *mut _) } }; +("systemlanguage") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_systemlanguage as *mut _) } }; +("textlength") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_textlength as *mut _) } }; +("requiredfeatures") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_requiredfeatures as *mut _) } }; +("requiredextensions") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_requiredextensions as *mut _) } }; +("viewtarget") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_viewtarget as *mut _) } }; +("viewbox") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_viewbox as *mut _) } }; +("refx") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_refx as *mut _) } }; +("refy") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_refy as *mut _) } }; +("isindex") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_isindex as *mut _) } }; +("fefunca") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fefunca as *mut _) } }; +("fefuncb") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fefuncb as *mut _) } }; +("feblend") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_feblend as *mut _) } }; +("feflood") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_feflood as *mut _) } }; +("feturbulence") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_feturbulence as *mut _) } }; +("femergenode") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_femergenode as *mut _) } }; +("feimage") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_feimage as *mut _) } }; +("femerge") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_femerge as *mut _) } }; +("fetile") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fetile as *mut _) } }; +("fecomposite") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fecomposite as *mut _) } }; +("altglyphdef") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_altglyphdef as *mut _) } }; +("altGlyphDef") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_altGlyphDef as *mut _) } }; +("fefuncg") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fefuncg as *mut _) } }; +("fediffuselighting") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fediffuselighting as *mut _) } }; +("fespecularlighting") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fespecularlighting as *mut _) } }; +("altglyph") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_altglyph as *mut _) } }; +("altGlyph") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_altGlyph as *mut _) } }; +("clippath") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_clippath as *mut _) } }; +("textpath") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_textpath as *mut _) } }; +("altglyphitem") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_altglyphitem as *mut _) } }; +("altGlyphItem") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_altGlyphItem as *mut _) } }; +("animatetransform") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_animatetransform as *mut _) } }; +("animatemotion") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_animatemotion as *mut _) } }; +("fedisplacementmap") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fedisplacementmap as *mut _) } }; +("animatecolor") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_animatecolor as *mut _) } }; +("fefuncr") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fefuncr as *mut _) } }; +("fecomponenttransfer") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fecomponenttransfer as *mut _) } }; +("fegaussianblur") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fegaussianblur as *mut _) } }; +("foreignobject") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_foreignobject as *mut _) } }; +("feoffset") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_feoffset as *mut _) } }; +("fespotlight") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fespotlight as *mut _) } }; +("fepointlight") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fepointlight as *mut _) } }; +("fedistantlight") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fedistantlight as *mut _) } }; +("lineargradient") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_lineargradient as *mut _) } }; +("radialgradient") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_radialgradient as *mut _) } }; +("fedropshadow") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fedropshadow as *mut _) } }; +("fecolormatrix") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_fecolormatrix as *mut _) } }; +("feconvolvematrix") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_feconvolvematrix as *mut _) } }; +("femorphology") => + { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsGkAtoms_femorphology as *mut _) } }; (":after") => { unsafe { $crate::string_cache::atom_macro::atom_from_static($crate::string_cache::atom_macro::nsCSSPseudoElements_after as *mut _) } }; (":before") => diff --git a/servo/components/style/gecko/generated/bindings.rs b/servo/components/style/gecko/generated/bindings.rs index 6aab0a41d7d3..d068add23753 100644 --- a/servo/components/style/gecko/generated/bindings.rs +++ b/servo/components/style/gecko/generated/bindings.rs @@ -4,6 +4,8 @@ pub use nsstring::{nsACString, nsAString, nsString}; type nsACString_internal = nsACString; type nsAString_internal = nsAString; use gecko_bindings::structs::mozilla::css::GridTemplateAreasValue; +#[allow(unused_imports)] +use gecko_bindings::structs::mozilla::css::ImageValue; use gecko_bindings::structs::mozilla::css::URLValue; use gecko_bindings::structs::mozilla::Side; use gecko_bindings::structs::RawGeckoAnimationPropertySegment; diff --git a/servo/components/style/gecko/generated/structs_debug.rs b/servo/components/style/gecko/generated/structs_debug.rs index 3c8c4afa4e14..dc5734d3a214 100644 --- a/servo/components/style/gecko/generated/structs_debug.rs +++ b/servo/components/style/gecko/generated/structs_debug.rs @@ -10,6 +10,7 @@ pub type ServoUnsafeCell = ::std::cell::UnsafeCell; pub type ServoCell = ::std::cell::Cell; pub type ServoNodeData = AtomicRefCell; +#[allow(non_snake_case, non_camel_case_types, non_upper_case_globals)] pub mod root { #[repr(C)] pub struct __BindgenUnionField(::std::marker::PhantomData); @@ -176,163 +177,12 @@ pub mod root { pub const NS_FONT_VARIANT_WIDTH_HALF: ::std::os::raw::c_uint = 2; pub const NS_FONT_VARIANT_WIDTH_THIRD: ::std::os::raw::c_uint = 3; pub const NS_FONT_VARIANT_WIDTH_QUARTER: ::std::os::raw::c_uint = 4; - pub const NS_FONT_SUBSCRIPT_OFFSET_RATIO: f32 = 0.2; - pub const NS_FONT_SUPERSCRIPT_OFFSET_RATIO: f32 = 0.34; - pub const NS_FONT_SUB_SUPER_SIZE_RATIO_SMALL: f32 = 0.82; - pub const NS_FONT_SUB_SUPER_SIZE_RATIO_LARGE: f32 = 0.667; - pub const NS_FONT_SUB_SUPER_SMALL_SIZE: f32 = 20.; - pub const NS_FONT_SUB_SUPER_LARGE_SIZE: f32 = 45.; - pub const NS_THEME_NONE: ::std::os::raw::c_uint = 0; - pub const NS_THEME_BUTTON: ::std::os::raw::c_uint = 1; - pub const NS_THEME_RADIO: ::std::os::raw::c_uint = 2; - pub const NS_THEME_CHECKBOX: ::std::os::raw::c_uint = 3; - pub const NS_THEME_AUTO: ::std::os::raw::c_uint = 4; - pub const NS_THEME_BUTTON_BEVEL: ::std::os::raw::c_uint = 7; - pub const NS_THEME_FOCUS_OUTLINE: ::std::os::raw::c_uint = 8; - pub const NS_THEME_TOOLBOX: ::std::os::raw::c_uint = 11; - pub const NS_THEME_TOOLBAR: ::std::os::raw::c_uint = 12; - pub const NS_THEME_TOOLBARBUTTON: ::std::os::raw::c_uint = 13; - pub const NS_THEME_DUALBUTTON: ::std::os::raw::c_uint = 14; - pub const NS_THEME_TOOLBARBUTTON_DROPDOWN: ::std::os::raw::c_uint = 15; - pub const NS_THEME_BUTTON_ARROW_UP: ::std::os::raw::c_uint = 16; - pub const NS_THEME_BUTTON_ARROW_DOWN: ::std::os::raw::c_uint = 17; - pub const NS_THEME_BUTTON_ARROW_NEXT: ::std::os::raw::c_uint = 18; - pub const NS_THEME_BUTTON_ARROW_PREVIOUS: ::std::os::raw::c_uint = 19; - pub const NS_THEME_SEPARATOR: ::std::os::raw::c_uint = 20; - pub const NS_THEME_TOOLBARGRIPPER: ::std::os::raw::c_uint = 21; - pub const NS_THEME_SPLITTER: ::std::os::raw::c_uint = 22; - pub const NS_THEME_STATUSBAR: ::std::os::raw::c_uint = 23; - pub const NS_THEME_STATUSBARPANEL: ::std::os::raw::c_uint = 24; - pub const NS_THEME_RESIZERPANEL: ::std::os::raw::c_uint = 25; - pub const NS_THEME_RESIZER: ::std::os::raw::c_uint = 26; - pub const NS_THEME_LISTBOX: ::std::os::raw::c_uint = 31; - pub const NS_THEME_LISTITEM: ::std::os::raw::c_uint = 32; - pub const NS_THEME_TREEVIEW: ::std::os::raw::c_uint = 41; - pub const NS_THEME_TREEITEM: ::std::os::raw::c_uint = 42; - pub const NS_THEME_TREETWISTY: ::std::os::raw::c_uint = 43; - pub const NS_THEME_TREELINE: ::std::os::raw::c_uint = 44; - pub const NS_THEME_TREEHEADER: ::std::os::raw::c_uint = 45; - pub const NS_THEME_TREEHEADERCELL: ::std::os::raw::c_uint = 46; - pub const NS_THEME_TREEHEADERSORTARROW: ::std::os::raw::c_uint = 47; - pub const NS_THEME_TREETWISTYOPEN: ::std::os::raw::c_uint = 48; - pub const NS_THEME_PROGRESSBAR: ::std::os::raw::c_uint = 51; - pub const NS_THEME_PROGRESSCHUNK: ::std::os::raw::c_uint = 52; - pub const NS_THEME_PROGRESSBAR_VERTICAL: ::std::os::raw::c_uint = 53; - pub const NS_THEME_PROGRESSCHUNK_VERTICAL: ::std::os::raw::c_uint = 54; - pub const NS_THEME_METERBAR: ::std::os::raw::c_uint = 55; - pub const NS_THEME_METERCHUNK: ::std::os::raw::c_uint = 56; - pub const NS_THEME_TAB: ::std::os::raw::c_uint = 61; - pub const NS_THEME_TABPANEL: ::std::os::raw::c_uint = 62; - pub const NS_THEME_TABPANELS: ::std::os::raw::c_uint = 65; - pub const NS_THEME_TAB_SCROLL_ARROW_BACK: ::std::os::raw::c_uint = 66; - pub const NS_THEME_TAB_SCROLL_ARROW_FORWARD: ::std::os::raw::c_uint = 67; - pub const NS_THEME_TOOLTIP: ::std::os::raw::c_uint = 71; - pub const NS_THEME_SPINNER: ::std::os::raw::c_uint = 72; - pub const NS_THEME_SPINNER_UPBUTTON: ::std::os::raw::c_uint = 73; - pub const NS_THEME_SPINNER_DOWNBUTTON: ::std::os::raw::c_uint = 74; - pub const NS_THEME_SPINNER_TEXTFIELD: ::std::os::raw::c_uint = 75; - pub const NS_THEME_NUMBER_INPUT: ::std::os::raw::c_uint = 76; - pub const NS_THEME_SCROLLBAR: ::std::os::raw::c_uint = 80; - pub const NS_THEME_SCROLLBAR_SMALL: ::std::os::raw::c_uint = 81; - pub const NS_THEME_SCROLLBAR_HORIZONTAL: ::std::os::raw::c_uint = 82; - pub const NS_THEME_SCROLLBAR_VERTICAL: ::std::os::raw::c_uint = 83; - pub const NS_THEME_SCROLLBARBUTTON_UP: ::std::os::raw::c_uint = 84; - pub const NS_THEME_SCROLLBARBUTTON_DOWN: ::std::os::raw::c_uint = 85; - pub const NS_THEME_SCROLLBARBUTTON_LEFT: ::std::os::raw::c_uint = 86; - pub const NS_THEME_SCROLLBARBUTTON_RIGHT: ::std::os::raw::c_uint = 87; - pub const NS_THEME_SCROLLBARTRACK_HORIZONTAL: ::std::os::raw::c_uint = 88; - pub const NS_THEME_SCROLLBARTRACK_VERTICAL: ::std::os::raw::c_uint = 89; - pub const NS_THEME_SCROLLBARTHUMB_HORIZONTAL: ::std::os::raw::c_uint = 90; - pub const NS_THEME_SCROLLBARTHUMB_VERTICAL: ::std::os::raw::c_uint = 91; - pub const NS_THEME_SCROLLBAR_NON_DISAPPEARING: ::std::os::raw::c_uint = - 92; - pub const NS_THEME_TEXTFIELD: ::std::os::raw::c_uint = 95; - pub const NS_THEME_CARET: ::std::os::raw::c_uint = 96; - pub const NS_THEME_TEXTFIELD_MULTILINE: ::std::os::raw::c_uint = 97; - pub const NS_THEME_SEARCHFIELD: ::std::os::raw::c_uint = 98; - pub const NS_THEME_MENULIST: ::std::os::raw::c_uint = 101; - pub const NS_THEME_MENULIST_BUTTON: ::std::os::raw::c_uint = 102; - pub const NS_THEME_MENULIST_TEXT: ::std::os::raw::c_uint = 103; - pub const NS_THEME_MENULIST_TEXTFIELD: ::std::os::raw::c_uint = 104; - pub const NS_THEME_SCALE_HORIZONTAL: ::std::os::raw::c_uint = 111; - pub const NS_THEME_SCALE_VERTICAL: ::std::os::raw::c_uint = 112; - pub const NS_THEME_SCALETHUMB_HORIZONTAL: ::std::os::raw::c_uint = 113; - pub const NS_THEME_SCALETHUMB_VERTICAL: ::std::os::raw::c_uint = 114; - pub const NS_THEME_SCALETHUMBSTART: ::std::os::raw::c_uint = 115; - pub const NS_THEME_SCALETHUMBEND: ::std::os::raw::c_uint = 116; - pub const NS_THEME_SCALETHUMBTICK: ::std::os::raw::c_uint = 117; - pub const NS_THEME_RANGE: ::std::os::raw::c_uint = 120; - pub const NS_THEME_RANGE_THUMB: ::std::os::raw::c_uint = 121; - pub const NS_THEME_GROUPBOX: ::std::os::raw::c_uint = 149; - pub const NS_THEME_CHECKBOX_CONTAINER: ::std::os::raw::c_uint = 150; - pub const NS_THEME_RADIO_CONTAINER: ::std::os::raw::c_uint = 151; - pub const NS_THEME_CHECKBOX_LABEL: ::std::os::raw::c_uint = 152; - pub const NS_THEME_RADIO_LABEL: ::std::os::raw::c_uint = 153; - pub const NS_THEME_BUTTON_FOCUS: ::std::os::raw::c_uint = 154; - pub const NS_THEME_WINDOW: ::std::os::raw::c_uint = 200; - pub const NS_THEME_DIALOG: ::std::os::raw::c_uint = 201; - pub const NS_THEME_MENUBAR: ::std::os::raw::c_uint = 210; - pub const NS_THEME_MENUPOPUP: ::std::os::raw::c_uint = 211; - pub const NS_THEME_MENUITEM: ::std::os::raw::c_uint = 212; - pub const NS_THEME_CHECKMENUITEM: ::std::os::raw::c_uint = 213; - pub const NS_THEME_RADIOMENUITEM: ::std::os::raw::c_uint = 214; - pub const NS_THEME_MENUCHECKBOX: ::std::os::raw::c_uint = 215; - pub const NS_THEME_MENURADIO: ::std::os::raw::c_uint = 216; - pub const NS_THEME_MENUSEPARATOR: ::std::os::raw::c_uint = 217; - pub const NS_THEME_MENUARROW: ::std::os::raw::c_uint = 218; - pub const NS_THEME_MENUIMAGE: ::std::os::raw::c_uint = 219; - pub const NS_THEME_MENUITEMTEXT: ::std::os::raw::c_uint = 220; - pub const NS_THEME_WIN_COMMUNICATIONS_TOOLBOX: ::std::os::raw::c_uint = - 221; - pub const NS_THEME_WIN_MEDIA_TOOLBOX: ::std::os::raw::c_uint = 222; - pub const NS_THEME_WIN_BROWSERTABBAR_TOOLBOX: ::std::os::raw::c_uint = - 223; - pub const NS_THEME_MAC_FULLSCREEN_BUTTON: ::std::os::raw::c_uint = 226; - pub const NS_THEME_MAC_HELP_BUTTON: ::std::os::raw::c_uint = 227; - pub const NS_THEME_WIN_BORDERLESS_GLASS: ::std::os::raw::c_uint = 229; - pub const NS_THEME_WIN_GLASS: ::std::os::raw::c_uint = 230; - pub const NS_THEME_WINDOW_TITLEBAR: ::std::os::raw::c_uint = 231; - pub const NS_THEME_WINDOW_TITLEBAR_MAXIMIZED: ::std::os::raw::c_uint = - 232; - pub const NS_THEME_WINDOW_FRAME_LEFT: ::std::os::raw::c_uint = 233; - pub const NS_THEME_WINDOW_FRAME_RIGHT: ::std::os::raw::c_uint = 234; - pub const NS_THEME_WINDOW_FRAME_BOTTOM: ::std::os::raw::c_uint = 235; - pub const NS_THEME_WINDOW_BUTTON_CLOSE: ::std::os::raw::c_uint = 236; - pub const NS_THEME_WINDOW_BUTTON_MINIMIZE: ::std::os::raw::c_uint = 237; - pub const NS_THEME_WINDOW_BUTTON_MAXIMIZE: ::std::os::raw::c_uint = 238; - pub const NS_THEME_WINDOW_BUTTON_RESTORE: ::std::os::raw::c_uint = 239; - pub const NS_THEME_WINDOW_BUTTON_BOX: ::std::os::raw::c_uint = 240; - pub const NS_THEME_WINDOW_BUTTON_BOX_MAXIMIZED: ::std::os::raw::c_uint = - 241; - pub const NS_THEME_WIN_EXCLUDE_GLASS: ::std::os::raw::c_uint = 242; - pub const NS_THEME_MAC_VIBRANCY_LIGHT: ::std::os::raw::c_uint = 243; - pub const NS_THEME_MAC_VIBRANCY_DARK: ::std::os::raw::c_uint = 244; - pub const NS_THEME_MAC_DISCLOSURE_BUTTON_OPEN: ::std::os::raw::c_uint = - 245; - pub const NS_THEME_MAC_DISCLOSURE_BUTTON_CLOSED: ::std::os::raw::c_uint = - 246; - pub const NS_THEME_GTK_INFO_BAR: ::std::os::raw::c_uint = 247; - pub const NS_THEME_MAC_SOURCE_LIST: ::std::os::raw::c_uint = 248; - pub const NS_THEME_MAC_SOURCE_LIST_SELECTION: ::std::os::raw::c_uint = - 249; - pub const NS_THEME_MAC_ACTIVE_SOURCE_LIST_SELECTION: - ::std::os::raw::c_uint = - 250; - pub const kNameSpaceID_Unknown: ::std::os::raw::c_int = -1; - pub const kNameSpaceID_XMLNS: ::std::os::raw::c_uint = 1; - pub const kNameSpaceID_XML: ::std::os::raw::c_uint = 2; - pub const kNameSpaceID_XHTML: ::std::os::raw::c_uint = 3; - pub const kNameSpaceID_XLink: ::std::os::raw::c_uint = 4; - pub const kNameSpaceID_XSLT: ::std::os::raw::c_uint = 5; - pub const kNameSpaceID_XBL: ::std::os::raw::c_uint = 6; - pub const kNameSpaceID_MathML: ::std::os::raw::c_uint = 7; - pub const kNameSpaceID_RDF: ::std::os::raw::c_uint = 8; - pub const kNameSpaceID_XUL: ::std::os::raw::c_uint = 9; - pub const kNameSpaceID_SVG: ::std::os::raw::c_uint = 10; - pub const kNameSpaceID_disabled_MathML: ::std::os::raw::c_uint = 11; - pub const kNameSpaceID_disabled_SVG: ::std::os::raw::c_uint = 12; - pub const kNameSpaceID_LastBuiltin: ::std::os::raw::c_uint = 12; - pub const kNameSpaceID_Wildcard: ::std::os::raw::c_int = -2147483648; + pub const NS_FONT_SUBSCRIPT_OFFSET_RATIO: f64 = 0.2; + pub const NS_FONT_SUPERSCRIPT_OFFSET_RATIO: f64 = 0.34; + pub const NS_FONT_SUB_SUPER_SIZE_RATIO_SMALL: f64 = 0.82; + pub const NS_FONT_SUB_SUPER_SIZE_RATIO_LARGE: f64 = 0.667; + pub const NS_FONT_SUB_SUPER_SMALL_SIZE: f64 = 20.; + pub const NS_FONT_SUB_SUPER_LARGE_SIZE: f64 = 45.; pub const NS_FONT_VARIANT_NORMAL: ::std::os::raw::c_uint = 0; pub const NS_FONT_VARIANT_SMALL_CAPS: ::std::os::raw::c_uint = 1; pub const NS_STYLE_STACK_SIZING_IGNORE: ::std::os::raw::c_uint = 0; @@ -633,7 +483,7 @@ pub mod root { pub const NS_STYLE_GRID_TEMPLATE_SUBGRID: ::std::os::raw::c_uint = 0; pub const NS_STYLE_GRID_REPEAT_AUTO_FILL: ::std::os::raw::c_uint = 0; pub const NS_STYLE_GRID_REPEAT_AUTO_FIT: ::std::os::raw::c_uint = 1; - pub const NS_MATHML_DEFAULT_SCRIPT_SIZE_MULTIPLIER: f32 = 0.71; + pub const NS_MATHML_DEFAULT_SCRIPT_SIZE_MULTIPLIER: f64 = 0.71; pub const NS_MATHML_DEFAULT_SCRIPT_MIN_SIZE_PT: ::std::os::raw::c_uint = 8; pub const NS_MATHML_MATHVARIANT_NONE: ::std::os::raw::c_uint = 0; @@ -1124,6 +974,158 @@ pub mod root { pub const NS_STYLE_DISPLAY_MODE_BROWSER: ::std::os::raw::c_uint = 0; pub const NS_STYLE_DISPLAY_MODE_MINIMAL_UI: ::std::os::raw::c_uint = 1; pub const NS_STYLE_DISPLAY_MODE_STANDALONE: ::std::os::raw::c_uint = 2; + pub const NS_STYLE_DISPLAY_MODE_FULLSCREEN: ::std::os::raw::c_uint = 3; + pub const NS_THEME_NONE: ::std::os::raw::c_uint = 0; + pub const NS_THEME_BUTTON: ::std::os::raw::c_uint = 1; + pub const NS_THEME_RADIO: ::std::os::raw::c_uint = 2; + pub const NS_THEME_CHECKBOX: ::std::os::raw::c_uint = 3; + pub const NS_THEME_AUTO: ::std::os::raw::c_uint = 4; + pub const NS_THEME_BUTTON_BEVEL: ::std::os::raw::c_uint = 7; + pub const NS_THEME_FOCUS_OUTLINE: ::std::os::raw::c_uint = 8; + pub const NS_THEME_TOOLBOX: ::std::os::raw::c_uint = 11; + pub const NS_THEME_TOOLBAR: ::std::os::raw::c_uint = 12; + pub const NS_THEME_TOOLBARBUTTON: ::std::os::raw::c_uint = 13; + pub const NS_THEME_DUALBUTTON: ::std::os::raw::c_uint = 14; + pub const NS_THEME_TOOLBARBUTTON_DROPDOWN: ::std::os::raw::c_uint = 15; + pub const NS_THEME_BUTTON_ARROW_UP: ::std::os::raw::c_uint = 16; + pub const NS_THEME_BUTTON_ARROW_DOWN: ::std::os::raw::c_uint = 17; + pub const NS_THEME_BUTTON_ARROW_NEXT: ::std::os::raw::c_uint = 18; + pub const NS_THEME_BUTTON_ARROW_PREVIOUS: ::std::os::raw::c_uint = 19; + pub const NS_THEME_SEPARATOR: ::std::os::raw::c_uint = 20; + pub const NS_THEME_TOOLBARGRIPPER: ::std::os::raw::c_uint = 21; + pub const NS_THEME_SPLITTER: ::std::os::raw::c_uint = 22; + pub const NS_THEME_STATUSBAR: ::std::os::raw::c_uint = 23; + pub const NS_THEME_STATUSBARPANEL: ::std::os::raw::c_uint = 24; + pub const NS_THEME_RESIZERPANEL: ::std::os::raw::c_uint = 25; + pub const NS_THEME_RESIZER: ::std::os::raw::c_uint = 26; + pub const NS_THEME_LISTBOX: ::std::os::raw::c_uint = 31; + pub const NS_THEME_LISTITEM: ::std::os::raw::c_uint = 32; + pub const NS_THEME_TREEVIEW: ::std::os::raw::c_uint = 41; + pub const NS_THEME_TREEITEM: ::std::os::raw::c_uint = 42; + pub const NS_THEME_TREETWISTY: ::std::os::raw::c_uint = 43; + pub const NS_THEME_TREELINE: ::std::os::raw::c_uint = 44; + pub const NS_THEME_TREEHEADER: ::std::os::raw::c_uint = 45; + pub const NS_THEME_TREEHEADERCELL: ::std::os::raw::c_uint = 46; + pub const NS_THEME_TREEHEADERSORTARROW: ::std::os::raw::c_uint = 47; + pub const NS_THEME_TREETWISTYOPEN: ::std::os::raw::c_uint = 48; + pub const NS_THEME_PROGRESSBAR: ::std::os::raw::c_uint = 51; + pub const NS_THEME_PROGRESSCHUNK: ::std::os::raw::c_uint = 52; + pub const NS_THEME_PROGRESSBAR_VERTICAL: ::std::os::raw::c_uint = 53; + pub const NS_THEME_PROGRESSCHUNK_VERTICAL: ::std::os::raw::c_uint = 54; + pub const NS_THEME_METERBAR: ::std::os::raw::c_uint = 55; + pub const NS_THEME_METERCHUNK: ::std::os::raw::c_uint = 56; + pub const NS_THEME_TAB: ::std::os::raw::c_uint = 61; + pub const NS_THEME_TABPANEL: ::std::os::raw::c_uint = 62; + pub const NS_THEME_TABPANELS: ::std::os::raw::c_uint = 65; + pub const NS_THEME_TAB_SCROLL_ARROW_BACK: ::std::os::raw::c_uint = 66; + pub const NS_THEME_TAB_SCROLL_ARROW_FORWARD: ::std::os::raw::c_uint = 67; + pub const NS_THEME_TOOLTIP: ::std::os::raw::c_uint = 71; + pub const NS_THEME_SPINNER: ::std::os::raw::c_uint = 72; + pub const NS_THEME_SPINNER_UPBUTTON: ::std::os::raw::c_uint = 73; + pub const NS_THEME_SPINNER_DOWNBUTTON: ::std::os::raw::c_uint = 74; + pub const NS_THEME_SPINNER_TEXTFIELD: ::std::os::raw::c_uint = 75; + pub const NS_THEME_NUMBER_INPUT: ::std::os::raw::c_uint = 76; + pub const NS_THEME_SCROLLBAR: ::std::os::raw::c_uint = 80; + pub const NS_THEME_SCROLLBAR_SMALL: ::std::os::raw::c_uint = 81; + pub const NS_THEME_SCROLLBAR_HORIZONTAL: ::std::os::raw::c_uint = 82; + pub const NS_THEME_SCROLLBAR_VERTICAL: ::std::os::raw::c_uint = 83; + pub const NS_THEME_SCROLLBARBUTTON_UP: ::std::os::raw::c_uint = 84; + pub const NS_THEME_SCROLLBARBUTTON_DOWN: ::std::os::raw::c_uint = 85; + pub const NS_THEME_SCROLLBARBUTTON_LEFT: ::std::os::raw::c_uint = 86; + pub const NS_THEME_SCROLLBARBUTTON_RIGHT: ::std::os::raw::c_uint = 87; + pub const NS_THEME_SCROLLBARTRACK_HORIZONTAL: ::std::os::raw::c_uint = 88; + pub const NS_THEME_SCROLLBARTRACK_VERTICAL: ::std::os::raw::c_uint = 89; + pub const NS_THEME_SCROLLBARTHUMB_HORIZONTAL: ::std::os::raw::c_uint = 90; + pub const NS_THEME_SCROLLBARTHUMB_VERTICAL: ::std::os::raw::c_uint = 91; + pub const NS_THEME_SCROLLBAR_NON_DISAPPEARING: ::std::os::raw::c_uint = + 92; + pub const NS_THEME_TEXTFIELD: ::std::os::raw::c_uint = 95; + pub const NS_THEME_CARET: ::std::os::raw::c_uint = 96; + pub const NS_THEME_TEXTFIELD_MULTILINE: ::std::os::raw::c_uint = 97; + pub const NS_THEME_SEARCHFIELD: ::std::os::raw::c_uint = 98; + pub const NS_THEME_MENULIST: ::std::os::raw::c_uint = 101; + pub const NS_THEME_MENULIST_BUTTON: ::std::os::raw::c_uint = 102; + pub const NS_THEME_MENULIST_TEXT: ::std::os::raw::c_uint = 103; + pub const NS_THEME_MENULIST_TEXTFIELD: ::std::os::raw::c_uint = 104; + pub const NS_THEME_SCALE_HORIZONTAL: ::std::os::raw::c_uint = 111; + pub const NS_THEME_SCALE_VERTICAL: ::std::os::raw::c_uint = 112; + pub const NS_THEME_SCALETHUMB_HORIZONTAL: ::std::os::raw::c_uint = 113; + pub const NS_THEME_SCALETHUMB_VERTICAL: ::std::os::raw::c_uint = 114; + pub const NS_THEME_SCALETHUMBSTART: ::std::os::raw::c_uint = 115; + pub const NS_THEME_SCALETHUMBEND: ::std::os::raw::c_uint = 116; + pub const NS_THEME_SCALETHUMBTICK: ::std::os::raw::c_uint = 117; + pub const NS_THEME_RANGE: ::std::os::raw::c_uint = 120; + pub const NS_THEME_RANGE_THUMB: ::std::os::raw::c_uint = 121; + pub const NS_THEME_GROUPBOX: ::std::os::raw::c_uint = 149; + pub const NS_THEME_CHECKBOX_CONTAINER: ::std::os::raw::c_uint = 150; + pub const NS_THEME_RADIO_CONTAINER: ::std::os::raw::c_uint = 151; + pub const NS_THEME_CHECKBOX_LABEL: ::std::os::raw::c_uint = 152; + pub const NS_THEME_RADIO_LABEL: ::std::os::raw::c_uint = 153; + pub const NS_THEME_BUTTON_FOCUS: ::std::os::raw::c_uint = 154; + pub const NS_THEME_WINDOW: ::std::os::raw::c_uint = 200; + pub const NS_THEME_DIALOG: ::std::os::raw::c_uint = 201; + pub const NS_THEME_MENUBAR: ::std::os::raw::c_uint = 210; + pub const NS_THEME_MENUPOPUP: ::std::os::raw::c_uint = 211; + pub const NS_THEME_MENUITEM: ::std::os::raw::c_uint = 212; + pub const NS_THEME_CHECKMENUITEM: ::std::os::raw::c_uint = 213; + pub const NS_THEME_RADIOMENUITEM: ::std::os::raw::c_uint = 214; + pub const NS_THEME_MENUCHECKBOX: ::std::os::raw::c_uint = 215; + pub const NS_THEME_MENURADIO: ::std::os::raw::c_uint = 216; + pub const NS_THEME_MENUSEPARATOR: ::std::os::raw::c_uint = 217; + pub const NS_THEME_MENUARROW: ::std::os::raw::c_uint = 218; + pub const NS_THEME_MENUIMAGE: ::std::os::raw::c_uint = 219; + pub const NS_THEME_MENUITEMTEXT: ::std::os::raw::c_uint = 220; + pub const NS_THEME_WIN_COMMUNICATIONS_TOOLBOX: ::std::os::raw::c_uint = + 221; + pub const NS_THEME_WIN_MEDIA_TOOLBOX: ::std::os::raw::c_uint = 222; + pub const NS_THEME_WIN_BROWSERTABBAR_TOOLBOX: ::std::os::raw::c_uint = + 223; + pub const NS_THEME_MAC_FULLSCREEN_BUTTON: ::std::os::raw::c_uint = 226; + pub const NS_THEME_MAC_HELP_BUTTON: ::std::os::raw::c_uint = 227; + pub const NS_THEME_WIN_BORDERLESS_GLASS: ::std::os::raw::c_uint = 229; + pub const NS_THEME_WIN_GLASS: ::std::os::raw::c_uint = 230; + pub const NS_THEME_WINDOW_TITLEBAR: ::std::os::raw::c_uint = 231; + pub const NS_THEME_WINDOW_TITLEBAR_MAXIMIZED: ::std::os::raw::c_uint = + 232; + pub const NS_THEME_WINDOW_FRAME_LEFT: ::std::os::raw::c_uint = 233; + pub const NS_THEME_WINDOW_FRAME_RIGHT: ::std::os::raw::c_uint = 234; + pub const NS_THEME_WINDOW_FRAME_BOTTOM: ::std::os::raw::c_uint = 235; + pub const NS_THEME_WINDOW_BUTTON_CLOSE: ::std::os::raw::c_uint = 236; + pub const NS_THEME_WINDOW_BUTTON_MINIMIZE: ::std::os::raw::c_uint = 237; + pub const NS_THEME_WINDOW_BUTTON_MAXIMIZE: ::std::os::raw::c_uint = 238; + pub const NS_THEME_WINDOW_BUTTON_RESTORE: ::std::os::raw::c_uint = 239; + pub const NS_THEME_WINDOW_BUTTON_BOX: ::std::os::raw::c_uint = 240; + pub const NS_THEME_WINDOW_BUTTON_BOX_MAXIMIZED: ::std::os::raw::c_uint = + 241; + pub const NS_THEME_WIN_EXCLUDE_GLASS: ::std::os::raw::c_uint = 242; + pub const NS_THEME_MAC_VIBRANCY_LIGHT: ::std::os::raw::c_uint = 243; + pub const NS_THEME_MAC_VIBRANCY_DARK: ::std::os::raw::c_uint = 244; + pub const NS_THEME_MAC_DISCLOSURE_BUTTON_OPEN: ::std::os::raw::c_uint = + 245; + pub const NS_THEME_MAC_DISCLOSURE_BUTTON_CLOSED: ::std::os::raw::c_uint = + 246; + pub const NS_THEME_GTK_INFO_BAR: ::std::os::raw::c_uint = 247; + pub const NS_THEME_MAC_SOURCE_LIST: ::std::os::raw::c_uint = 248; + pub const NS_THEME_MAC_SOURCE_LIST_SELECTION: ::std::os::raw::c_uint = + 249; + pub const NS_THEME_MAC_ACTIVE_SOURCE_LIST_SELECTION: + ::std::os::raw::c_uint = + 250; + pub const kNameSpaceID_Unknown: ::std::os::raw::c_int = -1; + pub const kNameSpaceID_XMLNS: ::std::os::raw::c_uint = 1; + pub const kNameSpaceID_XML: ::std::os::raw::c_uint = 2; + pub const kNameSpaceID_XHTML: ::std::os::raw::c_uint = 3; + pub const kNameSpaceID_XLink: ::std::os::raw::c_uint = 4; + pub const kNameSpaceID_XSLT: ::std::os::raw::c_uint = 5; + pub const kNameSpaceID_XBL: ::std::os::raw::c_uint = 6; + pub const kNameSpaceID_MathML: ::std::os::raw::c_uint = 7; + pub const kNameSpaceID_RDF: ::std::os::raw::c_uint = 8; + pub const kNameSpaceID_XUL: ::std::os::raw::c_uint = 9; + pub const kNameSpaceID_SVG: ::std::os::raw::c_uint = 10; + pub const kNameSpaceID_disabled_MathML: ::std::os::raw::c_uint = 11; + pub const kNameSpaceID_disabled_SVG: ::std::os::raw::c_uint = 12; + pub const kNameSpaceID_LastBuiltin: ::std::os::raw::c_uint = 12; + pub const kNameSpaceID_Wildcard: ::std::os::raw::c_int = -2147483648; pub const NS_STYLE_INHERIT_MASK: ::std::os::raw::c_uint = 16777215; pub const NS_STYLE_HAS_TEXT_DECORATION_LINES: ::std::os::raw::c_uint = 16777216; @@ -1161,6 +1163,8 @@ pub mod root { } pub type pair_first_type<_T1> = _T1; pub type pair_second_type<_T2> = _T2; + pub type pair__PCCP = u8; + pub type pair__PCCFP = u8; #[repr(C)] #[derive(Debug, Copy)] pub struct input_iterator_tag { @@ -1181,13 +1185,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct iterator<_Category, _Tp, _Distance, _Pointer, _Reference> { + pub struct iterator { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData<_Category>, - pub _phantom_1: ::std::marker::PhantomData<_Tp>, - pub _phantom_2: ::std::marker::PhantomData<_Distance>, - pub _phantom_3: ::std::marker::PhantomData<_Pointer>, - pub _phantom_4: ::std::marker::PhantomData<_Reference>, } pub type iterator_iterator_category<_Category> = _Category; pub type iterator_value_type<_Tp> = _Tp; @@ -1196,11 +1195,10 @@ pub mod root { pub type iterator_reference<_Reference> = _Reference; #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct atomic<_Tp> { - pub _phantom_0: ::std::marker::PhantomData<_Tp>, + pub struct atomic { } #[test] - fn __bindgen_test_layout_template_1() { + fn __bindgen_test_layout_atomic_instantiation_61569() { assert_eq!(::std::mem::size_of::() , 4usize , concat ! ( "Size of template specialization: " , stringify ! ( u32 ) )); @@ -1209,7 +1207,7 @@ pub mod root { ( u32 ) )); } #[test] - fn __bindgen_test_layout_template_2() { + fn __bindgen_test_layout_atomic_instantiation_61577() { assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -1270,8 +1268,9 @@ pub mod root { root::nsSubstringTuple; pub type nsStringRepr_string_type = ::nsstring::nsStringRepr; pub type nsStringRepr_const_iterator = - root::nsReadingIterator; - pub type nsStringRepr_iterator = root::nsWritingIterator; + root::nsReadingIterator; + pub type nsStringRepr_iterator = + root::nsWritingIterator; pub type nsStringRepr_comparator_type = root::nsStringComparator; pub type nsStringRepr_char_iterator = *mut root::mozilla::detail::nsStringRepr_char_type; @@ -1361,9 +1360,9 @@ pub mod root { root::nsCSubstringTuple; pub type nsCStringRepr_string_type = root::nsCString; pub type nsCStringRepr_const_iterator = - root::nsReadingIterator<::std::os::raw::c_char>; + root::nsReadingIterator; pub type nsCStringRepr_iterator = - root::nsWritingIterator<::std::os::raw::c_char>; + root::nsWritingIterator; pub type nsCStringRepr_comparator_type = root::nsCStringComparator; pub type nsCStringRepr_char_iterator = @@ -1445,20 +1444,70 @@ pub mod root { */ #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct LinkedListElementTraits { + pub struct LinkedListElementTraits { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, } pub type LinkedListElementTraits_RawType = *mut T; pub type LinkedListElementTraits_ConstRawType = *mut T; pub type LinkedListElementTraits_ClientType = *mut T; pub type LinkedListElementTraits_ConstClientType = *mut T; #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct AllocPolicyBasedFreePolicy { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, + #[derive(Debug)] + pub struct GuardObjectNotifier { + pub mStatementDone: *mut bool, } + #[test] + fn bindgen_test_layout_GuardObjectNotifier() { + assert_eq!(::std::mem::size_of::() , + 8usize , concat ! ( + "Size of: " , stringify ! ( GuardObjectNotifier ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + GuardObjectNotifier ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GuardObjectNotifier ) ) . + mStatementDone as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GuardObjectNotifier ) , "::" , stringify ! ( + mStatementDone ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct GuardObjectNotificationReceiver { + pub mStatementDone: bool, + } + #[test] + fn bindgen_test_layout_GuardObjectNotificationReceiver() { + assert_eq!(::std::mem::size_of::() + , 1usize , concat ! ( + "Size of: " , stringify ! ( + GuardObjectNotificationReceiver ) )); + assert_eq! (::std::mem::align_of::() + , 1usize , concat ! ( + "Alignment of " , stringify ! ( + GuardObjectNotificationReceiver ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const GuardObjectNotificationReceiver ) + ) . mStatementDone as * const _ as usize } , + 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + GuardObjectNotificationReceiver ) , "::" , + stringify ! ( mStatementDone ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WeakReference { + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct FramePropertyTypeHelper { + pub _address: u8, + } + pub type FramePropertyTypeHelper_Type = *mut T; #[repr(C)] #[derive(Debug)] pub struct MutexImpl { @@ -1466,7 +1515,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct MutexImpl_PlatformData([u8; 0]); + pub struct MutexImpl_PlatformData { + _unused: [u8; 0], + } #[test] fn bindgen_test_layout_MutexImpl() { assert_eq!(::std::mem::size_of::() , 40usize , @@ -1482,134 +1533,1399 @@ pub mod root { , "::" , stringify ! ( platformData_ ) )); } } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum ArenaObjectID { + eArenaObjectID_DummyBeforeFirstObjectID = 536870911, + eArenaObjectID_nsLineBox = 536870912, + eArenaObjectID_nsRuleNode = 536870913, + eArenaObjectID_nsStyleContext = 536870914, + eArenaObjectID_nsInheritedStyleData = 536870915, + eArenaObjectID_nsResetStyleData = 536870916, + eArenaObjectID_nsConditionalResetStyleData = 536870917, + eArenaObjectID_nsConditionalResetStyleDataEntry = 536870918, + eArenaObjectID_nsFrameList = 536870919, + eArenaObjectID_CustomCounterStyle = 536870920, + eArenaObjectID_DependentBuiltinCounterStyle = 536870921, + eArenaObjectID_nsStyleFont = 536870922, + eArenaObjectID_nsStyleColor = 536870923, + eArenaObjectID_nsStyleList = 536870924, + eArenaObjectID_nsStyleText = 536870925, + eArenaObjectID_nsStyleVisibility = 536870926, + eArenaObjectID_nsStyleUserInterface = 536870927, + eArenaObjectID_nsStyleTableBorder = 536870928, + eArenaObjectID_nsStyleSVG = 536870929, + eArenaObjectID_nsStyleVariables = 536870930, + eArenaObjectID_nsStyleBackground = 536870931, + eArenaObjectID_nsStylePosition = 536870932, + eArenaObjectID_nsStyleTextReset = 536870933, + eArenaObjectID_nsStyleDisplay = 536870934, + eArenaObjectID_nsStyleContent = 536870935, + eArenaObjectID_nsStyleUIReset = 536870936, + eArenaObjectID_nsStyleTable = 536870937, + eArenaObjectID_nsStyleMargin = 536870938, + eArenaObjectID_nsStylePadding = 536870939, + eArenaObjectID_nsStyleBorder = 536870940, + eArenaObjectID_nsStyleOutline = 536870941, + eArenaObjectID_nsStyleXUL = 536870942, + eArenaObjectID_nsStyleSVGReset = 536870943, + eArenaObjectID_nsStyleColumn = 536870944, + eArenaObjectID_nsStyleEffects = 536870945, + eArenaObjectID_NON_OBJECT_MARKER = 1073741824, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct MallocAllocPolicy { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_MallocAllocPolicy() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of: " , stringify ! ( MallocAllocPolicy ) )); + assert_eq! (::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( MallocAllocPolicy ) + )); + } + impl Clone for MallocAllocPolicy { + fn clone(&self) -> Self { *self } + } + /** + * A default deletion policy using plain old operator delete. + * + * Note that this type can be specialized, but authors should beware of the risk + * that the specialization may at some point cease to match (either because it + * gets moved to a different compilation unit or the signature changes). If the + * non-specialized (|delete|-based) version compiles for that type but does the + * wrong thing, bad things could happen. + * + * This is a non-issue for types which are always incomplete (i.e. opaque handle + * types), since |delete|-ing such a type will always trigger a compilation + * error. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DefaultDelete { + pub _address: u8, + } + pub type MallocSizeOf = + ::std::option::Option usize>; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ReverseIterator { + pub mCurrent: IteratorT, + } + pub mod css { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(u32)] + /** + * Enum defining the mode in which a sheet is to be parsed. This is + * usually, but not always, the same as the cascade level at which the + * sheet will apply (see nsStyleSet.h). Most of the Loader APIs only + * support loading of author sheets. + * + * Author sheets are the normal case: styles embedded in or linked + * from HTML pages. They are also the most restricted. + * + * User sheets can do anything author sheets can do, and also get + * access to a few CSS extensions that are not yet suitable for + * exposure on the public Web, but are very useful for expressing + * user style overrides, such as @-moz-document rules. + * + * XXX: eUserSheetFeatures was added in bug 1035091, but some patches in + * that bug never landed to use this enum value. Currently, all the features + * in user sheet are also available in author sheet. + * + * Agent sheets have access to all author- and user-sheet features + * plus more extensions that are necessary for internal use but, + * again, not yet suitable for exposure on the public Web. Some of + * these are outright unsafe to expose; in particular, incorrect + * styling of anonymous box pseudo-elements can violate layout + * invariants. + * + * Agent sheets that do not use any unsafe rules could use + * eSafeAgentSheetFeatures when creating the sheet. This enum value allows + * Servo backend to recognize the sheets as the agent level, but Gecko + * backend will parse it under _author_ level. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum SheetParsingMode { + eAuthorSheetFeatures = 0, + eUserSheetFeatures = 1, + eAgentSheetFeatures = 2, + eSafeAgentSheetFeatures = 3, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct GroupRule { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ImportRule { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct Rule { + pub _base: root::nsIDOMCSSRule, + pub _base_1: root::nsWrapperCache, + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mSheet: *mut root::mozilla::StyleSheet, + pub mParentRule: *mut root::mozilla::css::GroupRule, + pub mLineNumber: u32, + pub mColumnNumber: u32, + } + pub type Rule_HasThreadSafeRefCnt = root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Rule_cycleCollection { + pub _base: root::nsXPCOMCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_Rule_cycleCollection() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( Rule_cycleCollection ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + Rule_cycleCollection ) )); + } + impl Clone for Rule_cycleCollection { + fn clone(&self) -> Self { *self } + } + pub const Rule_UNKNOWN_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::UNKNOWN_RULE; + pub const Rule_CHARSET_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::CHARSET_RULE; + pub const Rule_IMPORT_RULE: root::mozilla::css::Rule__bindgen_ty_1 + = + Rule__bindgen_ty_1::IMPORT_RULE; + pub const Rule_NAMESPACE_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::NAMESPACE_RULE; + pub const Rule_STYLE_RULE: root::mozilla::css::Rule__bindgen_ty_1 + = + Rule__bindgen_ty_1::STYLE_RULE; + pub const Rule_MEDIA_RULE: root::mozilla::css::Rule__bindgen_ty_1 + = + Rule__bindgen_ty_1::MEDIA_RULE; + pub const Rule_FONT_FACE_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::FONT_FACE_RULE; + pub const Rule_PAGE_RULE: root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::PAGE_RULE; + pub const Rule_KEYFRAME_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::KEYFRAME_RULE; + pub const Rule_KEYFRAMES_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::KEYFRAMES_RULE; + pub const Rule_DOCUMENT_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::DOCUMENT_RULE; + pub const Rule_SUPPORTS_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::SUPPORTS_RULE; + pub const Rule_FONT_FEATURE_VALUES_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::FONT_FEATURE_VALUES_RULE; + pub const Rule_COUNTER_STYLE_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::COUNTER_STYLE_RULE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum Rule__bindgen_ty_1 { + UNKNOWN_RULE = 0, + CHARSET_RULE = 1, + IMPORT_RULE = 2, + NAMESPACE_RULE = 3, + STYLE_RULE = 4, + MEDIA_RULE = 5, + FONT_FACE_RULE = 6, + PAGE_RULE = 7, + KEYFRAME_RULE = 8, + KEYFRAMES_RULE = 9, + DOCUMENT_RULE = 10, + SUPPORTS_RULE = 11, + FONT_FEATURE_VALUES_RULE = 12, + COUNTER_STYLE_RULE = 13, + } + extern "C" { + #[link_name = "_ZN7mozilla3css4Rule21_cycleCollectorGlobalE"] + pub static mut Rule__cycleCollectorGlobal: + root::mozilla::css::Rule_cycleCollection; + } + #[test] + fn bindgen_test_layout_Rule() { + assert_eq!(::std::mem::size_of::() , 72usize , concat ! + ( "Size of: " , stringify ! ( Rule ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( Rule ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Loader { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ImageLoader { + _unused: [u8; 0], + } + #[repr(C)] + pub struct URLValueData__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug)] + pub struct URLValueData { + pub vtable_: *const URLValueData__bindgen_vtable, + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + pub mURI: root::nsMainThreadPtrHandle, + pub mString: ::nsstring::nsStringRepr, + pub mExtraData: root::RefPtr, + pub mURIResolved: bool, + pub mIsLocalRef: [u8; 2usize], + pub mMightHaveRef: [u8; 2usize], + } + pub type URLValueData_HasThreadSafeRefCnt = + root::mozilla::TrueType; + #[test] + fn bindgen_test_layout_URLValueData() { + assert_eq!(::std::mem::size_of::() , 56usize , + concat ! ( + "Size of: " , stringify ! ( URLValueData ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( URLValueData ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . mRefCnt as + * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mRefCnt ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . mURI as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mURI ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . mString as + * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mString ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . mExtraData + as * const _ as usize } , 40usize , concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mExtraData ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . + mURIResolved as * const _ as usize } , 48usize , + concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mURIResolved + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . + mIsLocalRef as * const _ as usize } , 49usize , + concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mIsLocalRef + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . + mMightHaveRef as * const _ as usize } , 51usize , + concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( + mMightHaveRef ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct URLValue { + pub _base: root::mozilla::css::URLValueData, + } + #[test] + fn bindgen_test_layout_URLValue() { + assert_eq!(::std::mem::size_of::() , 56usize , + concat ! ( "Size of: " , stringify ! ( URLValue ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( URLValue ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct ImageValue { + pub _base: root::mozilla::css::URLValueData, + pub mRequests: [u64; 6usize], + pub mInitialized: bool, + } + #[test] + fn bindgen_test_layout_ImageValue() { + assert_eq!(::std::mem::size_of::() , 112usize , + concat ! ( "Size of: " , stringify ! ( ImageValue ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( ImageValue ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageValue ) ) . mRequests as + * const _ as usize } , 56usize , concat ! ( + "Alignment of field: " , stringify ! ( ImageValue + ) , "::" , stringify ! ( mRequests ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageValue ) ) . mInitialized + as * const _ as usize } , 104usize , concat ! ( + "Alignment of field: " , stringify ! ( ImageValue + ) , "::" , stringify ! ( mInitialized ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct GridNamedArea { + pub mName: ::nsstring::nsStringRepr, + pub mColumnStart: u32, + pub mColumnEnd: u32, + pub mRowStart: u32, + pub mRowEnd: u32, + } + #[test] + fn bindgen_test_layout_GridNamedArea() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( + "Size of: " , stringify ! ( GridNamedArea ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( GridNamedArea ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridNamedArea ) ) . mName as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + GridNamedArea ) , "::" , stringify ! ( mName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridNamedArea ) ) . + mColumnStart as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GridNamedArea ) , "::" , stringify ! ( + mColumnStart ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridNamedArea ) ) . + mColumnEnd as * const _ as usize } , 20usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GridNamedArea ) , "::" , stringify ! ( mColumnEnd + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridNamedArea ) ) . mRowStart + as * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + GridNamedArea ) , "::" , stringify ! ( mRowStart ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridNamedArea ) ) . mRowEnd + as * const _ as usize } , 28usize , concat ! ( + "Alignment of field: " , stringify ! ( + GridNamedArea ) , "::" , stringify ! ( mRowEnd ) + )); + } + #[repr(C)] + #[derive(Debug)] + pub struct GridTemplateAreasValue { + pub mNamedAreas: root::nsTArray, + pub mTemplates: root::nsTArray<::nsstring::nsStringRepr>, + pub mNColumns: u32, + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + } + pub type GridTemplateAreasValue_HasThreadSafeRefCnt = + root::mozilla::TrueType; + #[test] + fn bindgen_test_layout_GridTemplateAreasValue() { + assert_eq!(::std::mem::size_of::() , + 32usize , concat ! ( + "Size of: " , stringify ! ( GridTemplateAreasValue + ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + GridTemplateAreasValue ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridTemplateAreasValue ) ) . + mNamedAreas as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GridTemplateAreasValue ) , "::" , stringify ! ( + mNamedAreas ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridTemplateAreasValue ) ) . + mTemplates as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GridTemplateAreasValue ) , "::" , stringify ! ( + mTemplates ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridTemplateAreasValue ) ) . + mNColumns as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GridTemplateAreasValue ) , "::" , stringify ! ( + mNColumns ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridTemplateAreasValue ) ) . + mRefCnt as * const _ as usize } , 24usize , concat + ! ( + "Alignment of field: " , stringify ! ( + GridTemplateAreasValue ) , "::" , stringify ! ( + mRefCnt ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct FontFamilyListRefCnt { + pub _base: root::mozilla::FontFamilyList, + pub mRefCnt: root::nsAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + } + pub type FontFamilyListRefCnt_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[test] + fn bindgen_test_layout_FontFamilyListRefCnt() { + assert_eq!(::std::mem::size_of::() , + 32usize , concat ! ( + "Size of: " , stringify ! ( FontFamilyListRefCnt ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + FontFamilyListRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyListRefCnt ) ) . + mRefCnt as * const _ as usize } , 16usize , concat + ! ( + "Alignment of field: " , stringify ! ( + FontFamilyListRefCnt ) , "::" , stringify ! ( + mRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyListRefCnt ) ) . + _mOwningThread as * const _ as usize } , 24usize , + concat ! ( + "Alignment of field: " , stringify ! ( + FontFamilyListRefCnt ) , "::" , stringify ! ( + _mOwningThread ) )); + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct RGBAColorData { + pub mR: f32, + pub mG: f32, + pub mB: f32, + pub mA: f32, + } + #[test] + fn bindgen_test_layout_RGBAColorData() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( + "Size of: " , stringify ! ( RGBAColorData ) )); + assert_eq! (::std::mem::align_of::() , 4usize , + concat ! ( + "Alignment of " , stringify ! ( RGBAColorData ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const RGBAColorData ) ) . mR as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + RGBAColorData ) , "::" , stringify ! ( mR ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const RGBAColorData ) ) . mG as * + const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( + RGBAColorData ) , "::" , stringify ! ( mG ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const RGBAColorData ) ) . mB as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + RGBAColorData ) , "::" , stringify ! ( mB ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const RGBAColorData ) ) . mA as * + const _ as usize } , 12usize , concat ! ( + "Alignment of field: " , stringify ! ( + RGBAColorData ) , "::" , stringify ! ( mA ) )); + } + impl Clone for RGBAColorData { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ComplexColorData { + pub mColor: root::mozilla::css::RGBAColorData, + pub mForegroundRatio: f32, + } + #[test] + fn bindgen_test_layout_ComplexColorData() { + assert_eq!(::std::mem::size_of::() , 20usize + , concat ! ( + "Size of: " , stringify ! ( ComplexColorData ) )); + assert_eq! (::std::mem::align_of::() , + 4usize , concat ! ( + "Alignment of " , stringify ! ( ComplexColorData ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComplexColorData ) ) . mColor + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + ComplexColorData ) , "::" , stringify ! ( mColor ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComplexColorData ) ) . + mForegroundRatio as * const _ as usize } , 16usize + , concat ! ( + "Alignment of field: " , stringify ! ( + ComplexColorData ) , "::" , stringify ! ( + mForegroundRatio ) )); + } + impl Clone for ComplexColorData { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct ComplexColorValue { + pub _base: root::mozilla::css::ComplexColorData, + pub mRefCnt: root::nsAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + } + pub type ComplexColorValue_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[test] + fn bindgen_test_layout_ComplexColorValue() { + assert_eq!(::std::mem::size_of::() , + 40usize , concat ! ( + "Size of: " , stringify ! ( ComplexColorValue ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( ComplexColorValue + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComplexColorValue ) ) . + mRefCnt as * const _ as usize } , 24usize , concat + ! ( + "Alignment of field: " , stringify ! ( + ComplexColorValue ) , "::" , stringify ! ( mRefCnt + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComplexColorValue ) ) . + _mOwningThread as * const _ as usize } , 32usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ComplexColorValue ) , "::" , stringify ! ( + _mOwningThread ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DocumentRule { + _unused: [u8; 0], + } + } + #[repr(C)] + #[derive(Debug)] + pub struct ThreadSafeAutoRefCnt { + pub mValue: u64, + } + pub const ThreadSafeAutoRefCnt_isThreadSafe: bool = true; + #[test] + fn bindgen_test_layout_ThreadSafeAutoRefCnt() { + assert_eq!(::std::mem::size_of::() , 8usize + , concat ! ( + "Size of: " , stringify ! ( ThreadSafeAutoRefCnt ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( ThreadSafeAutoRefCnt ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ThreadSafeAutoRefCnt ) ) . mValue + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + ThreadSafeAutoRefCnt ) , "::" , stringify ! ( mValue ) + )); + } + #[repr(C)] + #[derive(Debug)] + pub struct OwningNonNull { + pub mPtr: root::RefPtr, + pub mInited: bool, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct StaticRefPtr { + pub mRawPtr: *mut T, + } + #[repr(C)] + #[derive(Debug)] + pub struct LinkedListElement { + pub mNext: *mut root::mozilla::LinkedListElement, + pub mPrev: *mut root::mozilla::LinkedListElement, + pub mIsSentinel: bool, + } + pub type LinkedListElement_Traits = + root::mozilla::detail::LinkedListElementTraits; + pub type LinkedListElement_RawType = + root::mozilla::LinkedListElement_Traits; + pub type LinkedListElement_ConstRawType = + root::mozilla::LinkedListElement_Traits; + pub type LinkedListElement_ClientType = + root::mozilla::LinkedListElement_Traits; + pub type LinkedListElement_ConstClientType = + root::mozilla::LinkedListElement_Traits; + pub const LinkedListElement_NodeKind_Sentinel: + root::mozilla::LinkedListElement_NodeKind = + LinkedListElement_NodeKind::Normal; #[repr(i32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CSSEnabledState { - eForAllContent = 0, - eInUASheets = 1, - eInChrome = 2, - eIgnoreEnabledState = 255, + pub enum LinkedListElement_NodeKind { Normal = 0, } + #[repr(C)] + #[derive(Debug)] + pub struct LinkedList { + pub sentinel: root::mozilla::LinkedListElement, + } + pub type LinkedList_Traits = + root::mozilla::detail::LinkedListElementTraits; + pub type LinkedList_RawType = root::mozilla::LinkedList_Traits; + pub type LinkedList_ConstRawType = root::mozilla::LinkedList_Traits; + pub type LinkedList_ClientType = root::mozilla::LinkedList_Traits; + pub type LinkedList_ConstClientType = + root::mozilla::LinkedList_Traits; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct LinkedList_Iterator { + pub mCurrent: root::mozilla::LinkedList_RawType, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AlignedStorage2 { - pub u: root::mozilla::AlignedStorage2_U, - pub _phantom_0: ::std::marker::PhantomData, + pub struct AlignedStorage2 { + pub u: root::mozilla::AlignedStorage2_U, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AlignedStorage2_U { + pub struct AlignedStorage2_U { pub mBytes: root::__BindgenUnionField<*mut ::std::os::raw::c_char>, pub mDummy: root::__BindgenUnionField, pub bindgen_union_field: u64, - pub _phantom_0: ::std::marker::PhantomData, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Maybe { + } + pub type Maybe_ValueType = T; + pub mod gfx { + #[allow(unused_imports)] + use self::super::super::super::root; + pub type IntRegion = [u64; 3usize]; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Color { + pub _bindgen_opaque_blob: [u32; 4usize], + } + #[test] + fn bindgen_test_layout_Color() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! + ( "Size of: " , stringify ! ( Color ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat + ! ( "Alignment of " , stringify ! ( Color ) )); + } + impl Clone for Color { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct PointTyped { + } + pub type PointTyped_Coord = u8; + pub type PointTyped_Super = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct SizeTyped { + } + pub type SizeTyped_Super = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct IntPointTyped { + } + pub type IntPointTyped_ToInt = u32; + pub type IntPointTyped_Coord = u8; + pub type IntPointTyped_Super = u8; + pub type IntPoint = [u32; 2usize]; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct IntSizeTyped { + } + pub type IntSizeTyped_ToInt = u32; + pub type IntSizeTyped_Super = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct RectTyped { + } + pub type RectTyped_Super = u8; + pub type IntMargin = [u32; 4usize]; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct MarginTyped { + } + pub type MarginTyped_Super = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct IntRectTyped { + } + pub type IntRectTyped_Super = u8; + pub type IntRectTyped_Self = u8; + pub type IntRectTyped_ToInt = u32; + pub type IntRect = [u32; 4usize]; + #[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::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( FontVariation ) )); + assert_eq! (::std::mem::align_of::() , 4usize , + concat ! ( + "Alignment of " , stringify ! ( FontVariation ) + )); + } + impl Clone for FontVariation { + fn clone(&self) -> Self { *self } + } + pub type Matrix4x4 = [u32; 16usize]; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ScaleFactor { + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ScaleFactors2D { + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct SourceSurface { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DrawTarget { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Path { + _unused: [u8; 0], + } + } + pub mod layers { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct LayerManager { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ContainerLayer { + _unused: [u8; 0], + } + /** + * The viewport and displayport metrics for the painted frame at the + * time of a layer-tree transaction. These metrics are especially + * useful for shadow layers, because the metrics values are updated + * atomically with new pixels. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct FrameMetrics { + pub mScrollId: root::mozilla::layers::FrameMetrics_ViewID, + pub mPresShellResolution: f32, + pub mCompositionBounds: root::mozilla::ParentLayerRect, + pub mDisplayPort: root::mozilla::CSSRect, + pub mCriticalDisplayPort: root::mozilla::CSSRect, + pub mScrollableRect: root::mozilla::CSSRect, + pub mCumulativeResolution: root::mozilla::LayoutDeviceToLayerScale2D, + pub mDevPixelsPerCSSPixel: root::mozilla::CSSToLayoutDeviceScale, + pub mScrollOffset: root::mozilla::CSSPoint, + pub mZoom: root::mozilla::CSSToParentLayerScale2D, + pub mScrollGeneration: u32, + pub mSmoothScrollOffset: root::mozilla::CSSPoint, + pub mRootCompositionSize: root::mozilla::CSSSize, + pub mDisplayPortMargins: root::mozilla::ScreenMargin, + pub mPresShellId: u32, + pub mViewport: root::mozilla::CSSRect, + pub mExtraResolution: root::mozilla::ScreenToLayerScale2D, + pub mPaintRequestTime: root::mozilla::TimeStamp, + pub mScrollUpdateType: root::mozilla::layers::FrameMetrics_ScrollOffsetUpdateType, + pub _bitfield_1: u8, + pub __bindgen_padding_0: [u16; 3usize], + } + pub type FrameMetrics_ViewID = u64; + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum FrameMetrics_ScrollOffsetUpdateType { + eNone = 0, + eMainThread = 1, + ePending = 2, + eUserAction = 3, + eRestore = 4, + eSentinel = 5, + } + extern "C" { + #[link_name = + "_ZN7mozilla6layers12FrameMetrics14NULL_SCROLL_IDE"] + pub static FrameMetrics_NULL_SCROLL_ID: + root::mozilla::layers::FrameMetrics_ViewID; + } + pub const FrameMetrics_START_SCROLL_ID: + root::mozilla::layers::FrameMetrics_ViewID = + 2; + #[test] + fn bindgen_test_layout_FrameMetrics() { + assert_eq!(::std::mem::size_of::() , 184usize , + concat ! ( + "Size of: " , stringify ! ( FrameMetrics ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( FrameMetrics ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . mScrollId + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( mScrollId ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mPresShellResolution as * const _ as usize } , + 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mPresShellResolution ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mCompositionBounds as * const _ as usize } , + 12usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mCompositionBounds ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mDisplayPort as * const _ as usize } , 28usize , + concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( mDisplayPort + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mCriticalDisplayPort as * const _ as usize } , + 44usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mCriticalDisplayPort ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mScrollableRect as * const _ as usize } , 60usize + , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mScrollableRect ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mCumulativeResolution as * const _ as usize } , + 76usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mCumulativeResolution ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mDevPixelsPerCSSPixel as * const _ as usize } , + 84usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mDevPixelsPerCSSPixel ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mScrollOffset as * const _ as usize } , 88usize , + concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mScrollOffset ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . mZoom as * + const _ as usize } , 96usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( mZoom ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mScrollGeneration as * const _ as usize } , + 104usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mScrollGeneration ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mSmoothScrollOffset as * const _ as usize } , + 108usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mSmoothScrollOffset ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mRootCompositionSize as * const _ as usize } , + 116usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mRootCompositionSize ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mDisplayPortMargins as * const _ as usize } , + 124usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mDisplayPortMargins ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mPresShellId as * const _ as usize } , 140usize , + concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( mPresShellId + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . mViewport + as * const _ as usize } , 144usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( mViewport ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mExtraResolution as * const _ as usize } , + 160usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mExtraResolution ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mPaintRequestTime as * const _ as usize } , + 168usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mPaintRequestTime ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mScrollUpdateType as * const _ as usize } , + 176usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mScrollUpdateType ) )); + } + impl Clone for FrameMetrics { + fn clone(&self) -> Self { *self } + } + impl FrameMetrics { + #[inline] + pub fn mIsRootContent(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsRootContent(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDoSmoothScroll(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mDoSmoothScroll(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUseDisplayPortMargins(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mUseDisplayPortMargins(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsScrollInfoLayer(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsScrollInfoLayer(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug)] + pub struct ScrollSnapInfo { + pub mScrollSnapTypeX: u8, + pub mScrollSnapTypeY: u8, + pub mScrollSnapIntervalX: [u32; 2usize], + pub mScrollSnapIntervalY: [u32; 2usize], + pub mScrollSnapDestination: root::nsPoint, + pub mScrollSnapCoordinates: root::nsTArray, + } + #[test] + fn bindgen_test_layout_ScrollSnapInfo() { + assert_eq!(::std::mem::size_of::() , 40usize , + concat ! ( + "Size of: " , stringify ! ( ScrollSnapInfo ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( ScrollSnapInfo ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapTypeX as * const _ as usize } , 0usize + , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapTypeX ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapTypeY as * const _ as usize } , 1usize + , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapTypeY ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapIntervalX as * const _ as usize } , + 4usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapIntervalX ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapIntervalY as * const _ as usize } , + 12usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapIntervalY ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapDestination as * const _ as usize } , + 20usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapDestination ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapCoordinates as * const _ as usize } , + 32usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapCoordinates ) )); + } + /** + * A clip that applies to a layer, that may be scrolled by some of the + * scroll frames associated with the layer. + */ + #[repr(C)] + #[derive(Debug)] + pub struct LayerClip { + pub mClipRect: root::mozilla::ParentLayerIntRect, + pub mMaskLayerIndex: [u64; 2usize], + } + #[test] + fn bindgen_test_layout_LayerClip() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( "Size of: " , stringify ! ( LayerClip ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( LayerClip ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LayerClip ) ) . mClipRect as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( LayerClip ) + , "::" , stringify ! ( mClipRect ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LayerClip ) ) . + mMaskLayerIndex as * const _ as usize } , 16usize + , concat ! ( + "Alignment of field: " , stringify ! ( LayerClip ) + , "::" , stringify ! ( mMaskLayerIndex ) )); + } + /** + * Metadata about a scroll frame that's stored in the layer tree for use by + * the compositor (including APZ). This includes the scroll frame's FrameMetrics, + * as well as other metadata. We don't put the other metadata into FrameMetrics + * to avoid FrameMetrics becoming too bloated (as a FrameMetrics is e.g. sent + * over IPC for every repaint request for every active scroll frame). + */ + #[repr(C)] + #[derive(Debug)] + pub struct ScrollMetadata { + pub mMetrics: root::mozilla::layers::FrameMetrics, + pub mSnapInfo: root::mozilla::layers::ScrollSnapInfo, + pub mScrollParentId: root::mozilla::layers::ScrollMetadata_ViewID, + pub mBackgroundColor: root::mozilla::gfx::Color, + pub mContentDescription: root::nsCString, + pub mLineScrollAmount: root::mozilla::LayoutDeviceIntSize, + pub mPageScrollAmount: root::mozilla::LayoutDeviceIntSize, + pub mScrollClip: [u64; 5usize], + pub _bitfield_1: u8, + pub __bindgen_padding_0: [u8; 7usize], + } + pub type ScrollMetadata_ViewID = + root::mozilla::layers::FrameMetrics_ViewID; + extern "C" { + #[link_name = + "_ZN7mozilla6layers14ScrollMetadata13sNullMetadataE"] + pub static mut ScrollMetadata_sNullMetadata: + root::mozilla::StaticAutoPtr; + } + #[test] + fn bindgen_test_layout_ScrollMetadata() { + assert_eq!(::std::mem::size_of::() , 328usize + , concat ! ( + "Size of: " , stringify ! ( ScrollMetadata ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( ScrollMetadata ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . mMetrics + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( mMetrics ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mSnapInfo as * const _ as usize } , 184usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( mSnapInfo + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mScrollParentId as * const _ as usize } , 224usize + , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mScrollParentId ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mBackgroundColor as * const _ as usize } , + 232usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mBackgroundColor ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mContentDescription as * const _ as usize } , + 248usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mContentDescription ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mLineScrollAmount as * const _ as usize } , + 264usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mLineScrollAmount ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mPageScrollAmount as * const _ as usize } , + 272usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mPageScrollAmount ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mScrollClip as * const _ as usize } , 280usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mScrollClip ) )); + } + impl ScrollMetadata { + #[inline] + pub fn mHasScrollgrab(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasScrollgrab(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mAllowVerticalScrollWithWheel(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mAllowVerticalScrollWithWheel(&mut self, + val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsLayersIdRoot(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsLayersIdRoot(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUsesContainerScrolling(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mUsesContainerScrolling(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mForceDisableApz(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mForceDisableApz(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Layer { + _unused: [u8; 0], + } } pub mod dom { #[allow(unused_imports)] use self::super::super::super::root; - #[repr(C)] - #[derive(Debug)] - pub struct Element { - pub _base: root::mozilla::dom::FragmentOrElement, - pub mState: root::mozilla::EventStates, - pub mServoData: ::gecko_bindings::structs::ServoCell<*mut ::gecko_bindings::structs::ServoNodeData>, + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum PlaybackDirection { + Normal = 0, + Reverse = 1, + Alternate = 2, + Alternate_reverse = 3, + EndGuard_ = 4, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Element_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - /** - * StyleStateLocks is used to specify which event states should be locked, - * and whether they should be locked to on or off. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Element_StyleStateLocks { - pub mLocks: root::mozilla::EventStates, - pub mValues: root::mozilla::EventStates, - } - #[test] - fn bindgen_test_layout_Element_StyleStateLocks() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( Element_StyleStateLocks - ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - Element_StyleStateLocks ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Element_StyleStateLocks ) ) . - mLocks as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - Element_StyleStateLocks ) , "::" , stringify ! ( - mLocks ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Element_StyleStateLocks ) ) . - mValues as * const _ as usize } , 8usize , concat - ! ( - "Alignment of field: " , stringify ! ( - Element_StyleStateLocks ) , "::" , stringify ! ( - mValues ) )); - } - impl Clone for Element_StyleStateLocks { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Element_MappedAttributeEntry { - pub attribute: *mut *mut root::nsIAtom, - } - #[test] - fn bindgen_test_layout_Element_MappedAttributeEntry() { - assert_eq!(::std::mem::size_of::() - , 8usize , concat ! ( - "Size of: " , stringify ! ( - Element_MappedAttributeEntry ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - Element_MappedAttributeEntry ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const Element_MappedAttributeEntry ) ) - . attribute as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - Element_MappedAttributeEntry ) , "::" , stringify - ! ( attribute ) )); - } - impl Clone for Element_MappedAttributeEntry { - fn clone(&self) -> Self { *self } - } - pub const Element_kFireMutationEvent: bool = true; - pub const Element_kDontFireMutationEvent: bool = false; - pub const Element_kNotifyDocumentObservers: bool = true; - pub const Element_kDontNotifyDocumentObservers: bool = false; - pub const Element_kCallAfterSetAttr: bool = true; - pub const Element_kDontCallAfterSetAttr: bool = false; - #[test] - fn bindgen_test_layout_Element() { - assert_eq!(::std::mem::size_of::() , 136usize , - concat ! ( "Size of: " , stringify ! ( Element ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( Element ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Element ) ) . mState as * - const _ as usize } , 120usize , concat ! ( - "Alignment of field: " , stringify ! ( Element ) , - "::" , stringify ! ( mState ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Element ) ) . mServoData as * - const _ as usize } , 128usize , concat ! ( - "Alignment of field: " , stringify ! ( Element ) , - "::" , stringify ! ( mServoData ) )); + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum FillMode { + None = 0, + Forwards = 1, + Backwards = 2, + Both = 3, + Auto = 4, + EndGuard_ = 5, } pub mod binding_detail { #[allow(unused_imports)] @@ -1617,7 +2933,7 @@ pub mod root { #[repr(C)] #[derive(Debug)] pub struct FastErrorResult { - pub _base: root::mozilla::binding_danger::TErrorResult, + pub _base: root::mozilla::binding_danger::TErrorResult, } #[test] fn bindgen_test_layout_FastErrorResult() { @@ -1852,8 +3168,9 @@ pub mod root { impl Clone for AllOwningUnionBase { fn clone(&self) -> Self { *self } } + #[repr(u32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CallerType { } + pub enum CallerType { System = 0, NonSystem = 1, } #[repr(C)] #[derive(Debug)] pub struct GlobalObject { @@ -1890,6 +3207,14 @@ pub mod root { mGlobalObject ) )); } #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Optional { + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Sequence { + } + #[repr(C)] #[derive(Debug, Copy)] pub struct ParentObject { pub mObject: *const root::nsISupports, @@ -1930,10 +3255,659 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Event([u8; 0]); - #[repr(C)] - pub struct DispatcherTrait__bindgen_vtable { + pub struct Nullable { } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CSSStyleSheetParsingMode { + Author = 0, + User = 1, + Agent = 2, + EndGuard_ = 3, + } + #[repr(C)] + #[derive(Debug)] + pub struct OriginAttributesDictionary { + pub _base: root::mozilla::dom::DictionaryBase, + pub mAppId: u32, + pub mFirstPartyDomain: ::nsstring::nsStringRepr, + pub mInIsolatedMozBrowser: bool, + pub mPrivateBrowsingId: u32, + pub mUserContextId: u32, + } + #[test] + fn bindgen_test_layout_OriginAttributesDictionary() { + assert_eq!(::std::mem::size_of::() + , 40usize , concat ! ( + "Size of: " , stringify ! ( + OriginAttributesDictionary ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + OriginAttributesDictionary ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OriginAttributesDictionary ) + ) . mAppId as * const _ as usize } , 4usize , + concat ! ( + "Alignment of field: " , stringify ! ( + OriginAttributesDictionary ) , "::" , stringify ! + ( mAppId ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OriginAttributesDictionary ) + ) . mFirstPartyDomain as * const _ as usize } , + 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + OriginAttributesDictionary ) , "::" , stringify ! + ( mFirstPartyDomain ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OriginAttributesDictionary ) + ) . mInIsolatedMozBrowser as * const _ as usize } + , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + OriginAttributesDictionary ) , "::" , stringify ! + ( mInIsolatedMozBrowser ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OriginAttributesDictionary ) + ) . mPrivateBrowsingId as * const _ as usize } , + 28usize , concat ! ( + "Alignment of field: " , stringify ! ( + OriginAttributesDictionary ) , "::" , stringify ! + ( mPrivateBrowsingId ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OriginAttributesDictionary ) + ) . mUserContextId as * const _ as usize } , + 32usize , concat ! ( + "Alignment of field: " , stringify ! ( + OriginAttributesDictionary ) , "::" , stringify ! + ( mUserContextId ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Promise { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct CSSRuleList { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct MediaList { + pub _base: root::nsIDOMMediaList, + pub _base_1: root::nsWrapperCache, + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mStyleSheet: *mut root::mozilla::StyleSheet, + } + pub type MediaList_HasThreadSafeRefCnt = root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct MediaList_cycleCollection { + pub _base: root::nsXPCOMCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_MediaList_cycleCollection() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + MediaList_cycleCollection ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + MediaList_cycleCollection ) )); + } + impl Clone for MediaList_cycleCollection { + fn clone(&self) -> Self { *self } + } + extern "C" { + #[link_name = + "_ZN7mozilla3dom9MediaList21_cycleCollectorGlobalE"] + pub static mut MediaList__cycleCollectorGlobal: + root::mozilla::dom::MediaList_cycleCollection; + } + #[test] + fn bindgen_test_layout_MediaList() { + assert_eq!(::std::mem::size_of::() , 56usize , + concat ! ( "Size of: " , stringify ! ( MediaList ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( MediaList ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct Element { + pub _base: root::mozilla::dom::FragmentOrElement, + pub mState: root::mozilla::EventStates, + pub mServoData: ::gecko_bindings::structs::ServoCell<*mut ::gecko_bindings::structs::ServoNodeData>, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Element_COMTypeInfo { + pub _address: u8, + } + /** + * StyleStateLocks is used to specify which event states should be locked, + * and whether they should be locked to on or off. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Element_StyleStateLocks { + pub mLocks: root::mozilla::EventStates, + pub mValues: root::mozilla::EventStates, + } + #[test] + fn bindgen_test_layout_Element_StyleStateLocks() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( Element_StyleStateLocks + ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + Element_StyleStateLocks ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Element_StyleStateLocks ) ) . + mLocks as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + Element_StyleStateLocks ) , "::" , stringify ! ( + mLocks ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Element_StyleStateLocks ) ) . + mValues as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + Element_StyleStateLocks ) , "::" , stringify ! ( + mValues ) )); + } + impl Clone for Element_StyleStateLocks { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Element_MappedAttributeEntry { + pub attribute: *mut *mut root::nsIAtom, + } + #[test] + fn bindgen_test_layout_Element_MappedAttributeEntry() { + assert_eq!(::std::mem::size_of::() + , 8usize , concat ! ( + "Size of: " , stringify ! ( + Element_MappedAttributeEntry ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + Element_MappedAttributeEntry ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const Element_MappedAttributeEntry ) ) + . attribute as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + Element_MappedAttributeEntry ) , "::" , stringify + ! ( attribute ) )); + } + impl Clone for Element_MappedAttributeEntry { + fn clone(&self) -> Self { *self } + } + pub const Element_kFireMutationEvent: bool = true; + pub const Element_kDontFireMutationEvent: bool = false; + pub const Element_kNotifyDocumentObservers: bool = true; + pub const Element_kDontNotifyDocumentObservers: bool = false; + pub const Element_kCallAfterSetAttr: bool = true; + pub const Element_kDontCallAfterSetAttr: bool = false; + #[test] + fn bindgen_test_layout_Element() { + assert_eq!(::std::mem::size_of::() , 136usize , + concat ! ( "Size of: " , stringify ! ( Element ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( Element ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Element ) ) . mState as * + const _ as usize } , 120usize , concat ! ( + "Alignment of field: " , stringify ! ( Element ) , + "::" , stringify ! ( mState ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Element ) ) . mServoData as * + const _ as usize } , 128usize , concat ! ( + "Alignment of field: " , stringify ! ( Element ) , + "::" , stringify ! ( mServoData ) )); + } + /** + * Struct that stores info on an attribute. The name and value must either both + * be null or both be non-null. + * + * Note that, just as the pointers returned by GetAttrNameAt, the pointers that + * this struct hold are only valid until the element or its attributes are + * mutated (directly or via script). + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct BorrowedAttrInfo { + pub mName: *const root::nsAttrName, + pub mValue: *const root::nsAttrValue, + } + #[test] + fn bindgen_test_layout_BorrowedAttrInfo() { + assert_eq!(::std::mem::size_of::() , 16usize + , concat ! ( + "Size of: " , stringify ! ( BorrowedAttrInfo ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( BorrowedAttrInfo ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const BorrowedAttrInfo ) ) . mName + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + BorrowedAttrInfo ) , "::" , stringify ! ( mName ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const BorrowedAttrInfo ) ) . mValue + as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + BorrowedAttrInfo ) , "::" , stringify ! ( mValue ) + )); + } + impl Clone for BorrowedAttrInfo { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct NodeInfo { + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mDocument: *mut root::nsIDocument, + pub mInner: root::mozilla::dom::NodeInfo_NodeInfoInner, + pub mOwnerManager: root::RefPtr, + pub mQualifiedName: ::nsstring::nsStringRepr, + pub mNodeName: ::nsstring::nsStringRepr, + pub mLocalName: ::nsstring::nsStringRepr, + } + pub type NodeInfo_HasThreadSafeRefCnt = root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct NodeInfo_cycleCollection { + pub _base: root::nsCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_NodeInfo_cycleCollection() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( + NodeInfo_cycleCollection ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + NodeInfo_cycleCollection ) )); + } + impl Clone for NodeInfo_cycleCollection { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct NodeInfo_NodeInfoInner { + pub mName: root::nsCOMPtr, + pub mPrefix: root::nsCOMPtr, + pub mNamespaceID: i32, + pub mNodeType: u16, + pub mNameString: *const root::nsAString, + pub mExtraName: root::nsCOMPtr, + } + #[test] + fn bindgen_test_layout_NodeInfo_NodeInfoInner() { + assert_eq!(::std::mem::size_of::() , + 40usize , concat ! ( + "Size of: " , stringify ! ( NodeInfo_NodeInfoInner + ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + NodeInfo_NodeInfoInner ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mName as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mPrefix as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mPrefix ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mNamespaceID as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mNamespaceID ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mNodeType as * const _ as usize } , 20usize , + concat ! ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mNodeType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mNameString as * const _ as usize } , 24usize , + concat ! ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mNameString ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mExtraName as * const _ as usize } , 32usize , + concat ! ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mExtraName ) )); + } + extern "C" { + #[link_name = + "_ZN7mozilla3dom8NodeInfo21_cycleCollectorGlobalE"] + pub static mut NodeInfo__cycleCollectorGlobal: + root::mozilla::dom::NodeInfo_cycleCollection; + } + #[test] + fn bindgen_test_layout_NodeInfo() { + assert_eq!(::std::mem::size_of::() , 120usize , + concat ! ( "Size of: " , stringify ! ( NodeInfo ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( NodeInfo ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mRefCnt as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . _mOwningThread + as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( _mOwningThread ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mDocument as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mDocument ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mInner as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mInner ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mOwnerManager + as * const _ as usize } , 64usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mOwnerManager ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mQualifiedName + as * const _ as usize } , 72usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mQualifiedName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mNodeName as * + const _ as usize } , 88usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mNodeName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mLocalName as + * const _ as usize } , 104usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mLocalName ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct EventTarget { + pub _base: root::nsIDOMEventTarget, + pub _base_1: root::nsWrapperCache, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventTarget_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_EventTarget() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( + "Size of: " , stringify ! ( EventTarget ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( EventTarget ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AddEventListenerOptionsOrBoolean { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Event { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventListener { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventListenerOptionsOrBoolean { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct EventHandlerNonNull { + pub _base: root::mozilla::dom::CallbackFunction, + } + #[test] + fn bindgen_test_layout_EventHandlerNonNull() { + assert_eq!(::std::mem::size_of::() , + 56usize , concat ! ( + "Size of: " , stringify ! ( EventHandlerNonNull ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + EventHandlerNonNull ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AccessibleNode { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct BoxQuadOptions { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ConvertCoordinateOptions { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DOMPoint { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DOMQuad { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct DOMRectReadOnly { + pub _base: root::nsISupports, + pub _base_1: root::nsWrapperCache, + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mParent: root::nsCOMPtr, + } + pub type DOMRectReadOnly_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct DOMRectReadOnly_cycleCollection { + pub _base: root::nsXPCOMCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_DOMRectReadOnly_cycleCollection() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + DOMRectReadOnly_cycleCollection ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + DOMRectReadOnly_cycleCollection ) )); + } + impl Clone for DOMRectReadOnly_cycleCollection { + fn clone(&self) -> Self { *self } + } + extern "C" { + #[link_name = + "_ZN7mozilla3dom15DOMRectReadOnly21_cycleCollectorGlobalE"] + pub static mut DOMRectReadOnly__cycleCollectorGlobal: + root::mozilla::dom::DOMRectReadOnly_cycleCollection; + } + #[test] + fn bindgen_test_layout_DOMRectReadOnly() { + assert_eq!(::std::mem::size_of::() , 56usize + , concat ! ( + "Size of: " , stringify ! ( DOMRectReadOnly ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( DOMRectReadOnly ) + )); + } + #[repr(C)] + #[derive(Debug)] + pub struct OwningNodeOrString { + pub mType: root::mozilla::dom::OwningNodeOrString_Type, + pub mValue: root::mozilla::dom::OwningNodeOrString_Value, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum OwningNodeOrString_Type { + eUninitialized = 0, + eNode = 1, + eString = 2, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct OwningNodeOrString_Value { + pub mNode: root::__BindgenUnionField, + pub mString: root::__BindgenUnionField, + pub bindgen_union_field: [u64; 2usize], + } + #[test] + fn bindgen_test_layout_OwningNodeOrString_Value() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( + OwningNodeOrString_Value ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + OwningNodeOrString_Value ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OwningNodeOrString_Value ) ) + . mNode as * const _ as usize } , 0usize , concat + ! ( + "Alignment of field: " , stringify ! ( + OwningNodeOrString_Value ) , "::" , stringify ! ( + mNode ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OwningNodeOrString_Value ) ) + . mString as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + OwningNodeOrString_Value ) , "::" , stringify ! ( + mString ) )); + } + impl Clone for OwningNodeOrString_Value { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_OwningNodeOrString() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( OwningNodeOrString ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( OwningNodeOrString + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OwningNodeOrString ) ) . + mType as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + OwningNodeOrString ) , "::" , stringify ! ( mType + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OwningNodeOrString ) ) . + mValue as * const _ as usize } , 8usize , concat ! + ( + "Alignment of field: " , stringify ! ( + OwningNodeOrString ) , "::" , stringify ! ( mValue + ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Text { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct TextOrElementOrDocument { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DOMPointInit { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct GetRootNodeOptions { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ShadowRoot { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Touch { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Selection { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct UnionMember { + pub mStorage: root::mozilla::AlignedStorage2, + } + #[repr(C)] + pub struct DispatcherTrait__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug, Copy)] pub struct DispatcherTrait { @@ -1954,69 +3928,217 @@ pub mod root { } #[repr(C)] #[derive(Debug)] - pub struct EventTarget { - pub _base: root::nsIDOMEventTarget, - pub _base_1: root::nsWrapperCache, + pub struct ScriptSettingsStackEntry { + pub mGlobalObject: root::nsCOMPtr, + pub mType: root::mozilla::dom::ScriptSettingsStackEntry_Type, + pub mOlder: *mut root::mozilla::dom::ScriptSettingsStackEntry, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventTarget_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum ScriptSettingsStackEntry_Type { + eEntryScript = 0, + eIncumbentScript = 1, + eJSAPI = 2, + eNoJSAPI = 3, } #[test] - fn bindgen_test_layout_EventTarget() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( - "Size of: " , stringify ! ( EventTarget ) )); - assert_eq! (::std::mem::align_of::() , 8usize , + fn bindgen_test_layout_ScriptSettingsStackEntry() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( + ScriptSettingsStackEntry ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + ScriptSettingsStackEntry ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScriptSettingsStackEntry ) ) + . mGlobalObject as * const _ as usize } , 0usize , concat ! ( - "Alignment of " , stringify ! ( EventTarget ) )); + "Alignment of field: " , stringify ! ( + ScriptSettingsStackEntry ) , "::" , stringify ! ( + mGlobalObject ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScriptSettingsStackEntry ) ) + . mType as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + ScriptSettingsStackEntry ) , "::" , stringify ! ( + mType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScriptSettingsStackEntry ) ) + . mOlder as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ScriptSettingsStackEntry ) , "::" , stringify ! ( + mOlder ) )); } #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct AddEventListenerOptionsOrBoolean([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventListener([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventListenerOptionsOrBoolean([u8; 0]); - #[repr(C)] #[derive(Debug)] - pub struct EventHandlerNonNull { - pub _base: root::mozilla::dom::CallbackFunction, + pub struct AutoJSAPI { + pub _base: root::mozilla::dom::ScriptSettingsStackEntry, + pub mAutoRequest: [u64; 3usize], + pub mAutoNullableCompartment: [u64; 4usize], + pub mCx: *mut root::JSContext, + pub mIsMainThread: bool, + pub mOldWarningReporter: [u64; 2usize], } #[test] - fn bindgen_test_layout_EventHandlerNonNull() { - assert_eq!(::std::mem::size_of::() , - 56usize , concat ! ( - "Size of: " , stringify ! ( EventHandlerNonNull ) + fn bindgen_test_layout_AutoJSAPI() { + assert_eq!(::std::mem::size_of::() , 112usize , + concat ! ( "Size of: " , stringify ! ( AutoJSAPI ) )); - assert_eq! (::std::mem::align_of::() , + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( AutoJSAPI ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoJSAPI ) ) . mAutoRequest + as * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( AutoJSAPI ) + , "::" , stringify ! ( mAutoRequest ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoJSAPI ) ) . + mAutoNullableCompartment as * const _ as usize } , + 48usize , concat ! ( + "Alignment of field: " , stringify ! ( AutoJSAPI ) + , "::" , stringify ! ( mAutoNullableCompartment ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoJSAPI ) ) . mCx as * + const _ as usize } , 80usize , concat ! ( + "Alignment of field: " , stringify ! ( AutoJSAPI ) + , "::" , stringify ! ( mCx ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoJSAPI ) ) . mIsMainThread + as * const _ as usize } , 88usize , concat ! ( + "Alignment of field: " , stringify ! ( AutoJSAPI ) + , "::" , stringify ! ( mIsMainThread ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoJSAPI ) ) . + mOldWarningReporter as * const _ as usize } , + 96usize , concat ! ( + "Alignment of field: " , stringify ! ( AutoJSAPI ) + , "::" , stringify ! ( mOldWarningReporter ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct AutoEntryScript { + pub _base: root::mozilla::dom::AutoJSAPI, + pub mWebIDLCallerPrincipal: *mut root::nsIPrincipal, + pub mDocShellEntryMonitor: [u64; 5usize], + pub mCallerOverride: root::JS::AutoHideScriptedCaller, + } + #[repr(C)] + #[derive(Debug)] + pub struct AutoEntryScript_DocshellEntryMonitor { + pub _base: root::JS::dbg::AutoEntryMonitor, + pub mReason: *const ::std::os::raw::c_char, + } + #[test] + fn bindgen_test_layout_AutoEntryScript_DocshellEntryMonitor() { + assert_eq!(::std::mem::size_of::() + , 32usize , concat ! ( + "Size of: " , stringify ! ( + AutoEntryScript_DocshellEntryMonitor ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + AutoEntryScript_DocshellEntryMonitor ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const AutoEntryScript_DocshellEntryMonitor + ) ) . mReason as * const _ as usize } , 24usize , + concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryScript_DocshellEntryMonitor ) , "::" , + stringify ! ( mReason ) )); + } + #[test] + fn bindgen_test_layout_AutoEntryScript() { + assert_eq!(::std::mem::size_of::() , 176usize + , concat ! ( + "Size of: " , stringify ! ( AutoEntryScript ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( AutoEntryScript ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoEntryScript ) ) . + mWebIDLCallerPrincipal as * const _ as usize } , + 112usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryScript ) , "::" , stringify ! ( + mWebIDLCallerPrincipal ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoEntryScript ) ) . + mDocShellEntryMonitor as * const _ as usize } , + 120usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryScript ) , "::" , stringify ! ( + mDocShellEntryMonitor ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoEntryScript ) ) . + mCallerOverride as * const _ as usize } , 160usize + , concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryScript ) , "::" , stringify ! ( + mCallerOverride ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct AutoIncumbentScript { + pub _base: root::mozilla::dom::ScriptSettingsStackEntry, + pub mCallerOverride: root::JS::AutoHideScriptedCaller, + } + #[test] + fn bindgen_test_layout_AutoIncumbentScript() { + assert_eq!(::std::mem::size_of::() , + 40usize , concat ! ( + "Size of: " , stringify ! ( AutoIncumbentScript ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( "Alignment of " , stringify ! ( - EventHandlerNonNull ) )); + AutoIncumbentScript ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoIncumbentScript ) ) . + mCallerOverride as * const _ as usize } , 24usize + , concat ! ( + "Alignment of field: " , stringify ! ( + AutoIncumbentScript ) , "::" , stringify ! ( + mCallerOverride ) )); } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AudioContext([u8; 0]); + pub struct AudioContext { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DocGroup([u8; 0]); + pub struct DocGroup { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Performance([u8; 0]); + pub struct Performance { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ServiceWorkerRegistration([u8; 0]); + pub struct ServiceWorkerRegistration { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct TimeoutManager([u8; 0]); + pub struct TimeoutManager { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct CustomElementRegistry([u8; 0]); + pub struct CustomElementRegistry { + _unused: [u8; 0], + } #[repr(u8)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum LargeAllocStatus { @@ -2029,7 +4151,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct PrefSetting([u8; 0]); + pub struct PrefSetting { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct CallbackObject { @@ -2039,14 +4163,12 @@ pub mod root { pub mCallback: root::JS::Heap<*mut root::JSObject>, pub mCreationStack: root::JS::Heap<*mut root::JSObject>, pub mIncumbentGlobal: root::nsCOMPtr, - pub mIncumbentJSGlobal: root::JS::TenuredHeap<*mut root::JSObject>, + pub mIncumbentJSGlobal: root::JS::TenuredHeap, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct CallbackObject_COMTypeInfo { + pub struct CallbackObject_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub type CallbackObject_HasThreadSafeRefCnt = root::mozilla::FalseType; @@ -2281,10 +4403,8 @@ pub mod root { } #[repr(C)] #[derive(Debug)] - pub struct CallbackObjectHolder { + pub struct CallbackObjectHolder { pub mPtrBits: usize, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[repr(C)] #[derive(Debug, Copy)] @@ -2334,421 +4454,6 @@ pub mod root { } #[repr(u8)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CSSStyleSheetParsingMode { - Author = 0, - User = 1, - Agent = 2, - EndGuard_ = 3, - } - #[repr(C)] - #[derive(Debug)] - pub struct OriginAttributesDictionary { - pub _base: root::mozilla::dom::DictionaryBase, - pub mAppId: u32, - pub mFirstPartyDomain: ::nsstring::nsStringRepr, - pub mInIsolatedMozBrowser: bool, - pub mPrivateBrowsingId: u32, - pub mUserContextId: u32, - } - #[test] - fn bindgen_test_layout_OriginAttributesDictionary() { - assert_eq!(::std::mem::size_of::() - , 40usize , concat ! ( - "Size of: " , stringify ! ( - OriginAttributesDictionary ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - OriginAttributesDictionary ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OriginAttributesDictionary ) - ) . mAppId as * const _ as usize } , 4usize , - concat ! ( - "Alignment of field: " , stringify ! ( - OriginAttributesDictionary ) , "::" , stringify ! - ( mAppId ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OriginAttributesDictionary ) - ) . mFirstPartyDomain as * const _ as usize } , - 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - OriginAttributesDictionary ) , "::" , stringify ! - ( mFirstPartyDomain ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OriginAttributesDictionary ) - ) . mInIsolatedMozBrowser as * const _ as usize } - , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - OriginAttributesDictionary ) , "::" , stringify ! - ( mInIsolatedMozBrowser ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OriginAttributesDictionary ) - ) . mPrivateBrowsingId as * const _ as usize } , - 28usize , concat ! ( - "Alignment of field: " , stringify ! ( - OriginAttributesDictionary ) , "::" , stringify ! - ( mPrivateBrowsingId ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OriginAttributesDictionary ) - ) . mUserContextId as * const _ as usize } , - 32usize , concat ! ( - "Alignment of field: " , stringify ! ( - OriginAttributesDictionary ) , "::" , stringify ! - ( mUserContextId ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Promise([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct CSSRuleList([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct MediaList { - pub _base: root::nsIDOMMediaList, - pub _base_1: root::nsWrapperCache, - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mStyleSheet: *mut root::mozilla::StyleSheet, - } - pub type MediaList_HasThreadSafeRefCnt = root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct MediaList_cycleCollection { - pub _base: root::nsXPCOMCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_MediaList_cycleCollection() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - MediaList_cycleCollection ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - MediaList_cycleCollection ) )); - } - impl Clone for MediaList_cycleCollection { - fn clone(&self) -> Self { *self } - } - extern "C" { - #[link_name = - "_ZN7mozilla3dom9MediaList21_cycleCollectorGlobalE"] - pub static mut MediaList__cycleCollectorGlobal: - root::mozilla::dom::MediaList_cycleCollection; - } - #[test] - fn bindgen_test_layout_MediaList() { - assert_eq!(::std::mem::size_of::() , 56usize , - concat ! ( "Size of: " , stringify ! ( MediaList ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( MediaList ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct NodeInfo { - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mDocument: *mut root::nsIDocument, - pub mInner: root::mozilla::dom::NodeInfo_NodeInfoInner, - pub mOwnerManager: root::RefPtr, - pub mQualifiedName: ::nsstring::nsStringRepr, - pub mNodeName: ::nsstring::nsStringRepr, - pub mLocalName: ::nsstring::nsStringRepr, - } - pub type NodeInfo_HasThreadSafeRefCnt = root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct NodeInfo_cycleCollection { - pub _base: root::nsCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_NodeInfo_cycleCollection() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( - NodeInfo_cycleCollection ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - NodeInfo_cycleCollection ) )); - } - impl Clone for NodeInfo_cycleCollection { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct NodeInfo_NodeInfoInner { - pub mName: root::nsCOMPtr, - pub mPrefix: root::nsCOMPtr, - pub mNamespaceID: i32, - pub mNodeType: u16, - pub mNameString: *const root::nsAString, - pub mExtraName: root::nsCOMPtr, - } - #[test] - fn bindgen_test_layout_NodeInfo_NodeInfoInner() { - assert_eq!(::std::mem::size_of::() , - 40usize , concat ! ( - "Size of: " , stringify ! ( NodeInfo_NodeInfoInner - ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - NodeInfo_NodeInfoInner ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mName as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mPrefix as * const _ as usize } , 8usize , concat - ! ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mPrefix ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mNamespaceID as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mNamespaceID ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mNodeType as * const _ as usize } , 20usize , - concat ! ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mNodeType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mNameString as * const _ as usize } , 24usize , - concat ! ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mNameString ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mExtraName as * const _ as usize } , 32usize , - concat ! ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mExtraName ) )); - } - extern "C" { - #[link_name = - "_ZN7mozilla3dom8NodeInfo21_cycleCollectorGlobalE"] - pub static mut NodeInfo__cycleCollectorGlobal: - root::mozilla::dom::NodeInfo_cycleCollection; - } - #[test] - fn bindgen_test_layout_NodeInfo() { - assert_eq!(::std::mem::size_of::() , 120usize , - concat ! ( "Size of: " , stringify ! ( NodeInfo ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( NodeInfo ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mRefCnt as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . _mOwningThread - as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( _mOwningThread ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mDocument as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mDocument ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mInner as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mInner ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mOwnerManager - as * const _ as usize } , 64usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mOwnerManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mQualifiedName - as * const _ as usize } , 72usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mQualifiedName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mNodeName as * - const _ as usize } , 88usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mNodeName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mLocalName as - * const _ as usize } , 104usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mLocalName ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct AccessibleNode([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct BoxQuadOptions([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ConvertCoordinateOptions([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DOMPoint([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DOMQuad([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct DOMRectReadOnly { - pub _base: root::nsISupports, - pub _base_1: root::nsWrapperCache, - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mParent: root::nsCOMPtr, - } - pub type DOMRectReadOnly_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct DOMRectReadOnly_cycleCollection { - pub _base: root::nsXPCOMCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_DOMRectReadOnly_cycleCollection() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - DOMRectReadOnly_cycleCollection ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - DOMRectReadOnly_cycleCollection ) )); - } - impl Clone for DOMRectReadOnly_cycleCollection { - fn clone(&self) -> Self { *self } - } - extern "C" { - #[link_name = - "_ZN7mozilla3dom15DOMRectReadOnly21_cycleCollectorGlobalE"] - pub static mut DOMRectReadOnly__cycleCollectorGlobal: - root::mozilla::dom::DOMRectReadOnly_cycleCollection; - } - #[test] - fn bindgen_test_layout_DOMRectReadOnly() { - assert_eq!(::std::mem::size_of::() , 56usize - , concat ! ( - "Size of: " , stringify ! ( DOMRectReadOnly ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( DOMRectReadOnly ) - )); - } - #[repr(C)] - #[derive(Debug)] - pub struct OwningNodeOrString { - pub mType: root::mozilla::dom::OwningNodeOrString_Type, - pub mValue: root::mozilla::dom::OwningNodeOrString_Value, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum OwningNodeOrString_Type { - eUninitialized = 0, - eNode = 1, - eString = 2, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct OwningNodeOrString_Value { - pub mNode: root::__BindgenUnionField>>, - pub mString: root::__BindgenUnionField>, - pub bindgen_union_field: [u64; 2usize], - } - #[test] - fn bindgen_test_layout_OwningNodeOrString_Value() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( - OwningNodeOrString_Value ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - OwningNodeOrString_Value ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OwningNodeOrString_Value ) ) - . mNode as * const _ as usize } , 0usize , concat - ! ( - "Alignment of field: " , stringify ! ( - OwningNodeOrString_Value ) , "::" , stringify ! ( - mNode ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OwningNodeOrString_Value ) ) - . mString as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - OwningNodeOrString_Value ) , "::" , stringify ! ( - mString ) )); - } - impl Clone for OwningNodeOrString_Value { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_OwningNodeOrString() { - assert_eq!(::std::mem::size_of::() , - 24usize , concat ! ( - "Size of: " , stringify ! ( OwningNodeOrString ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( OwningNodeOrString - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OwningNodeOrString ) ) . - mType as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - OwningNodeOrString ) , "::" , stringify ! ( mType - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OwningNodeOrString ) ) . - mValue as * const _ as usize } , 8usize , concat ! - ( - "Alignment of field: " , stringify ! ( - OwningNodeOrString ) , "::" , stringify ! ( mValue - ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Text([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct TextOrElementOrDocument([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DOMPointInit([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct GetRootNodeOptions([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct UnionMember { - pub mStorage: root::mozilla::AlignedStorage2, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum VisibilityState { Hidden = 0, Visible = 1, @@ -2811,8 +4516,8 @@ pub mod root { #[repr(C)] #[derive(Debug, Copy)] pub struct ElementCreationOptionsOrString_Value { - pub mElementCreationOptions: root::__BindgenUnionField>, - pub mString: root::__BindgenUnionField>, + pub mElementCreationOptions: root::__BindgenUnionField, + pub mString: root::__BindgenUnionField, pub bindgen_union_field: [u64; 18usize], } #[test] @@ -2876,10 +4581,14 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Animation([u8; 0]); + pub struct Animation { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AnonymousContent([u8; 0]); + pub struct AnonymousContent { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct Attr { @@ -2927,27 +4636,40 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct BoxObject([u8; 0]); + pub struct BoxObject { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct CDATASection([u8; 0]); + pub struct CDATASection { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Comment([u8; 0]); + pub struct Comment { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DocumentFragment([u8; 0]); + pub struct DocumentFragment { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DocumentTimeline([u8; 0]); + pub struct DocumentTimeline { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DocumentType([u8; 0]); + pub struct DocumentType { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DOMImplementation([u8; 0]); + pub struct DOMImplementation { + _unused: [u8; 0], + } #[repr(C)] - #[derive(Debug)] pub struct DOMIntersectionObserver { pub _base: root::nsISupports, pub _base_1: root::nsWrapperCache, @@ -2986,10 +4708,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DOMIntersectionObserver_COMTypeInfo { + pub struct DOMIntersectionObserver_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } extern "C" { #[link_name = @@ -3010,13 +4730,19 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DOMStringList([u8; 0]); + pub struct DOMStringList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ElementRegistrationOptions([u8; 0]); + pub struct ElementRegistrationOptions { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct FontFaceSet([u8; 0]); + pub struct FontFaceSet { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct FrameRequestCallback { @@ -3035,130 +4761,98 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct FullscreenRequest([u8; 0]); + pub struct FullscreenRequest { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ImageTracker([u8; 0]); + pub struct ImageTracker { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ImportManager([u8; 0]); + pub struct ImportManager { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct HTMLBodyElement([u8; 0]); + pub struct HTMLBodyElement { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Link([u8; 0]); + pub struct Link { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Location([u8; 0]); + pub struct Location { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct MediaQueryList([u8; 0]); + pub struct MediaQueryList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct NodeFilter([u8; 0]); + pub struct NodeFilter { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct NodeIterator([u8; 0]); + pub struct NodeIterator { + _unused: [u8; 0], + } #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum OrientationType { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ProcessingInstruction([u8; 0]); + pub struct ProcessingInstruction { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct StyleSheetList([u8; 0]); + pub struct StyleSheetList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGSVGElement([u8; 0]); + pub struct SVGSVGElement { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Touch([u8; 0]); + pub struct TouchList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct TouchList([u8; 0]); + pub struct TreeWalker { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct TreeWalker([u8; 0]); + pub struct XPathEvaluator { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct XPathEvaluator([u8; 0]); + pub struct XPathExpression { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct XPathExpression([u8; 0]); + pub struct XPathNSResolver { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct XPathNSResolver([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct XPathResult([u8; 0]); + pub struct XPathResult { + _unused: [u8; 0], + } pub type NodeFilterHolder = - root::mozilla::dom::CallbackObjectHolder; - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum FillMode { - None = 0, - Forwards = 1, - Backwards = 2, - Both = 3, - Auto = 4, - EndGuard_ = 5, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum PlaybackDirection { - Normal = 0, - Reverse = 1, - Alternate = 2, - Alternate_reverse = 3, - EndGuard_ = 4, - } - /** - * Struct that stores info on an attribute. The name and value must either both - * be null or both be non-null. - * - * Note that, just as the pointers returned by GetAttrNameAt, the pointers that - * this struct hold are only valid until the element or its attributes are - * mutated (directly or via script). - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct BorrowedAttrInfo { - pub mName: *const root::nsAttrName, - pub mValue: *const root::nsAttrValue, - } - #[test] - fn bindgen_test_layout_BorrowedAttrInfo() { - assert_eq!(::std::mem::size_of::() , 16usize - , concat ! ( - "Size of: " , stringify ! ( BorrowedAttrInfo ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( BorrowedAttrInfo ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const BorrowedAttrInfo ) ) . mName - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - BorrowedAttrInfo ) , "::" , stringify ! ( mName ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const BorrowedAttrInfo ) ) . mValue - as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - BorrowedAttrInfo ) , "::" , stringify ! ( mValue ) - )); - } - impl Clone for BorrowedAttrInfo { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ShadowRoot([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Selection([u8; 0]); + root::mozilla::dom::CallbackObjectHolder; #[repr(u8)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum ScrollBehavior { @@ -3231,7 +4925,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct CustomElementData([u8; 0]); + pub struct CustomElementData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct FragmentOrElement { @@ -3550,7 +5246,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGAnimationElement([u8; 0]); + pub struct SVGAnimationElement { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct DOMRect { @@ -3740,8 +5438,8 @@ pub mod root { #[repr(C)] #[derive(Debug, Copy)] pub struct OwningDoubleOrDoubleSequence_Value { - pub mDouble: root::__BindgenUnionField>, - pub mDoubleSequence: root::__BindgenUnionField>, + pub mDouble: root::__BindgenUnionField, + pub mDoubleSequence: root::__BindgenUnionField, pub bindgen_union_field: u64, } #[test] @@ -3845,10 +5543,19 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AnimationFilter([u8; 0]); + pub struct AnimationFilter { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct UnrestrictedDoubleOrKeyframeAnimationOptions([u8; 0]); + pub struct ElementOrCSSPseudoElement { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct UnrestrictedDoubleOrKeyframeAnimationOptions { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct DestinationInsertionPointList { @@ -3856,7 +5563,7 @@ pub mod root { pub mRefCnt: root::nsCycleCollectingAutoRefCnt, pub _mOwningThread: root::nsAutoOwningThread, pub mParent: root::RefPtr, - pub mDestinationPoints: root::nsCOMArray, + pub mDestinationPoints: root::nsCOMArray, } pub type DestinationInsertionPointList_HasThreadSafeRefCnt = root::mozilla::FalseType; @@ -3932,7 +5639,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Grid([u8; 0]); + pub struct Grid { + _unused: [u8; 0], + } /** * CSSValue - a DOM object representing values in DOM computed style. */ @@ -3952,93 +5661,2693 @@ pub mod root { "Alignment of " , stringify ! ( CSSValue ) )); } } - pub type CSSPseudoClassTypeBase = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct CSSVariableResolver { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct CSSVariableValues { + /** + * Map of variable names to IDs. Variable IDs are indexes into + * mVariables. + */ + pub mVariableIDs: [u64; 6usize], + /** + * Array of variables, indexed by variable ID. + */ + pub mVariables: root::nsTArray, + } + #[repr(C)] + #[derive(Debug)] + pub struct CSSVariableValues_Variable { + pub mVariableName: ::nsstring::nsStringRepr, + pub mValue: ::nsstring::nsStringRepr, + pub mFirstToken: root::nsCSSTokenSerializationType, + pub mLastToken: root::nsCSSTokenSerializationType, + } + #[test] + fn bindgen_test_layout_CSSVariableValues_Variable() { + assert_eq!(::std::mem::size_of::() , + 40usize , concat ! ( + "Size of: " , stringify ! ( CSSVariableValues_Variable + ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + CSSVariableValues_Variable ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues_Variable ) ) . + mVariableName as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues_Variable ) , "::" , stringify ! ( + mVariableName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues_Variable ) ) . + mValue as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues_Variable ) , "::" , stringify ! ( + mValue ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues_Variable ) ) . + mFirstToken as * const _ as usize } , 32usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues_Variable ) , "::" , stringify ! ( + mFirstToken ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues_Variable ) ) . + mLastToken as * const _ as usize } , 36usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues_Variable ) , "::" , stringify ! ( + mLastToken ) )); + } + #[test] + fn bindgen_test_layout_CSSVariableValues() { + assert_eq!(::std::mem::size_of::() , 56usize , + concat ! ( + "Size of: " , stringify ! ( CSSVariableValues ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( CSSVariableValues ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues ) ) . + mVariableIDs as * const _ as usize } , 0usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues ) , "::" , stringify ! ( + mVariableIDs ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues ) ) . + mVariables as * const _ as usize } , 48usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues ) , "::" , stringify ! ( mVariables + ) )); + } #[repr(u8)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CSSPseudoClassType { - empty = 0, - mozOnlyWhitespace = 1, - mozEmptyExceptChildrenWithLocalname = 2, - lang = 3, - root = 4, - any = 5, - firstChild = 6, - firstNode = 7, - lastChild = 8, - lastNode = 9, - onlyChild = 10, - firstOfType = 11, - lastOfType = 12, - onlyOfType = 13, - nthChild = 14, - nthLastChild = 15, - nthOfType = 16, - nthLastOfType = 17, - mozIsHTML = 18, - unresolved = 19, - mozNativeAnonymous = 20, - mozSystemMetric = 21, - mozLocaleDir = 22, - mozLWTheme = 23, - mozLWThemeBrightText = 24, - mozLWThemeDarkText = 25, - mozWindowInactive = 26, - mozTableBorderNonzero = 27, - mozBrowserFrame = 28, - scope = 29, - negation = 30, - dir = 31, - link = 32, - mozAnyLink = 33, - anyLink = 34, - visited = 35, - active = 36, - checked = 37, - disabled = 38, - enabled = 39, - focus = 40, - focusWithin = 41, - hover = 42, - mozDragOver = 43, - target = 44, - indeterminate = 45, - mozDevtoolsHighlighted = 46, - mozStyleeditorTransitioning = 47, - fullscreen = 48, - mozFullScreen = 49, - mozFocusRing = 50, - mozBroken = 51, - mozLoading = 52, - mozUserDisabled = 53, - mozSuppressed = 54, - mozHandlerClickToPlay = 55, - mozHandlerVulnerableUpdatable = 56, - mozHandlerVulnerableNoUpdate = 57, - mozHandlerDisabled = 58, - mozHandlerBlocked = 59, - mozHandlerCrashed = 60, - mozMathIncrementScriptLevel = 61, - 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 enum SheetType { + Agent = 0, + User = 1, + PresHint = 2, + Doc = 3, + ScopedDoc = 4, + StyleAttr = 5, + Override = 6, + Animation = 7, + Transition = 8, + Count = 9, + Unknown = 255, + } + /** + * StaticAutoPtr and StaticRefPtr are like nsAutoPtr and nsRefPtr, except they + * are suitable for use as global variables. + * + * In particular, a global instance of Static{Auto,Ref}Ptr doesn't cause the + * compiler to emit a static initializer (in release builds, anyway). + * + * In order to accomplish this, Static{Auto,Ref}Ptr must have a trivial + * constructor and destructor. As a consequence, it cannot initialize its raw + * pointer to 0 on construction, and it cannot delete/release its raw pointer + * upon destruction. + * + * Since the compiler guarantees that all global variables are initialized to + * 0, these trivial constructors are safe. Since we rely on this, the clang + * plugin, run as part of our "static analysis" builds, makes it a compile-time + * error to use Static{Auto,Ref}Ptr as anything except a global variable. + * + * Static{Auto,Ref}Ptr have a limited interface as compared to ns{Auto,Ref}Ptr; + * this is intentional, since their range of acceptable uses is smaller. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct StaticAutoPtr { + pub mRawPtr: *mut T, + } + /** + * This struct represents a combined color from a numeric color and + * the current foreground color (currentcolor keyword). + * Conceptually, the formula is "color * (1 - p) + currentcolor * p" + * where p is mForegroundRatio. See mozilla::LinearBlendColors for + * the actual algorithm. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleComplexColor { + pub mColor: root::nscolor, + pub mForegroundRatio: u8, + pub mIsAuto: bool, + } + #[test] + fn bindgen_test_layout_StyleComplexColor() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( StyleComplexColor ) )); + assert_eq! (::std::mem::align_of::() , 4usize , + concat ! ( + "Alignment of " , stringify ! ( StyleComplexColor ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleComplexColor ) ) . mColor as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleComplexColor ) , "::" , stringify ! ( mColor ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleComplexColor ) ) . + mForegroundRatio as * const _ as usize } , 4usize , + concat ! ( + "Alignment of field: " , stringify ! ( + StyleComplexColor ) , "::" , stringify ! ( + mForegroundRatio ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleComplexColor ) ) . mIsAuto + as * const _ as usize } , 5usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleComplexColor ) , "::" , stringify ! ( mIsAuto ) + )); + } + impl Clone for StyleComplexColor { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum Side { + eSideTop = 0, + eSideRight = 1, + eSideBottom = 2, + eSideLeft = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum HalfCorner { + eCornerTopLeftX = 0, + eCornerTopLeftY = 1, + eCornerTopRightX = 2, + eCornerTopRightY = 3, + eCornerBottomRightX = 4, + eCornerBottomRightY = 5, + eCornerBottomLeftX = 6, + eCornerBottomLeftY = 7, + } + pub const FontFamilyType_eFamily_generic_first: + root::mozilla::FontFamilyType = + FontFamilyType::eFamily_serif; + pub const FontFamilyType_eFamily_generic_last: + root::mozilla::FontFamilyType = + FontFamilyType::eFamily_fantasy; + pub const FontFamilyType_eFamily_generic_count: + root::mozilla::FontFamilyType = + FontFamilyType::eFamily_monospace; + #[repr(u32)] + /** + * type of font family name, either a name (e.g. Helvetica) or a + * generic (e.g. serif, sans-serif), with the ability to distinguish + * between unquoted and quoted names for serializaiton + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum FontFamilyType { + eFamily_none = 0, + eFamily_named = 1, + eFamily_named_quoted = 2, + eFamily_serif = 3, + eFamily_sans_serif = 4, + eFamily_monospace = 5, + eFamily_cursive = 6, + eFamily_fantasy = 7, + eFamily_moz_variable = 8, + eFamily_moz_fixed = 9, + } + /** + * font family name, a string for the name if not a generic and + * a font type indicated named family or which generic family + */ + #[repr(C)] + #[derive(Debug)] + pub struct FontFamilyName { + pub mType: root::mozilla::FontFamilyType, + pub mName: ::nsstring::nsStringRepr, + } + #[test] + fn bindgen_test_layout_FontFamilyName() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( "Size of: " , stringify ! ( FontFamilyName ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( FontFamilyName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyName ) ) . mType as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( FontFamilyName + ) , "::" , stringify ! ( mType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyName ) ) . mName as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( FontFamilyName + ) , "::" , stringify ! ( mName ) )); + } + /** + * font family list, array of font families and a default font type. + * font family names are either named strings or generics. the default + * font type is used to preserve the variable font fallback behavior + */ + #[repr(C)] + #[derive(Debug)] + pub struct FontFamilyList { + pub mFontlist: root::nsTArray, + pub mDefaultFontType: root::mozilla::FontFamilyType, + } + #[test] + fn bindgen_test_layout_FontFamilyList() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( "Size of: " , stringify ! ( FontFamilyList ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( FontFamilyList ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyList ) ) . mFontlist as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( FontFamilyList + ) , "::" , stringify ! ( mFontlist ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyList ) ) . + mDefaultFontType as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( FontFamilyList + ) , "::" , stringify ! ( mDefaultFontType ) )); + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBasicShapeType { + Polygon = 0, + Circle = 1, + Ellipse = 2, + Inset = 3, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxAlign { + Stretch = 0, + Start = 1, + Center = 2, + Baseline = 3, + End = 4, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxDecorationBreak { Slice = 0, Clone = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxDirection { Normal = 0, Reverse = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxOrient { Horizontal = 0, Vertical = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxPack { Start = 0, Center = 1, End = 2, Justify = 3, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxSizing { Content = 0, Border = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleClear { + None = 0, + Left = 1, + Right = 2, + InlineStart = 3, + InlineEnd = 4, + Both = 5, + Line = 8, + Max = 13, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleGeometryBox { + ContentBox = 0, + PaddingBox = 1, + BorderBox = 2, + MarginBox = 3, + FillBox = 4, + StrokeBox = 5, + ViewBox = 6, + NoClip = 7, + Text = 8, + NoBox = 9, + MozAlmostPadding = 127, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleFillRule { Nonzero = 0, Evenodd = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleFloat { + None = 0, + Left = 1, + Right = 2, + InlineStart = 3, + InlineEnd = 4, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleFloatEdge { ContentBox = 0, MarginBox = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleHyphens { None = 0, Manual = 1, Auto = 2, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleShapeRadius { ClosestSide = 0, FarthestSide = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleShapeSourceType { + None = 0, + URL = 1, + Shape = 2, + Box = 3, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleTextJustify { + None = 0, + Auto = 1, + InterWord = 2, + InterCharacter = 3, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleUserFocus { + None = 0, + Ignore = 1, + Normal = 2, + SelectAll = 3, + SelectBefore = 4, + SelectAfter = 5, + SelectSame = 6, + SelectMenu = 7, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleUserSelect { + None = 0, + Text = 1, + Element = 2, + Elements = 3, + All = 4, + Toggle = 5, + TriState = 6, + Auto = 7, + MozAll = 8, + MozText = 9, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleUserInput { + None = 0, + Enabled = 1, + Disabled = 2, + Auto = 3, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleUserModify { + ReadOnly = 0, + ReadWrite = 1, + WriteOnly = 2, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleWindowDragging { Default = 0, Drag = 1, NoDrag = 2, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleOrient { + Inline = 0, + Block = 1, + Horizontal = 2, + Vertical = 3, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleDisplay { + None = 0, + Block = 1, + FlowRoot = 2, + Inline = 3, + InlineBlock = 4, + ListItem = 5, + Table = 6, + InlineTable = 7, + TableRowGroup = 8, + TableColumn = 9, + TableColumnGroup = 10, + TableHeaderGroup = 11, + TableFooterGroup = 12, + TableRow = 13, + TableCell = 14, + TableCaption = 15, + Flex = 16, + InlineFlex = 17, + Grid = 18, + InlineGrid = 19, + Ruby = 20, + RubyBase = 21, + RubyBaseContainer = 22, + RubyText = 23, + RubyTextContainer = 24, + Contents = 25, + WebkitBox = 26, + WebkitInlineBox = 27, + MozBox = 28, + MozInlineBox = 29, + MozGrid = 30, + MozInlineGrid = 31, + MozGridGroup = 32, + MozGridLine = 33, + MozStack = 34, + MozInlineStack = 35, + MozDeck = 36, + MozGroupbox = 37, + MozPopup = 38, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleGridTrackBreadth { MaxContent = 1, MinContent = 2, } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WritingMode { + _unused: [u8; 0], + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum LogicalSide { + eLogicalSideBStart = 0, + eLogicalSideBEnd = 1, + eLogicalSideIStart = 2, + eLogicalSideIEnd = 3, + } + /** + * Additional data used in conjunction with an nsRestyleHint to control the + * restyle process. + */ + #[repr(C)] + #[derive(Debug)] + pub struct RestyleHintData { + pub mSelectorsForDescendants: root::nsTArray<*mut root::nsCSSSelector>, + } + #[test] + fn bindgen_test_layout_RestyleHintData() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( RestyleHintData ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( RestyleHintData ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const RestyleHintData ) ) . + mSelectorsForDescendants as * const _ as usize } , + 0usize , concat ! ( + "Alignment of field: " , stringify ! ( RestyleHintData + ) , "::" , stringify ! ( mSelectorsForDescendants ) + )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WeakPtr { + } + pub type WeakPtr_WeakReference = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct SupportsWeakPtr { + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WidgetEvent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WidgetGUIEvent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WidgetInputEvent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WidgetPointerEvent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventFlags { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ShortcutKeyCandidate { + _unused: [u8; 0], + } + pub const FlushType_Frames: root::mozilla::FlushType = + FlushType::Style; + #[repr(u8)] + /** + * This is the enum used by nsIDocument::FlushPendingNotifications to + * decide what to flush. + * + * Please note that if you change these values, you should sync it with the + * flushTypeNames array inside PresShell::FlushPendingNotifications. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum FlushType { + None = 0, + Content = 1, + ContentAndNotify = 2, + Style = 3, + InterruptibleLayout = 4, + Layout = 5, + Display = 6, + Count = 7, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ChangesToFlush { + pub mFlushType: root::mozilla::FlushType, + pub mFlushAnimations: bool, + } + #[test] + fn bindgen_test_layout_ChangesToFlush() { + assert_eq!(::std::mem::size_of::() , 2usize , + concat ! ( "Size of: " , stringify ! ( ChangesToFlush ) + )); + assert_eq! (::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( ChangesToFlush ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ChangesToFlush ) ) . mFlushType + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( ChangesToFlush + ) , "::" , stringify ! ( mFlushType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ChangesToFlush ) ) . + mFlushAnimations as * const _ as usize } , 1usize , + concat ! ( + "Alignment of field: " , stringify ! ( ChangesToFlush + ) , "::" , stringify ! ( mFlushAnimations ) )); + } + impl Clone for ChangesToFlush { + fn clone(&self) -> Self { *self } + } + /** + * EventStates is the class used to represent the event states of nsIContent + * instances. These states are calculated by IntrinsicState() and + * ContentStatesChanged() has to be called when one of them changes thus + * informing the layout/style engine of the change. + * Event states are associated with pseudo-classes. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct EventStates { + pub mStates: root::mozilla::EventStates_InternalType, + } + pub type EventStates_InternalType = u64; + pub type EventStates_ServoType = u64; + #[test] + fn bindgen_test_layout_EventStates() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( EventStates ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( EventStates ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const EventStates ) ) . mStates as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( EventStates ) , + "::" , stringify ! ( mStates ) )); + } + impl Clone for EventStates { + fn clone(&self) -> Self { *self } + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum TraversalRootBehavior { + Normal = 0, + UnstyledChildrenOnly = 1, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum TraversalRestyleBehavior { Normal = 0, ForReconstruct = 1, } + pub const UpdateAnimationsTasks_CSSAnimations: + root::mozilla::UpdateAnimationsTasks = + 1; + pub const UpdateAnimationsTasks_CSSTransitions: + root::mozilla::UpdateAnimationsTasks = + 2; + pub const UpdateAnimationsTasks_EffectProperties: + root::mozilla::UpdateAnimationsTasks = + 4; + pub const UpdateAnimationsTasks_CascadeResults: + root::mozilla::UpdateAnimationsTasks = + 8; + pub type UpdateAnimationsTasks = u8; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum LengthParsingMode { Default = 0, SVG = 1, } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum InheritTarget { + Text = 0, + FirstLetterContinuation = 1, + PlaceholderFrame = 2, + } + #[repr(u8)] + /** + * Enumeration that represents one of the two supported style system backends. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBackendType { None = 0, Gecko = 1, Servo = 2, } + pub type TimeStampValue = u64; + /** + * Instances of this class represent moments in time, or a special + * "null" moment. We do not use the non-monotonic system clock or + * local time, since they can be reset, causing apparent backward + * travel in time, which can confuse algorithms. Instead we measure + * elapsed time according to the system. This time can never go + * backwards (i.e. it never wraps around, at least not in less than + * five million years of system elapsed time). It might not advance + * while the system is sleeping. If TimeStamp::SetNow() is not called + * at all for hours or days, we might not notice the passage of some + * of that time. + * + * We deliberately do not expose a way to convert TimeStamps to some + * particular unit. All you can do is compute a difference between two + * TimeStamps to get a TimeDuration. You can also add a TimeDuration + * to a TimeStamp to get a new TimeStamp. You can't do something + * meaningless like add two TimeStamps. + * + * Internally this is implemented as either a wrapper around + * - high-resolution, monotonic, system clocks if they exist on this + * platform + * - PRIntervalTime otherwise. We detect wraparounds of + * PRIntervalTime and work around them. + * + * This class is similar to C++11's time_point, however it is + * explicitly nullable and provides an IsNull() method. time_point + * is initialized to the clock's epoch and provides a + * time_since_epoch() method that functions similiarly. i.e. + * t.IsNull() is equivalent to t.time_since_epoch() == decltype(t)::duration::zero(); + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct TimeStamp { + /** + * When built with PRIntervalTime, a value of 0 means this instance + * is "null". Otherwise, the low 32 bits represent a PRIntervalTime, + * and the high 32 bits represent a counter of the number of + * rollovers of PRIntervalTime that we've seen. This counter starts + * at 1 to avoid a real time colliding with the "null" value. + * + * PR_INTERVAL_MAX is set at 100,000 ticks per second. So the minimum + * time to wrap around is about 2^64/100000 seconds, i.e. about + * 5,849,424 years. + * + * When using a system clock, a value is system dependent. + */ + pub mValue: root::mozilla::TimeStampValue, + } + #[test] + fn bindgen_test_layout_TimeStamp() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( TimeStamp ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( TimeStamp ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const TimeStamp ) ) . mValue as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( TimeStamp ) , + "::" , stringify ! ( mValue ) )); + } + impl Clone for TimeStamp { + fn clone(&self) -> Self { *self } + } + /** + * Instances of this class represent the length of an interval of time. + * Negative durations are allowed, meaning the end is before the start. + * + * Internally the duration is stored as a int64_t in units of + * PR_TicksPerSecond() when building with NSPR interval timers, or a + * system-dependent unit when building with system clocks. The + * system-dependent unit must be constant, otherwise the semantics of + * this class would be broken. + * + * The ValueCalculator template parameter determines how arithmetic + * operations are performed on the integer count of ticks (mValue). + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct BaseTimeDuration { + pub mValue: i64, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct BaseTimeDuration__SomethingVeryRandomHere { + pub _address: u8, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ErrorResult { + pub _bindgen_opaque_blob: [u64; 4usize], + } + pub type ErrorResult_BaseErrorResult = + root::mozilla::binding_danger::TErrorResult; + #[test] + fn bindgen_test_layout_ErrorResult() { + assert_eq!(::std::mem::size_of::() , 32usize , concat + ! ( "Size of: " , stringify ! ( ErrorResult ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( ErrorResult ) )); + } + impl Clone for ErrorResult { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct OOMReporter { + pub _base: root::mozilla::dom::binding_detail::FastErrorResult, + } + #[test] + fn bindgen_test_layout_OOMReporter() { + assert_eq!(::std::mem::size_of::() , 32usize , concat + ! ( "Size of: " , stringify ! ( OOMReporter ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( OOMReporter ) )); + } + pub mod binding_danger { + #[allow(unused_imports)] + use self::super::super::super::root; + /** + * Templated implementation class for various ErrorResult-like things. The + * instantiations differ only in terms of their cleanup policies (used in the + * destructor), which they can specify via the template argument. Note that + * this means it's safe to reinterpret_cast between the instantiations unless + * you plan to invoke the destructor through such a cast pointer. + * + * A cleanup policy consists of two booleans: whether to assert that we've been + * reported or suppressed, and whether to then go ahead and suppress the + * exception. + */ + #[repr(C)] + #[derive(Debug)] + pub struct TErrorResult { + pub mResult: root::nsresult, + pub __bindgen_anon_1: root::mozilla::binding_danger::TErrorResult__bindgen_ty_1, + pub mMightHaveUnreportedJSException: bool, + pub mUnionState: root::mozilla::binding_danger::TErrorResult_UnionState, + pub _mOwningThread: root::nsAutoOwningThread, + } + pub const TErrorResult_UnionState_HasDOMExceptionInfo: + root::mozilla::binding_danger::TErrorResult_UnionState = + TErrorResult_UnionState::HasMessage; + pub const TErrorResult_UnionState_HasJSException: + root::mozilla::binding_danger::TErrorResult_UnionState = + TErrorResult_UnionState::HasMessage; + pub const TErrorResult_UnionState_HasNothing: + root::mozilla::binding_danger::TErrorResult_UnionState = + TErrorResult_UnionState::HasMessage; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum TErrorResult_UnionState { HasMessage = 0, } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct TErrorResult_Message { + pub _address: u8, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct TErrorResult_DOMExceptionInfo { + pub _address: u8, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct TErrorResult__bindgen_ty_1 { + pub mMessage: root::__BindgenUnionField<*mut root::mozilla::binding_danger::TErrorResult_Message>, + pub mJSException: root::__BindgenUnionField, + pub mDOMExceptionInfo: root::__BindgenUnionField<*mut root::mozilla::binding_danger::TErrorResult_DOMExceptionInfo>, + pub bindgen_union_field: u64, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct JustAssertCleanupPolicy { + pub _address: u8, + } + pub const JustAssertCleanupPolicy_assertHandled: bool = true; + pub const JustAssertCleanupPolicy_suppress: bool = false; + #[test] + fn bindgen_test_layout_JustAssertCleanupPolicy() { + assert_eq!(::std::mem::size_of::() , + 1usize , concat ! ( + "Size of: " , stringify ! ( JustAssertCleanupPolicy + ) )); + assert_eq! (::std::mem::align_of::() + , 1usize , concat ! ( + "Alignment of " , stringify ! ( + JustAssertCleanupPolicy ) )); + } + impl Clone for JustAssertCleanupPolicy { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct AssertAndSuppressCleanupPolicy { + pub _address: u8, + } + pub const AssertAndSuppressCleanupPolicy_assertHandled: bool = + true; + pub const AssertAndSuppressCleanupPolicy_suppress: bool = true; + #[test] + fn bindgen_test_layout_AssertAndSuppressCleanupPolicy() { + assert_eq!(::std::mem::size_of::() + , 1usize , concat ! ( + "Size of: " , stringify ! ( + AssertAndSuppressCleanupPolicy ) )); + assert_eq! (::std::mem::align_of::() + , 1usize , concat ! ( + "Alignment of " , stringify ! ( + AssertAndSuppressCleanupPolicy ) )); + } + impl Clone for AssertAndSuppressCleanupPolicy { + fn clone(&self) -> Self { *self } + } + } + /** + * Superclass for data common to CSSStyleSheet and ServoStyleSheet. + */ + #[repr(C)] + #[derive(Debug)] + pub struct StyleSheet { + pub _base: root::nsIDOMCSSStyleSheet, + pub _base_1: root::nsICSSLoaderObserver, + pub _base_2: root::nsWrapperCache, + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mParent: *mut root::mozilla::StyleSheet, + pub mTitle: ::nsstring::nsStringRepr, + pub mDocument: *mut root::nsIDocument, + pub mOwningNode: *mut root::nsINode, + pub mMedia: root::RefPtr, + pub mNext: root::RefPtr, + pub mParsingMode: root::mozilla::css::SheetParsingMode, + pub mType: root::mozilla::StyleBackendType, + pub mDisabled: bool, + pub mDocumentAssociationMode: root::mozilla::StyleSheet_DocumentAssociationMode, + pub mInner: *mut root::mozilla::StyleSheetInfo, + } + pub type StyleSheet_HasThreadSafeRefCnt = root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleSheet_cycleCollection { + pub _base: root::nsXPCOMCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_StyleSheet_cycleCollection() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( StyleSheet_cycleCollection + ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + StyleSheet_cycleCollection ) )); + } + impl Clone for StyleSheet_cycleCollection { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleSheet_DocumentAssociationMode { + OwnedByDocument = 0, + NotOwnedByDocument = 1, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleSheet_ChildSheetListBuilder { + pub sheetSlot: *mut root::RefPtr, + pub parent: *mut root::mozilla::StyleSheet, + } + #[test] + fn bindgen_test_layout_StyleSheet_ChildSheetListBuilder() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + StyleSheet_ChildSheetListBuilder ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + StyleSheet_ChildSheetListBuilder ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const StyleSheet_ChildSheetListBuilder ) ) + . sheetSlot as * const _ as usize } , 0usize , concat + ! ( + "Alignment of field: " , stringify ! ( + StyleSheet_ChildSheetListBuilder ) , "::" , stringify + ! ( sheetSlot ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const StyleSheet_ChildSheetListBuilder ) ) + . parent as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleSheet_ChildSheetListBuilder ) , "::" , stringify + ! ( parent ) )); + } + impl Clone for StyleSheet_ChildSheetListBuilder { + fn clone(&self) -> Self { *self } + } + extern "C" { + #[link_name = "_ZN7mozilla10StyleSheet21_cycleCollectorGlobalE"] + pub static mut StyleSheet__cycleCollectorGlobal: + root::mozilla::StyleSheet_cycleCollection; + } + #[test] + fn bindgen_test_layout_StyleSheet() { + assert_eq!(::std::mem::size_of::() , 136usize , concat + ! ( "Size of: " , stringify ! ( StyleSheet ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( StyleSheet ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct OriginAttributes { + pub _base: root::mozilla::dom::OriginAttributesDictionary, + } + pub const OriginAttributes_STRIP_FIRST_PARTY_DOMAIN: + root::mozilla::OriginAttributes__bindgen_ty_1 = + OriginAttributes__bindgen_ty_1::STRIP_FIRST_PARTY_DOMAIN; + pub const OriginAttributes_STRIP_USER_CONTEXT_ID: + root::mozilla::OriginAttributes__bindgen_ty_1 = + OriginAttributes__bindgen_ty_1::STRIP_USER_CONTEXT_ID; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum OriginAttributes__bindgen_ty_1 { + STRIP_FIRST_PARTY_DOMAIN = 1, + STRIP_USER_CONTEXT_ID = 2, + } + extern "C" { + #[link_name = + "_ZN7mozilla16OriginAttributes20sFirstPartyIsolationE"] + pub static mut OriginAttributes_sFirstPartyIsolation: bool; + } + extern "C" { + #[link_name = + "_ZN7mozilla16OriginAttributes23sRestrictedOpenerAccessE"] + pub static mut OriginAttributes_sRestrictedOpenerAccess: bool; + } + #[test] + fn bindgen_test_layout_OriginAttributes() { + assert_eq!(::std::mem::size_of::() , 40usize , + concat ! ( + "Size of: " , stringify ! ( OriginAttributes ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( OriginAttributes ) )); + } + pub mod net { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum ReferrerPolicy { + RP_No_Referrer = 2, + RP_Origin = 3, + RP_No_Referrer_When_Downgrade = 1, + RP_Origin_When_Crossorigin = 4, + RP_Unsafe_URL = 5, + RP_Same_Origin = 6, + RP_Strict_Origin = 7, + RP_Strict_Origin_When_Cross_Origin = 8, + RP_Unset = 0, + } + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CORSMode { + CORS_NONE = 0, + CORS_ANONYMOUS = 1, + CORS_USE_CREDENTIALS = 2, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ServoStyleSheet { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct StyleSheetInfo { + _unused: [u8; 0], + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CSSEnabledState { + eForAllContent = 0, + eInUASheets = 1, + eInChrome = 2, + eIgnoreEnabledState = 255, + } + pub type CSSPseudoElementTypeBase = u8; + pub const CSSPseudoElementType_InheritingAnonBox: + root::mozilla::CSSPseudoElementType = + CSSPseudoElementType::Count; + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CSSPseudoElementType { + after = 0, + before = 1, + backdrop = 2, + cue = 3, + firstLetter = 4, + firstLine = 5, + mozSelection = 6, + mozFocusInner = 7, + mozFocusOuter = 8, + mozListBullet = 9, + mozListNumber = 10, + mozMathAnonymous = 11, + mozNumberWrapper = 12, + mozNumberText = 13, + mozNumberSpinBox = 14, + mozNumberSpinUp = 15, + mozNumberSpinDown = 16, + mozProgressBar = 17, + mozRangeTrack = 18, + mozRangeProgress = 19, + mozRangeThumb = 20, + mozMeterBar = 21, + mozPlaceholder = 22, + placeholder = 23, + mozColorSwatch = 24, + Count = 25, + NonInheritingAnonBox = 26, + XULTree = 27, + NotPseudo = 28, + MAX = 29, + } + /** + * Smart pointer class that can hold a pointer to either an nsStyleSet + * or a ServoStyleSet. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleSetHandle { + pub mPtr: root::mozilla::StyleSetHandle_Ptr, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleSetHandle_Ptr { + pub mValue: usize, + } + #[test] + fn bindgen_test_layout_StyleSetHandle_Ptr() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( StyleSetHandle_Ptr ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( StyleSetHandle_Ptr ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleSetHandle_Ptr ) ) . mValue + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleSetHandle_Ptr ) , "::" , stringify ! ( mValue ) + )); + } + impl Clone for StyleSetHandle_Ptr { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_StyleSetHandle() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( "Size of: " , stringify ! ( StyleSetHandle ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StyleSetHandle ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleSetHandle ) ) . mPtr as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleSetHandle + ) , "::" , stringify ! ( mPtr ) )); + } + impl Clone for StyleSetHandle { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventChainVisitor { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventChainPostVisitor { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventChainPreVisitor { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventListenerManager { + _unused: [u8; 0], + } + #[test] + fn __bindgen_test_layout_StaticRefPtr_instantiation_118206() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::StaticRefPtr + ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! + ( + root::mozilla::StaticRefPtr + ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct URLExtraData { + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + pub mBaseURI: root::nsCOMPtr, + pub mReferrer: root::nsCOMPtr, + pub mPrincipal: root::nsCOMPtr, + } + pub type URLExtraData_HasThreadSafeRefCnt = root::mozilla::TrueType; + extern "C" { + #[link_name = "_ZN7mozilla12URLExtraData6sDummyE"] + pub static mut URLExtraData_sDummy: + root::mozilla::StaticRefPtr; + } + #[test] + fn bindgen_test_layout_URLExtraData() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( "Size of: " , stringify ! ( URLExtraData ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( URLExtraData ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLExtraData ) ) . mRefCnt as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( URLExtraData ) + , "::" , stringify ! ( mRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLExtraData ) ) . mBaseURI as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( URLExtraData ) + , "::" , stringify ! ( mBaseURI ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLExtraData ) ) . mReferrer as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( URLExtraData ) + , "::" , stringify ! ( mReferrer ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLExtraData ) ) . mPrincipal as + * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( URLExtraData ) + , "::" , stringify ! ( mPrincipal ) )); + } + pub mod widget { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct IMEState { + _unused: [u8; 0], + } + } + pub type RawSelectionType = ::std::os::raw::c_short; + #[repr(i16)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum SelectionType { + eInvalid = -1, + eNone = 0, + eNormal = 1, + eSpellCheck = 2, + eIMERawClause = 4, + eIMESelectedRawClause = 8, + eIMEConvertedClause = 16, + eIMESelectedClause = 32, + eAccessibility = 64, + eFind = 128, + eURLSecondary = 256, + eURLStrikeout = 512, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct CSSPixel { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_CSSPixel() { + assert_eq!(::std::mem::size_of::() , 1usize , concat ! ( + "Size of: " , stringify ! ( CSSPixel ) )); + assert_eq! (::std::mem::align_of::() , 1usize , concat ! + ( "Alignment of " , stringify ! ( CSSPixel ) )); + } + impl Clone for CSSPixel { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct LayoutDevicePixel { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_LayoutDevicePixel() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of: " , stringify ! ( LayoutDevicePixel ) )); + assert_eq! (::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( LayoutDevicePixel ) + )); + } + impl Clone for LayoutDevicePixel { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct LayerPixel { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_LayerPixel() { + assert_eq!(::std::mem::size_of::() , 1usize , concat ! + ( "Size of: " , stringify ! ( LayerPixel ) )); + assert_eq! (::std::mem::align_of::() , 1usize , concat + ! ( "Alignment of " , stringify ! ( LayerPixel ) )); + } + impl Clone for LayerPixel { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ScreenPixel { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_ScreenPixel() { + assert_eq!(::std::mem::size_of::() , 1usize , concat + ! ( "Size of: " , stringify ! ( ScreenPixel ) )); + assert_eq! (::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( ScreenPixel ) )); + } + impl Clone for ScreenPixel { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ParentLayerPixel { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_ParentLayerPixel() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of: " , stringify ! ( ParentLayerPixel ) )); + assert_eq! (::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( ParentLayerPixel ) )); + } + impl Clone for ParentLayerPixel { + fn clone(&self) -> Self { *self } + } + pub type CSSPoint = [u32; 2usize]; + pub type CSSIntPoint = [u32; 2usize]; + pub type CSSSize = [u32; 2usize]; + pub type CSSRect = [u32; 4usize]; + pub type LayoutDeviceIntPoint = [u32; 2usize]; + pub type LayoutDeviceIntSize = [u32; 2usize]; + pub type LayoutDeviceIntRect = [u32; 4usize]; + pub type ScreenIntSize = u8; + pub type ScreenMargin = [u32; 4usize]; + pub type ParentLayerRect = [u32; 4usize]; + pub type ParentLayerIntRect = [u32; 4usize]; + pub type CSSToLayoutDeviceScale = u32; + pub type CSSToParentLayerScale2D = [u32; 2usize]; + pub type LayoutDeviceToLayerScale2D = [u32; 2usize]; + pub type ScreenToLayerScale2D = [u32; 2usize]; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AccessibleCaretEventHub { + _unused: [u8; 0], + } + pub mod a11y { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DocAccessible { + _unused: [u8; 0], + } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct FramePropertyDescriptorUntyped { + pub mDestructor: root::mozilla::FramePropertyDescriptorUntyped_UntypedDestructor, + pub mDestructorWithFrame: root::mozilla::FramePropertyDescriptorUntyped_UntypedDestructorWithFrame, + } + /** + * mDestructor will be called if it's non-null. + */ + pub type FramePropertyDescriptorUntyped_UntypedDestructor = + ::std::option::Option; + /** + * mDestructorWithFrame will be called if it's non-null and mDestructor + * is null. WARNING: The frame passed to mDestructorWithFrame may + * be a dangling frame pointer, if this is being called during + * presshell teardown. Do not use it except to compare against + * other frame pointers. No frame will have been allocated with + * the same address yet. + */ + pub type FramePropertyDescriptorUntyped_UntypedDestructorWithFrame = + ::std::option::Option; + #[test] + fn bindgen_test_layout_FramePropertyDescriptorUntyped() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + FramePropertyDescriptorUntyped ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + FramePropertyDescriptorUntyped ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyDescriptorUntyped ) + ) . mDestructor as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + FramePropertyDescriptorUntyped ) , "::" , stringify ! + ( mDestructor ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyDescriptorUntyped ) + ) . mDestructorWithFrame as * const _ as usize } , + 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + FramePropertyDescriptorUntyped ) , "::" , stringify ! + ( mDestructorWithFrame ) )); + } + impl Clone for FramePropertyDescriptorUntyped { + fn clone(&self) -> Self { *self } + } + /** + * A pointer to a FramePropertyDescriptor serves as a unique property ID. + * The FramePropertyDescriptor stores metadata about the property. + * Currently the only metadata is a destructor function. The destructor + * function is called on property values when they are overwritten or + * deleted. + * + * To use this class, declare a global (i.e., file, class or function-scope + * static member) FramePropertyDescriptor and pass its address as + * aProperty in the FramePropertyTable methods. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct FramePropertyDescriptor { + pub _base: root::mozilla::FramePropertyDescriptorUntyped, + } + pub type FramePropertyDescriptor_Destructor = + ::std::option::Option; + pub type FramePropertyDescriptor_DestructorWithFrame = + ::std::option::Option; + /** + * The FramePropertyTable is optimized for storing 0 or 1 properties on + * a given frame. Storing very large numbers of properties on a single + * frame will not be efficient. + * + * Property values are passed as void* but do not actually have to be + * valid pointers. You can use NS_INT32_TO_PTR/NS_PTR_TO_INT32 to + * store int32_t values. Null/zero values can be stored and retrieved. + * Of course, the destructor function (if any) must handle such values + * correctly. + */ + #[repr(C)] + #[derive(Debug)] + pub struct FramePropertyTable { + pub mEntries: [u64; 6usize], + pub mLastFrame: *const root::nsIFrame, + pub mLastEntry: *mut root::mozilla::FramePropertyTable_Entry, + } + pub type FramePropertyTable_Descriptor = + *const root::mozilla::FramePropertyDescriptor; + pub type FramePropertyTable_UntypedDescriptor = + *const root::mozilla::FramePropertyDescriptorUntyped; + pub type FramePropertyTable_PropertyType = + root::mozilla::detail::FramePropertyTypeHelper; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct FramePropertyTable_ReinterpretHelper { + pub _address: u8, + } + /** + * Stores a property descriptor/value pair. It can also be used to + * store an nsTArray of PropertyValues. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct FramePropertyTable_PropertyValue { + pub mProperty: root::mozilla::FramePropertyTable_UntypedDescriptor, + pub mValue: *mut ::std::os::raw::c_void, + } + #[test] + fn bindgen_test_layout_FramePropertyTable_PropertyValue() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + FramePropertyTable_PropertyValue ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + FramePropertyTable_PropertyValue ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const FramePropertyTable_PropertyValue ) ) + . mProperty as * const _ as usize } , 0usize , concat + ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable_PropertyValue ) , "::" , stringify + ! ( mProperty ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const FramePropertyTable_PropertyValue ) ) + . mValue as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable_PropertyValue ) , "::" , stringify + ! ( mValue ) )); + } + impl Clone for FramePropertyTable_PropertyValue { + fn clone(&self) -> Self { *self } + } + /** + * Used with an array of PropertyValues to allow lookups that compare + * only on the FramePropertyDescriptor. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct FramePropertyTable_PropertyComparator { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_FramePropertyTable_PropertyComparator() { + assert_eq!(::std::mem::size_of::() + , 1usize , concat ! ( + "Size of: " , stringify ! ( + FramePropertyTable_PropertyComparator ) )); + assert_eq! (::std::mem::align_of::() + , 1usize , concat ! ( + "Alignment of " , stringify ! ( + FramePropertyTable_PropertyComparator ) )); + } + impl Clone for FramePropertyTable_PropertyComparator { + fn clone(&self) -> Self { *self } + } + /** + * Our hashtable entry. The key is an nsIFrame*, the value is a + * PropertyValue representing one or more property/value pairs. + */ + #[repr(C)] + #[derive(Debug)] + pub struct FramePropertyTable_Entry { + pub _base: root::nsPtrHashKey, + pub mProp: root::mozilla::FramePropertyTable_PropertyValue, + } + #[test] + fn bindgen_test_layout_FramePropertyTable_Entry() { + assert_eq!(::std::mem::size_of::() , + 32usize , concat ! ( + "Size of: " , stringify ! ( FramePropertyTable_Entry ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + FramePropertyTable_Entry ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyTable_Entry ) ) . + mProp as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable_Entry ) , "::" , stringify ! ( + mProp ) )); + } + #[test] + fn bindgen_test_layout_FramePropertyTable() { + assert_eq!(::std::mem::size_of::() , 64usize , + concat ! ( + "Size of: " , stringify ! ( FramePropertyTable ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( FramePropertyTable ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyTable ) ) . mEntries + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable ) , "::" , stringify ! ( mEntries ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyTable ) ) . + mLastFrame as * const _ as usize } , 48usize , concat + ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable ) , "::" , stringify ! ( mLastFrame + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyTable ) ) . + mLastEntry as * const _ as usize } , 56usize , concat + ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable ) , "::" , stringify ! ( mLastEntry + ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct Runnable { + pub _base: root::nsIRunnable, + pub _base_1: root::nsINamed, + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mName: *const ::std::os::raw::c_char, + } + pub type Runnable_HasThreadSafeRefCnt = root::mozilla::TrueType; + #[test] + fn bindgen_test_layout_Runnable() { + assert_eq!(::std::mem::size_of::() , 40usize , concat ! + ( "Size of: " , stringify ! ( Runnable ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( Runnable ) )); + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum TaskCategory { + UI = 0, + Network = 1, + Timer = 2, + Worker = 3, + IdleCallback = 4, + RefreshDriver = 5, + GarbageCollection = 6, + Other = 7, + Count = 8, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AbstractThread { + _unused: [u8; 0], + } + #[repr(i16)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum UseCounter { + eUseCounter_UNKNOWN = -1, + eUseCounter_SVGSVGElement_getElementById = 0, + eUseCounter_SVGSVGElement_currentScale_getter = 1, + eUseCounter_SVGSVGElement_currentScale_setter = 2, + eUseCounter_property_Fill = 3, + eUseCounter_property_FillOpacity = 4, + eUseCounter_PushManager_subscribe = 5, + eUseCounter_PushSubscription_unsubscribe = 6, + eUseCounter_Window_sidebar_getter = 7, + eUseCounter_Window_sidebar_setter = 8, + eUseCounter_External_addSearchEngine = 9, + eUseCounter_OfflineResourceList_swapCache = 10, + eUseCounter_OfflineResourceList_update = 11, + eUseCounter_OfflineResourceList_status_getter = 12, + eUseCounter_OfflineResourceList_status_setter = 13, + eUseCounter_OfflineResourceList_onchecking_getter = 14, + eUseCounter_OfflineResourceList_onchecking_setter = 15, + eUseCounter_OfflineResourceList_onerror_getter = 16, + eUseCounter_OfflineResourceList_onerror_setter = 17, + eUseCounter_OfflineResourceList_onnoupdate_getter = 18, + eUseCounter_OfflineResourceList_onnoupdate_setter = 19, + eUseCounter_OfflineResourceList_ondownloading_getter = 20, + eUseCounter_OfflineResourceList_ondownloading_setter = 21, + eUseCounter_OfflineResourceList_onprogress_getter = 22, + eUseCounter_OfflineResourceList_onprogress_setter = 23, + eUseCounter_OfflineResourceList_onupdateready_getter = 24, + eUseCounter_OfflineResourceList_onupdateready_setter = 25, + eUseCounter_OfflineResourceList_oncached_getter = 26, + eUseCounter_OfflineResourceList_oncached_setter = 27, + eUseCounter_OfflineResourceList_onobsolete_getter = 28, + eUseCounter_OfflineResourceList_onobsolete_setter = 29, + eUseCounter_IDBDatabase_createMutableFile = 30, + eUseCounter_IDBDatabase_mozCreateFileHandle = 31, + eUseCounter_IDBMutableFile_open = 32, + eUseCounter_IDBMutableFile_getFile = 33, + eUseCounter_DataTransfer_addElement = 34, + eUseCounter_DataTransfer_mozItemCount_getter = 35, + eUseCounter_DataTransfer_mozItemCount_setter = 36, + eUseCounter_DataTransfer_mozCursor_getter = 37, + eUseCounter_DataTransfer_mozCursor_setter = 38, + eUseCounter_DataTransfer_mozTypesAt = 39, + eUseCounter_DataTransfer_mozClearDataAt = 40, + eUseCounter_DataTransfer_mozSetDataAt = 41, + eUseCounter_DataTransfer_mozGetDataAt = 42, + eUseCounter_DataTransfer_mozUserCancelled_getter = 43, + eUseCounter_DataTransfer_mozUserCancelled_setter = 44, + eUseCounter_DataTransfer_mozSourceNode_getter = 45, + eUseCounter_DataTransfer_mozSourceNode_setter = 46, + eUseCounter_GetAttributeNode = 47, + eUseCounter_SetAttributeNode = 48, + eUseCounter_GetAttributeNodeNS = 49, + eUseCounter_SetAttributeNodeNS = 50, + eUseCounter_RemoveAttributeNode = 51, + eUseCounter_CreateAttribute = 52, + eUseCounter_CreateAttributeNS = 53, + eUseCounter_NodeValue = 54, + eUseCounter_TextContent = 55, + eUseCounter_EnablePrivilege = 56, + eUseCounter_DOMExceptionCode = 57, + eUseCounter_NoExposedProps = 58, + eUseCounter_MutationEvent = 59, + eUseCounter_Components = 60, + eUseCounter_PrefixedVisibilityAPI = 61, + eUseCounter_NodeIteratorDetach = 62, + eUseCounter_LenientThis = 63, + eUseCounter_GetPreventDefault = 64, + eUseCounter_GetSetUserData = 65, + eUseCounter_MozGetAsFile = 66, + eUseCounter_UseOfCaptureEvents = 67, + eUseCounter_UseOfReleaseEvents = 68, + eUseCounter_UseOfDOM3LoadMethod = 69, + eUseCounter_ChromeUseOfDOM3LoadMethod = 70, + eUseCounter_ShowModalDialog = 71, + eUseCounter_Window_Content = 72, + eUseCounter_SyncXMLHttpRequest = 73, + eUseCounter_Window_Controllers = 74, + eUseCounter_ImportXULIntoContent = 75, + eUseCounter_PannerNodeDoppler = 76, + eUseCounter_NavigatorGetUserMedia = 77, + eUseCounter_WebrtcDeprecatedPrefix = 78, + eUseCounter_RTCPeerConnectionGetStreams = 79, + eUseCounter_AppCache = 80, + eUseCounter_PrefixedImageSmoothingEnabled = 81, + eUseCounter_PrefixedFullscreenAPI = 82, + eUseCounter_LenientSetter = 83, + eUseCounter_FileLastModifiedDate = 84, + eUseCounter_ImageBitmapRenderingContext_TransferImageBitmap = 85, + eUseCounter_URLCreateObjectURL_MediaStream = 86, + eUseCounter_XMLBaseAttribute = 87, + eUseCounter_XMLBaseAttributeForStyleAttr = 88, + eUseCounter_Count = 89, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct PendingAnimationTracker { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct ScrollbarStyles { + pub mHorizontal: u8, + pub mVertical: u8, + pub mScrollBehavior: u8, + pub mScrollSnapTypeX: u8, + pub mScrollSnapTypeY: u8, + pub mScrollSnapPointsX: root::nsStyleCoord, + pub mScrollSnapPointsY: root::nsStyleCoord, + pub mScrollSnapDestinationX: root::nsStyleCoord_CalcValue, + pub mScrollSnapDestinationY: root::nsStyleCoord_CalcValue, + } + #[test] + fn bindgen_test_layout_ScrollbarStyles() { + assert_eq!(::std::mem::size_of::() , 64usize , + concat ! ( + "Size of: " , stringify ! ( ScrollbarStyles ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( ScrollbarStyles ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . mHorizontal + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mHorizontal ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . mVertical + as * const _ as usize } , 1usize , concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mVertical ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollBehavior as * const _ as usize } , 2usize , + concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollBehavior ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapTypeX as * const _ as usize } , 3usize , + concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapTypeX ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapTypeY as * const _ as usize } , 4usize , + concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapTypeY ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapPointsX as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapPointsX ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapPointsY as * const _ as usize } , 24usize , + concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapPointsY ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapDestinationX as * const _ as usize } , + 40usize , concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapDestinationX ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapDestinationY as * const _ as usize } , + 52usize , concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapDestinationY ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct LangGroupFontPrefs { + pub mLangGroup: root::nsCOMPtr, + pub mMinimumFontSize: root::nscoord, + pub mDefaultVariableFont: root::nsFont, + pub mDefaultFixedFont: root::nsFont, + pub mDefaultSerifFont: root::nsFont, + pub mDefaultSansSerifFont: root::nsFont, + pub mDefaultMonospaceFont: root::nsFont, + pub mDefaultCursiveFont: root::nsFont, + pub mDefaultFantasyFont: root::nsFont, + pub mNext: root::nsAutoPtr, + } + #[test] + fn bindgen_test_layout_LangGroupFontPrefs() { + assert_eq!(::std::mem::size_of::() , 640usize + , concat ! ( + "Size of: " , stringify ! ( LangGroupFontPrefs ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( LangGroupFontPrefs ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mLangGroup as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( mLangGroup + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mMinimumFontSize as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mMinimumFontSize ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultVariableFont as * const _ as usize } , 16usize + , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultVariableFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultFixedFont as * const _ as usize } , 104usize , + concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultFixedFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultSerifFont as * const _ as usize } , 192usize , + concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultSerifFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultSansSerifFont as * const _ as usize } , + 280usize , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultSansSerifFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultMonospaceFont as * const _ as usize } , + 368usize , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultMonospaceFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultCursiveFont as * const _ as usize } , 456usize + , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultCursiveFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultFantasyFont as * const _ as usize } , 544usize + , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultFantasyFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . mNext as + * const _ as usize } , 632usize , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( mNext ) + )); + } + /** + * Some functionality that has historically lived on nsPresContext does not + * actually need to be per-document. This singleton class serves as a host + * for that functionality. We delegate to it from nsPresContext where + * appropriate, and use it standalone in some cases as well. + */ + #[repr(C)] + #[derive(Debug)] + pub struct StaticPresData { + pub mLangService: root::nsCOMPtr, + pub mBorderWidthTable: [root::nscoord; 3usize], + pub mStaticLangGroupFontPrefs: root::mozilla::LangGroupFontPrefs, + } + #[test] + fn bindgen_test_layout_StaticPresData() { + assert_eq!(::std::mem::size_of::() , 664usize , + concat ! ( "Size of: " , stringify ! ( StaticPresData ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StaticPresData ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StaticPresData ) ) . mLangService + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( StaticPresData + ) , "::" , stringify ! ( mLangService ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StaticPresData ) ) . + mBorderWidthTable as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( StaticPresData + ) , "::" , stringify ! ( mBorderWidthTable ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StaticPresData ) ) . + mStaticLangGroupFontPrefs as * const _ as usize } , + 24usize , concat ! ( + "Alignment of field: " , stringify ! ( StaticPresData + ) , "::" , stringify ! ( mStaticLangGroupFontPrefs ) + )); + } + #[repr(C)] + pub struct EffectCompositor { + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mPresContext: *mut root::nsPresContext, + pub mElementsToRestyle: [u64; 12usize], + pub mRuleProcessors: [u64; 4usize], + } + pub type EffectCompositor_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct EffectCompositor_cycleCollection { + pub _base: root::nsCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_EffectCompositor_cycleCollection() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + EffectCompositor_cycleCollection ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + EffectCompositor_cycleCollection ) )); + } + impl Clone for EffectCompositor_cycleCollection { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum EffectCompositor_CascadeLevel { + Animations = 0, + Transitions = 1, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum EffectCompositor_RestyleType { + Throttled = 0, + Standard = 1, + Layer = 2, + } + #[repr(C)] + #[derive(Debug)] + pub struct EffectCompositor_AnimationStyleRuleProcessor { + pub _base: root::nsIStyleRuleProcessor, + pub mRefCnt: root::nsAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mCompositor: *mut root::mozilla::EffectCompositor, + pub mCascadeLevel: root::mozilla::EffectCompositor_CascadeLevel, + } + pub type EffectCompositor_AnimationStyleRuleProcessor_HasThreadSafeRefCnt + = root::mozilla::FalseType; + #[test] + fn bindgen_test_layout_EffectCompositor_AnimationStyleRuleProcessor() { + assert_eq!(::std::mem::size_of::() + , 40usize , concat ! ( + "Size of: " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const + EffectCompositor_AnimationStyleRuleProcessor ) ) . + mRefCnt as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) , "::" + , stringify ! ( mRefCnt ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const + EffectCompositor_AnimationStyleRuleProcessor ) ) . + _mOwningThread as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) , "::" + , stringify ! ( _mOwningThread ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const + EffectCompositor_AnimationStyleRuleProcessor ) ) . + mCompositor as * const _ as usize } , 24usize , concat + ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) , "::" + , stringify ! ( mCompositor ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const + EffectCompositor_AnimationStyleRuleProcessor ) ) . + mCascadeLevel as * const _ as usize } , 32usize , + concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) , "::" + , stringify ! ( mCascadeLevel ) )); + } + extern "C" { + #[link_name = + "_ZN7mozilla16EffectCompositor21_cycleCollectorGlobalE"] + pub static mut EffectCompositor__cycleCollectorGlobal: + root::mozilla::EffectCompositor_cycleCollection; + } + pub const EffectCompositor_kCascadeLevelCount: usize = 2; + #[test] + fn bindgen_test_layout_EffectCompositor() { + assert_eq!(::std::mem::size_of::() , 152usize , + concat ! ( + "Size of: " , stringify ! ( EffectCompositor ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( EffectCompositor ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const EffectCompositor ) ) . mRefCnt as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor ) , "::" , stringify ! ( mRefCnt ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const EffectCompositor ) ) . + _mOwningThread as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor ) , "::" , stringify ! ( + _mOwningThread ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const EffectCompositor ) ) . + mPresContext as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor ) , "::" , stringify ! ( mPresContext + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const EffectCompositor ) ) . + mElementsToRestyle as * const _ as usize } , 24usize , + concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor ) , "::" , stringify ! ( + mElementsToRestyle ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const EffectCompositor ) ) . + mRuleProcessors as * const _ as usize } , 120usize , + concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor ) , "::" , stringify ! ( + mRuleProcessors ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventStateManager { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct CounterStyleManager { + pub mRefCnt: root::nsAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mPresContext: *mut root::nsPresContext, + pub mCacheTable: [u64; 6usize], + } + pub type CounterStyleManager_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[test] + fn bindgen_test_layout_CounterStyleManager() { + assert_eq!(::std::mem::size_of::() , 72usize + , concat ! ( + "Size of: " , stringify ! ( CounterStyleManager ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( CounterStyleManager ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const CounterStyleManager ) ) . mRefCnt + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + CounterStyleManager ) , "::" , stringify ! ( mRefCnt ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const CounterStyleManager ) ) . + _mOwningThread as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + CounterStyleManager ) , "::" , stringify ! ( + _mOwningThread ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CounterStyleManager ) ) . + mPresContext as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + CounterStyleManager ) , "::" , stringify ! ( + mPresContext ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CounterStyleManager ) ) . + mCacheTable as * const _ as usize } , 24usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CounterStyleManager ) , "::" , stringify ! ( + mCacheTable ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct RestyleManager { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DeadlockDetector { + pub _address: u8, + } + /** + * BlockingResourceBase + * Base class of resources that might block clients trying to acquire them. + * Does debugging and deadlock detection in DEBUG builds. + **/ + #[repr(C)] + #[derive(Debug)] + pub struct BlockingResourceBase { + /** + * mChainPrev + * A series of resource acquisitions creates a chain of orders. This + * chain is implemented as a linked list; |mChainPrev| points to the + * resource most recently Acquire()'d before this one. + **/ + pub mChainPrev: *mut root::mozilla::BlockingResourceBase, + /** + * mName + * A descriptive name for this resource. Used in error + * messages etc. + */ + pub mName: *const ::std::os::raw::c_char, + /** + * mType + * The more specific type of this resource. Used to implement + * special semantics (e.g., reentrancy of monitors). + **/ + pub mType: root::mozilla::BlockingResourceBase_BlockingResourceType, + /** + * mAcquired + * Indicates if this resource is currently acquired. + */ + pub mAcquired: root::mozilla::BlockingResourceBase_AcquisitionState, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum BlockingResourceBase_BlockingResourceType { + eMutex = 0, + eReentrantMonitor = 1, + eCondVar = 2, + } + pub type BlockingResourceBase_DDT = root::mozilla::DeadlockDetector; + pub type BlockingResourceBase_AcquisitionState = bool; + extern "C" { + #[link_name = + "_ZN7mozilla20BlockingResourceBase17kResourceTypeNameE"] + pub static mut BlockingResourceBase_kResourceTypeName: + [*const ::std::os::raw::c_char; 0usize]; + } + extern "C" { + #[link_name = "_ZN7mozilla20BlockingResourceBase9sCallOnceE"] + pub static mut BlockingResourceBase_sCallOnce: + root::PRCallOnceType; + } + extern "C" { + #[link_name = + "_ZN7mozilla20BlockingResourceBase26sResourceAcqnChainFrontTPIE"] + pub static mut BlockingResourceBase_sResourceAcqnChainFrontTPI: + ::std::os::raw::c_uint; + } + extern "C" { + #[link_name = + "_ZN7mozilla20BlockingResourceBase17sDeadlockDetectorE"] + pub static mut BlockingResourceBase_sDeadlockDetector: + *mut root::mozilla::BlockingResourceBase_DDT; + } + #[test] + fn bindgen_test_layout_BlockingResourceBase() { + assert_eq!(::std::mem::size_of::() , 24usize + , concat ! ( + "Size of: " , stringify ! ( BlockingResourceBase ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( BlockingResourceBase ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const BlockingResourceBase ) ) . + mChainPrev as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + BlockingResourceBase ) , "::" , stringify ! ( + mChainPrev ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const BlockingResourceBase ) ) . mName + as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + BlockingResourceBase ) , "::" , stringify ! ( mName ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const BlockingResourceBase ) ) . mType + as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + BlockingResourceBase ) , "::" , stringify ! ( mType ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const BlockingResourceBase ) ) . + mAcquired as * const _ as usize } , 20usize , concat ! + ( + "Alignment of field: " , stringify ! ( + BlockingResourceBase ) , "::" , stringify ! ( + mAcquired ) )); + } + /** + * OffTheBooksMutex is identical to Mutex, except that OffTheBooksMutex doesn't + * include leak checking. Sometimes you want to intentionally "leak" a mutex + * until shutdown; in these cases, OffTheBooksMutex is for you. + */ + #[repr(C)] + #[derive(Debug)] + pub struct OffTheBooksMutex { + pub _base: root::mozilla::detail::MutexImpl, + pub _base_1: root::mozilla::BlockingResourceBase, + pub mOwningThread: *mut root::PRThread, + } + #[test] + fn bindgen_test_layout_OffTheBooksMutex() { + assert_eq!(::std::mem::size_of::() , 72usize , + concat ! ( + "Size of: " , stringify ! ( OffTheBooksMutex ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( OffTheBooksMutex ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OffTheBooksMutex ) ) . + mOwningThread as * const _ as usize } , 64usize , + concat ! ( + "Alignment of field: " , stringify ! ( + OffTheBooksMutex ) , "::" , stringify ! ( + mOwningThread ) )); + } + /** + * Mutex + * When possible, use MutexAutoLock/MutexAutoUnlock to lock/unlock this + * mutex within a scope, instead of calling Lock/Unlock directly. + */ + #[repr(C)] + #[derive(Debug)] + pub struct Mutex { + pub _base: root::mozilla::OffTheBooksMutex, + } + #[test] + fn bindgen_test_layout_Mutex() { + assert_eq!(::std::mem::size_of::() , 72usize , concat ! ( + "Size of: " , stringify ! ( Mutex ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( Mutex ) )); + } + pub mod image { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ImageURL { + _unused: [u8; 0], + } + /** + * An ImageLib cache entry key. + * + * We key the cache on the initial URI (before any redirects), with some + * canonicalization applied. See ComputeHash() for the details. + * Controlled documents do not share their cache entries with + * non-controlled documents, or other controlled documents. + */ + #[repr(C)] + #[derive(Debug)] + pub struct ImageCacheKey { + pub mURI: root::RefPtr, + pub mBlobSerial: [u64; 2usize], + pub mOriginAttributes: root::mozilla::OriginAttributes, + pub mControlledDocument: *mut ::std::os::raw::c_void, + pub mHash: u32, + pub mIsChrome: bool, + } + #[test] + fn bindgen_test_layout_ImageCacheKey() { + assert_eq!(::std::mem::size_of::() , 80usize , + concat ! ( + "Size of: " , stringify ! ( ImageCacheKey ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( ImageCacheKey ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . mURI as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( mURI ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . + mBlobSerial as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( mBlobSerial + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . + mOriginAttributes as * const _ as usize } , + 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( + mOriginAttributes ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . + mControlledDocument as * const _ as usize } , + 64usize , concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( + mControlledDocument ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . mHash as + * const _ as usize } , 72usize , concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( mHash ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . mIsChrome + as * const _ as usize } , 76usize , concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( mIsChrome ) + )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Image { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ProgressTracker { + _unused: [u8; 0], + } + #[repr(C)] + pub struct IProgressObserver__bindgen_vtable(::std::os::raw::c_void); + /** + * An interface for observing changes to image state, as reported by + * ProgressTracker. + * + * This is the ImageLib-internal version of imgINotificationObserver, + * essentially, with implementation details that code outside of ImageLib + * shouldn't see. + * + * XXX(seth): It's preferable to avoid adding anything to this interface if + * possible. In the long term, it would be ideal to get to a place where we can + * just use the imgINotificationObserver interface internally as well. + */ + #[repr(C)] + #[derive(Debug)] + pub struct IProgressObserver { + pub vtable_: *const IProgressObserver__bindgen_vtable, + pub _base: u64, + } + #[test] + fn bindgen_test_layout_IProgressObserver() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( IProgressObserver ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( IProgressObserver + ) )); + } + } + pub type CounterValue = i32; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct NegativeType { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct PadType { + _unused: [u8; 0], + } + #[repr(C)] + pub struct CounterStyle__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug, Copy)] + pub struct CounterStyle { + pub vtable_: *const CounterStyle__bindgen_vtable, + pub mStyle: i32, + } + #[test] + fn bindgen_test_layout_CounterStyle() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( "Size of: " , stringify ! ( CounterStyle ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( CounterStyle ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CounterStyle ) ) . mStyle as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( CounterStyle ) + , "::" , stringify ! ( mStyle ) )); + } + impl Clone for CounterStyle { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Position { + pub mXPosition: root::mozilla::Position_Coord, + pub mYPosition: root::mozilla::Position_Coord, + } + pub type Position_Coord = root::nsStyleCoord_CalcValue; + #[test] + fn bindgen_test_layout_Position() { + assert_eq!(::std::mem::size_of::() , 24usize , concat ! + ( "Size of: " , stringify ! ( Position ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat ! + ( "Alignment of " , stringify ! ( Position ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Position ) ) . mXPosition as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( Position ) , + "::" , stringify ! ( mXPosition ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Position ) ) . mYPosition as * + const _ as usize } , 12usize , concat ! ( + "Alignment of field: " , stringify ! ( Position ) , + "::" , stringify ! ( mYPosition ) )); + } + impl Clone for Position { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct StyleTransition { + pub mTimingFunction: root::nsTimingFunction, + pub mDuration: f32, + pub mDelay: f32, + pub mProperty: root::nsCSSPropertyID, + pub mUnknownProperty: root::nsCOMPtr, + } + #[test] + fn bindgen_test_layout_StyleTransition() { + assert_eq!(::std::mem::size_of::() , 40usize , + concat ! ( + "Size of: " , stringify ! ( StyleTransition ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StyleTransition ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleTransition ) ) . + mTimingFunction as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( StyleTransition + ) , "::" , stringify ! ( mTimingFunction ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleTransition ) ) . mDuration + as * const _ as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleTransition + ) , "::" , stringify ! ( mDuration ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleTransition ) ) . mDelay as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleTransition + ) , "::" , stringify ! ( mDelay ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleTransition ) ) . mProperty + as * const _ as usize } , 28usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleTransition + ) , "::" , stringify ! ( mProperty ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleTransition ) ) . + mUnknownProperty as * const _ as usize } , 32usize , + concat ! ( + "Alignment of field: " , stringify ! ( StyleTransition + ) , "::" , stringify ! ( mUnknownProperty ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct StyleAnimation { + pub mTimingFunction: root::nsTimingFunction, + pub mDuration: f32, + pub mDelay: f32, + pub mName: ::nsstring::nsStringRepr, + pub mDirection: root::mozilla::dom::PlaybackDirection, + pub mFillMode: root::mozilla::dom::FillMode, + pub mPlayState: u8, + pub mIterationCount: f32, + } + #[test] + fn bindgen_test_layout_StyleAnimation() { + assert_eq!(::std::mem::size_of::() , 56usize , + concat ! ( "Size of: " , stringify ! ( StyleAnimation ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StyleAnimation ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . + mTimingFunction as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mTimingFunction ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mDuration as + * const _ as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mDuration ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mDelay as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mDelay ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mName as * + const _ as usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mDirection + as * const _ as usize } , 48usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mDirection ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mFillMode as + * const _ as usize } , 49usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mFillMode ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mPlayState + as * const _ as usize } , 50usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mPlayState ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . + mIterationCount as * const _ as usize } , 52usize , + concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mIterationCount ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct StyleBasicShape { + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + pub mType: root::mozilla::StyleBasicShapeType, + pub mFillRule: root::mozilla::StyleFillRule, + pub mCoordinates: root::nsTArray, + pub mPosition: root::mozilla::Position, + pub mRadius: root::nsStyleCorners, + } + pub type StyleBasicShape_HasThreadSafeRefCnt = + root::mozilla::TrueType; + #[test] + fn bindgen_test_layout_StyleBasicShape() { + assert_eq!(::std::mem::size_of::() , 120usize , + concat ! ( + "Size of: " , stringify ! ( StyleBasicShape ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StyleBasicShape ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . mRefCnt as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . mType as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . mFillRule + as * const _ as usize } , 9usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mFillRule ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . + mCoordinates as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mCoordinates ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . mPosition + as * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mPosition ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . mRadius as + * const _ as usize } , 48usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mRadius ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct StyleShapeSource { + pub __bindgen_anon_1: root::mozilla::StyleShapeSource__bindgen_ty_1, + pub mType: root::mozilla::StyleShapeSourceType, + pub mReferenceBox: root::mozilla::StyleGeometryBox, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleShapeSource__bindgen_ty_1 { + pub mBasicShape: root::__BindgenUnionField<*mut root::mozilla::StyleBasicShape>, + pub mURL: root::__BindgenUnionField<*mut root::mozilla::css::URLValue>, + pub bindgen_union_field: u64, + } + #[test] + fn bindgen_test_layout_StyleShapeSource__bindgen_ty_1() { + assert_eq!(::std::mem::size_of::() + , 8usize , concat ! ( + "Size of: " , stringify ! ( + StyleShapeSource__bindgen_ty_1 ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + StyleShapeSource__bindgen_ty_1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleShapeSource__bindgen_ty_1 ) + ) . mBasicShape as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + StyleShapeSource__bindgen_ty_1 ) , "::" , stringify ! + ( mBasicShape ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleShapeSource__bindgen_ty_1 ) + ) . mURL as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleShapeSource__bindgen_ty_1 ) , "::" , stringify ! + ( mURL ) )); + } + impl Clone for StyleShapeSource__bindgen_ty_1 { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_StyleShapeSource() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( + "Size of: " , stringify ! ( StyleShapeSource ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StyleShapeSource ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleShapeSource ) ) . mType as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleShapeSource ) , "::" , stringify ! ( mType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleShapeSource ) ) . + mReferenceBox as * const _ as usize } , 9usize , + concat ! ( + "Alignment of field: " , stringify ! ( + StyleShapeSource ) , "::" , stringify ! ( + mReferenceBox ) )); } pub const SERVO_PREF_ENABLED_align_content: bool = false; pub const SERVO_PREF_ENABLED_align_items: bool = false; @@ -4416,3561 +8725,6 @@ pub mod root { pub const SERVO_PREF_ENABLED_overflow_wrap: bool = false; pub const SERVO_PREF_ENABLED_writing_mode: bool = false; pub const SERVO_PREF_ENABLED_z_index: bool = false; - pub type MallocSizeOf = - ::std::option::Option ::std::os::raw::c_ulong>; - #[repr(C)] - #[derive(Debug)] - pub struct OwningNonNull { - pub mPtr: root::RefPtr, - pub mInited: bool, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct StaticRefPtr { - pub mRawPtr: *mut T, - } - #[repr(C)] - #[derive(Debug)] - pub struct LinkedListElement { - pub mNext: *mut root::mozilla::LinkedListElement, - pub mPrev: *mut root::mozilla::LinkedListElement, - pub mIsSentinel: bool, - } - pub type LinkedListElement_Traits = - root::mozilla::detail::LinkedListElementTraits; - pub type LinkedListElement_RawType = - root::mozilla::LinkedListElement_Traits; - pub type LinkedListElement_ConstRawType = - root::mozilla::LinkedListElement_Traits; - pub type LinkedListElement_ClientType = - root::mozilla::LinkedListElement_Traits; - pub type LinkedListElement_ConstClientType = - root::mozilla::LinkedListElement_Traits; - pub const LinkedListElement_NodeKind_Sentinel: - root::mozilla::LinkedListElement_NodeKind = - LinkedListElement_NodeKind::Normal; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum LinkedListElement_NodeKind { Normal = 0, } - #[repr(C)] - #[derive(Debug)] - pub struct LinkedList { - pub sentinel: root::mozilla::LinkedListElement, - } - pub type LinkedList_Traits = - root::mozilla::detail::LinkedListElementTraits; - pub type LinkedList_RawType = root::mozilla::LinkedList_Traits; - pub type LinkedList_ConstRawType = - root::mozilla::LinkedList_Traits; - pub type LinkedList_ClientType = - root::mozilla::LinkedList_Traits; - pub type LinkedList_ConstClientType = - root::mozilla::LinkedList_Traits; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct LinkedList_Iterator { - pub mCurrent: root::mozilla::LinkedList_RawType, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ReverseIterator { - pub mCurrent: IteratorT, - } - /** - * Pair is the logical concatenation of an instance of A with an instance B. - * Space is conserved when possible. Neither A nor B may be a final class. - * - * It's typically clearer to have individual A and B member fields. Except if - * you want the space-conserving qualities of Pair, you're probably better off - * not using this! - * - * No guarantees are provided about the memory layout of A and B, the order of - * initialization or destruction of A and B, and so on. (This is approximately - * required to optimize space usage.) The first/second names are merely - * conceptual! - */ - #[repr(C)] - pub struct Pair { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub type Pair_Base = [u8; 0usize]; - /** - * A default deletion policy using plain old operator delete. - * - * Note that this type can be specialized, but authors should beware of the risk - * that the specialization may at some point cease to match (either because it - * gets moved to a different compilation unit or the signature changes). If the - * non-specialized (|delete|-based) version compiles for that type but does the - * wrong thing, bad things could happen. - * - * This is a non-issue for types which are always incomplete (i.e. opaque handle - * types), since |delete|-ing such a type will always trigger a compilation - * error. - */ - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DefaultDelete { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - pub type TimeStampValue = u64; - /** - * Instances of this class represent moments in time, or a special - * "null" moment. We do not use the non-monotonic system clock or - * local time, since they can be reset, causing apparent backward - * travel in time, which can confuse algorithms. Instead we measure - * elapsed time according to the system. This time can never go - * backwards (i.e. it never wraps around, at least not in less than - * five million years of system elapsed time). It might not advance - * while the system is sleeping. If TimeStamp::SetNow() is not called - * at all for hours or days, we might not notice the passage of some - * of that time. - * - * We deliberately do not expose a way to convert TimeStamps to some - * particular unit. All you can do is compute a difference between two - * TimeStamps to get a TimeDuration. You can also add a TimeDuration - * to a TimeStamp to get a new TimeStamp. You can't do something - * meaningless like add two TimeStamps. - * - * Internally this is implemented as either a wrapper around - * - high-resolution, monotonic, system clocks if they exist on this - * platform - * - PRIntervalTime otherwise. We detect wraparounds of - * PRIntervalTime and work around them. - * - * This class is similar to C++11's time_point, however it is - * explicitly nullable and provides an IsNull() method. time_point - * is initialized to the clock's epoch and provides a - * time_since_epoch() method that functions similiarly. i.e. - * t.IsNull() is equivalent to t.time_since_epoch() == decltype(t)::duration::zero(); - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct TimeStamp { - /** - * When built with PRIntervalTime, a value of 0 means this instance - * is "null". Otherwise, the low 32 bits represent a PRIntervalTime, - * and the high 32 bits represent a counter of the number of - * rollovers of PRIntervalTime that we've seen. This counter starts - * at 1 to avoid a real time colliding with the "null" value. - * - * PR_INTERVAL_MAX is set at 100,000 ticks per second. So the minimum - * time to wrap around is about 2^64/100000 seconds, i.e. about - * 5,849,424 years. - * - * When using a system clock, a value is system dependent. - */ - pub mValue: root::mozilla::TimeStampValue, - } - #[test] - fn bindgen_test_layout_TimeStamp() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( TimeStamp ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( TimeStamp ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const TimeStamp ) ) . mValue as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( TimeStamp ) , - "::" , stringify ! ( mValue ) )); - } - impl Clone for TimeStamp { - fn clone(&self) -> Self { *self } - } - /** - * Instances of this class represent the length of an interval of time. - * Negative durations are allowed, meaning the end is before the start. - * - * Internally the duration is stored as a int64_t in units of - * PR_TicksPerSecond() when building with NSPR interval timers, or a - * system-dependent unit when building with system clocks. The - * system-dependent unit must be constant, otherwise the semantics of - * this class would be broken. - * - * The ValueCalculator template parameter determines how arithmetic - * operations are performed on the integer count of ticks (mValue). - */ - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct BaseTimeDuration { - pub mValue: i64, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct BaseTimeDuration__SomethingVeryRandomHere { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct MallocAllocPolicy { - pub _address: u8, - } - #[test] - fn bindgen_test_layout_MallocAllocPolicy() { - assert_eq!(::std::mem::size_of::() , 1usize , - concat ! ( - "Size of: " , stringify ! ( MallocAllocPolicy ) )); - assert_eq! (::std::mem::align_of::() , 1usize , - concat ! ( - "Alignment of " , stringify ! ( MallocAllocPolicy ) - )); - } - impl Clone for MallocAllocPolicy { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct ThreadSafeAutoRefCnt { - pub mValue: u64, - } - pub const ThreadSafeAutoRefCnt_isThreadSafe: bool = true; - #[test] - fn bindgen_test_layout_ThreadSafeAutoRefCnt() { - assert_eq!(::std::mem::size_of::() , 8usize - , concat ! ( - "Size of: " , stringify ! ( ThreadSafeAutoRefCnt ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( ThreadSafeAutoRefCnt ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const ThreadSafeAutoRefCnt ) ) . mValue - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - ThreadSafeAutoRefCnt ) , "::" , stringify ! ( mValue ) - )); - } - pub mod gfx { - #[allow(unused_imports)] - use self::super::super::super::root; - pub type IntRegion = [u64; 3usize]; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Color { - pub _bindgen_opaque_blob: [u32; 4usize], - } - #[test] - fn bindgen_test_layout_Color() { - assert_eq!(::std::mem::size_of::() , 16usize , concat ! - ( "Size of: " , stringify ! ( Color ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat - ! ( "Alignment of " , stringify ! ( Color ) )); - } - impl Clone for Color { - fn clone(&self) -> Self { *self } - } - pub type IntPoint = [u32; 2usize]; - pub type IntMargin = [u32; 4usize]; - 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::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( FontVariation ) )); - assert_eq! (::std::mem::align_of::() , 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)] - #[derive(Debug, Copy, Clone)] - pub struct DrawTarget([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Path([u8; 0]); - } - pub mod layers { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct LayerManager([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ContainerLayer([u8; 0]); - /** - * The viewport and displayport metrics for the painted frame at the - * time of a layer-tree transaction. These metrics are especially - * useful for shadow layers, because the metrics values are updated - * atomically with new pixels. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct FrameMetrics { - pub mScrollId: root::mozilla::layers::FrameMetrics_ViewID, - pub mPresShellResolution: f32, - pub mCompositionBounds: root::mozilla::ParentLayerRect, - pub mDisplayPort: root::mozilla::CSSRect, - pub mCriticalDisplayPort: root::mozilla::CSSRect, - pub mScrollableRect: root::mozilla::CSSRect, - pub mCumulativeResolution: root::mozilla::LayoutDeviceToLayerScale2D, - pub mDevPixelsPerCSSPixel: root::mozilla::CSSToLayoutDeviceScale, - pub mScrollOffset: root::mozilla::CSSPoint, - pub mZoom: root::mozilla::CSSToParentLayerScale2D, - pub mScrollGeneration: u32, - pub mSmoothScrollOffset: root::mozilla::CSSPoint, - pub mRootCompositionSize: root::mozilla::CSSSize, - pub mDisplayPortMargins: root::mozilla::ScreenMargin, - pub mPresShellId: u32, - pub mViewport: root::mozilla::CSSRect, - pub mExtraResolution: root::mozilla::ScreenToLayerScale2D, - pub mPaintRequestTime: root::mozilla::TimeStamp, - pub mScrollUpdateType: root::mozilla::layers::FrameMetrics_ScrollOffsetUpdateType, - pub _bitfield_1: u8, - pub __bindgen_padding_0: [u16; 3usize], - } - pub type FrameMetrics_ViewID = u64; - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum FrameMetrics_ScrollOffsetUpdateType { - eNone = 0, - eMainThread = 1, - ePending = 2, - eUserAction = 3, - eRestore = 4, - eSentinel = 5, - } - extern "C" { - #[link_name = - "_ZN7mozilla6layers12FrameMetrics14NULL_SCROLL_IDE"] - pub static FrameMetrics_NULL_SCROLL_ID: - root::mozilla::layers::FrameMetrics_ViewID; - } - pub const FrameMetrics_START_SCROLL_ID: - root::mozilla::layers::FrameMetrics_ViewID = - 2; - #[test] - fn bindgen_test_layout_FrameMetrics() { - assert_eq!(::std::mem::size_of::() , 184usize , - concat ! ( - "Size of: " , stringify ! ( FrameMetrics ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( FrameMetrics ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . mScrollId - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( mScrollId ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mPresShellResolution as * const _ as usize } , - 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mPresShellResolution ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mCompositionBounds as * const _ as usize } , - 12usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mCompositionBounds ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mDisplayPort as * const _ as usize } , 28usize , - concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( mDisplayPort - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mCriticalDisplayPort as * const _ as usize } , - 44usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mCriticalDisplayPort ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mScrollableRect as * const _ as usize } , 60usize - , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mScrollableRect ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mCumulativeResolution as * const _ as usize } , - 76usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mCumulativeResolution ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mDevPixelsPerCSSPixel as * const _ as usize } , - 84usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mDevPixelsPerCSSPixel ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mScrollOffset as * const _ as usize } , 88usize , - concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mScrollOffset ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . mZoom as * - const _ as usize } , 96usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( mZoom ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mScrollGeneration as * const _ as usize } , - 104usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mScrollGeneration ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mSmoothScrollOffset as * const _ as usize } , - 108usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mSmoothScrollOffset ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mRootCompositionSize as * const _ as usize } , - 116usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mRootCompositionSize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mDisplayPortMargins as * const _ as usize } , - 124usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mDisplayPortMargins ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mPresShellId as * const _ as usize } , 140usize , - concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( mPresShellId - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . mViewport - as * const _ as usize } , 144usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( mViewport ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mExtraResolution as * const _ as usize } , - 160usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mExtraResolution ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mPaintRequestTime as * const _ as usize } , - 168usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mPaintRequestTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mScrollUpdateType as * const _ as usize } , - 176usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mScrollUpdateType ) )); - } - impl Clone for FrameMetrics { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct ScrollSnapInfo { - pub mScrollSnapTypeX: u8, - pub mScrollSnapTypeY: u8, - pub mScrollSnapIntervalX: [u32; 2usize], - pub mScrollSnapIntervalY: [u32; 2usize], - pub mScrollSnapDestination: root::nsPoint, - pub mScrollSnapCoordinates: root::nsTArray, - } - #[test] - fn bindgen_test_layout_ScrollSnapInfo() { - assert_eq!(::std::mem::size_of::() , 40usize , - concat ! ( - "Size of: " , stringify ! ( ScrollSnapInfo ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( ScrollSnapInfo ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapTypeX as * const _ as usize } , 0usize - , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapTypeX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapTypeY as * const _ as usize } , 1usize - , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapTypeY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapIntervalX as * const _ as usize } , - 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapIntervalX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapIntervalY as * const _ as usize } , - 12usize , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapIntervalY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapDestination as * const _ as usize } , - 20usize , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapDestination ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapCoordinates as * const _ as usize } , - 32usize , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapCoordinates ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Layer([u8; 0]); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ErrorResult { - pub _bindgen_opaque_blob: [u64; 4usize], - } - pub type ErrorResult_BaseErrorResult = - root::mozilla::binding_danger::TErrorResult; - #[test] - fn bindgen_test_layout_ErrorResult() { - assert_eq!(::std::mem::size_of::() , 32usize , concat - ! ( "Size of: " , stringify ! ( ErrorResult ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( ErrorResult ) )); - } - impl Clone for ErrorResult { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct OOMReporter { - pub _base: root::mozilla::dom::binding_detail::FastErrorResult, - } - #[test] - fn bindgen_test_layout_OOMReporter() { - assert_eq!(::std::mem::size_of::() , 32usize , concat - ! ( "Size of: " , stringify ! ( OOMReporter ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( OOMReporter ) )); - } - pub mod binding_danger { - #[allow(unused_imports)] - use self::super::super::super::root; - /** - * Templated implementation class for various ErrorResult-like things. The - * instantiations differ only in terms of their cleanup policies (used in the - * destructor), which they can specify via the template argument. Note that - * this means it's safe to reinterpret_cast between the instantiations unless - * you plan to invoke the destructor through such a cast pointer. - * - * A cleanup policy consists of two booleans: whether to assert that we've been - * reported or suppressed, and whether to then go ahead and suppress the - * exception. - */ - #[repr(C)] - #[derive(Debug)] - pub struct TErrorResult { - pub mResult: root::nsresult, - pub __bindgen_anon_1: root::mozilla::binding_danger::TErrorResult__bindgen_ty_1, - pub mMightHaveUnreportedJSException: bool, - pub mUnionState: root::mozilla::binding_danger::TErrorResult_UnionState, - pub _mOwningThread: root::nsAutoOwningThread, - pub _phantom_0: ::std::marker::PhantomData, - } - pub const TErrorResult_UnionState_HasDOMExceptionInfo: - root::mozilla::binding_danger::TErrorResult_UnionState = - TErrorResult_UnionState::HasMessage; - pub const TErrorResult_UnionState_HasJSException: - root::mozilla::binding_danger::TErrorResult_UnionState = - TErrorResult_UnionState::HasMessage; - pub const TErrorResult_UnionState_HasNothing: - root::mozilla::binding_danger::TErrorResult_UnionState = - TErrorResult_UnionState::HasMessage; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum TErrorResult_UnionState { HasMessage = 0, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct TErrorResult_Message { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct TErrorResult_DOMExceptionInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct TErrorResult__bindgen_ty_1 { - pub mMessage: root::__BindgenUnionField<*mut root::mozilla::binding_danger::TErrorResult_Message>, - pub mJSException: root::__BindgenUnionField, - pub mDOMExceptionInfo: root::__BindgenUnionField<*mut root::mozilla::binding_danger::TErrorResult_DOMExceptionInfo>, - pub bindgen_union_field: u64, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct JustAssertCleanupPolicy { - pub _address: u8, - } - pub const JustAssertCleanupPolicy_assertHandled: bool = true; - pub const JustAssertCleanupPolicy_suppress: bool = false; - #[test] - fn bindgen_test_layout_JustAssertCleanupPolicy() { - assert_eq!(::std::mem::size_of::() , - 1usize , concat ! ( - "Size of: " , stringify ! ( JustAssertCleanupPolicy - ) )); - assert_eq! (::std::mem::align_of::() - , 1usize , concat ! ( - "Alignment of " , stringify ! ( - JustAssertCleanupPolicy ) )); - } - impl Clone for JustAssertCleanupPolicy { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct AssertAndSuppressCleanupPolicy { - pub _address: u8, - } - pub const AssertAndSuppressCleanupPolicy_assertHandled: bool = - true; - pub const AssertAndSuppressCleanupPolicy_suppress: bool = true; - #[test] - fn bindgen_test_layout_AssertAndSuppressCleanupPolicy() { - assert_eq!(::std::mem::size_of::() - , 1usize , concat ! ( - "Size of: " , stringify ! ( - AssertAndSuppressCleanupPolicy ) )); - assert_eq! (::std::mem::align_of::() - , 1usize , concat ! ( - "Alignment of " , stringify ! ( - AssertAndSuppressCleanupPolicy ) )); - } - impl Clone for AssertAndSuppressCleanupPolicy { - fn clone(&self) -> Self { *self } - } - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum TaskCategory { - UI = 0, - Network = 1, - Timer = 2, - Worker = 3, - IdleCallback = 4, - RefreshDriver = 5, - GarbageCollection = 6, - Other = 7, - Count = 8, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct AbstractThread([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct OriginAttributes { - pub _base: root::mozilla::dom::OriginAttributesDictionary, - } - pub const OriginAttributes_STRIP_FIRST_PARTY_DOMAIN: - root::mozilla::OriginAttributes__bindgen_ty_1 = - OriginAttributes__bindgen_ty_1::STRIP_FIRST_PARTY_DOMAIN; - pub const OriginAttributes_STRIP_USER_CONTEXT_ID: - root::mozilla::OriginAttributes__bindgen_ty_1 = - OriginAttributes__bindgen_ty_1::STRIP_USER_CONTEXT_ID; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum OriginAttributes__bindgen_ty_1 { - STRIP_FIRST_PARTY_DOMAIN = 1, - STRIP_USER_CONTEXT_ID = 2, - } - extern "C" { - #[link_name = - "_ZN7mozilla16OriginAttributes20sFirstPartyIsolationE"] - pub static mut OriginAttributes_sFirstPartyIsolation: bool; - } - extern "C" { - #[link_name = - "_ZN7mozilla16OriginAttributes23sRestrictedOpenerAccessE"] - pub static mut OriginAttributes_sRestrictedOpenerAccess: bool; - } - #[test] - fn bindgen_test_layout_OriginAttributes() { - assert_eq!(::std::mem::size_of::() , 40usize , - concat ! ( - "Size of: " , stringify ! ( OriginAttributes ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( OriginAttributes ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WidgetEvent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WidgetGUIEvent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WidgetInputEvent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WidgetPointerEvent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventFlags([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ShortcutKeyCandidate([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct Runnable { - pub _base: root::nsIRunnable, - pub _base_1: root::nsINamed, - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mName: *const ::std::os::raw::c_char, - } - pub type Runnable_HasThreadSafeRefCnt = root::mozilla::TrueType; - #[test] - fn bindgen_test_layout_Runnable() { - assert_eq!(::std::mem::size_of::() , 40usize , concat ! - ( "Size of: " , stringify ! ( Runnable ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( Runnable ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventChainVisitor([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventChainPostVisitor([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventChainPreVisitor([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventListenerManager([u8; 0]); - pub const FlushType_Frames: root::mozilla::FlushType = - FlushType::Style; - #[repr(u8)] - /** - * This is the enum used by nsIDocument::FlushPendingNotifications to - * decide what to flush. - * - * Please note that if you change these values, you should sync it with the - * flushTypeNames array inside PresShell::FlushPendingNotifications. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum FlushType { - None = 0, - Content = 1, - ContentAndNotify = 2, - Style = 3, - InterruptibleLayout = 4, - Layout = 5, - Display = 6, - Count = 7, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ChangesToFlush { - pub mFlushType: root::mozilla::FlushType, - pub mFlushAnimations: bool, - } - #[test] - fn bindgen_test_layout_ChangesToFlush() { - assert_eq!(::std::mem::size_of::() , 2usize , - concat ! ( "Size of: " , stringify ! ( ChangesToFlush ) - )); - assert_eq! (::std::mem::align_of::() , 1usize , - concat ! ( - "Alignment of " , stringify ! ( ChangesToFlush ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ChangesToFlush ) ) . mFlushType - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( ChangesToFlush - ) , "::" , stringify ! ( mFlushType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ChangesToFlush ) ) . - mFlushAnimations as * const _ as usize } , 1usize , - concat ! ( - "Alignment of field: " , stringify ! ( ChangesToFlush - ) , "::" , stringify ! ( mFlushAnimations ) )); - } - impl Clone for ChangesToFlush { - fn clone(&self) -> Self { *self } - } - /** - * EventStates is the class used to represent the event states of nsIContent - * instances. These states are calculated by IntrinsicState() and - * ContentStatesChanged() has to be called when one of them changes thus - * informing the layout/style engine of the change. - * Event states are associated with pseudo-classes. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct EventStates { - pub mStates: root::mozilla::EventStates_InternalType, - } - pub type EventStates_InternalType = u64; - pub type EventStates_ServoType = u64; - #[test] - fn bindgen_test_layout_EventStates() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( EventStates ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( EventStates ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const EventStates ) ) . mStates as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( EventStates ) , - "::" , stringify ! ( mStates ) )); - } - impl Clone for EventStates { - fn clone(&self) -> Self { *self } - } - pub mod css { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(u32)] - /** - * Enum defining the mode in which a sheet is to be parsed. This is - * usually, but not always, the same as the cascade level at which the - * sheet will apply (see nsStyleSet.h). Most of the Loader APIs only - * support loading of author sheets. - * - * Author sheets are the normal case: styles embedded in or linked - * from HTML pages. They are also the most restricted. - * - * User sheets can do anything author sheets can do, and also get - * access to a few CSS extensions that are not yet suitable for - * exposure on the public Web, but are very useful for expressing - * user style overrides, such as @-moz-document rules. - * - * XXX: eUserSheetFeatures was added in bug 1035091, but some patches in - * that bug never landed to use this enum value. Currently, all the features - * in user sheet are also available in author sheet. - * - * Agent sheets have access to all author- and user-sheet features - * plus more extensions that are necessary for internal use but, - * again, not yet suitable for exposure on the public Web. Some of - * these are outright unsafe to expose; in particular, incorrect - * styling of anonymous box pseudo-elements can violate layout - * invariants. - * - * Agent sheets that do not use any unsafe rules could use - * eSafeAgentSheetFeatures when creating the sheet. This enum value allows - * Servo backend to recognize the sheets as the agent level, but Gecko - * backend will parse it under _author_ level. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum SheetParsingMode { - eAuthorSheetFeatures = 0, - eUserSheetFeatures = 1, - eAgentSheetFeatures = 2, - eSafeAgentSheetFeatures = 3, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct GroupRule([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ImportRule([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct Rule { - pub _base: root::nsIDOMCSSRule, - pub _base_1: root::nsWrapperCache, - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mSheet: *mut root::mozilla::StyleSheet, - pub mParentRule: *mut root::mozilla::css::GroupRule, - pub mLineNumber: u32, - pub mColumnNumber: u32, - } - pub type Rule_HasThreadSafeRefCnt = root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Rule_cycleCollection { - pub _base: root::nsXPCOMCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_Rule_cycleCollection() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( Rule_cycleCollection ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - Rule_cycleCollection ) )); - } - impl Clone for Rule_cycleCollection { - fn clone(&self) -> Self { *self } - } - pub const Rule_UNKNOWN_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::UNKNOWN_RULE; - pub const Rule_CHARSET_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::CHARSET_RULE; - pub const Rule_IMPORT_RULE: root::mozilla::css::Rule__bindgen_ty_1 - = - Rule__bindgen_ty_1::IMPORT_RULE; - pub const Rule_NAMESPACE_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::NAMESPACE_RULE; - pub const Rule_STYLE_RULE: root::mozilla::css::Rule__bindgen_ty_1 - = - Rule__bindgen_ty_1::STYLE_RULE; - pub const Rule_MEDIA_RULE: root::mozilla::css::Rule__bindgen_ty_1 - = - Rule__bindgen_ty_1::MEDIA_RULE; - pub const Rule_FONT_FACE_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::FONT_FACE_RULE; - pub const Rule_PAGE_RULE: root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::PAGE_RULE; - pub const Rule_KEYFRAME_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::KEYFRAME_RULE; - pub const Rule_KEYFRAMES_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::KEYFRAMES_RULE; - pub const Rule_DOCUMENT_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::DOCUMENT_RULE; - pub const Rule_SUPPORTS_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::SUPPORTS_RULE; - pub const Rule_FONT_FEATURE_VALUES_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::FONT_FEATURE_VALUES_RULE; - pub const Rule_COUNTER_STYLE_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::COUNTER_STYLE_RULE; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum Rule__bindgen_ty_1 { - UNKNOWN_RULE = 0, - CHARSET_RULE = 1, - IMPORT_RULE = 2, - NAMESPACE_RULE = 3, - STYLE_RULE = 4, - MEDIA_RULE = 5, - FONT_FACE_RULE = 6, - PAGE_RULE = 7, - KEYFRAME_RULE = 8, - KEYFRAMES_RULE = 9, - DOCUMENT_RULE = 10, - SUPPORTS_RULE = 11, - FONT_FEATURE_VALUES_RULE = 12, - COUNTER_STYLE_RULE = 13, - } - extern "C" { - #[link_name = "_ZN7mozilla3css4Rule21_cycleCollectorGlobalE"] - pub static mut Rule__cycleCollectorGlobal: - root::mozilla::css::Rule_cycleCollection; - } - #[test] - fn bindgen_test_layout_Rule() { - assert_eq!(::std::mem::size_of::() , 72usize , concat ! - ( "Size of: " , stringify ! ( Rule ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( Rule ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Loader([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ImageLoader([u8; 0]); - #[repr(C)] - pub struct URLValueData__bindgen_vtable { - } - #[repr(C)] - #[derive(Debug)] - pub struct URLValueData { - pub vtable_: *const URLValueData__bindgen_vtable, - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - pub mURI: root::nsMainThreadPtrHandle, - pub mString: ::nsstring::nsStringRepr, - pub mExtraData: root::RefPtr, - pub mURIResolved: bool, - pub mIsLocalRef: [u8; 2usize], - pub mMightHaveRef: [u8; 2usize], - } - pub type URLValueData_HasThreadSafeRefCnt = - root::mozilla::TrueType; - #[test] - fn bindgen_test_layout_URLValueData() { - assert_eq!(::std::mem::size_of::() , 56usize , - concat ! ( - "Size of: " , stringify ! ( URLValueData ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( URLValueData ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . mRefCnt as - * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mRefCnt ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . mURI as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mURI ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . mString as - * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mString ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . mExtraData - as * const _ as usize } , 40usize , concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mExtraData ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . - mURIResolved as * const _ as usize } , 48usize , - concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mURIResolved - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . - mIsLocalRef as * const _ as usize } , 49usize , - concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mIsLocalRef - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . - mMightHaveRef as * const _ as usize } , 51usize , - concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( - mMightHaveRef ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct URLValue { - pub _base: root::mozilla::css::URLValueData, - } - #[test] - fn bindgen_test_layout_URLValue() { - assert_eq!(::std::mem::size_of::() , 56usize , - concat ! ( "Size of: " , stringify ! ( URLValue ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( URLValue ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct ImageValue { - pub _base: root::mozilla::css::URLValueData, - pub mRequests: [u64; 6usize], - pub mInitialized: bool, - } - #[test] - fn bindgen_test_layout_ImageValue() { - assert_eq!(::std::mem::size_of::() , 112usize , - concat ! ( "Size of: " , stringify ! ( ImageValue ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( ImageValue ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageValue ) ) . mRequests as - * const _ as usize } , 56usize , concat ! ( - "Alignment of field: " , stringify ! ( ImageValue - ) , "::" , stringify ! ( mRequests ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageValue ) ) . mInitialized - as * const _ as usize } , 104usize , concat ! ( - "Alignment of field: " , stringify ! ( ImageValue - ) , "::" , stringify ! ( mInitialized ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct GridNamedArea { - pub mName: ::nsstring::nsStringRepr, - pub mColumnStart: u32, - pub mColumnEnd: u32, - pub mRowStart: u32, - pub mRowEnd: u32, - } - #[test] - fn bindgen_test_layout_GridNamedArea() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( - "Size of: " , stringify ! ( GridNamedArea ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( GridNamedArea ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridNamedArea ) ) . mName as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - GridNamedArea ) , "::" , stringify ! ( mName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridNamedArea ) ) . - mColumnStart as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GridNamedArea ) , "::" , stringify ! ( - mColumnStart ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridNamedArea ) ) . - mColumnEnd as * const _ as usize } , 20usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GridNamedArea ) , "::" , stringify ! ( mColumnEnd - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridNamedArea ) ) . mRowStart - as * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - GridNamedArea ) , "::" , stringify ! ( mRowStart ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridNamedArea ) ) . mRowEnd - as * const _ as usize } , 28usize , concat ! ( - "Alignment of field: " , stringify ! ( - GridNamedArea ) , "::" , stringify ! ( mRowEnd ) - )); - } - #[repr(C)] - #[derive(Debug)] - pub struct GridTemplateAreasValue { - pub mNamedAreas: root::nsTArray, - pub mTemplates: root::nsTArray<::nsstring::nsStringRepr>, - pub mNColumns: u32, - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - } - pub type GridTemplateAreasValue_HasThreadSafeRefCnt = - root::mozilla::TrueType; - #[test] - fn bindgen_test_layout_GridTemplateAreasValue() { - assert_eq!(::std::mem::size_of::() , - 32usize , concat ! ( - "Size of: " , stringify ! ( GridTemplateAreasValue - ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - GridTemplateAreasValue ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridTemplateAreasValue ) ) . - mNamedAreas as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GridTemplateAreasValue ) , "::" , stringify ! ( - mNamedAreas ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridTemplateAreasValue ) ) . - mTemplates as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GridTemplateAreasValue ) , "::" , stringify ! ( - mTemplates ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridTemplateAreasValue ) ) . - mNColumns as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GridTemplateAreasValue ) , "::" , stringify ! ( - mNColumns ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridTemplateAreasValue ) ) . - mRefCnt as * const _ as usize } , 24usize , concat - ! ( - "Alignment of field: " , stringify ! ( - GridTemplateAreasValue ) , "::" , stringify ! ( - mRefCnt ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct FontFamilyListRefCnt { - pub _base: root::mozilla::FontFamilyList, - pub mRefCnt: root::nsAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - } - pub type FontFamilyListRefCnt_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[test] - fn bindgen_test_layout_FontFamilyListRefCnt() { - assert_eq!(::std::mem::size_of::() , - 32usize , concat ! ( - "Size of: " , stringify ! ( FontFamilyListRefCnt ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - FontFamilyListRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyListRefCnt ) ) . - mRefCnt as * const _ as usize } , 16usize , concat - ! ( - "Alignment of field: " , stringify ! ( - FontFamilyListRefCnt ) , "::" , stringify ! ( - mRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyListRefCnt ) ) . - _mOwningThread as * const _ as usize } , 24usize , - concat ! ( - "Alignment of field: " , stringify ! ( - FontFamilyListRefCnt ) , "::" , stringify ! ( - _mOwningThread ) )); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct RGBAColorData { - pub mR: f32, - pub mG: f32, - pub mB: f32, - pub mA: f32, - } - #[test] - fn bindgen_test_layout_RGBAColorData() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( - "Size of: " , stringify ! ( RGBAColorData ) )); - assert_eq! (::std::mem::align_of::() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( RGBAColorData ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const RGBAColorData ) ) . mR as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - RGBAColorData ) , "::" , stringify ! ( mR ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const RGBAColorData ) ) . mG as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - RGBAColorData ) , "::" , stringify ! ( mG ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const RGBAColorData ) ) . mB as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - RGBAColorData ) , "::" , stringify ! ( mB ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const RGBAColorData ) ) . mA as * - const _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( - RGBAColorData ) , "::" , stringify ! ( mA ) )); - } - impl Clone for RGBAColorData { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ComplexColorData { - pub mColor: root::mozilla::css::RGBAColorData, - pub mForegroundRatio: f32, - } - #[test] - fn bindgen_test_layout_ComplexColorData() { - assert_eq!(::std::mem::size_of::() , 20usize - , concat ! ( - "Size of: " , stringify ! ( ComplexColorData ) )); - assert_eq! (::std::mem::align_of::() , - 4usize , concat ! ( - "Alignment of " , stringify ! ( ComplexColorData ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComplexColorData ) ) . mColor - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - ComplexColorData ) , "::" , stringify ! ( mColor ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComplexColorData ) ) . - mForegroundRatio as * const _ as usize } , 16usize - , concat ! ( - "Alignment of field: " , stringify ! ( - ComplexColorData ) , "::" , stringify ! ( - mForegroundRatio ) )); - } - impl Clone for ComplexColorData { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct ComplexColorValue { - pub _base: root::mozilla::css::ComplexColorData, - pub mRefCnt: root::nsAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - } - pub type ComplexColorValue_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[test] - fn bindgen_test_layout_ComplexColorValue() { - assert_eq!(::std::mem::size_of::() , - 40usize , concat ! ( - "Size of: " , stringify ! ( ComplexColorValue ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( ComplexColorValue - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComplexColorValue ) ) . - mRefCnt as * const _ as usize } , 24usize , concat - ! ( - "Alignment of field: " , stringify ! ( - ComplexColorValue ) , "::" , stringify ! ( mRefCnt - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComplexColorValue ) ) . - _mOwningThread as * const _ as usize } , 32usize , - concat ! ( - "Alignment of field: " , stringify ! ( - ComplexColorValue ) , "::" , stringify ! ( - _mOwningThread ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DocumentRule([u8; 0]); - } - /** - * Superclass for data common to CSSStyleSheet and ServoStyleSheet. - */ - #[repr(C)] - #[derive(Debug)] - pub struct StyleSheet { - pub _base: root::nsIDOMCSSStyleSheet, - pub _base_1: root::nsICSSLoaderObserver, - pub _base_2: root::nsWrapperCache, - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mParent: *mut root::mozilla::StyleSheet, - pub mTitle: ::nsstring::nsStringRepr, - pub mDocument: *mut root::nsIDocument, - pub mOwningNode: *mut root::nsINode, - pub mMedia: root::RefPtr, - pub mNext: root::RefPtr, - pub mParsingMode: root::mozilla::css::SheetParsingMode, - pub mType: root::mozilla::StyleBackendType, - pub mDisabled: bool, - pub mDocumentAssociationMode: root::mozilla::StyleSheet_DocumentAssociationMode, - pub mInner: *mut root::mozilla::StyleSheetInfo, - } - pub type StyleSheet_HasThreadSafeRefCnt = root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleSheet_cycleCollection { - pub _base: root::nsXPCOMCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_StyleSheet_cycleCollection() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( StyleSheet_cycleCollection - ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - StyleSheet_cycleCollection ) )); - } - impl Clone for StyleSheet_cycleCollection { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleSheet_DocumentAssociationMode { - OwnedByDocument = 0, - NotOwnedByDocument = 1, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleSheet_ChildSheetListBuilder { - pub sheetSlot: *mut root::RefPtr, - pub parent: *mut root::mozilla::StyleSheet, - } - #[test] - fn bindgen_test_layout_StyleSheet_ChildSheetListBuilder() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - StyleSheet_ChildSheetListBuilder ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - StyleSheet_ChildSheetListBuilder ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const StyleSheet_ChildSheetListBuilder ) ) - . sheetSlot as * const _ as usize } , 0usize , concat - ! ( - "Alignment of field: " , stringify ! ( - StyleSheet_ChildSheetListBuilder ) , "::" , stringify - ! ( sheetSlot ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const StyleSheet_ChildSheetListBuilder ) ) - . parent as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleSheet_ChildSheetListBuilder ) , "::" , stringify - ! ( parent ) )); - } - impl Clone for StyleSheet_ChildSheetListBuilder { - fn clone(&self) -> Self { *self } - } - extern "C" { - #[link_name = "_ZN7mozilla10StyleSheet21_cycleCollectorGlobalE"] - pub static mut StyleSheet__cycleCollectorGlobal: - root::mozilla::StyleSheet_cycleCollection; - } - #[test] - fn bindgen_test_layout_StyleSheet() { - assert_eq!(::std::mem::size_of::() , 136usize , concat - ! ( "Size of: " , stringify ! ( StyleSheet ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( StyleSheet ) )); - } - pub mod net { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum ReferrerPolicy { - RP_No_Referrer = 2, - RP_Origin = 3, - RP_No_Referrer_When_Downgrade = 1, - RP_Origin_When_Crossorigin = 4, - RP_Unsafe_URL = 5, - RP_Same_Origin = 6, - RP_Strict_Origin = 7, - RP_Strict_Origin_When_Cross_Origin = 8, - RP_Unset = 0, - } - } - #[repr(u8)] - /** - * Enumeration that represents one of the two supported style system backends. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBackendType { None = 0, Gecko = 1, Servo = 2, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CORSMode { - CORS_NONE = 0, - CORS_ANONYMOUS = 1, - CORS_USE_CREDENTIALS = 2, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ServoStyleSheet([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct StyleSheetInfo([u8; 0]); - #[repr(i16)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum UseCounter { - eUseCounter_UNKNOWN = -1, - eUseCounter_SVGSVGElement_getElementById = 0, - eUseCounter_SVGSVGElement_currentScale_getter = 1, - eUseCounter_SVGSVGElement_currentScale_setter = 2, - eUseCounter_property_Fill = 3, - eUseCounter_property_FillOpacity = 4, - eUseCounter_PushManager_subscribe = 5, - eUseCounter_PushSubscription_unsubscribe = 6, - eUseCounter_Window_sidebar_getter = 7, - eUseCounter_Window_sidebar_setter = 8, - eUseCounter_External_addSearchEngine = 9, - eUseCounter_OfflineResourceList_swapCache = 10, - eUseCounter_OfflineResourceList_update = 11, - eUseCounter_OfflineResourceList_status_getter = 12, - eUseCounter_OfflineResourceList_status_setter = 13, - eUseCounter_OfflineResourceList_onchecking_getter = 14, - eUseCounter_OfflineResourceList_onchecking_setter = 15, - eUseCounter_OfflineResourceList_onerror_getter = 16, - eUseCounter_OfflineResourceList_onerror_setter = 17, - eUseCounter_OfflineResourceList_onnoupdate_getter = 18, - eUseCounter_OfflineResourceList_onnoupdate_setter = 19, - eUseCounter_OfflineResourceList_ondownloading_getter = 20, - eUseCounter_OfflineResourceList_ondownloading_setter = 21, - eUseCounter_OfflineResourceList_onprogress_getter = 22, - eUseCounter_OfflineResourceList_onprogress_setter = 23, - eUseCounter_OfflineResourceList_onupdateready_getter = 24, - eUseCounter_OfflineResourceList_onupdateready_setter = 25, - eUseCounter_OfflineResourceList_oncached_getter = 26, - eUseCounter_OfflineResourceList_oncached_setter = 27, - eUseCounter_OfflineResourceList_onobsolete_getter = 28, - eUseCounter_OfflineResourceList_onobsolete_setter = 29, - eUseCounter_IDBDatabase_createMutableFile = 30, - eUseCounter_IDBDatabase_mozCreateFileHandle = 31, - eUseCounter_IDBMutableFile_open = 32, - eUseCounter_IDBMutableFile_getFile = 33, - eUseCounter_DataTransfer_addElement = 34, - eUseCounter_DataTransfer_mozItemCount_getter = 35, - eUseCounter_DataTransfer_mozItemCount_setter = 36, - eUseCounter_DataTransfer_mozCursor_getter = 37, - eUseCounter_DataTransfer_mozCursor_setter = 38, - eUseCounter_DataTransfer_mozTypesAt = 39, - eUseCounter_DataTransfer_mozClearDataAt = 40, - eUseCounter_DataTransfer_mozSetDataAt = 41, - eUseCounter_DataTransfer_mozGetDataAt = 42, - eUseCounter_DataTransfer_mozUserCancelled_getter = 43, - eUseCounter_DataTransfer_mozUserCancelled_setter = 44, - eUseCounter_DataTransfer_mozSourceNode_getter = 45, - eUseCounter_DataTransfer_mozSourceNode_setter = 46, - eUseCounter_GetAttributeNode = 47, - eUseCounter_SetAttributeNode = 48, - eUseCounter_GetAttributeNodeNS = 49, - eUseCounter_SetAttributeNodeNS = 50, - eUseCounter_RemoveAttributeNode = 51, - eUseCounter_CreateAttribute = 52, - eUseCounter_CreateAttributeNS = 53, - eUseCounter_NodeValue = 54, - eUseCounter_TextContent = 55, - eUseCounter_EnablePrivilege = 56, - eUseCounter_DOMExceptionCode = 57, - eUseCounter_NoExposedProps = 58, - eUseCounter_MutationEvent = 59, - eUseCounter_Components = 60, - eUseCounter_PrefixedVisibilityAPI = 61, - eUseCounter_NodeIteratorDetach = 62, - eUseCounter_LenientThis = 63, - eUseCounter_GetPreventDefault = 64, - eUseCounter_GetSetUserData = 65, - eUseCounter_MozGetAsFile = 66, - eUseCounter_UseOfCaptureEvents = 67, - eUseCounter_UseOfReleaseEvents = 68, - eUseCounter_UseOfDOM3LoadMethod = 69, - eUseCounter_ChromeUseOfDOM3LoadMethod = 70, - eUseCounter_ShowModalDialog = 71, - eUseCounter_Window_Content = 72, - eUseCounter_SyncXMLHttpRequest = 73, - eUseCounter_Window_Controllers = 74, - eUseCounter_ImportXULIntoContent = 75, - eUseCounter_PannerNodeDoppler = 76, - eUseCounter_NavigatorGetUserMedia = 77, - eUseCounter_WebrtcDeprecatedPrefix = 78, - eUseCounter_RTCPeerConnectionGetStreams = 79, - eUseCounter_AppCache = 80, - eUseCounter_PrefixedImageSmoothingEnabled = 81, - eUseCounter_PrefixedFullscreenAPI = 82, - eUseCounter_LenientSetter = 83, - eUseCounter_FileLastModifiedDate = 84, - eUseCounter_ImageBitmapRenderingContext_TransferImageBitmap = 85, - eUseCounter_URLCreateObjectURL_MediaStream = 86, - eUseCounter_XMLBaseAttribute = 87, - eUseCounter_XMLBaseAttributeForStyleAttr = 88, - eUseCounter_Count = 89, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum Side { - eSideTop = 0, - eSideRight = 1, - eSideBottom = 2, - eSideLeft = 3, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum HalfCorner { - eCornerTopLeftX = 0, - eCornerTopLeftY = 1, - eCornerTopRightX = 2, - eCornerTopRightY = 3, - eCornerBottomRightX = 4, - eCornerBottomRightY = 5, - eCornerBottomLeftX = 6, - eCornerBottomLeftY = 7, - } - pub type CSSPoint = [u32; 2usize]; - pub type CSSIntPoint = [u32; 2usize]; - pub type CSSSize = [u32; 2usize]; - pub type CSSRect = [u32; 4usize]; - pub type LayoutDeviceIntPoint = [u32; 2usize]; - pub type LayoutDeviceIntSize = [u32; 2usize]; - pub type LayoutDeviceIntRect = [u32; 4usize]; - pub type ScreenIntSize = (); - pub type ScreenMargin = [u32; 4usize]; - pub type ParentLayerRect = [u32; 4usize]; - pub type CSSToLayoutDeviceScale = u32; - pub type CSSToParentLayerScale2D = [u32; 2usize]; - pub type LayoutDeviceToLayerScale2D = [u32; 2usize]; - pub type ScreenToLayerScale2D = [u32; 2usize]; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct PendingAnimationTracker([u8; 0]); - /** - * Smart pointer class that can hold a pointer to either an nsStyleSet - * or a ServoStyleSet. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleSetHandle { - pub mPtr: root::mozilla::StyleSetHandle_Ptr, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleSetHandle_Ptr { - pub mValue: usize, - } - #[test] - fn bindgen_test_layout_StyleSetHandle_Ptr() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( StyleSetHandle_Ptr ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( StyleSetHandle_Ptr ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleSetHandle_Ptr ) ) . mValue - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleSetHandle_Ptr ) , "::" , stringify ! ( mValue ) - )); - } - impl Clone for StyleSetHandle_Ptr { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_StyleSetHandle() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( "Size of: " , stringify ! ( StyleSetHandle ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StyleSetHandle ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleSetHandle ) ) . mPtr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleSetHandle - ) , "::" , stringify ! ( mPtr ) )); - } - impl Clone for StyleSetHandle { - fn clone(&self) -> Self { *self } - } - #[test] - fn __bindgen_test_layout_template_3() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::StaticRefPtr - ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! - ( - root::mozilla::StaticRefPtr - ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct URLExtraData { - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - pub mBaseURI: root::nsCOMPtr, - pub mReferrer: root::nsCOMPtr, - pub mPrincipal: root::nsCOMPtr, - } - pub type URLExtraData_HasThreadSafeRefCnt = root::mozilla::TrueType; - extern "C" { - #[link_name = "_ZN7mozilla12URLExtraData6sDummyE"] - pub static mut URLExtraData_sDummy: - root::mozilla::StaticRefPtr; - } - #[test] - fn bindgen_test_layout_URLExtraData() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( "Size of: " , stringify ! ( URLExtraData ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( URLExtraData ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLExtraData ) ) . mRefCnt as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( URLExtraData ) - , "::" , stringify ! ( mRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLExtraData ) ) . mBaseURI as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( URLExtraData ) - , "::" , stringify ! ( mBaseURI ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLExtraData ) ) . mReferrer as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( URLExtraData ) - , "::" , stringify ! ( mReferrer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLExtraData ) ) . mPrincipal as - * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( URLExtraData ) - , "::" , stringify ! ( mPrincipal ) )); - } - pub mod dmd { - #[allow(unused_imports)] - use self::super::super::super::root; - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct JSONWriteFunc([u8; 0]); - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum ArenaObjectID { - eArenaObjectID_DummyBeforeFirstObjectID = 536870911, - eArenaObjectID_nsLineBox = 536870912, - eArenaObjectID_nsRuleNode = 536870913, - eArenaObjectID_nsStyleContext = 536870914, - eArenaObjectID_nsInheritedStyleData = 536870915, - eArenaObjectID_nsResetStyleData = 536870916, - eArenaObjectID_nsConditionalResetStyleData = 536870917, - eArenaObjectID_nsConditionalResetStyleDataEntry = 536870918, - eArenaObjectID_nsFrameList = 536870919, - eArenaObjectID_CustomCounterStyle = 536870920, - eArenaObjectID_DependentBuiltinCounterStyle = 536870921, - eArenaObjectID_nsStyleFont = 536870922, - eArenaObjectID_nsStyleColor = 536870923, - eArenaObjectID_nsStyleList = 536870924, - eArenaObjectID_nsStyleText = 536870925, - eArenaObjectID_nsStyleVisibility = 536870926, - eArenaObjectID_nsStyleUserInterface = 536870927, - eArenaObjectID_nsStyleTableBorder = 536870928, - eArenaObjectID_nsStyleSVG = 536870929, - eArenaObjectID_nsStyleVariables = 536870930, - eArenaObjectID_nsStyleBackground = 536870931, - eArenaObjectID_nsStylePosition = 536870932, - eArenaObjectID_nsStyleTextReset = 536870933, - eArenaObjectID_nsStyleDisplay = 536870934, - eArenaObjectID_nsStyleContent = 536870935, - eArenaObjectID_nsStyleUIReset = 536870936, - eArenaObjectID_nsStyleTable = 536870937, - eArenaObjectID_nsStyleMargin = 536870938, - eArenaObjectID_nsStylePadding = 536870939, - eArenaObjectID_nsStyleBorder = 536870940, - eArenaObjectID_nsStyleOutline = 536870941, - eArenaObjectID_nsStyleXUL = 536870942, - eArenaObjectID_nsStyleSVGReset = 536870943, - eArenaObjectID_nsStyleColumn = 536870944, - eArenaObjectID_nsStyleEffects = 536870945, - eArenaObjectID_NON_OBJECT_MARKER = 1073741824, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct CSSVariableResolver([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct CSSVariableValues { - /** - * Map of variable names to IDs. Variable IDs are indexes into - * mVariables. - */ - pub mVariableIDs: [u64; 6usize], - /** - * Array of variables, indexed by variable ID. - */ - pub mVariables: root::nsTArray, - } - #[repr(C)] - #[derive(Debug)] - pub struct CSSVariableValues_Variable { - pub mVariableName: ::nsstring::nsStringRepr, - pub mValue: ::nsstring::nsStringRepr, - pub mFirstToken: root::nsCSSTokenSerializationType, - pub mLastToken: root::nsCSSTokenSerializationType, - } - #[test] - fn bindgen_test_layout_CSSVariableValues_Variable() { - assert_eq!(::std::mem::size_of::() , - 40usize , concat ! ( - "Size of: " , stringify ! ( CSSVariableValues_Variable - ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - CSSVariableValues_Variable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues_Variable ) ) . - mVariableName as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues_Variable ) , "::" , stringify ! ( - mVariableName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues_Variable ) ) . - mValue as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues_Variable ) , "::" , stringify ! ( - mValue ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues_Variable ) ) . - mFirstToken as * const _ as usize } , 32usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues_Variable ) , "::" , stringify ! ( - mFirstToken ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues_Variable ) ) . - mLastToken as * const _ as usize } , 36usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues_Variable ) , "::" , stringify ! ( - mLastToken ) )); - } - #[test] - fn bindgen_test_layout_CSSVariableValues() { - assert_eq!(::std::mem::size_of::() , 56usize , - concat ! ( - "Size of: " , stringify ! ( CSSVariableValues ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( CSSVariableValues ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues ) ) . - mVariableIDs as * const _ as usize } , 0usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues ) , "::" , stringify ! ( - mVariableIDs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues ) ) . - mVariables as * const _ as usize } , 48usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues ) , "::" , stringify ! ( mVariables - ) )); - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum SheetType { - Agent = 0, - User = 1, - PresHint = 2, - Doc = 3, - ScopedDoc = 4, - StyleAttr = 5, - Override = 6, - Animation = 7, - Transition = 8, - Count = 9, - Unknown = 255, - } - /** - * This struct represents a combined color from a numeric color and - * the current foreground color (currentcolor keyword). - * Conceptually, the formula is "color * (1 - p) + currentcolor * p" - * where p is mForegroundRatio. See mozilla::LinearBlendColors for - * the actual algorithm. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleComplexColor { - pub mColor: root::nscolor, - pub mForegroundRatio: u8, - pub mIsAuto: bool, - } - #[test] - fn bindgen_test_layout_StyleComplexColor() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( StyleComplexColor ) )); - assert_eq! (::std::mem::align_of::() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( StyleComplexColor ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleComplexColor ) ) . mColor as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleComplexColor ) , "::" , stringify ! ( mColor ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleComplexColor ) ) . - mForegroundRatio as * const _ as usize } , 4usize , - concat ! ( - "Alignment of field: " , stringify ! ( - StyleComplexColor ) , "::" , stringify ! ( - mForegroundRatio ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleComplexColor ) ) . mIsAuto - as * const _ as usize } , 5usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleComplexColor ) , "::" , stringify ! ( mIsAuto ) - )); - } - impl Clone for StyleComplexColor { - fn clone(&self) -> Self { *self } - } - pub const FontFamilyType_eFamily_generic_first: - root::mozilla::FontFamilyType = - FontFamilyType::eFamily_serif; - pub const FontFamilyType_eFamily_generic_last: - root::mozilla::FontFamilyType = - FontFamilyType::eFamily_fantasy; - pub const FontFamilyType_eFamily_generic_count: - root::mozilla::FontFamilyType = - FontFamilyType::eFamily_monospace; - #[repr(u32)] - /** - * type of font family name, either a name (e.g. Helvetica) or a - * generic (e.g. serif, sans-serif), with the ability to distinguish - * between unquoted and quoted names for serializaiton - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum FontFamilyType { - eFamily_none = 0, - eFamily_named = 1, - eFamily_named_quoted = 2, - eFamily_serif = 3, - eFamily_sans_serif = 4, - eFamily_monospace = 5, - eFamily_cursive = 6, - eFamily_fantasy = 7, - eFamily_moz_variable = 8, - eFamily_moz_fixed = 9, - } - /** - * font family name, a string for the name if not a generic and - * a font type indicated named family or which generic family - */ - #[repr(C)] - #[derive(Debug)] - pub struct FontFamilyName { - pub mType: root::mozilla::FontFamilyType, - pub mName: ::nsstring::nsStringRepr, - } - #[test] - fn bindgen_test_layout_FontFamilyName() { - assert_eq!(::std::mem::size_of::() , 24usize , - concat ! ( "Size of: " , stringify ! ( FontFamilyName ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( FontFamilyName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyName ) ) . mType as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( FontFamilyName - ) , "::" , stringify ! ( mType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyName ) ) . mName as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( FontFamilyName - ) , "::" , stringify ! ( mName ) )); - } - /** - * font family list, array of font families and a default font type. - * font family names are either named strings or generics. the default - * font type is used to preserve the variable font fallback behavior - */ - #[repr(C)] - #[derive(Debug)] - pub struct FontFamilyList { - pub mFontlist: root::nsTArray, - pub mDefaultFontType: root::mozilla::FontFamilyType, - } - #[test] - fn bindgen_test_layout_FontFamilyList() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( "Size of: " , stringify ! ( FontFamilyList ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( FontFamilyList ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyList ) ) . mFontlist as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( FontFamilyList - ) , "::" , stringify ! ( mFontlist ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyList ) ) . - mDefaultFontType as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( FontFamilyList - ) , "::" , stringify ! ( mDefaultFontType ) )); - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBasicShapeType { - Polygon = 0, - Circle = 1, - Ellipse = 2, - Inset = 3, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxAlign { - Stretch = 0, - Start = 1, - Center = 2, - Baseline = 3, - End = 4, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxDecorationBreak { Slice = 0, Clone = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxDirection { Normal = 0, Reverse = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxOrient { Horizontal = 0, Vertical = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxPack { Start = 0, Center = 1, End = 2, Justify = 3, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxSizing { Content = 0, Border = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleClear { - None = 0, - Left = 1, - Right = 2, - InlineStart = 3, - InlineEnd = 4, - Both = 5, - Line = 8, - Max = 13, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleGeometryBox { - ContentBox = 0, - PaddingBox = 1, - BorderBox = 2, - MarginBox = 3, - FillBox = 4, - StrokeBox = 5, - ViewBox = 6, - NoClip = 7, - Text = 8, - NoBox = 9, - MozAlmostPadding = 127, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleFillRule { Nonzero = 0, Evenodd = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleFloat { - None = 0, - Left = 1, - Right = 2, - InlineStart = 3, - InlineEnd = 4, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleFloatEdge { ContentBox = 0, MarginBox = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleHyphens { None = 0, Manual = 1, Auto = 2, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleShapeRadius { ClosestSide = 0, FarthestSide = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleShapeSourceType { - None = 0, - URL = 1, - Shape = 2, - Box = 3, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleTextJustify { - None = 0, - Auto = 1, - InterWord = 2, - InterCharacter = 3, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleUserFocus { - None = 0, - Ignore = 1, - Normal = 2, - SelectAll = 3, - SelectBefore = 4, - SelectAfter = 5, - SelectSame = 6, - SelectMenu = 7, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleUserSelect { - None = 0, - Text = 1, - Element = 2, - Elements = 3, - All = 4, - Toggle = 5, - TriState = 6, - Auto = 7, - MozAll = 8, - MozText = 9, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleUserInput { - None = 0, - Enabled = 1, - Disabled = 2, - Auto = 3, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleUserModify { - ReadOnly = 0, - ReadWrite = 1, - WriteOnly = 2, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleWindowDragging { Default = 0, Drag = 1, NoDrag = 2, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleOrient { - Inline = 0, - Block = 1, - Horizontal = 2, - Vertical = 3, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleDisplay { - None = 0, - Block = 1, - FlowRoot = 2, - Inline = 3, - InlineBlock = 4, - ListItem = 5, - Table = 6, - InlineTable = 7, - TableRowGroup = 8, - TableColumn = 9, - TableColumnGroup = 10, - TableHeaderGroup = 11, - TableFooterGroup = 12, - TableRow = 13, - TableCell = 14, - TableCaption = 15, - Flex = 16, - InlineFlex = 17, - Grid = 18, - InlineGrid = 19, - Ruby = 20, - RubyBase = 21, - RubyBaseContainer = 22, - RubyText = 23, - RubyTextContainer = 24, - Contents = 25, - WebkitBox = 26, - WebkitInlineBox = 27, - MozBox = 28, - MozInlineBox = 29, - MozGrid = 30, - MozInlineGrid = 31, - MozGridGroup = 32, - MozGridLine = 33, - MozStack = 34, - MozInlineStack = 35, - MozDeck = 36, - MozGroupbox = 37, - MozPopup = 38, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleGridTrackBreadth { MaxContent = 1, MinContent = 2, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WritingMode([u8; 0]); - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum LogicalSide { - eLogicalSideBStart = 0, - eLogicalSideBEnd = 1, - eLogicalSideIStart = 2, - eLogicalSideIEnd = 3, - } - /** - * Additional data used in conjunction with an nsRestyleHint to control the - * restyle process. - */ - #[repr(C)] - #[derive(Debug)] - pub struct RestyleHintData { - pub mSelectorsForDescendants: root::nsTArray<*mut root::nsCSSSelector>, - } - #[test] - fn bindgen_test_layout_RestyleHintData() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( RestyleHintData ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( RestyleHintData ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const RestyleHintData ) ) . - mSelectorsForDescendants as * const _ as usize } , - 0usize , concat ! ( - "Alignment of field: " , stringify ! ( RestyleHintData - ) , "::" , stringify ! ( mSelectorsForDescendants ) - )); - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum TraversalRootBehavior { - Normal = 0, - UnstyledChildrenOnly = 1, - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum TraversalRestyleBehavior { Normal = 0, ForReconstruct = 1, } - pub const UpdateAnimationsTasks_CSSAnimations: - root::mozilla::UpdateAnimationsTasks = - 1; - pub const UpdateAnimationsTasks_CSSTransitions: - root::mozilla::UpdateAnimationsTasks = - 2; - pub const UpdateAnimationsTasks_EffectProperties: - root::mozilla::UpdateAnimationsTasks = - 4; - pub const UpdateAnimationsTasks_CascadeResults: - root::mozilla::UpdateAnimationsTasks = - 8; - pub type UpdateAnimationsTasks = u8; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum LengthParsingMode { Default = 0, SVG = 1, } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum InheritTarget { - Text = 0, - FirstLetterContinuation = 1, - PlaceholderFrame = 2, - } - pub type CSSPseudoElementTypeBase = u8; - pub const CSSPseudoElementType_InheritingAnonBox: - root::mozilla::CSSPseudoElementType = - CSSPseudoElementType::Count; - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CSSPseudoElementType { - after = 0, - before = 1, - backdrop = 2, - cue = 3, - firstLetter = 4, - firstLine = 5, - mozSelection = 6, - mozFocusInner = 7, - mozFocusOuter = 8, - mozListBullet = 9, - mozListNumber = 10, - mozMathAnonymous = 11, - mozNumberWrapper = 12, - mozNumberText = 13, - mozNumberSpinBox = 14, - mozNumberSpinUp = 15, - mozNumberSpinDown = 16, - mozProgressBar = 17, - mozRangeTrack = 18, - mozRangeProgress = 19, - mozRangeThumb = 20, - mozMeterBar = 21, - mozPlaceholder = 22, - placeholder = 23, - mozColorSwatch = 24, - Count = 25, - NonInheritingAnonBox = 26, - XULTree = 27, - NotPseudo = 28, - MAX = 29, - } - pub mod widget { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct IMEState([u8; 0]); - } - pub type RawSelectionType = ::std::os::raw::c_short; - #[repr(i16)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum SelectionType { - eInvalid = -1, - eNone = 0, - eNormal = 1, - eSpellCheck = 2, - eIMERawClause = 4, - eIMESelectedRawClause = 8, - eIMEConvertedClause = 16, - eIMESelectedClause = 32, - eAccessibility = 64, - eFind = 128, - eURLSecondary = 256, - eURLStrikeout = 512, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct AccessibleCaretEventHub([u8; 0]); - pub mod a11y { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DocAccessible([u8; 0]); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct FramePropertyDescriptorUntyped { - pub mDestructor: root::mozilla::FramePropertyDescriptorUntyped_UntypedDestructor, - pub mDestructorWithFrame: root::mozilla::FramePropertyDescriptorUntyped_UntypedDestructorWithFrame, - } - /** - * mDestructor will be called if it's non-null. - */ - pub type FramePropertyDescriptorUntyped_UntypedDestructor = - ::std::option::Option; - /** - * mDestructorWithFrame will be called if it's non-null and mDestructor - * is null. WARNING: The frame passed to mDestructorWithFrame may - * be a dangling frame pointer, if this is being called during - * presshell teardown. Do not use it except to compare against - * other frame pointers. No frame will have been allocated with - * the same address yet. - */ - pub type FramePropertyDescriptorUntyped_UntypedDestructorWithFrame = - ::std::option::Option; - #[test] - fn bindgen_test_layout_FramePropertyDescriptorUntyped() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - FramePropertyDescriptorUntyped ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - FramePropertyDescriptorUntyped ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyDescriptorUntyped ) - ) . mDestructor as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - FramePropertyDescriptorUntyped ) , "::" , stringify ! - ( mDestructor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyDescriptorUntyped ) - ) . mDestructorWithFrame as * const _ as usize } , - 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - FramePropertyDescriptorUntyped ) , "::" , stringify ! - ( mDestructorWithFrame ) )); - } - impl Clone for FramePropertyDescriptorUntyped { - fn clone(&self) -> Self { *self } - } - /** - * The FramePropertyTable is optimized for storing 0 or 1 properties on - * a given frame. Storing very large numbers of properties on a single - * frame will not be efficient. - * - * Property values are passed as void* but do not actually have to be - * valid pointers. You can use NS_INT32_TO_PTR/NS_PTR_TO_INT32 to - * store int32_t values. Null/zero values can be stored and retrieved. - * Of course, the destructor function (if any) must handle such values - * correctly. - */ - #[repr(C)] - #[derive(Debug)] - pub struct FramePropertyTable { - pub mEntries: [u64; 6usize], - pub mLastFrame: *const root::nsIFrame, - pub mLastEntry: *mut root::mozilla::FramePropertyTable_Entry, - } - pub type FramePropertyTable_UntypedDescriptor = - *const root::mozilla::FramePropertyDescriptorUntyped; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct FramePropertyTable_ReinterpretHelper { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - /** - * Stores a property descriptor/value pair. It can also be used to - * store an nsTArray of PropertyValues. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct FramePropertyTable_PropertyValue { - pub mProperty: root::mozilla::FramePropertyTable_UntypedDescriptor, - pub mValue: *mut ::std::os::raw::c_void, - } - #[test] - fn bindgen_test_layout_FramePropertyTable_PropertyValue() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - FramePropertyTable_PropertyValue ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - FramePropertyTable_PropertyValue ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const FramePropertyTable_PropertyValue ) ) - . mProperty as * const _ as usize } , 0usize , concat - ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable_PropertyValue ) , "::" , stringify - ! ( mProperty ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const FramePropertyTable_PropertyValue ) ) - . mValue as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable_PropertyValue ) , "::" , stringify - ! ( mValue ) )); - } - impl Clone for FramePropertyTable_PropertyValue { - fn clone(&self) -> Self { *self } - } - /** - * Used with an array of PropertyValues to allow lookups that compare - * only on the FramePropertyDescriptor. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct FramePropertyTable_PropertyComparator { - pub _address: u8, - } - #[test] - fn bindgen_test_layout_FramePropertyTable_PropertyComparator() { - assert_eq!(::std::mem::size_of::() - , 1usize , concat ! ( - "Size of: " , stringify ! ( - FramePropertyTable_PropertyComparator ) )); - assert_eq! (::std::mem::align_of::() - , 1usize , concat ! ( - "Alignment of " , stringify ! ( - FramePropertyTable_PropertyComparator ) )); - } - impl Clone for FramePropertyTable_PropertyComparator { - fn clone(&self) -> Self { *self } - } - /** - * Our hashtable entry. The key is an nsIFrame*, the value is a - * PropertyValue representing one or more property/value pairs. - */ - #[repr(C)] - #[derive(Debug)] - pub struct FramePropertyTable_Entry { - pub _base: root::nsPtrHashKey, - pub mProp: root::mozilla::FramePropertyTable_PropertyValue, - } - #[test] - fn bindgen_test_layout_FramePropertyTable_Entry() { - assert_eq!(::std::mem::size_of::() , - 32usize , concat ! ( - "Size of: " , stringify ! ( FramePropertyTable_Entry ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - FramePropertyTable_Entry ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyTable_Entry ) ) . - mProp as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable_Entry ) , "::" , stringify ! ( - mProp ) )); - } - #[test] - fn bindgen_test_layout_FramePropertyTable() { - assert_eq!(::std::mem::size_of::() , 64usize , - concat ! ( - "Size of: " , stringify ! ( FramePropertyTable ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( FramePropertyTable ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyTable ) ) . mEntries - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable ) , "::" , stringify ! ( mEntries ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyTable ) ) . - mLastFrame as * const _ as usize } , 48usize , concat - ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable ) , "::" , stringify ! ( mLastFrame - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyTable ) ) . - mLastEntry as * const _ as usize } , 56usize , concat - ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable ) , "::" , stringify ! ( mLastEntry - ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct ScrollbarStyles { - pub mHorizontal: u8, - pub mVertical: u8, - pub mScrollBehavior: u8, - pub mScrollSnapTypeX: u8, - pub mScrollSnapTypeY: u8, - pub mScrollSnapPointsX: root::nsStyleCoord, - pub mScrollSnapPointsY: root::nsStyleCoord, - pub mScrollSnapDestinationX: root::nsStyleCoord_CalcValue, - pub mScrollSnapDestinationY: root::nsStyleCoord_CalcValue, - } - #[test] - fn bindgen_test_layout_ScrollbarStyles() { - assert_eq!(::std::mem::size_of::() , 64usize , - concat ! ( - "Size of: " , stringify ! ( ScrollbarStyles ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( ScrollbarStyles ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . mHorizontal - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mHorizontal ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . mVertical - as * const _ as usize } , 1usize , concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mVertical ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollBehavior as * const _ as usize } , 2usize , - concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollBehavior ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapTypeX as * const _ as usize } , 3usize , - concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapTypeX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapTypeY as * const _ as usize } , 4usize , - concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapTypeY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapPointsX as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapPointsX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapPointsY as * const _ as usize } , 24usize , - concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapPointsY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapDestinationX as * const _ as usize } , - 40usize , concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapDestinationX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapDestinationY as * const _ as usize } , - 52usize , concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapDestinationY ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct LangGroupFontPrefs { - pub mLangGroup: root::nsCOMPtr, - pub mMinimumFontSize: root::nscoord, - pub mDefaultVariableFont: root::nsFont, - pub mDefaultFixedFont: root::nsFont, - pub mDefaultSerifFont: root::nsFont, - pub mDefaultSansSerifFont: root::nsFont, - pub mDefaultMonospaceFont: root::nsFont, - pub mDefaultCursiveFont: root::nsFont, - pub mDefaultFantasyFont: root::nsFont, - pub mNext: root::nsAutoPtr, - } - #[test] - fn bindgen_test_layout_LangGroupFontPrefs() { - assert_eq!(::std::mem::size_of::() , 640usize - , concat ! ( - "Size of: " , stringify ! ( LangGroupFontPrefs ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( LangGroupFontPrefs ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mLangGroup as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( mLangGroup - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mMinimumFontSize as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mMinimumFontSize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultVariableFont as * const _ as usize } , 16usize - , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultVariableFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultFixedFont as * const _ as usize } , 104usize , - concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultFixedFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultSerifFont as * const _ as usize } , 192usize , - concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultSerifFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultSansSerifFont as * const _ as usize } , - 280usize , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultSansSerifFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultMonospaceFont as * const _ as usize } , - 368usize , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultMonospaceFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultCursiveFont as * const _ as usize } , 456usize - , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultCursiveFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultFantasyFont as * const _ as usize } , 544usize - , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultFantasyFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . mNext as - * const _ as usize } , 632usize , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( mNext ) - )); - } - /** - * Some functionality that has historically lived on nsPresContext does not - * actually need to be per-document. This singleton class serves as a host - * for that functionality. We delegate to it from nsPresContext where - * appropriate, and use it standalone in some cases as well. - */ - #[repr(C)] - #[derive(Debug)] - pub struct StaticPresData { - pub mLangService: root::nsCOMPtr, - pub mBorderWidthTable: [root::nscoord; 3usize], - pub mStaticLangGroupFontPrefs: root::mozilla::LangGroupFontPrefs, - } - #[test] - fn bindgen_test_layout_StaticPresData() { - assert_eq!(::std::mem::size_of::() , 664usize , - concat ! ( "Size of: " , stringify ! ( StaticPresData ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StaticPresData ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StaticPresData ) ) . mLangService - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( StaticPresData - ) , "::" , stringify ! ( mLangService ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StaticPresData ) ) . - mBorderWidthTable as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( StaticPresData - ) , "::" , stringify ! ( mBorderWidthTable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StaticPresData ) ) . - mStaticLangGroupFontPrefs as * const _ as usize } , - 24usize , concat ! ( - "Alignment of field: " , stringify ! ( StaticPresData - ) , "::" , stringify ! ( mStaticLangGroupFontPrefs ) - )); - } - #[repr(C)] - #[derive(Debug)] - pub struct EffectCompositor { - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mPresContext: *mut root::nsPresContext, - pub mElementsToRestyle: [u64; 12usize], - pub mRuleProcessors: [u64; 4usize], - } - pub type EffectCompositor_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct EffectCompositor_cycleCollection { - pub _base: root::nsCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_EffectCompositor_cycleCollection() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - EffectCompositor_cycleCollection ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - EffectCompositor_cycleCollection ) )); - } - impl Clone for EffectCompositor_cycleCollection { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum EffectCompositor_CascadeLevel { - Animations = 0, - Transitions = 1, - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum EffectCompositor_RestyleType { - Throttled = 0, - Standard = 1, - Layer = 2, - } - #[repr(C)] - #[derive(Debug)] - pub struct EffectCompositor_AnimationStyleRuleProcessor { - pub _base: root::nsIStyleRuleProcessor, - pub mRefCnt: root::nsAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mCompositor: *mut root::mozilla::EffectCompositor, - pub mCascadeLevel: root::mozilla::EffectCompositor_CascadeLevel, - } - pub type EffectCompositor_AnimationStyleRuleProcessor_HasThreadSafeRefCnt - = root::mozilla::FalseType; - #[test] - fn bindgen_test_layout_EffectCompositor_AnimationStyleRuleProcessor() { - assert_eq!(::std::mem::size_of::() - , 40usize , concat ! ( - "Size of: " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const - EffectCompositor_AnimationStyleRuleProcessor ) ) . - mRefCnt as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) , "::" - , stringify ! ( mRefCnt ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const - EffectCompositor_AnimationStyleRuleProcessor ) ) . - _mOwningThread as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) , "::" - , stringify ! ( _mOwningThread ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const - EffectCompositor_AnimationStyleRuleProcessor ) ) . - mCompositor as * const _ as usize } , 24usize , concat - ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) , "::" - , stringify ! ( mCompositor ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const - EffectCompositor_AnimationStyleRuleProcessor ) ) . - mCascadeLevel as * const _ as usize } , 32usize , - concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) , "::" - , stringify ! ( mCascadeLevel ) )); - } - extern "C" { - #[link_name = - "_ZN7mozilla16EffectCompositor21_cycleCollectorGlobalE"] - pub static mut EffectCompositor__cycleCollectorGlobal: - root::mozilla::EffectCompositor_cycleCollection; - } - pub const EffectCompositor_kCascadeLevelCount: usize = 2; - #[test] - fn bindgen_test_layout_EffectCompositor() { - assert_eq!(::std::mem::size_of::() , 152usize , - concat ! ( - "Size of: " , stringify ! ( EffectCompositor ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( EffectCompositor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const EffectCompositor ) ) . mRefCnt as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor ) , "::" , stringify ! ( mRefCnt ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const EffectCompositor ) ) . - _mOwningThread as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor ) , "::" , stringify ! ( - _mOwningThread ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const EffectCompositor ) ) . - mPresContext as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor ) , "::" , stringify ! ( mPresContext - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const EffectCompositor ) ) . - mElementsToRestyle as * const _ as usize } , 24usize , - concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor ) , "::" , stringify ! ( - mElementsToRestyle ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const EffectCompositor ) ) . - mRuleProcessors as * const _ as usize } , 120usize , - concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor ) , "::" , stringify ! ( - mRuleProcessors ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventStateManager([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct CounterStyleManager { - pub mRefCnt: root::nsAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mPresContext: *mut root::nsPresContext, - pub mCacheTable: [u64; 6usize], - } - pub type CounterStyleManager_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[test] - fn bindgen_test_layout_CounterStyleManager() { - assert_eq!(::std::mem::size_of::() , 72usize - , concat ! ( - "Size of: " , stringify ! ( CounterStyleManager ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( CounterStyleManager ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const CounterStyleManager ) ) . mRefCnt - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - CounterStyleManager ) , "::" , stringify ! ( mRefCnt ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const CounterStyleManager ) ) . - _mOwningThread as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - CounterStyleManager ) , "::" , stringify ! ( - _mOwningThread ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CounterStyleManager ) ) . - mPresContext as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - CounterStyleManager ) , "::" , stringify ! ( - mPresContext ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CounterStyleManager ) ) . - mCacheTable as * const _ as usize } , 24usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CounterStyleManager ) , "::" , stringify ! ( - mCacheTable ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct RestyleManager([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DeadlockDetector { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - /** - * BlockingResourceBase - * Base class of resources that might block clients trying to acquire them. - * Does debugging and deadlock detection in DEBUG builds. - **/ - #[repr(C)] - #[derive(Debug)] - pub struct BlockingResourceBase { - /** - * mChainPrev - * A series of resource acquisitions creates a chain of orders. This - * chain is implemented as a linked list; |mChainPrev| points to the - * resource most recently Acquire()'d before this one. - **/ - pub mChainPrev: *mut root::mozilla::BlockingResourceBase, - /** - * mName - * A descriptive name for this resource. Used in error - * messages etc. - */ - pub mName: *const ::std::os::raw::c_char, - /** - * mType - * The more specific type of this resource. Used to implement - * special semantics (e.g., reentrancy of monitors). - **/ - pub mType: root::mozilla::BlockingResourceBase_BlockingResourceType, - /** - * mAcquired - * Indicates if this resource is currently acquired. - */ - pub mAcquired: root::mozilla::BlockingResourceBase_AcquisitionState, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum BlockingResourceBase_BlockingResourceType { - eMutex = 0, - eReentrantMonitor = 1, - eCondVar = 2, - } - pub type BlockingResourceBase_DDT = - root::mozilla::DeadlockDetector; - pub type BlockingResourceBase_AcquisitionState = bool; - extern "C" { - #[link_name = - "_ZN7mozilla20BlockingResourceBase17kResourceTypeNameE"] - pub static mut BlockingResourceBase_kResourceTypeName: - [*const ::std::os::raw::c_char; 0usize]; - } - extern "C" { - #[link_name = "_ZN7mozilla20BlockingResourceBase9sCallOnceE"] - pub static mut BlockingResourceBase_sCallOnce: - root::PRCallOnceType; - } - extern "C" { - #[link_name = - "_ZN7mozilla20BlockingResourceBase26sResourceAcqnChainFrontTPIE"] - pub static mut BlockingResourceBase_sResourceAcqnChainFrontTPI: - ::std::os::raw::c_uint; - } - extern "C" { - #[link_name = - "_ZN7mozilla20BlockingResourceBase17sDeadlockDetectorE"] - pub static mut BlockingResourceBase_sDeadlockDetector: - *mut root::mozilla::BlockingResourceBase_DDT; - } - #[test] - fn bindgen_test_layout_BlockingResourceBase() { - assert_eq!(::std::mem::size_of::() , 24usize - , concat ! ( - "Size of: " , stringify ! ( BlockingResourceBase ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( BlockingResourceBase ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const BlockingResourceBase ) ) . - mChainPrev as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - BlockingResourceBase ) , "::" , stringify ! ( - mChainPrev ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const BlockingResourceBase ) ) . mName - as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - BlockingResourceBase ) , "::" , stringify ! ( mName ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const BlockingResourceBase ) ) . mType - as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - BlockingResourceBase ) , "::" , stringify ! ( mType ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const BlockingResourceBase ) ) . - mAcquired as * const _ as usize } , 20usize , concat ! - ( - "Alignment of field: " , stringify ! ( - BlockingResourceBase ) , "::" , stringify ! ( - mAcquired ) )); - } - /** - * OffTheBooksMutex is identical to Mutex, except that OffTheBooksMutex doesn't - * include leak checking. Sometimes you want to intentionally "leak" a mutex - * until shutdown; in these cases, OffTheBooksMutex is for you. - */ - #[repr(C)] - #[derive(Debug)] - pub struct OffTheBooksMutex { - pub _base: root::mozilla::detail::MutexImpl, - pub _base_1: root::mozilla::BlockingResourceBase, - pub mOwningThread: *mut root::PRThread, - } - #[test] - fn bindgen_test_layout_OffTheBooksMutex() { - assert_eq!(::std::mem::size_of::() , 72usize , - concat ! ( - "Size of: " , stringify ! ( OffTheBooksMutex ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( OffTheBooksMutex ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OffTheBooksMutex ) ) . - mOwningThread as * const _ as usize } , 64usize , - concat ! ( - "Alignment of field: " , stringify ! ( - OffTheBooksMutex ) , "::" , stringify ! ( - mOwningThread ) )); - } - /** - * Mutex - * When possible, use MutexAutoLock/MutexAutoUnlock to lock/unlock this - * mutex within a scope, instead of calling Lock/Unlock directly. - */ - #[repr(C)] - #[derive(Debug)] - pub struct Mutex { - pub _base: root::mozilla::OffTheBooksMutex, - } - #[test] - fn bindgen_test_layout_Mutex() { - assert_eq!(::std::mem::size_of::() , 72usize , concat ! ( - "Size of: " , stringify ! ( Mutex ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( Mutex ) )); - } - pub mod image { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ImageURL([u8; 0]); - /** - * An ImageLib cache entry key. - * - * We key the cache on the initial URI (before any redirects), with some - * canonicalization applied. See ComputeHash() for the details. - * Controlled documents do not share their cache entries with - * non-controlled documents, or other controlled documents. - */ - #[repr(C)] - #[derive(Debug)] - pub struct ImageCacheKey { - pub mURI: root::RefPtr, - pub mBlobSerial: [u64; 2usize], - pub mOriginAttributes: root::mozilla::OriginAttributes, - pub mControlledDocument: *mut ::std::os::raw::c_void, - pub mHash: u32, - pub mIsChrome: bool, - } - #[test] - fn bindgen_test_layout_ImageCacheKey() { - assert_eq!(::std::mem::size_of::() , 80usize , - concat ! ( - "Size of: " , stringify ! ( ImageCacheKey ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( ImageCacheKey ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . mURI as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( mURI ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . - mBlobSerial as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( mBlobSerial - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . - mOriginAttributes as * const _ as usize } , - 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( - mOriginAttributes ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . - mControlledDocument as * const _ as usize } , - 64usize , concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( - mControlledDocument ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . mHash as - * const _ as usize } , 72usize , concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( mHash ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . mIsChrome - as * const _ as usize } , 76usize , concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( mIsChrome ) - )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Image([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ProgressTracker([u8; 0]); - #[repr(C)] - pub struct IProgressObserver__bindgen_vtable { - } - /** - * An interface for observing changes to image state, as reported by - * ProgressTracker. - * - * This is the ImageLib-internal version of imgINotificationObserver, - * essentially, with implementation details that code outside of ImageLib - * shouldn't see. - * - * XXX(seth): It's preferable to avoid adding anything to this interface if - * possible. In the long term, it would be ideal to get to a place where we can - * just use the imgINotificationObserver interface internally as well. - */ - #[repr(C)] - #[derive(Debug)] - pub struct IProgressObserver { - pub vtable_: *const IProgressObserver__bindgen_vtable, - pub _base: u64, - } - #[test] - fn bindgen_test_layout_IProgressObserver() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( IProgressObserver ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( IProgressObserver - ) )); - } - } - pub type CounterValue = i32; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct NegativeType([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct PadType([u8; 0]); - #[repr(C)] - pub struct CounterStyle__bindgen_vtable { - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct CounterStyle { - pub vtable_: *const CounterStyle__bindgen_vtable, - pub mStyle: i32, - } - #[test] - fn bindgen_test_layout_CounterStyle() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( "Size of: " , stringify ! ( CounterStyle ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( CounterStyle ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CounterStyle ) ) . mStyle as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( CounterStyle ) - , "::" , stringify ! ( mStyle ) )); - } - impl Clone for CounterStyle { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Position { - pub mXPosition: root::mozilla::Position_Coord, - pub mYPosition: root::mozilla::Position_Coord, - } - pub type Position_Coord = root::nsStyleCoord_CalcValue; - #[test] - fn bindgen_test_layout_Position() { - assert_eq!(::std::mem::size_of::() , 24usize , concat ! - ( "Size of: " , stringify ! ( Position ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat ! - ( "Alignment of " , stringify ! ( Position ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Position ) ) . mXPosition as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( Position ) , - "::" , stringify ! ( mXPosition ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Position ) ) . mYPosition as * - const _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( Position ) , - "::" , stringify ! ( mYPosition ) )); - } - impl Clone for Position { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct StyleTransition { - pub mTimingFunction: root::nsTimingFunction, - pub mDuration: f32, - pub mDelay: f32, - pub mProperty: root::nsCSSPropertyID, - pub mUnknownProperty: root::nsCOMPtr, - } - #[test] - fn bindgen_test_layout_StyleTransition() { - assert_eq!(::std::mem::size_of::() , 40usize , - concat ! ( - "Size of: " , stringify ! ( StyleTransition ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StyleTransition ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleTransition ) ) . - mTimingFunction as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( StyleTransition - ) , "::" , stringify ! ( mTimingFunction ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleTransition ) ) . mDuration - as * const _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleTransition - ) , "::" , stringify ! ( mDuration ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleTransition ) ) . mDelay as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleTransition - ) , "::" , stringify ! ( mDelay ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleTransition ) ) . mProperty - as * const _ as usize } , 28usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleTransition - ) , "::" , stringify ! ( mProperty ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleTransition ) ) . - mUnknownProperty as * const _ as usize } , 32usize , - concat ! ( - "Alignment of field: " , stringify ! ( StyleTransition - ) , "::" , stringify ! ( mUnknownProperty ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct StyleAnimation { - pub mTimingFunction: root::nsTimingFunction, - pub mDuration: f32, - pub mDelay: f32, - pub mName: ::nsstring::nsStringRepr, - pub mDirection: root::mozilla::dom::PlaybackDirection, - pub mFillMode: root::mozilla::dom::FillMode, - pub mPlayState: u8, - pub mIterationCount: f32, - } - #[test] - fn bindgen_test_layout_StyleAnimation() { - assert_eq!(::std::mem::size_of::() , 56usize , - concat ! ( "Size of: " , stringify ! ( StyleAnimation ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StyleAnimation ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . - mTimingFunction as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mTimingFunction ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mDuration as - * const _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mDuration ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mDelay as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mDelay ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mName as * - const _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mDirection - as * const _ as usize } , 48usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mDirection ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mFillMode as - * const _ as usize } , 49usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mFillMode ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mPlayState - as * const _ as usize } , 50usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mPlayState ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . - mIterationCount as * const _ as usize } , 52usize , - concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mIterationCount ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct StyleBasicShape { - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - pub mType: root::mozilla::StyleBasicShapeType, - pub mFillRule: root::mozilla::StyleFillRule, - pub mCoordinates: root::nsTArray, - pub mPosition: root::mozilla::Position, - pub mRadius: root::nsStyleCorners, - } - pub type StyleBasicShape_HasThreadSafeRefCnt = - root::mozilla::TrueType; - #[test] - fn bindgen_test_layout_StyleBasicShape() { - assert_eq!(::std::mem::size_of::() , 120usize , - concat ! ( - "Size of: " , stringify ! ( StyleBasicShape ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StyleBasicShape ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . mRefCnt as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . mType as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . mFillRule - as * const _ as usize } , 9usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mFillRule ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . - mCoordinates as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mCoordinates ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . mPosition - as * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mPosition ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . mRadius as - * const _ as usize } , 48usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mRadius ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct StyleShapeSource { - pub __bindgen_anon_1: root::mozilla::StyleShapeSource__bindgen_ty_1, - pub mType: root::mozilla::StyleShapeSourceType, - pub mReferenceBox: root::mozilla::StyleGeometryBox, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleShapeSource__bindgen_ty_1 { - pub mBasicShape: root::__BindgenUnionField<*mut root::mozilla::StyleBasicShape>, - pub mURL: root::__BindgenUnionField<*mut root::mozilla::css::URLValue>, - pub bindgen_union_field: u64, - } - #[test] - fn bindgen_test_layout_StyleShapeSource__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::() - , 8usize , concat ! ( - "Size of: " , stringify ! ( - StyleShapeSource__bindgen_ty_1 ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - StyleShapeSource__bindgen_ty_1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleShapeSource__bindgen_ty_1 ) - ) . mBasicShape as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - StyleShapeSource__bindgen_ty_1 ) , "::" , stringify ! - ( mBasicShape ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleShapeSource__bindgen_ty_1 ) - ) . mURL as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleShapeSource__bindgen_ty_1 ) , "::" , stringify ! - ( mURL ) )); - } - impl Clone for StyleShapeSource__bindgen_ty_1 { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_StyleShapeSource() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( - "Size of: " , stringify ! ( StyleShapeSource ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StyleShapeSource ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleShapeSource ) ) . mType as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleShapeSource ) , "::" , stringify ! ( mType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleShapeSource ) ) . - mReferenceBox as * const _ as usize } , 9usize , - concat ! ( - "Alignment of field: " , stringify ! ( - StyleShapeSource ) , "::" , stringify ! ( - mReferenceBox ) )); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ComputedTimingFunction { - pub mType: root::nsTimingFunction_Type, - pub mTimingFunction: root::nsSMILKeySpline, - pub mStepsOrFrames: u32, - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum ComputedTimingFunction_BeforeFlag { Unset = 0, Set = 1, } - #[test] - fn bindgen_test_layout_ComputedTimingFunction() { - assert_eq!(::std::mem::size_of::() , - 136usize , concat ! ( - "Size of: " , stringify ! ( ComputedTimingFunction ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( ComputedTimingFunction - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComputedTimingFunction ) ) . - mType as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - ComputedTimingFunction ) , "::" , stringify ! ( mType - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComputedTimingFunction ) ) . - mTimingFunction as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - ComputedTimingFunction ) , "::" , stringify ! ( - mTimingFunction ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComputedTimingFunction ) ) . - mStepsOrFrames as * const _ as usize } , 128usize , - concat ! ( - "Alignment of field: " , stringify ! ( - ComputedTimingFunction ) , "::" , stringify ! ( - mStepsOrFrames ) )); - } - impl Clone for ComputedTimingFunction { - fn clone(&self) -> Self { *self } - } /** * This class holds all non-tree-structural state of an element that might be * used for selector matching eventually. @@ -8289,18 +9043,18 @@ pub mod root { PropertyStyleAnimationValuePair ) , "::" , stringify ! ( mValue ) )); } + pub type ComputedKeyframeValues = + root::nsTArray; #[test] - fn __bindgen_test_layout_template_4() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( + fn __bindgen_test_layout_DefaultDelete_instantiation_156262() { + assert_eq!(::std::mem::size_of::() , + 1usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) - )); - assert_eq!(::std::mem::align_of::>() + root::mozilla::DefaultDelete ) )); + assert_eq!(::std::mem::align_of::() , 1usize , concat ! ( "Alignment of template specialization: " , stringify ! - ( root::mozilla::DefaultDelete - ) )); + ( root::mozilla::DefaultDelete ) )); } /** * Utility class to handle animated style values @@ -8541,6 +9295,50 @@ pub mod root { "Alignment of field: " , stringify ! ( AnimationValue ) , "::" , stringify ! ( mServo ) )); } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ComputedTimingFunction { + pub mType: root::nsTimingFunction_Type, + pub mTimingFunction: root::nsSMILKeySpline, + pub mStepsOrFrames: u32, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum ComputedTimingFunction_BeforeFlag { Unset = 0, Set = 1, } + #[test] + fn bindgen_test_layout_ComputedTimingFunction() { + assert_eq!(::std::mem::size_of::() , + 136usize , concat ! ( + "Size of: " , stringify ! ( ComputedTimingFunction ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( ComputedTimingFunction + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComputedTimingFunction ) ) . + mType as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + ComputedTimingFunction ) , "::" , stringify ! ( mType + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComputedTimingFunction ) ) . + mTimingFunction as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ComputedTimingFunction ) , "::" , stringify ! ( + mTimingFunction ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComputedTimingFunction ) ) . + mStepsOrFrames as * const _ as usize } , 128usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ComputedTimingFunction ) , "::" , stringify ! ( + mStepsOrFrames ) )); + } + impl Clone for ComputedTimingFunction { + fn clone(&self) -> Self { *self } + } /** * A ValueCalculator class that performs additional checks before performing * arithmetic operations such that if either operand is Forever (or the @@ -8583,8 +9381,7 @@ pub mod root { * time duration to be used in arithmetic operations (and not just value * comparisons). */ - pub type StickyTimeDuration = - root::mozilla::BaseTimeDuration; + pub type StickyTimeDuration = root::mozilla::BaseTimeDuration; /** * A property-value pair specified on a keyframe. */ @@ -8626,28 +9423,44 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGLengthList([u8; 0]); + pub struct SVGLengthList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGNumberList([u8; 0]); + pub struct SVGNumberList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGPathData([u8; 0]); + pub struct SVGPathData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGPointList([u8; 0]); + pub struct SVGPointList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGAnimatedPreserveAspectRatio([u8; 0]); + pub struct SVGAnimatedPreserveAspectRatio { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGStringList([u8; 0]); + pub struct SVGStringList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGTransformList([u8; 0]); + pub struct SVGTransformList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DeclarationBlock([u8; 0]); + pub struct DeclarationBlock { + _unused: [u8; 0], + } /** * A structure representing a single attribute name and value. * @@ -8691,6 +9504,39 @@ pub mod root { Attributes = 2, All = 3, } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct NonOwningAnimationTarget { + pub mElement: *mut root::mozilla::dom::Element, + pub mPseudoType: root::mozilla::CSSPseudoElementType, + } + #[test] + fn bindgen_test_layout_NonOwningAnimationTarget() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( NonOwningAnimationTarget ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + NonOwningAnimationTarget ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NonOwningAnimationTarget ) ) . + mElement as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + NonOwningAnimationTarget ) , "::" , stringify ! ( + mElement ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NonOwningAnimationTarget ) ) . + mPseudoType as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + NonOwningAnimationTarget ) , "::" , stringify ! ( + mPseudoType ) )); + } + impl Clone for NonOwningAnimationTarget { + fn clone(&self) -> Self { *self } + } #[repr(u8)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum Directionality { @@ -8775,7 +9621,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ContainerLayerParameters([u8; 0]); + pub struct ContainerLayerParameters { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct LookAndFeel { @@ -9059,11 +9907,145 @@ pub mod root { fn clone(&self) -> Self { *self } } #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct RestyleTracker([u8; 0]); + #[derive(Debug)] + pub struct PseudoElementHashEntry { + pub _base: root::PLDHashEntryHdr, + pub mElement: root::RefPtr, + pub mPseudoType: root::mozilla::CSSPseudoElementType, + } + pub type PseudoElementHashEntry_KeyType = + root::mozilla::NonOwningAnimationTarget; + pub type PseudoElementHashEntry_KeyTypePointer = + *const root::mozilla::NonOwningAnimationTarget; + pub const PseudoElementHashEntry_ALLOW_MEMMOVE: + root::mozilla::PseudoElementHashEntry__bindgen_ty_1 = + PseudoElementHashEntry__bindgen_ty_1::ALLOW_MEMMOVE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum PseudoElementHashEntry__bindgen_ty_1 { ALLOW_MEMMOVE = 1, } + #[test] + fn bindgen_test_layout_PseudoElementHashEntry() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( PseudoElementHashEntry ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( PseudoElementHashEntry + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PseudoElementHashEntry ) ) . + mElement as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + PseudoElementHashEntry ) , "::" , stringify ! ( + mElement ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PseudoElementHashEntry ) ) . + mPseudoType as * const _ as usize } , 16usize , concat + ! ( + "Alignment of field: " , stringify ! ( + PseudoElementHashEntry ) , "::" , stringify ! ( + mPseudoType ) )); + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AnimationPerformanceWarning([u8; 0]); + pub struct RestyleTracker { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AnimationPerformanceWarning { + _unused: [u8; 0], + } + pub type CSSPseudoClassTypeBase = u8; + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CSSPseudoClassType { + empty = 0, + mozOnlyWhitespace = 1, + mozEmptyExceptChildrenWithLocalname = 2, + lang = 3, + root = 4, + any = 5, + firstChild = 6, + firstNode = 7, + lastChild = 8, + lastNode = 9, + onlyChild = 10, + firstOfType = 11, + lastOfType = 12, + onlyOfType = 13, + nthChild = 14, + nthLastChild = 15, + nthOfType = 16, + nthLastOfType = 17, + mozIsHTML = 18, + unresolved = 19, + mozNativeAnonymous = 20, + mozSystemMetric = 21, + mozLocaleDir = 22, + mozLWTheme = 23, + mozLWThemeBrightText = 24, + mozLWThemeDarkText = 25, + mozWindowInactive = 26, + mozTableBorderNonzero = 27, + mozBrowserFrame = 28, + scope = 29, + negation = 30, + dir = 31, + link = 32, + mozAnyLink = 33, + anyLink = 34, + visited = 35, + active = 36, + checked = 37, + disabled = 38, + enabled = 39, + focus = 40, + focusWithin = 41, + hover = 42, + mozDragOver = 43, + target = 44, + indeterminate = 45, + mozDevtoolsHighlighted = 46, + mozStyleeditorTransitioning = 47, + fullscreen = 48, + mozFullScreen = 49, + mozFocusRing = 50, + mozBroken = 51, + mozLoading = 52, + mozUserDisabled = 53, + mozSuppressed = 54, + mozHandlerClickToPlay = 55, + mozHandlerVulnerableUpdatable = 56, + mozHandlerVulnerableNoUpdate = 57, + mozHandlerDisabled = 58, + mozHandlerBlocked = 59, + mozHandlerCrashed = 60, + mozMathIncrementScriptLevel = 61, + mozAutofill = 62, + mozAutofillPreview = 63, + required = 64, + optional = 65, + valid = 66, + invalid = 67, + inRange = 68, + outOfRange = 69, + defaultPseudo = 70, + placeholderShown = 71, + mozReadOnly = 72, + mozReadWrite = 73, + mozSubmitInvalid = 74, + mozUIInvalid = 75, + mozUIValid = 76, + mozMeterOptimum = 77, + mozMeterSubOptimum = 78, + mozMeterSubSubOptimum = 79, + mozPlaceholder = 80, + Count = 81, + NotPseudo = 82, + MAX = 83, + } #[repr(C)] #[derive(Debug)] pub struct CSSFontFaceDescriptors { @@ -9160,9 +10142,8 @@ pub mod root { */ #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct UniquePtr { + pub struct UniquePtr { pub mPtr: *mut T, - pub _phantom_1: ::std::marker::PhantomData, } } #[repr(C)] @@ -9186,7 +10167,7 @@ pub mod root { pub _flags2: ::std::os::raw::c_int, pub _old_offset: root::__off_t, pub _cur_column: ::std::os::raw::c_ushort, - pub _vtable_offset: ::std::os::raw::c_char, + pub _vtable_offset: ::std::os::raw::c_schar, pub _shortbuf: [::std::os::raw::c_char; 1usize], pub _lock: *mut root::_IO_lock_t, pub _offset: root::__off64_t, @@ -9911,6 +10892,237 @@ pub mod root { NS_OK_NO_NAME_CLAUSE_HANDLED = 7864354, } pub type nsrefcnt = root::MozRefCountType; + pub type _IO_lock_t = ::std::os::raw::c_void; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct _IO_marker { + pub _next: *mut root::_IO_marker, + pub _sbuf: *mut root::_IO_FILE, + pub _pos: ::std::os::raw::c_int, + } + #[test] + fn bindgen_test_layout__IO_marker() { + assert_eq!(::std::mem::size_of::<_IO_marker>() , 24usize , concat ! ( + "Size of: " , stringify ! ( _IO_marker ) )); + assert_eq! (::std::mem::align_of::<_IO_marker>() , 8usize , concat ! ( + "Alignment of " , stringify ! ( _IO_marker ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const _IO_marker ) ) . _next as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( _IO_marker ) , "::" + , stringify ! ( _next ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const _IO_marker ) ) . _sbuf as * const _ + as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( _IO_marker ) , "::" + , stringify ! ( _sbuf ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const _IO_marker ) ) . _pos as * const _ as + usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( _IO_marker ) , "::" + , stringify ! ( _pos ) )); + } + impl Clone for _IO_marker { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + pub struct nsQueryFrame__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsQueryFrame { + pub vtable_: *const nsQueryFrame__bindgen_vtable, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsQueryFrame_FrameIID { + BRFrame_id = 0, + DetailsFrame_id = 1, + nsAutoRepeatBoxFrame_id = 2, + nsBCTableCellFrame_id = 3, + nsBackdropFrame_id = 4, + nsBlockFrame_id = 5, + nsBox_id = 6, + nsBoxFrame_id = 7, + nsBulletFrame_id = 8, + nsButtonBoxFrame_id = 9, + nsCanvasFrame_id = 10, + nsColorControlFrame_id = 11, + nsColumnSetFrame_id = 12, + nsComboboxControlFrame_id = 13, + nsComboboxDisplayFrame_id = 14, + nsContainerFrame_id = 15, + nsContinuingTextFrame_id = 16, + nsDateTimeControlFrame_id = 17, + nsDeckFrame_id = 18, + nsDocElementBoxFrame_id = 19, + nsFieldSetFrame_id = 20, + nsFileControlFrame_id = 21, + nsFirstLetterFrame_id = 22, + nsFirstLineFrame_id = 23, + nsFlexContainerFrame_id = 24, + nsFormControlFrame_id = 25, + nsFrame_id = 26, + nsGfxButtonControlFrame_id = 27, + nsGfxCheckboxControlFrame_id = 28, + nsGfxRadioControlFrame_id = 29, + nsGridContainerFrame_id = 30, + nsGridRowGroupFrame_id = 31, + nsGridRowLeafFrame_id = 32, + nsGroupBoxFrame_id = 33, + nsHTMLButtonControlFrame_id = 34, + nsHTMLCanvasFrame_id = 35, + nsHTMLFramesetBlankFrame_id = 36, + nsHTMLFramesetBorderFrame_id = 37, + nsHTMLFramesetFrame_id = 38, + nsHTMLScrollFrame_id = 39, + nsIAnonymousContentCreator_id = 40, + nsIComboboxControlFrame_id = 41, + nsIFormControlFrame_id = 42, + nsIFrame_id = 43, + nsIFrameFrame_id = 44, + nsIListControlFrame_id = 45, + nsIMathMLFrame_id = 46, + nsIMenuFrame_id = 47, + nsIObjectFrame_id = 48, + nsIPageSequenceFrame_id = 49, + nsIPercentBSizeObserver_id = 50, + nsIRootBox_id = 51, + nsSVGDisplayableFrame_id = 52, + nsISVGSVGFrame_id = 53, + nsIScrollableFrame_id = 54, + nsIScrollbarMediator_id = 55, + nsISelectControlFrame_id = 56, + nsIStatefulFrame_id = 57, + nsITableCellLayout_id = 58, + nsITableLayout_id = 59, + nsITextControlFrame_id = 60, + nsITreeBoxObject_id = 61, + nsImageBoxFrame_id = 62, + nsImageControlFrame_id = 63, + nsImageFrame_id = 64, + nsInlineFrame_id = 65, + nsLeafBoxFrame_id = 66, + nsLeafFrame_id = 67, + nsLegendFrame_id = 68, + nsListBoxBodyFrame_id = 69, + nsListControlFrame_id = 70, + nsListItemFrame_id = 71, + nsMathMLContainerFrame_id = 72, + nsMathMLFrame_id = 73, + nsMathMLmactionFrame_id = 74, + nsMathMLmathBlockFrame_id = 75, + nsMathMLmathInlineFrame_id = 76, + nsMathMLmencloseFrame_id = 77, + nsMathMLmfencedFrame_id = 78, + nsMathMLmfracFrame_id = 79, + nsMathMLmmultiscriptsFrame_id = 80, + nsMathMLmoFrame_id = 81, + nsMathMLmoverFrame_id = 82, + nsMathMLmpaddedFrame_id = 83, + nsMathMLmrootFrame_id = 84, + nsMathMLmrowFrame_id = 85, + nsMathMLmspaceFrame_id = 86, + nsMathMLmsqrtFrame_id = 87, + nsMathMLmstyleFrame_id = 88, + nsMathMLmtableFrame_id = 89, + nsMathMLmtableWrapperFrame_id = 90, + nsMathMLmtdFrame_id = 91, + nsMathMLmtdInnerFrame_id = 92, + nsMathMLmtrFrame_id = 93, + nsMathMLmunderFrame_id = 94, + nsMathMLmunderoverFrame_id = 95, + nsMathMLsemanticsFrame_id = 96, + nsMathMLTokenFrame_id = 97, + nsMenuBarFrame_id = 98, + nsMenuFrame_id = 99, + nsMenuPopupFrame_id = 100, + nsMeterFrame_id = 101, + nsNumberControlFrame_id = 102, + nsPluginFrame_id = 103, + nsPageBreakFrame_id = 104, + nsPageContentFrame_id = 105, + nsPageFrame_id = 106, + nsPlaceholderFrame_id = 107, + nsPopupSetFrame_id = 108, + nsProgressFrame_id = 109, + nsProgressMeterFrame_id = 110, + nsRangeFrame_id = 111, + nsResizerFrame_id = 112, + nsRootBoxFrame_id = 113, + nsRubyBaseContainerFrame_id = 114, + nsRubyBaseFrame_id = 115, + nsRubyContentFrame_id = 116, + nsRubyFrame_id = 117, + nsRubyTextContainerFrame_id = 118, + nsRubyTextFrame_id = 119, + nsScrollbarButtonFrame_id = 120, + nsScrollbarFrame_id = 121, + nsSelectsAreaFrame_id = 122, + nsSimplePageSequenceFrame_id = 123, + nsSliderFrame_id = 124, + nsSplittableFrame_id = 125, + nsSplitterFrame_id = 126, + nsStackFrame_id = 127, + nsSubDocumentFrame_id = 128, + nsSVGAFrame_id = 129, + nsSVGClipPathFrame_id = 130, + nsSVGContainerFrame_id = 131, + nsSVGDisplayContainerFrame_id = 132, + SVGFEContainerFrame_id = 133, + SVGFEImageFrame_id = 134, + SVGFELeafFrame_id = 135, + SVGFEUnstyledLeafFrame_id = 136, + nsSVGFilterFrame_id = 137, + nsSVGForeignObjectFrame_id = 138, + nsSVGGenericContainerFrame_id = 139, + nsSVGGFrame_id = 140, + nsSVGGradientFrame_id = 141, + nsSVGImageFrame_id = 142, + nsSVGInnerSVGFrame_id = 143, + nsSVGLinearGradientFrame_id = 144, + nsSVGMarkerFrame_id = 145, + nsSVGMarkerAnonChildFrame_id = 146, + nsSVGMaskFrame_id = 147, + nsSVGOuterSVGFrame_id = 148, + nsSVGOuterSVGAnonChildFrame_id = 149, + nsSVGPaintServerFrame_id = 150, + SVGGeometryFrame_id = 151, + nsSVGPatternFrame_id = 152, + nsSVGRadialGradientFrame_id = 153, + nsSVGStopFrame_id = 154, + nsSVGSwitchFrame_id = 155, + SVGTextFrame_id = 156, + nsSVGUseFrame_id = 157, + SVGViewFrame_id = 158, + nsTableCellFrame_id = 159, + nsTableColFrame_id = 160, + nsTableColGroupFrame_id = 161, + nsTableFrame_id = 162, + nsTableWrapperFrame_id = 163, + nsTableRowFrame_id = 164, + nsTableRowGroupFrame_id = 165, + nsTextBoxFrame_id = 166, + nsTextControlFrame_id = 167, + nsTextFrame_id = 168, + nsTitleBarFrame_id = 169, + nsTreeBodyFrame_id = 170, + nsTreeColFrame_id = 171, + nsVideoFrame_id = 172, + nsXULLabelFrame_id = 173, + nsXULScrollFrame_id = 174, + ViewportFrame_id = 175, + NON_FRAME_MARKER = 536870912, + } + #[test] + fn bindgen_test_layout_nsQueryFrame() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsQueryFrame ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsQueryFrame ) )); + } + impl Clone for nsQueryFrame { + fn clone(&self) -> Self { *self } + } /** * double-byte (char16_t) string types */ @@ -10011,8 +11223,7 @@ pub mod root { "Alignment of " , stringify ! ( nsDependentSubstring ) )); } #[repr(C)] - pub struct nsStringComparator__bindgen_vtable { - } + pub struct nsStringComparator__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug, Copy)] pub struct nsStringComparator { @@ -10133,24 +11344,7 @@ pub mod root { "Alignment of " , stringify ! ( nsCString ) )); } #[repr(C)] - #[derive(Debug)] - pub struct nsDependentCSubstring { - pub _base: root::nsACString, - } - pub type nsDependentCSubstring_self_type = root::nsDependentCSubstring; - #[test] - fn bindgen_test_layout_nsDependentCSubstring() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( - "Size of: " , stringify ! ( nsDependentCSubstring ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsDependentCSubstring ) - )); - } - #[repr(C)] - pub struct nsCStringComparator__bindgen_vtable { - } + pub struct nsCStringComparator__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug, Copy)] pub struct nsCStringComparator { @@ -10173,897 +11367,10 @@ pub mod root { * typedefs for backwards compatibility */ pub type nsSubstring = root::nsAString; + pub type nsAFlatString = ::nsstring::nsStringRepr; pub type nsAFlatCString = root::nsCString; - pub type _IO_lock_t = ::std::os::raw::c_void; #[repr(C)] - #[derive(Debug, Copy)] - pub struct _IO_marker { - pub _next: *mut root::_IO_marker, - pub _sbuf: *mut root::_IO_FILE, - pub _pos: ::std::os::raw::c_int, - } - #[test] - fn bindgen_test_layout__IO_marker() { - assert_eq!(::std::mem::size_of::<_IO_marker>() , 24usize , concat ! ( - "Size of: " , stringify ! ( _IO_marker ) )); - assert_eq! (::std::mem::align_of::<_IO_marker>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( _IO_marker ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const _IO_marker ) ) . _next as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( _IO_marker ) , "::" - , stringify ! ( _next ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const _IO_marker ) ) . _sbuf as * const _ - as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( _IO_marker ) , "::" - , stringify ! ( _sbuf ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const _IO_marker ) ) . _pos as * const _ as - usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( _IO_marker ) , "::" - , stringify ! ( _pos ) )); - } - impl Clone for _IO_marker { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIAtom { - pub _base: root::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 u16, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIAtom_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIAtom() { - assert_eq!(::std::mem::size_of::() , 24usize , concat ! ( - "Size of: " , stringify ! ( nsIAtom ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIAtom ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsIAtom ) ) . mHash as * const _ as - usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( nsIAtom ) , "::" , - stringify ! ( mHash ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsIAtom ) ) . mString as * const _ as - usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsIAtom ) , "::" , - stringify ! ( mString ) )); - } - impl Clone for nsIAtom { - fn clone(&self) -> Self { *self } - } - /** - * already_AddRefed cooperates with reference counting smart pointers to enable - * you to assign in a pointer _without_ |AddRef|ing it. You might want to use - * this as a return type from a function that returns an already |AddRef|ed - * pointer. - * - * TODO Move already_AddRefed to namespace mozilla. This has not yet been done - * because of the sheer number of usages of already_AddRefed. - * - * When should you use already_AddRefed<>? - * * Ensure a consumer takes ownership of a reference - * * Pass ownership without calling AddRef/Release (sometimes required in - * off-main-thread code) - * * The ref pointer type you're using doesn't support move construction - * - * Otherwise, use Move(RefPtr/nsCOMPtr/etc). - */ - #[repr(C)] - #[derive(Debug)] - pub struct already_AddRefed { - pub mRawPtr: *mut T, - } - pub type already_AddRefed_MatchNullptr = - ::std::option::Option; - #[repr(C)] - pub struct nsCOMPtr_helper__bindgen_vtable { - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsCOMPtr_helper { - pub vtable_: *const nsCOMPtr_helper__bindgen_vtable, - } - #[test] - fn bindgen_test_layout_nsCOMPtr_helper() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsCOMPtr_helper ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsCOMPtr_helper ) )); - } - impl Clone for nsCOMPtr_helper { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct RefPtr { - pub mRawPtr: *mut T, - } - pub type RefPtr_element_type = T; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct RefPtr_Proxy { - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - pub _phantom_2: ::std::marker::PhantomData, - } - pub type RefPtr_Proxy_member_function = [u8; 0usize]; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct RefPtr_ConstRemovingRefPtrTraits { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[repr(C)] - pub struct nsCycleCollectionTraversalCallback__bindgen_vtable { - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsCycleCollectionTraversalCallback { - pub vtable_: *const nsCycleCollectionTraversalCallback__bindgen_vtable, - pub mFlags: u32, - } - pub const nsCycleCollectionTraversalCallback_WANT_DEBUG_INFO: - root::nsCycleCollectionTraversalCallback__bindgen_ty_1 = - nsCycleCollectionTraversalCallback__bindgen_ty_1::WANT_DEBUG_INFO; - pub const nsCycleCollectionTraversalCallback_WANT_ALL_TRACES: - root::nsCycleCollectionTraversalCallback__bindgen_ty_1 = - nsCycleCollectionTraversalCallback__bindgen_ty_1::WANT_ALL_TRACES; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsCycleCollectionTraversalCallback__bindgen_ty_1 { - WANT_DEBUG_INFO = 1, - WANT_ALL_TRACES = 2, - } - #[test] - fn bindgen_test_layout_nsCycleCollectionTraversalCallback() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - nsCycleCollectionTraversalCallback ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsCycleCollectionTraversalCallback ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsCycleCollectionTraversalCallback ) - ) . mFlags as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsCycleCollectionTraversalCallback ) , "::" , stringify ! - ( mFlags ) )); - } - impl Clone for nsCycleCollectionTraversalCallback { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct JSContext([u8; 0]); - pub mod JS { - #[allow(unused_imports)] - use self::super::super::root; - /** - * JS::Value is the interface for a single JavaScript Engine value. A few - * general notes on JS::Value: - * - * - JS::Value has setX() and isX() members for X in - * - * { Int32, Double, String, Symbol, Boolean, Undefined, Null, Object, Magic } - * - * JS::Value also contains toX() for each of the non-singleton types. - * - * - Magic is a singleton type whose payload contains either a JSWhyMagic "reason" for - * the magic value or a uint32_t value. By providing JSWhyMagic values when - * creating and checking for magic values, it is possible to assert, at - * runtime, that only magic values with the expected reason flow through a - * particular value. For example, if cx->exception has a magic value, the - * reason must be JS_GENERATOR_CLOSING. - * - * - The JS::Value operations are preferred. The JSVAL_* operations remain for - * compatibility; they may be removed at some point. These operations mostly - * provide similar functionality. But there are a few key differences. One - * is that JS::Value gives null a separate type. - * Also, to help prevent mistakenly boxing a nullable JSObject* as an object, - * Value::setObject takes a JSObject&. (Conversely, Value::toObject returns a - * JSObject&.) A convenience member Value::setObjectOrNull is provided. - * - * - JSVAL_VOID is the same as the singleton value of the Undefined type. - * - * - Note that JS::Value is 8 bytes on 32 and 64-bit architectures. Thus, on - * 32-bit user code should avoid copying jsval/JS::Value as much as possible, - * preferring to pass by const Value&. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Value { - pub data: root::JS::Value_layout, - } - pub type Value_PayloadType = u64; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Value_layout { - pub asBits: root::__BindgenUnionField, - pub debugView: root::__BindgenUnionField, - pub s: root::__BindgenUnionField, - pub asDouble: root::__BindgenUnionField, - pub asPtr: root::__BindgenUnionField<*mut ::std::os::raw::c_void>, - pub asWord: root::__BindgenUnionField, - pub asUIntPtr: root::__BindgenUnionField, - pub bindgen_union_field: u64, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Value_layout__bindgen_ty_1 { - pub _bitfield_1: u64, - pub __bindgen_align: [u64; 0usize], - } - #[test] - fn bindgen_test_layout_Value_layout__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::() , - 8usize , concat ! ( - "Size of: " , stringify ! ( Value_layout__bindgen_ty_1 - ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - Value_layout__bindgen_ty_1 ) )); - } - impl Clone for Value_layout__bindgen_ty_1 { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Value_layout__bindgen_ty_2 { - pub payload: root::JS::Value_layout__bindgen_ty_2__bindgen_ty_1, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Value_layout__bindgen_ty_2__bindgen_ty_1 { - pub i32: root::__BindgenUnionField, - pub u32: root::__BindgenUnionField, - pub why: root::__BindgenUnionField, - pub bindgen_union_field: u32, - } - #[test] - fn bindgen_test_layout_Value_layout__bindgen_ty_2__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::() - , 4usize , concat ! ( - "Size of: " , stringify ! ( - Value_layout__bindgen_ty_2__bindgen_ty_1 ) )); - assert_eq! (::std::mem::align_of::() - , 4usize , concat ! ( - "Alignment of " , stringify ! ( - Value_layout__bindgen_ty_2__bindgen_ty_1 ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const Value_layout__bindgen_ty_2__bindgen_ty_1 - ) ) . i32 as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - Value_layout__bindgen_ty_2__bindgen_ty_1 ) , "::" , - stringify ! ( i32 ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const Value_layout__bindgen_ty_2__bindgen_ty_1 - ) ) . u32 as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - Value_layout__bindgen_ty_2__bindgen_ty_1 ) , "::" , - stringify ! ( u32 ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const Value_layout__bindgen_ty_2__bindgen_ty_1 - ) ) . why as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - Value_layout__bindgen_ty_2__bindgen_ty_1 ) , "::" , - stringify ! ( why ) )); - } - impl Clone for Value_layout__bindgen_ty_2__bindgen_ty_1 { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_Value_layout__bindgen_ty_2() { - assert_eq!(::std::mem::size_of::() , - 4usize , concat ! ( - "Size of: " , stringify ! ( Value_layout__bindgen_ty_2 - ) )); - assert_eq! (::std::mem::align_of::() , - 4usize , concat ! ( - "Alignment of " , stringify ! ( - Value_layout__bindgen_ty_2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Value_layout__bindgen_ty_2 ) ) . - payload as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - Value_layout__bindgen_ty_2 ) , "::" , stringify ! ( - payload ) )); - } - impl Clone for Value_layout__bindgen_ty_2 { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_Value_layout() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( Value_layout ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( Value_layout ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Value_layout ) ) . asBits as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( Value_layout ) - , "::" , stringify ! ( asBits ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Value_layout ) ) . debugView as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( Value_layout ) - , "::" , stringify ! ( debugView ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Value_layout ) ) . s as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( Value_layout ) - , "::" , stringify ! ( s ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Value_layout ) ) . asDouble as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( Value_layout ) - , "::" , stringify ! ( asDouble ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Value_layout ) ) . asPtr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( Value_layout ) - , "::" , stringify ! ( asPtr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Value_layout ) ) . asWord as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( Value_layout ) - , "::" , stringify ! ( asWord ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Value_layout ) ) . asUIntPtr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( Value_layout ) - , "::" , stringify ! ( asUIntPtr ) )); - } - impl Clone for Value_layout { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_Value() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( Value ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( Value ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Value ) ) . data as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( Value ) , "::" - , stringify ! ( data ) )); - } - impl Clone for Value { - fn clone(&self) -> Self { *self } - } - /** - * Reference to a T that has been rooted elsewhere. This is most useful - * as a parameter type, which guarantees that the T lvalue is properly - * rooted. See "Move GC Stack Rooting" above. - * - * If you want to add additional methods to Handle for a specific - * specialization, define a HandleBase specialization containing them. - */ - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Handle { - pub ptr: *mut T, - } - pub type Handle_ElementType = T; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum Handle_Disambiguator { - DeliberatelyChoosingThisOverload = 0, - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum Handle_CallerIdentity { - ImUsingThisOnlyInFromFromMarkedLocation = 0, - } - /** - * Similar to a handle, but the underlying storage can be changed. This is - * useful for outparams. - * - * If you want to add additional methods to MutableHandle for a specific - * specialization, define a MutableHandleBase specialization containing - * them. - */ - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct MutableHandle { - pub ptr: *mut T, - } - pub type MutableHandle_ElementType = T; - pub type HandleValue = root::JS::Handle; - pub type MutableHandleValue = - root::JS::MutableHandle; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DeletePolicy { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct FreePolicy { - pub _address: u8, - } - #[test] - fn bindgen_test_layout_FreePolicy() { - assert_eq!(::std::mem::size_of::() , 1usize , concat ! - ( "Size of: " , stringify ! ( FreePolicy ) )); - assert_eq! (::std::mem::align_of::() , 1usize , concat - ! ( "Alignment of " , stringify ! ( FreePolicy ) )); - } - impl Clone for FreePolicy { - fn clone(&self) -> Self { *self } - } - /** - * A GC pointer, tagged with the trace kind. - * - * In general, a GC pointer should be stored with an exact type. This class - * is for use when that is not possible because a single pointer must point - * to several kinds of GC thing. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct GCCellPtr { - pub ptr: usize, - } - #[test] - fn bindgen_test_layout_GCCellPtr() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( GCCellPtr ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( GCCellPtr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GCCellPtr ) ) . ptr as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( GCCellPtr ) , - "::" , stringify ! ( ptr ) )); - } - impl Clone for GCCellPtr { - fn clone(&self) -> Self { *self } - } - pub mod dbg { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(C)] - #[derive(Debug)] - pub struct GarbageCollectionEvent { - pub majorGCNumber_: u64, - pub reason: *const ::std::os::raw::c_char, - pub nonincrementalReason: *const ::std::os::raw::c_char, - pub collections: [u64; 5usize], - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct GarbageCollectionEvent_Collection { - pub startTimestamp: root::mozilla::TimeStamp, - pub endTimestamp: root::mozilla::TimeStamp, - } - #[test] - fn bindgen_test_layout_GarbageCollectionEvent_Collection() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - GarbageCollectionEvent_Collection ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - GarbageCollectionEvent_Collection ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const GarbageCollectionEvent_Collection - ) ) . startTimestamp as * const _ as usize } , - 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - GarbageCollectionEvent_Collection ) , "::" , - stringify ! ( startTimestamp ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const GarbageCollectionEvent_Collection - ) ) . endTimestamp as * const _ as usize } , - 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - GarbageCollectionEvent_Collection ) , "::" , - stringify ! ( endTimestamp ) )); - } - impl Clone for GarbageCollectionEvent_Collection { - fn clone(&self) -> Self { *self } - } - pub type GarbageCollectionEvent_Ptr = - root::mozilla::UniquePtr>; - #[test] - fn bindgen_test_layout_GarbageCollectionEvent() { - assert_eq!(::std::mem::size_of::() , - 64usize , concat ! ( - "Size of: " , stringify ! ( GarbageCollectionEvent - ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - GarbageCollectionEvent ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GarbageCollectionEvent ) ) . - majorGCNumber_ as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GarbageCollectionEvent ) , "::" , stringify ! ( - majorGCNumber_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GarbageCollectionEvent ) ) . - reason as * const _ as usize } , 8usize , concat ! - ( - "Alignment of field: " , stringify ! ( - GarbageCollectionEvent ) , "::" , stringify ! ( - reason ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GarbageCollectionEvent ) ) . - nonincrementalReason as * const _ as usize } , - 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - GarbageCollectionEvent ) , "::" , stringify ! ( - nonincrementalReason ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GarbageCollectionEvent ) ) . - collections as * const _ as usize } , 24usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GarbageCollectionEvent ) , "::" , stringify ! ( - collections ) )); - } - } - /** - * The Heap class is a heap-stored reference to a JS GC thing. All members of - * heap classes that refer to GC things should use Heap (or possibly - * TenuredHeap, described below). - * - * Heap is an abstraction that hides some of the complexity required to - * maintain GC invariants for the contained reference. It uses operator - * overloading to provide a normal pointer interface, but notifies the GC every - * time the value it contains is updated. This is necessary for generational GC, - * which keeps track of all pointers into the nursery. - * - * Heap instances must be traced when their containing object is traced to - * keep the pointed-to GC thing alive. - * - * Heap objects should only be used on the heap. GC references stored on the - * C/C++ stack must use Rooted/Handle/MutableHandle instead. - * - * Type T must be a public GC pointer type. - */ - #[repr(C)] - #[derive(Debug)] - pub struct Heap { - pub ptr: T, - } - pub type Heap_ElementType = T; - /** - * The TenuredHeap class is similar to the Heap class above in that it - * encapsulates the GC concerns of an on-heap reference to a JS object. However, - * it has two important differences: - * - * 1) Pointers which are statically known to only reference "tenured" objects - * can avoid the extra overhead of SpiderMonkey's write barriers. - * - * 2) Objects in the "tenured" heap have stronger alignment restrictions than - * those in the "nursery", so it is possible to store flags in the lower - * bits of pointers known to be tenured. TenuredHeap wraps a normal tagged - * pointer with a nice API for accessing the flag bits and adds various - * assertions to ensure that it is not mis-used. - * - * GC things are said to be "tenured" when they are located in the long-lived - * heap: e.g. they have gained tenure as an object by surviving past at least - * one GC. For performance, SpiderMonkey allocates some things which are known - * to normally be long lived directly into the tenured generation; for example, - * global objects. Additionally, SpiderMonkey does not visit individual objects - * when deleting non-tenured objects, so object with finalizers are also always - * tenured; for instance, this includes most DOM objects. - * - * The considerations to keep in mind when using a TenuredHeap vs a normal - * Heap are: - * - * - It is invalid for a TenuredHeap to refer to a non-tenured thing. - * - It is however valid for a Heap to refer to a tenured thing. - * - It is not possible to store flag bits in a Heap. - */ - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct TenuredHeap { - pub bits: usize, - pub _phantom_0: ::std::marker::PhantomData, - } - pub type TenuredHeap_ElementType = T; - pub const TenuredHeap_maskBits: root::JS::TenuredHeap__bindgen_ty_1 = - TenuredHeap__bindgen_ty_1::maskBits; - pub const TenuredHeap_flagsMask: root::JS::TenuredHeap__bindgen_ty_1 = - TenuredHeap__bindgen_ty_1::maskBits; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum TenuredHeap__bindgen_ty_1 { maskBits = 0, } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ConstUTF8CharsZ { - pub data_: *const ::std::os::raw::c_char, - } - pub type ConstUTF8CharsZ_CharT = ::std::os::raw::c_uchar; - #[test] - fn bindgen_test_layout_ConstUTF8CharsZ() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( ConstUTF8CharsZ ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( ConstUTF8CharsZ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ConstUTF8CharsZ ) ) . data_ as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( ConstUTF8CharsZ - ) , "::" , stringify ! ( data_ ) )); - } - impl Clone for ConstUTF8CharsZ { - fn clone(&self) -> Self { *self } - } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct JSFunction([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct JSObject([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct JSScript([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct JSString([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct jsid { - pub asBits: usize, - } - #[test] - fn bindgen_test_layout_jsid() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( jsid ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( jsid ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const jsid ) ) . asBits as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( jsid ) , "::" , - stringify ! ( asBits ) )); - } - impl Clone for jsid { - fn clone(&self) -> Self { *self } - } - pub mod js { - #[allow(unused_imports)] - use self::super::super::root; - pub mod gc { - #[allow(unused_imports)] - use self::super::super::super::root; - } - pub mod gcstats { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Statistics([u8; 0]); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct SystemAllocPolicy { - pub _address: u8, - } - #[test] - fn bindgen_test_layout_SystemAllocPolicy() { - assert_eq!(::std::mem::size_of::() , 1usize , - concat ! ( - "Size of: " , stringify ! ( SystemAllocPolicy ) )); - assert_eq! (::std::mem::align_of::() , 1usize , - concat ! ( - "Alignment of " , stringify ! ( SystemAllocPolicy ) - )); - } - impl Clone for SystemAllocPolicy { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WrappedPtrOperations { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct MutableWrappedPtrOperations { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct HandleBase { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct MutableHandleBase { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct HeapBase { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[repr(C)] - pub struct SourceHook__bindgen_vtable { - } - /** - * A class of objects that return source code on demand. - * - * When code is compiled with setSourceIsLazy(true), SpiderMonkey doesn't - * retain the source code (and doesn't do lazy bytecode generation). If we ever - * need the source code, say, in response to a call to Function.prototype. - * toSource or Debugger.Source.prototype.text, then we call the 'load' member - * function of the instance of this class that has hopefully been registered - * with the runtime, passing the code's URL, and hope that it will be able to - * find the source. - */ - #[repr(C)] - #[derive(Debug)] - pub struct SourceHook { - pub vtable_: *const SourceHook__bindgen_vtable, - } - #[test] - fn bindgen_test_layout_SourceHook() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( SourceHook ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( SourceHook ) )); - } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct JSCompartment([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct JSRuntime([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct JSTracer { - pub runtime_: *mut root::JSRuntime, - pub weakMapAction_: root::WeakMapTraceKind, - pub checkEdges_: bool, - pub tag_: root::JSTracer_TracerKindTag, - pub traceWeakEdges_: bool, - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum JSTracer_TracerKindTag { - Marking = 0, - WeakMarking = 1, - Tenuring = 2, - Callback = 3, - } - #[test] - fn bindgen_test_layout_JSTracer() { - assert_eq!(::std::mem::size_of::() , 24usize , concat ! ( - "Size of: " , stringify ! ( JSTracer ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( JSTracer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSTracer ) ) . runtime_ as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( JSTracer ) , "::" , - stringify ! ( runtime_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSTracer ) ) . weakMapAction_ as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( JSTracer ) , "::" , - stringify ! ( weakMapAction_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSTracer ) ) . checkEdges_ as * const - _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( JSTracer ) , "::" , - stringify ! ( checkEdges_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSTracer ) ) . tag_ as * const _ as - usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( JSTracer ) , "::" , - stringify ! ( tag_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSTracer ) ) . traceWeakEdges_ as * - const _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( JSTracer ) , "::" , - stringify ! ( traceWeakEdges_ ) )); - } - impl Clone for JSTracer { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum WeakMapTraceKind { - DoNotTraceWeakMaps = 0, - ExpandWeakMaps = 1, - TraceWeakMapValues = 2, - TraceWeakMapKeysValues = 3, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum JSValueTag { - JSVAL_TAG_MAX_DOUBLE = 131056, - JSVAL_TAG_INT32 = 131057, - JSVAL_TAG_UNDEFINED = 131058, - JSVAL_TAG_NULL = 131059, - JSVAL_TAG_BOOLEAN = 131060, - JSVAL_TAG_MAGIC = 131061, - JSVAL_TAG_STRING = 131062, - JSVAL_TAG_SYMBOL = 131063, - JSVAL_TAG_PRIVATE_GCTHING = 131064, - JSVAL_TAG_OBJECT = 131068, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum JSWhyMagic { - JS_ELEMENTS_HOLE = 0, - JS_NO_ITER_VALUE = 1, - JS_GENERATOR_CLOSING = 2, - JS_NO_CONSTANT = 3, - JS_THIS_POISON = 4, - JS_ARG_POISON = 5, - JS_SERIALIZE_NO_NODE = 6, - JS_LAZY_ARGUMENTS = 7, - JS_OPTIMIZED_ARGUMENTS = 8, - JS_IS_CONSTRUCTING = 9, - JS_BLOCK_NEEDS_CLONE = 10, - JS_HASH_KEY_EMPTY = 11, - JS_ION_ERROR = 12, - JS_ION_BAILOUT = 13, - JS_OPTIMIZED_OUT = 14, - JS_UNINITIALIZED_LEXICAL = 15, - JS_GENERIC_MAGIC = 16, - JS_WHY_MAGIC_COUNT = 17, - } - #[repr(C)] - pub struct nsISupports__bindgen_vtable { - } + pub struct nsISupports__bindgen_vtable(::std::os::raw::c_void); /** * Basic component object model interface. Objects which implement * this interface support runtime interface discovery (QueryInterface) @@ -11077,10 +11384,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsISupports_COMTypeInfo { + pub struct nsISupports_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsISupports() { @@ -11093,8 +11398,7 @@ pub mod root { fn clone(&self) -> Self { *self } } #[repr(C)] - pub struct nsCycleCollectionParticipant__bindgen_vtable { - } + pub struct nsCycleCollectionParticipant__bindgen_vtable(::std::os::raw::c_void); /** * Participant implementation classes */ @@ -11158,6 +11462,33 @@ pub mod root { impl Clone for nsCycleCollectingAutoRefCnt { fn clone(&self) -> Self { *self } } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsCharTraits { + pub _address: u8, + } + #[test] + fn __bindgen_test_layout_nsCharTraits_instantiation_51413() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsCharTraits ) )); + assert_eq!(::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCharTraits ) )); + } + #[test] + fn __bindgen_test_layout_nsCharTraits_instantiation_51417() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsCharTraits ) )); + assert_eq!(::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCharTraits ) )); + } /** * @see nsTAString */ @@ -11174,7 +11505,7 @@ pub mod root { pub type nsReadingIterator_size_type = usize; pub type nsReadingIterator_value_type = CharT; pub type nsReadingIterator_pointer = *mut CharT; - pub type nsReadingIterator_reference = [u8; 0usize]; + pub type nsReadingIterator_reference = u8; /** * @see nsTAString */ @@ -11191,13 +11522,11 @@ pub mod root { pub type nsWritingIterator_size_type = usize; pub type nsWritingIterator_value_type = CharT; pub type nsWritingIterator_pointer = *mut CharT; - pub type nsWritingIterator_reference = [u8; 0usize]; + pub type nsWritingIterator_reference = u8; #[repr(C)] - #[derive(Debug)] pub struct nsSubstringSplitter { pub mStr: *const root::nsAString, - pub mArray: root::mozilla::UniquePtr<[root::nsDependentSubstring; 0usize], - root::mozilla::DefaultDelete<[root::nsDependentSubstring; 0usize]>>, + pub mArray: u64, pub mArraySize: root::nsSubstringSplitter_size_type, pub mDelim: root::nsSubstringSplitter_char_type, } @@ -11271,11 +11600,9 @@ pub mod root { ) , "::" , stringify ! ( mDelim ) )); } #[repr(C)] - #[derive(Debug)] pub struct nsCSubstringSplitter { pub mStr: *const root::nsACString, - pub mArray: root::mozilla::UniquePtr<[root::nsDependentCSubstring; 0usize], - root::mozilla::DefaultDelete<[root::nsDependentCSubstring; 0usize]>>, + pub mArray: u64, pub mArraySize: root::nsCSubstringSplitter_size_type, pub mDelim: root::nsCSubstringSplitter_char_type, } @@ -11492,13 +11819,13 @@ pub mod root { pub type PLHashFunction = ::std::option::Option ::std::os::raw::c_uint>; + -> root::PLHashNumber>; pub type PLHashComparator = ::std::option::Option ::std::os::raw::c_int>; + -> root::PRIntn>; #[repr(C)] #[derive(Debug, Copy)] pub struct PLHashAllocOps { @@ -11554,7 +11881,35 @@ pub mod root { impl Clone for PLHashAllocOps { fn clone(&self) -> Self { *self } } - pub type PRTime = i64; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsCSSTokenSerializationType { + eCSSTokenSerialization_Nothing = 0, + eCSSTokenSerialization_Whitespace = 1, + eCSSTokenSerialization_AtKeyword_or_Hash = 2, + eCSSTokenSerialization_Number = 3, + eCSSTokenSerialization_Dimension = 4, + eCSSTokenSerialization_Percentage = 5, + eCSSTokenSerialization_URange = 6, + eCSSTokenSerialization_URL_or_BadURL = 7, + eCSSTokenSerialization_Function = 8, + eCSSTokenSerialization_Ident = 9, + eCSSTokenSerialization_CDC = 10, + eCSSTokenSerialization_DashMatch = 11, + eCSSTokenSerialization_ContainsMatch = 12, + eCSSTokenSerialization_Symbol_Hash = 13, + eCSSTokenSerialization_Symbol_At = 14, + eCSSTokenSerialization_Symbol_Dot_or_Plus = 15, + eCSSTokenSerialization_Symbol_Minus = 16, + eCSSTokenSerialization_Symbol_OpenParen = 17, + eCSSTokenSerialization_Symbol_Question = 18, + eCSSTokenSerialization_Symbol_Assorted = 19, + eCSSTokenSerialization_Symbol_Equals = 20, + eCSSTokenSerialization_Symbol_Bar = 21, + eCSSTokenSerialization_Symbol_Slash = 22, + eCSSTokenSerialization_Symbol_Asterisk = 23, + eCSSTokenSerialization_Other = 24, + } /** * A "unique identifier". This is modeled after OSF DCE UUIDs. */ @@ -11596,15 +11951,17 @@ pub mod root { impl Clone for nsID { fn clone(&self) -> Self { *self } } - pub type nsCID = root::nsID; /** * An "interface id" which can be used to uniquely identify a given * interface. */ pub type nsIID = root::nsID; + pub type PRTime = i64; #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct PRThread([u8; 0]); + pub struct PRThread { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsAutoOwningThread { @@ -11648,115 +12005,1011 @@ pub mod root { impl Clone for nsAutoRefCnt { fn clone(&self) -> Self { *self } } - pub type nsIntRegion = root::mozilla::gfx::IntRegion; + /** + * already_AddRefed cooperates with reference counting smart pointers to enable + * you to assign in a pointer _without_ |AddRef|ing it. You might want to use + * this as a return type from a function that returns an already |AddRef|ed + * pointer. + * + * TODO Move already_AddRefed to namespace mozilla. This has not yet been done + * because of the sheer number of usages of already_AddRefed. + * + * When should you use already_AddRefed<>? + * * Ensure a consumer takes ownership of a reference + * * Pass ownership without calling AddRef/Release (sometimes required in + * off-main-thread code) + * * The ref pointer type you're using doesn't support move construction + * + * Otherwise, use Move(RefPtr/nsCOMPtr/etc). + */ #[repr(C)] #[derive(Debug)] - pub struct nsRegion { - pub mImpl: root::pixman_region32_t, + pub struct already_AddRefed { + pub mRawPtr: *mut T, } - pub type nsRegion_RectType = root::nsRect; - pub type nsRegion_PointType = root::nsPoint; - pub type nsRegion_MarginType = root::nsMargin; - /** - * VisitEdges is a weird kind of function that we use for padding - * out surfaces to prevent texture filtering artifacts. - * It calls the visitFn callback for each of the exterior edges of - * the regions. The top and bottom edges will be expanded 1 pixel - * to the left and right if there's an outside corner. The order - * the edges are visited is not guaranteed. - * - * visitFn has a side parameter that can be TOP,BOTTOM,LEFT,RIGHT - * and specifies which kind of edge is being visited. x1, y1, x2, y2 - * are the coordinates of the line. (x1 == x2) || (y1 == y2) - */ - pub type nsRegion_visitFn = - ::std::option::Option; + pub type already_AddRefed_MatchNullptr = + ::std::option::Option; + #[repr(C)] + #[derive(Debug)] + pub struct RefPtr { + pub mRawPtr: *mut T, + } + pub type RefPtr_element_type = T; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct RefPtr_Proxy { + } + pub type RefPtr_Proxy_member_function = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct RefPtr_ConstRemovingRefPtrTraits { + pub _address: u8, + } + #[repr(C)] + pub struct nsCycleCollectionTraversalCallback__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug, Copy)] - pub struct nsRegion_RectIterator { - pub mCurrent: ::std::os::raw::c_int, - pub mLimit: ::std::os::raw::c_int, - pub mTmp: root::nsRect, - pub mBoxes: *mut root::pixman_box32_t, + pub struct nsCycleCollectionTraversalCallback { + pub vtable_: *const nsCycleCollectionTraversalCallback__bindgen_vtable, + pub mFlags: u32, + } + pub const nsCycleCollectionTraversalCallback_WANT_DEBUG_INFO: + root::nsCycleCollectionTraversalCallback__bindgen_ty_1 = + nsCycleCollectionTraversalCallback__bindgen_ty_1::WANT_DEBUG_INFO; + pub const nsCycleCollectionTraversalCallback_WANT_ALL_TRACES: + root::nsCycleCollectionTraversalCallback__bindgen_ty_1 = + nsCycleCollectionTraversalCallback__bindgen_ty_1::WANT_ALL_TRACES; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsCycleCollectionTraversalCallback__bindgen_ty_1 { + WANT_DEBUG_INFO = 1, + WANT_ALL_TRACES = 2, } #[test] - fn bindgen_test_layout_nsRegion_RectIterator() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( - "Size of: " , stringify ! ( nsRegion_RectIterator ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsRegion_RectIterator ) - )); + fn bindgen_test_layout_nsCycleCollectionTraversalCallback() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsCycleCollectionTraversalCallback ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsCycleCollectionTraversalCallback ) )); assert_eq! (unsafe { - & ( * ( 0 as * const nsRegion_RectIterator ) ) . mCurrent - as * const _ as usize } , 0usize , concat ! ( + & ( * ( 0 as * const nsCycleCollectionTraversalCallback ) + ) . mFlags as * const _ as usize } , 8usize , concat ! ( "Alignment of field: " , stringify ! ( - nsRegion_RectIterator ) , "::" , stringify ! ( mCurrent ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsRegion_RectIterator ) ) . mLimit as - * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsRegion_RectIterator ) , "::" , stringify ! ( mLimit ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsRegion_RectIterator ) ) . mTmp as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsRegion_RectIterator ) , "::" , stringify ! ( mTmp ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsRegion_RectIterator ) ) . mBoxes as - * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsRegion_RectIterator ) , "::" , stringify ! ( mBoxes ) - )); + nsCycleCollectionTraversalCallback ) , "::" , stringify ! + ( mFlags ) )); } - impl Clone for nsRegion_RectIterator { + impl Clone for nsCycleCollectionTraversalCallback { fn clone(&self) -> Self { *self } } - #[test] - fn bindgen_test_layout_nsRegion() { - assert_eq!(::std::mem::size_of::() , 24usize , concat ! ( - "Size of: " , stringify ! ( nsRegion ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsRegion ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsRegion ) ) . mImpl as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsRegion ) , "::" , - stringify ! ( mImpl ) )); + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct JSContext { + _unused: [u8; 0], + } + pub mod JS { + #[allow(unused_imports)] + use self::super::super::root; + /** + * JS::Value is the interface for a single JavaScript Engine value. A few + * general notes on JS::Value: + * + * - JS::Value has setX() and isX() members for X in + * + * { Int32, Double, String, Symbol, Boolean, Undefined, Null, Object, Magic } + * + * JS::Value also contains toX() for each of the non-singleton types. + * + * - Magic is a singleton type whose payload contains either a JSWhyMagic "reason" for + * the magic value or a uint32_t value. By providing JSWhyMagic values when + * creating and checking for magic values, it is possible to assert, at + * runtime, that only magic values with the expected reason flow through a + * particular value. For example, if cx->exception has a magic value, the + * reason must be JS_GENERATOR_CLOSING. + * + * - The JS::Value operations are preferred. The JSVAL_* operations remain for + * compatibility; they may be removed at some point. These operations mostly + * provide similar functionality. But there are a few key differences. One + * is that JS::Value gives null a separate type. + * Also, to help prevent mistakenly boxing a nullable JSObject* as an object, + * Value::setObject takes a JSObject&. (Conversely, Value::toObject returns a + * JSObject&.) A convenience member Value::setObjectOrNull is provided. + * + * - JSVAL_VOID is the same as the singleton value of the Undefined type. + * + * - Note that JS::Value is 8 bytes on 32 and 64-bit architectures. Thus, on + * 32-bit user code should avoid copying jsval/JS::Value as much as possible, + * preferring to pass by const Value&. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Value { + pub data: root::JS::Value_layout, + } + pub type Value_PayloadType = u64; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Value_layout { + pub asBits: root::__BindgenUnionField, + pub debugView: root::__BindgenUnionField, + pub s: root::__BindgenUnionField, + pub asDouble: root::__BindgenUnionField, + pub asPtr: root::__BindgenUnionField<*mut ::std::os::raw::c_void>, + pub asWord: root::__BindgenUnionField, + pub asUIntPtr: root::__BindgenUnionField, + pub bindgen_union_field: u64, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Value_layout__bindgen_ty_1 { + pub _bitfield_1: u64, + pub __bindgen_align: [u64; 0usize], + } + #[test] + fn bindgen_test_layout_Value_layout__bindgen_ty_1() { + assert_eq!(::std::mem::size_of::() , + 8usize , concat ! ( + "Size of: " , stringify ! ( Value_layout__bindgen_ty_1 + ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + Value_layout__bindgen_ty_1 ) )); + } + impl Clone for Value_layout__bindgen_ty_1 { + fn clone(&self) -> Self { *self } + } + impl Value_layout__bindgen_ty_1 { + #[inline] + pub fn payload47(&self) -> u64 { + let mask = 140737488355327usize as u64; + let field_val: u64 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u64) } + } + #[inline] + pub fn set_payload47(&mut self, val: u64) { + let mask = 140737488355327usize as u64; + let val = val as u64 as u64; + let mut field_val: u64 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn tag(&self) -> root::JSValueTag { + let mask = 18446603336221196288usize as u64; + let field_val: u64 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 47usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_tag(&mut self, val: root::JSValueTag) { + let mask = 18446603336221196288usize as u64; + let val = val as u32 as u64; + let mut field_val: u64 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 47usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Value_layout__bindgen_ty_2 { + pub payload: root::JS::Value_layout__bindgen_ty_2__bindgen_ty_1, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Value_layout__bindgen_ty_2__bindgen_ty_1 { + pub i32: root::__BindgenUnionField, + pub u32: root::__BindgenUnionField, + pub why: root::__BindgenUnionField, + pub bindgen_union_field: u32, + } + #[test] + fn bindgen_test_layout_Value_layout__bindgen_ty_2__bindgen_ty_1() { + assert_eq!(::std::mem::size_of::() + , 4usize , concat ! ( + "Size of: " , stringify ! ( + Value_layout__bindgen_ty_2__bindgen_ty_1 ) )); + assert_eq! (::std::mem::align_of::() + , 4usize , concat ! ( + "Alignment of " , stringify ! ( + Value_layout__bindgen_ty_2__bindgen_ty_1 ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const Value_layout__bindgen_ty_2__bindgen_ty_1 + ) ) . i32 as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + Value_layout__bindgen_ty_2__bindgen_ty_1 ) , "::" , + stringify ! ( i32 ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const Value_layout__bindgen_ty_2__bindgen_ty_1 + ) ) . u32 as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + Value_layout__bindgen_ty_2__bindgen_ty_1 ) , "::" , + stringify ! ( u32 ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const Value_layout__bindgen_ty_2__bindgen_ty_1 + ) ) . why as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + Value_layout__bindgen_ty_2__bindgen_ty_1 ) , "::" , + stringify ! ( why ) )); + } + impl Clone for Value_layout__bindgen_ty_2__bindgen_ty_1 { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_Value_layout__bindgen_ty_2() { + assert_eq!(::std::mem::size_of::() , + 4usize , concat ! ( + "Size of: " , stringify ! ( Value_layout__bindgen_ty_2 + ) )); + assert_eq! (::std::mem::align_of::() , + 4usize , concat ! ( + "Alignment of " , stringify ! ( + Value_layout__bindgen_ty_2 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Value_layout__bindgen_ty_2 ) ) . + payload as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + Value_layout__bindgen_ty_2 ) , "::" , stringify ! ( + payload ) )); + } + impl Clone for Value_layout__bindgen_ty_2 { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_Value_layout() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( Value_layout ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( Value_layout ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Value_layout ) ) . asBits as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( Value_layout ) + , "::" , stringify ! ( asBits ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Value_layout ) ) . debugView as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( Value_layout ) + , "::" , stringify ! ( debugView ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Value_layout ) ) . s as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( Value_layout ) + , "::" , stringify ! ( s ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Value_layout ) ) . asDouble as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( Value_layout ) + , "::" , stringify ! ( asDouble ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Value_layout ) ) . asPtr as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( Value_layout ) + , "::" , stringify ! ( asPtr ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Value_layout ) ) . asWord as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( Value_layout ) + , "::" , stringify ! ( asWord ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Value_layout ) ) . asUIntPtr as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( Value_layout ) + , "::" , stringify ! ( asUIntPtr ) )); + } + impl Clone for Value_layout { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_Value() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( Value ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( Value ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Value ) ) . data as * const _ as + usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( Value ) , "::" + , stringify ! ( data ) )); + } + impl Clone for Value { + fn clone(&self) -> Self { *self } + } + /** + * Reference to a T that has been rooted elsewhere. This is most useful + * as a parameter type, which guarantees that the T lvalue is properly + * rooted. See "Move GC Stack Rooting" above. + * + * If you want to add additional methods to Handle for a specific + * specialization, define a HandleBase specialization containing them. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Handle { + pub ptr: *mut T, + } + pub type Handle_ElementType = T; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum Handle_Disambiguator { + DeliberatelyChoosingThisOverload = 0, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum Handle_CallerIdentity { + ImUsingThisOnlyInFromFromMarkedLocation = 0, + } + /** + * Similar to a handle, but the underlying storage can be changed. This is + * useful for outparams. + * + * If you want to add additional methods to MutableHandle for a specific + * specialization, define a MutableHandleBase specialization containing + * them. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct MutableHandle { + pub ptr: *mut T, + } + pub type MutableHandle_ElementType = T; + /** + * Local variable of type T whose value is always rooted. This is typically + * used for local variables, or for non-rooted values being passed to a + * function that requires a handle, e.g. Foo(Root(cx, x)). + * + * If you want to add additional methods to Rooted for a specific + * specialization, define a RootedBase specialization containing them. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Rooted { + } + pub type Rooted_ElementType = T; + pub type HandleObject = root::JS::Handle<*mut root::JSObject>; + pub type HandleValue = root::JS::Handle; + pub type MutableHandleValue = + root::JS::MutableHandle; + pub type RootedObject = [u64; 3usize]; + /** + * A GC pointer, tagged with the trace kind. + * + * In general, a GC pointer should be stored with an exact type. This class + * is for use when that is not possible because a single pointer must point + * to several kinds of GC thing. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct GCCellPtr { + pub ptr: usize, + } + #[test] + fn bindgen_test_layout_GCCellPtr() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( GCCellPtr ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( GCCellPtr ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GCCellPtr ) ) . ptr as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( GCCellPtr ) , + "::" , stringify ! ( ptr ) )); + } + impl Clone for GCCellPtr { + fn clone(&self) -> Self { *self } + } + /** + * The Heap class is a heap-stored reference to a JS GC thing. All members of + * heap classes that refer to GC things should use Heap (or possibly + * TenuredHeap, described below). + * + * Heap is an abstraction that hides some of the complexity required to + * maintain GC invariants for the contained reference. It uses operator + * overloading to provide a normal pointer interface, but notifies the GC every + * time the value it contains is updated. This is necessary for generational GC, + * which keeps track of all pointers into the nursery. + * + * Heap instances must be traced when their containing object is traced to + * keep the pointed-to GC thing alive. + * + * Heap objects should only be used on the heap. GC references stored on the + * C/C++ stack must use Rooted/Handle/MutableHandle instead. + * + * Type T must be a public GC pointer type. + */ + #[repr(C)] + #[derive(Debug)] + pub struct Heap { + pub ptr: T, + } + pub type Heap_ElementType = T; + pub mod dbg { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(C)] + pub struct GarbageCollectionEvent { + pub majorGCNumber_: u64, + pub reason: *const ::std::os::raw::c_char, + pub nonincrementalReason: *const ::std::os::raw::c_char, + pub collections: [u64; 5usize], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct GarbageCollectionEvent_Collection { + pub startTimestamp: root::mozilla::TimeStamp, + pub endTimestamp: root::mozilla::TimeStamp, + } + #[test] + fn bindgen_test_layout_GarbageCollectionEvent_Collection() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + GarbageCollectionEvent_Collection ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + GarbageCollectionEvent_Collection ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const GarbageCollectionEvent_Collection + ) ) . startTimestamp as * const _ as usize } , + 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + GarbageCollectionEvent_Collection ) , "::" , + stringify ! ( startTimestamp ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const GarbageCollectionEvent_Collection + ) ) . endTimestamp as * const _ as usize } , + 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + GarbageCollectionEvent_Collection ) , "::" , + stringify ! ( endTimestamp ) )); + } + impl Clone for GarbageCollectionEvent_Collection { + fn clone(&self) -> Self { *self } + } + pub type GarbageCollectionEvent_Ptr = + root::mozilla::UniquePtr; + #[test] + fn bindgen_test_layout_GarbageCollectionEvent() { + assert_eq!(::std::mem::size_of::() , + 64usize , concat ! ( + "Size of: " , stringify ! ( GarbageCollectionEvent + ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + GarbageCollectionEvent ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GarbageCollectionEvent ) ) . + majorGCNumber_ as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GarbageCollectionEvent ) , "::" , stringify ! ( + majorGCNumber_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GarbageCollectionEvent ) ) . + reason as * const _ as usize } , 8usize , concat ! + ( + "Alignment of field: " , stringify ! ( + GarbageCollectionEvent ) , "::" , stringify ! ( + reason ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GarbageCollectionEvent ) ) . + nonincrementalReason as * const _ as usize } , + 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + GarbageCollectionEvent ) , "::" , stringify ! ( + nonincrementalReason ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GarbageCollectionEvent ) ) . + collections as * const _ as usize } , 24usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GarbageCollectionEvent ) , "::" , stringify ! ( + collections ) )); + } + #[repr(C)] + pub struct AutoEntryMonitor__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug)] + pub struct AutoEntryMonitor { + pub vtable_: *const AutoEntryMonitor__bindgen_vtable, + pub cx_: *mut root::JSContext, + pub savedMonitor_: *mut root::JS::dbg::AutoEntryMonitor, + } + #[test] + fn bindgen_test_layout_AutoEntryMonitor() { + assert_eq!(::std::mem::size_of::() , 24usize + , concat ! ( + "Size of: " , stringify ! ( AutoEntryMonitor ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( AutoEntryMonitor ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoEntryMonitor ) ) . cx_ as + * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryMonitor ) , "::" , stringify ! ( cx_ ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoEntryMonitor ) ) . + savedMonitor_ as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryMonitor ) , "::" , stringify ! ( + savedMonitor_ ) )); + } + } + /** + * The TenuredHeap class is similar to the Heap class above in that it + * encapsulates the GC concerns of an on-heap reference to a JS object. However, + * it has two important differences: + * + * 1) Pointers which are statically known to only reference "tenured" objects + * can avoid the extra overhead of SpiderMonkey's write barriers. + * + * 2) Objects in the "tenured" heap have stronger alignment restrictions than + * those in the "nursery", so it is possible to store flags in the lower + * bits of pointers known to be tenured. TenuredHeap wraps a normal tagged + * pointer with a nice API for accessing the flag bits and adds various + * assertions to ensure that it is not mis-used. + * + * GC things are said to be "tenured" when they are located in the long-lived + * heap: e.g. they have gained tenure as an object by surviving past at least + * one GC. For performance, SpiderMonkey allocates some things which are known + * to normally be long lived directly into the tenured generation; for example, + * global objects. Additionally, SpiderMonkey does not visit individual objects + * when deleting non-tenured objects, so object with finalizers are also always + * tenured; for instance, this includes most DOM objects. + * + * The considerations to keep in mind when using a TenuredHeap vs a normal + * Heap are: + * + * - It is invalid for a TenuredHeap to refer to a non-tenured thing. + * - It is however valid for a Heap to refer to a tenured thing. + * - It is not possible to store flag bits in a Heap. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct TenuredHeap { + pub bits: usize, + } + pub type TenuredHeap_ElementType = T; + pub const TenuredHeap_maskBits: root::JS::TenuredHeap__bindgen_ty_1 = + TenuredHeap__bindgen_ty_1::maskBits; + pub const TenuredHeap_flagsMask: root::JS::TenuredHeap__bindgen_ty_1 = + TenuredHeap__bindgen_ty_1::maskBits; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum TenuredHeap__bindgen_ty_1 { maskBits = 0, } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ConstUTF8CharsZ { + pub data_: *const ::std::os::raw::c_char, + } + pub type ConstUTF8CharsZ_CharT = ::std::os::raw::c_uchar; + #[test] + fn bindgen_test_layout_ConstUTF8CharsZ() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( ConstUTF8CharsZ ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( ConstUTF8CharsZ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ConstUTF8CharsZ ) ) . data_ as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( ConstUTF8CharsZ + ) , "::" , stringify ! ( data_ ) )); + } + impl Clone for ConstUTF8CharsZ { + fn clone(&self) -> Self { *self } + } + /** + * This class can be used to store a pointer to the youngest frame of a saved + * stack in the specified JSContext. This reference will be picked up by any new + * calls performed until the class is destroyed, with the specified asyncCause, + * that must not be empty. + * + * Any stack capture initiated during these new calls will go through the async + * stack instead of the current stack. + * + * Capturing the stack before a new call is performed will not be affected. + * + * The provided chain of SavedFrame objects can live in any compartment, + * although it will be copied to the compartment where the stack is captured. + * + * See also `js/src/doc/SavedFrame/SavedFrame.md` for documentation on async + * stack frames. + */ + #[repr(C)] + #[derive(Debug)] + pub struct AutoSetAsyncStackForNewCalls { + pub cx: *mut root::JSContext, + pub oldAsyncStack: root::JS::RootedObject, + pub oldAsyncCause: *const ::std::os::raw::c_char, + pub oldAsyncCallIsExplicit: bool, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum AutoSetAsyncStackForNewCalls_AsyncCallKind { + IMPLICIT = 0, + EXPLICIT = 1, + } + #[test] + fn bindgen_test_layout_AutoSetAsyncStackForNewCalls() { + assert_eq!(::std::mem::size_of::() , + 48usize , concat ! ( + "Size of: " , stringify ! ( + AutoSetAsyncStackForNewCalls ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + AutoSetAsyncStackForNewCalls ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoSetAsyncStackForNewCalls ) ) + . cx as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoSetAsyncStackForNewCalls ) , "::" , stringify ! ( + cx ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoSetAsyncStackForNewCalls ) ) + . oldAsyncStack as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + AutoSetAsyncStackForNewCalls ) , "::" , stringify ! ( + oldAsyncStack ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoSetAsyncStackForNewCalls ) ) + . oldAsyncCause as * const _ as usize } , 32usize , + concat ! ( + "Alignment of field: " , stringify ! ( + AutoSetAsyncStackForNewCalls ) , "::" , stringify ! ( + oldAsyncCause ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoSetAsyncStackForNewCalls ) ) + . oldAsyncCallIsExplicit as * const _ as usize } , + 40usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoSetAsyncStackForNewCalls ) , "::" , stringify ! ( + oldAsyncCallIsExplicit ) )); + } + pub type WarningReporter = + ::std::option::Option; + #[repr(C)] + #[derive(Debug)] + pub struct AutoHideScriptedCaller { + pub mContext: *mut root::JSContext, + pub _mCheckNotUsedAsTemporary: root::mozilla::detail::GuardObjectNotificationReceiver, + } + #[test] + fn bindgen_test_layout_AutoHideScriptedCaller() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( AutoHideScriptedCaller ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( AutoHideScriptedCaller + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoHideScriptedCaller ) ) . + mContext as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoHideScriptedCaller ) , "::" , stringify ! ( + mContext ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoHideScriptedCaller ) ) . + _mCheckNotUsedAsTemporary as * const _ as usize } , + 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoHideScriptedCaller ) , "::" , stringify ! ( + _mCheckNotUsedAsTemporary ) )); + } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct JSFunction { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct JSObject { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct JSScript { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct JSString { + _unused: [u8; 0], } #[repr(C)] #[derive(Debug, Copy)] - pub struct nsTArrayHeader { - pub mLength: u32, - pub _bitfield_1: u32, - } - extern "C" { - #[link_name = "_ZN14nsTArrayHeader9sEmptyHdrE"] - pub static mut nsTArrayHeader_sEmptyHdr: root::nsTArrayHeader; + pub struct jsid { + pub asBits: usize, } #[test] - fn bindgen_test_layout_nsTArrayHeader() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsTArrayHeader ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat - ! ( "Alignment of " , stringify ! ( nsTArrayHeader ) )); + fn bindgen_test_layout_jsid() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( jsid ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( jsid ) )); assert_eq! (unsafe { - & ( * ( 0 as * const nsTArrayHeader ) ) . mLength as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsTArrayHeader ) , - "::" , stringify ! ( mLength ) )); + & ( * ( 0 as * const jsid ) ) . asBits as * const _ as + usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( jsid ) , "::" , + stringify ! ( asBits ) )); } - impl Clone for nsTArrayHeader { + impl Clone for jsid { + fn clone(&self) -> Self { *self } + } + pub mod js { + #[allow(unused_imports)] + use self::super::super::root; + pub mod gc { + #[allow(unused_imports)] + use self::super::super::super::root; + } + pub mod gcstats { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Statistics { + _unused: [u8; 0], + } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct SystemAllocPolicy { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_SystemAllocPolicy() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of: " , stringify ! ( SystemAllocPolicy ) )); + assert_eq! (::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( SystemAllocPolicy ) + )); + } + impl Clone for SystemAllocPolicy { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WrappedPtrOperations { + pub _address: u8, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct MutableWrappedPtrOperations { + pub _address: u8, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct HandleBase { + pub _address: u8, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct MutableHandleBase { + pub _address: u8, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct HeapBase { + pub _address: u8, + } + #[repr(C)] + pub struct SourceHook__bindgen_vtable(::std::os::raw::c_void); + /** + * A class of objects that return source code on demand. + * + * When code is compiled with setSourceIsLazy(true), SpiderMonkey doesn't + * retain the source code (and doesn't do lazy bytecode generation). If we ever + * need the source code, say, in response to a call to Function.prototype. + * toSource or Debugger.Source.prototype.text, then we call the 'load' member + * function of the instance of this class that has hopefully been registered + * with the runtime, passing the code's URL, and hope that it will be able to + * find the source. + */ + #[repr(C)] + #[derive(Debug)] + pub struct SourceHook { + pub vtable_: *const SourceHook__bindgen_vtable, + } + #[test] + fn bindgen_test_layout_SourceHook() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( SourceHook ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( SourceHook ) )); + } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct JSCompartment { + _unused: [u8; 0], + } + /** + * Describes a single error or warning that occurs in the execution of script. + */ + #[repr(C)] + pub struct JSErrorReport { + pub _base: root::JSErrorBase, + pub linebuf_: *const u16, + pub linebufLength_: usize, + pub tokenOffset_: usize, + pub notes: root::mozilla::UniquePtr, + pub flags: ::std::os::raw::c_uint, + pub exnType: i16, + pub _bitfield_1: u8, + pub __bindgen_padding_0: u8, + } + #[test] + fn bindgen_test_layout_JSErrorReport() { + assert_eq!(::std::mem::size_of::() , 72usize , concat ! + ( "Size of: " , stringify ! ( JSErrorReport ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( JSErrorReport ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . linebuf_ as * + const _ as usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( linebuf_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . linebufLength_ as + * const _ as usize } , 40usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( linebufLength_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . tokenOffset_ as * + const _ as usize } , 48usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( tokenOffset_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . notes as * const + _ as usize } , 56usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( notes ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . flags as * const + _ as usize } , 64usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( flags ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . exnType as * + const _ as usize } , 68usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( exnType ) )); + } + impl JSErrorReport { + #[inline] + pub fn isMuted(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_isMuted(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn ownsLinebuf_(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_ownsLinebuf_(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct JSRuntime { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct JSTracer { + pub runtime_: *mut root::JSRuntime, + pub weakMapAction_: root::WeakMapTraceKind, + pub checkEdges_: bool, + pub tag_: root::JSTracer_TracerKindTag, + pub traceWeakEdges_: bool, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum JSTracer_TracerKindTag { + Marking = 0, + WeakMarking = 1, + Tenuring = 2, + Callback = 3, + } + #[test] + fn bindgen_test_layout_JSTracer() { + assert_eq!(::std::mem::size_of::() , 24usize , concat ! ( + "Size of: " , stringify ! ( JSTracer ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( JSTracer ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSTracer ) ) . runtime_ as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSTracer ) , "::" , + stringify ! ( runtime_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSTracer ) ) . weakMapAction_ as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( JSTracer ) , "::" , + stringify ! ( weakMapAction_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSTracer ) ) . checkEdges_ as * const + _ as usize } , 12usize , concat ! ( + "Alignment of field: " , stringify ! ( JSTracer ) , "::" , + stringify ! ( checkEdges_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSTracer ) ) . tag_ as * const _ as + usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( JSTracer ) , "::" , + stringify ! ( tag_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSTracer ) ) . traceWeakEdges_ as * + const _ as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( JSTracer ) , "::" , + stringify ! ( traceWeakEdges_ ) )); + } + impl Clone for JSTracer { fn clone(&self) -> Self { *self } } #[repr(C)] @@ -11765,199 +13018,8 @@ pub mod root { pub mRawPtr: *mut T, } pub type nsCOMPtr_element_type = T; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsQueryInterface { - pub mRawPtr: *mut root::nsISupports, - } #[test] - fn bindgen_test_layout_nsQueryInterface() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsQueryInterface ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsQueryInterface ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsQueryInterface ) ) . mRawPtr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsQueryInterface ) - , "::" , stringify ! ( mRawPtr ) )); - } - impl Clone for nsQueryInterface { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsQueryInterfaceWithError { - pub mRawPtr: *mut root::nsISupports, - pub mErrorPtr: *mut root::nsresult, - } - #[test] - fn bindgen_test_layout_nsQueryInterfaceWithError() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( nsQueryInterfaceWithError ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( nsQueryInterfaceWithError - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsQueryInterfaceWithError ) ) . - mRawPtr as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsQueryInterfaceWithError ) , "::" , stringify ! ( mRawPtr - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsQueryInterfaceWithError ) ) . - mErrorPtr as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsQueryInterfaceWithError ) , "::" , stringify ! ( - mErrorPtr ) )); - } - impl Clone for nsQueryInterfaceWithError { - fn clone(&self) -> Self { *self } - } - //////////////////////////////////////////////////////////////////////////// - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsGetServiceByCID { - pub mCID: *const root::nsCID, - pub __bindgen_align: [u64; 0usize], - } - #[test] - fn bindgen_test_layout_nsGetServiceByCID() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( "Size of: " , stringify ! ( nsGetServiceByCID ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsGetServiceByCID ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsGetServiceByCID ) ) . mCID as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsGetServiceByCID ) - , "::" , stringify ! ( mCID ) )); - } - impl Clone for nsGetServiceByCID { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsGetServiceByCIDWithError { - pub mCID: *const root::nsCID, - pub mErrorPtr: *mut root::nsresult, - } - #[test] - fn bindgen_test_layout_nsGetServiceByCIDWithError() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( nsGetServiceByCIDWithError ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( nsGetServiceByCIDWithError - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsGetServiceByCIDWithError ) ) . mCID - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsGetServiceByCIDWithError ) , "::" , stringify ! ( mCID ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsGetServiceByCIDWithError ) ) . - mErrorPtr as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsGetServiceByCIDWithError ) , "::" , stringify ! ( - mErrorPtr ) )); - } - impl Clone for nsGetServiceByCIDWithError { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsGetServiceByContractID { - pub mContractID: *const ::std::os::raw::c_char, - } - #[test] - fn bindgen_test_layout_nsGetServiceByContractID() { - assert_eq!(::std::mem::size_of::() , 8usize - , concat ! ( - "Size of: " , stringify ! ( nsGetServiceByContractID ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( nsGetServiceByContractID ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsGetServiceByContractID ) ) . - mContractID as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsGetServiceByContractID ) , "::" , stringify ! ( - mContractID ) )); - } - impl Clone for nsGetServiceByContractID { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsGetServiceByContractIDWithError { - pub mContractID: *const ::std::os::raw::c_char, - pub mErrorPtr: *mut root::nsresult, - } - #[test] - fn bindgen_test_layout_nsGetServiceByContractIDWithError() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - nsGetServiceByContractIDWithError ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsGetServiceByContractIDWithError ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsGetServiceByContractIDWithError ) ) - . mContractID as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - nsGetServiceByContractIDWithError ) , "::" , stringify ! ( - mContractID ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsGetServiceByContractIDWithError ) ) - . mErrorPtr as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsGetServiceByContractIDWithError ) , "::" , stringify ! ( - mErrorPtr ) )); - } - impl Clone for nsGetServiceByContractIDWithError { - fn clone(&self) -> Self { *self } - } - /** - * Factors implementation for all template versions of nsCOMPtr. - * - * Here's the way people normally do things like this: - * - * template class Foo { ... }; - * template<> class Foo { ... }; - * template class Foo : private Foo { ... }; - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsCOMPtr_base { - pub mRawPtr: *mut root::nsISupports, - } - #[test] - fn bindgen_test_layout_nsCOMPtr_base() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsCOMPtr_base ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsCOMPtr_base ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsCOMPtr_base ) ) . mRawPtr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsCOMPtr_base ) , - "::" , stringify ! ( mRawPtr ) )); - } - #[test] - fn __bindgen_test_layout_template_5() { + fn __bindgen_test_layout_nsCOMPtr_instantiation_64856() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -11980,2212 +13042,11 @@ pub mod root { pub type nsAutoPtr_element_type = T; #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsAutoPtr_Proxy { - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - pub _phantom_2: ::std::marker::PhantomData, - } - pub type nsAutoPtr_Proxy_member_function = [u8; 0usize]; - /** - * 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)] - #[derive(Debug)] - pub struct nsStringBuffer { - pub mRefCount: u32, - pub mStorageSize: u32, - } - #[test] - fn bindgen_test_layout_nsStringBuffer() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsStringBuffer ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat - ! ( "Alignment of " , stringify ! ( nsStringBuffer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStringBuffer ) ) . mRefCount as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStringBuffer ) , - "::" , stringify ! ( mRefCount ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStringBuffer ) ) . mStorageSize as - * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStringBuffer ) , - "::" , stringify ! ( mStorageSize ) )); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIPrincipal { - pub _base: root::nsISerializable, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIPrincipal_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIPrincipal_APP_STATUS_NOT_INSTALLED: - root::nsIPrincipal__bindgen_ty_1 = - nsIPrincipal__bindgen_ty_1::APP_STATUS_NOT_INSTALLED; - pub const nsIPrincipal_APP_STATUS_INSTALLED: - root::nsIPrincipal__bindgen_ty_1 = - nsIPrincipal__bindgen_ty_1::APP_STATUS_INSTALLED; - pub const nsIPrincipal_APP_STATUS_PRIVILEGED: - root::nsIPrincipal__bindgen_ty_1 = - nsIPrincipal__bindgen_ty_1::APP_STATUS_PRIVILEGED; - pub const nsIPrincipal_APP_STATUS_CERTIFIED: - root::nsIPrincipal__bindgen_ty_1 = - nsIPrincipal__bindgen_ty_1::APP_STATUS_CERTIFIED; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIPrincipal__bindgen_ty_1 { - APP_STATUS_NOT_INSTALLED = 0, - APP_STATUS_INSTALLED = 1, - APP_STATUS_PRIVILEGED = 2, - APP_STATUS_CERTIFIED = 3, - } - #[test] - fn bindgen_test_layout_nsIPrincipal() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIPrincipal ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsIPrincipal ) )); - } - impl Clone for nsIPrincipal { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - pub struct nsWrapperCache__bindgen_vtable { - } - /** - * Class to store the wrapper for an object. This can only be used with objects - * that only have one non-security wrapper at a time (for an XPCWrappedNative - * this is usually ensured by setting an explicit parent in the PreCreate hook - * for the class). - * - * An instance of nsWrapperCache can be gotten from an object that implements - * a wrapper cache by calling QueryInterface on it. Note that this breaks XPCOM - * rules a bit (this object doesn't derive from nsISupports). - * - * The cache can store objects other than wrappers. We allow wrappers to use a - * separate JSObject to store their state (mostly expandos). If the wrapper is - * collected and we want to preserve this state we actually store the state - * object in the cache. - * - * The cache can store 2 types of objects: - * - * If WRAPPER_IS_NOT_DOM_BINDING is set (IsDOMBinding() returns false): - * - the JSObject of an XPCWrappedNative wrapper - * - * If WRAPPER_IS_NOT_DOM_BINDING is not set (IsDOMBinding() returns true): - * - a DOM binding object (regular JS object or proxy) - * - * The finalizer for the wrapper clears the cache. - * - * A compacting GC can move the wrapper object. Pointers to moved objects are - * usually found and updated by tracing the heap, however non-preserved wrappers - * are weak references and are not traced, so another approach is - * necessary. Instead a class hook (objectMovedOp) is provided that is called - * when an object is moved and is responsible for ensuring pointers are - * updated. It does this by calling UpdateWrapper() on the wrapper - * cache. SetWrapper() asserts that the hook is implemented for any wrapper set. - * - * A number of the methods are implemented in nsWrapperCacheInlines.h because we - * have to include some JS headers that don't play nicely with the rest of the - * codebase. Include nsWrapperCacheInlines.h if you need to call those methods. - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsWrapperCache { - pub vtable_: *const nsWrapperCache__bindgen_vtable, - pub mWrapper: *mut root::JSObject, - pub mFlags: root::nsWrapperCache_FlagsType, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsWrapperCache_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub type nsWrapperCache_FlagsType = u32; - pub const nsWrapperCache_WRAPPER_BIT_PRESERVED: - root::nsWrapperCache__bindgen_ty_1 = - nsWrapperCache__bindgen_ty_1::WRAPPER_BIT_PRESERVED; - #[repr(u32)] - /** - * If this bit is set then we're preserving the wrapper, which in effect ties - * the lifetime of the JS object stored in the cache to the lifetime of the - * native object. We rely on the cycle collector to break the cycle that this - * causes between the native object and the JS object, so it is important that - * any native object that supports preserving of its wrapper - * traces/traverses/unlinks the cached JS object (see - * NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER and - * NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER). - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsWrapperCache__bindgen_ty_1 { WRAPPER_BIT_PRESERVED = 1, } - pub const nsWrapperCache_WRAPPER_IS_NOT_DOM_BINDING: - root::nsWrapperCache__bindgen_ty_2 = - nsWrapperCache__bindgen_ty_2::WRAPPER_IS_NOT_DOM_BINDING; - #[repr(u32)] - /** - * If this bit is set then the wrapper for the native object is not a DOM - * binding. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsWrapperCache__bindgen_ty_2 { WRAPPER_IS_NOT_DOM_BINDING = 2, } - pub const nsWrapperCache_kWrapperFlagsMask: - root::nsWrapperCache__bindgen_ty_3 = - nsWrapperCache__bindgen_ty_3::kWrapperFlagsMask; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsWrapperCache__bindgen_ty_3 { kWrapperFlagsMask = 3, } - #[test] - fn bindgen_test_layout_nsWrapperCache() { - assert_eq!(::std::mem::size_of::() , 24usize , concat - ! ( "Size of: " , stringify ! ( nsWrapperCache ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsWrapperCache ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsWrapperCache ) ) . mWrapper as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsWrapperCache ) , - "::" , stringify ! ( mWrapper ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsWrapperCache ) ) . mFlags as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsWrapperCache ) , - "::" , stringify ! ( mFlags ) )); - } - #[repr(C)] - pub struct TraceCallbacks__bindgen_vtable { - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct TraceCallbacks { - pub vtable_: *const TraceCallbacks__bindgen_vtable, - } - #[test] - fn bindgen_test_layout_TraceCallbacks() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( TraceCallbacks ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( TraceCallbacks ) )); - } - impl Clone for TraceCallbacks { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsScriptObjectTracer { - pub _base: root::nsCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_nsScriptObjectTracer() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( - "Size of: " , stringify ! ( nsScriptObjectTracer ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsScriptObjectTracer ) )); - } - impl Clone for nsScriptObjectTracer { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsXPCOMCycleCollectionParticipant { - pub _base: root::nsScriptObjectTracer, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsXPCOMCycleCollectionParticipant_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsXPCOMCycleCollectionParticipant() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - nsXPCOMCycleCollectionParticipant ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsXPCOMCycleCollectionParticipant ) )); - } - impl Clone for nsXPCOMCycleCollectionParticipant { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct JSErrorFormatString { - /** The error message name in ASCII. */ - pub name: *const ::std::os::raw::c_char, - /** The error format string in ASCII. */ - pub format: *const ::std::os::raw::c_char, - /** The number of arguments to expand in the formatted error message. */ - pub argCount: u16, - /** One of the JSExnType constants above. */ - pub exnType: i16, - } - #[test] - fn bindgen_test_layout_JSErrorFormatString() { - assert_eq!(::std::mem::size_of::() , 24usize , - concat ! ( - "Size of: " , stringify ! ( JSErrorFormatString ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( JSErrorFormatString ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorFormatString ) ) . name as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorFormatString - ) , "::" , stringify ! ( name ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorFormatString ) ) . format as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorFormatString - ) , "::" , stringify ! ( format ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorFormatString ) ) . argCount as - * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorFormatString - ) , "::" , stringify ! ( argCount ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorFormatString ) ) . exnType as - * const _ as usize } , 18usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorFormatString - ) , "::" , stringify ! ( exnType ) )); - } - impl Clone for JSErrorFormatString { - fn clone(&self) -> Self { *self } - } - pub type JSErrorCallback = - ::std::option::Option *const root::JSErrorFormatString>; - /** - * Base class that implements parts shared by JSErrorReport and - * JSErrorNotes::Note. - */ - #[repr(C)] - #[derive(Debug)] - pub struct JSErrorBase { - pub message_: root::JS::ConstUTF8CharsZ, - pub filename: *const ::std::os::raw::c_char, - pub lineno: ::std::os::raw::c_uint, - pub column: ::std::os::raw::c_uint, - pub errorNumber: ::std::os::raw::c_uint, - pub _bitfield_1: u8, - pub __bindgen_padding_0: [u8; 3usize], - } - #[test] - fn bindgen_test_layout_JSErrorBase() { - assert_eq!(::std::mem::size_of::() , 32usize , concat ! ( - "Size of: " , stringify ! ( JSErrorBase ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( JSErrorBase ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorBase ) ) . message_ as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorBase ) , - "::" , stringify ! ( message_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorBase ) ) . filename as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorBase ) , - "::" , stringify ! ( filename ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorBase ) ) . lineno as * const _ - as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorBase ) , - "::" , stringify ! ( lineno ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorBase ) ) . column as * const _ - as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorBase ) , - "::" , stringify ! ( column ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorBase ) ) . errorNumber as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorBase ) , - "::" , stringify ! ( errorNumber ) )); - } - /** - * Notes associated with JSErrorReport. - */ - #[repr(C)] - #[derive(Debug)] - pub struct JSErrorNotes { - pub notes_: [u64; 6usize], - } - #[repr(C)] - #[derive(Debug)] - pub struct JSErrorNotes_Note { - pub _base: root::JSErrorBase, - } - #[test] - fn bindgen_test_layout_JSErrorNotes_Note() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( "Size of: " , stringify ! ( JSErrorNotes_Note ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( JSErrorNotes_Note ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct JSErrorNotes_iterator { - pub note_: *mut root::mozilla::UniquePtr>, - } - #[test] - fn bindgen_test_layout_JSErrorNotes_iterator() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( JSErrorNotes_iterator ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( JSErrorNotes_iterator ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorNotes_iterator ) ) . note_ as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - JSErrorNotes_iterator ) , "::" , stringify ! ( note_ ) )); - } - #[test] - fn bindgen_test_layout_JSErrorNotes() { - assert_eq!(::std::mem::size_of::() , 48usize , concat ! - ( "Size of: " , stringify ! ( JSErrorNotes ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( JSErrorNotes ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorNotes ) ) . notes_ as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorNotes ) , - "::" , stringify ! ( notes_ ) )); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIEventTarget { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIEventTarget_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIEventTarget_DISPATCH_NORMAL: - root::nsIEventTarget__bindgen_ty_1 = - nsIEventTarget__bindgen_ty_1::DISPATCH_NORMAL; - pub const nsIEventTarget_DISPATCH_SYNC: root::nsIEventTarget__bindgen_ty_1 - = - nsIEventTarget__bindgen_ty_1::DISPATCH_SYNC; - pub const nsIEventTarget_DISPATCH_AT_END: - root::nsIEventTarget__bindgen_ty_1 = - nsIEventTarget__bindgen_ty_1::DISPATCH_AT_END; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIEventTarget__bindgen_ty_1 { - DISPATCH_NORMAL = 0, - DISPATCH_SYNC = 1, - DISPATCH_AT_END = 2, - } - #[test] - fn bindgen_test_layout_nsIEventTarget() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsIEventTarget ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsIEventTarget ) )); - } - impl Clone for nsIEventTarget { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIRunnable { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIRunnable_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIRunnable() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIRunnable ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsIRunnable ) )); - } - impl Clone for nsIRunnable { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct nsIGlobalObject { - pub _base: root::nsISupports, - pub _base_1: root::mozilla::dom::DispatcherTrait, - pub mHostObjectURIs: root::nsTArray, - pub mIsDying: bool, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIGlobalObject_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIGlobalObject() { - assert_eq!(::std::mem::size_of::() , 32usize , concat - ! ( "Size of: " , stringify ! ( nsIGlobalObject ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIGlobalObject ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIObjectInputStream([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIObjectOutputStream([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsISerializable { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsISerializable_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsISerializable() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsISerializable ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsISerializable ) )); - } - impl Clone for nsISerializable { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIURI { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIURI_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIURI() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIURI ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIURI ) )); - } - impl Clone for nsIURI { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIContentSecurityPolicy([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMDocument([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct nsPIDOMWindowInner { - pub _base: [u64; 29usize], - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsPIDOMWindowInner_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsPIDOMWindowInner() { - assert_eq!(::std::mem::size_of::() , 232usize , - concat ! ( "Size of: " , stringify ! ( nsPIDOMWindowInner ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsPIDOMWindowInner ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsGlobalWindow([u8; 0]); - /** - * It is used by the application to initialize a runtime and run scripts. - * A script runtime would implement this interface. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIScriptContext { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIScriptContext_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIScriptContext() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsIScriptContext ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIScriptContext ) )); - } - impl Clone for nsIScriptContext { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct nsIDocument { - pub _base: root::nsINode, - pub _base_1: root::mozilla::dom::DispatcherTrait, - pub mDeprecationWarnedAbout: u64, - pub mDocWarningWarnedAbout: u64, - pub mSelectorCache: root::nsAutoPtr, - pub mReferrer: root::nsCString, - pub mLastModified: ::nsstring::nsStringRepr, - pub mDocumentURI: root::nsCOMPtr, - pub mOriginalURI: root::nsCOMPtr, - pub mChromeXHRDocURI: root::nsCOMPtr, - pub mDocumentBaseURI: root::nsCOMPtr, - pub mChromeXHRDocBaseURI: root::nsCOMPtr, - pub mCachedURLData: root::RefPtr, - pub mDocumentLoadGroup: root::nsWeakPtr, - pub mReferrerPolicySet: bool, - pub mReferrerPolicy: root::nsIDocument_ReferrerPolicyEnum, - pub mBlockAllMixedContent: bool, - pub mBlockAllMixedContentPreloads: bool, - pub mUpgradeInsecureRequests: bool, - pub mUpgradeInsecurePreloads: bool, - pub mHSTSPrimingURIList: [u64; 6usize], - pub mDocumentContainer: u64, - pub mCharacterSet: root::nsCString, - pub mCharacterSetSource: i32, - pub mParentDocument: *mut root::nsIDocument, - pub mCachedRootElement: *mut root::mozilla::dom::Element, - pub mNodeInfoManager: *mut root::nsNodeInfoManager, - pub mCSSLoader: root::RefPtr, - pub mStyleImageLoader: root::RefPtr, - pub mAttrStyleSheet: root::RefPtr, - pub mStyleAttrStyleSheet: root::RefPtr, - pub mImageTracker: root::RefPtr, - pub mActivityObservers: root::nsAutoPtr<()>, - pub mLinksToUpdate: [u64; 3usize], - pub mAnimationController: root::RefPtr, - pub mPropertyTable: root::nsPropertyTable, - pub mExtraPropertyTables: root::nsTArray>, - pub mChildrenCollection: root::nsCOMPtr, - pub mFontFaceSet: root::RefPtr, - pub mLastFocusTime: root::mozilla::TimeStamp, - pub _bitfield_1: u8, - pub _bitfield_2: u8, - pub _bitfield_3: u8, - pub _bitfield_4: u8, - pub _bitfield_5: u8, - pub _bitfield_6: u8, - pub mCompatMode: root::nsCompatibility, - pub mReadyState: root::nsIDocument_ReadyState, - pub mStyleBackendType: root::mozilla::StyleBackendType, - pub mVisibilityState: root::mozilla::dom::VisibilityState, - pub mType: root::nsIDocument_Type, - pub mDefaultElementType: u8, - pub mAllowXULXBL: root::nsIDocument_Tri, - /** - * This is true while FlushPendingLinkUpdates executes. Calls to - * [Un]RegisterPendingLinkUpdate will assert when this is true. - */ - pub mIsLinkUpdateRegistrationsForbidden: bool, - pub mScriptGlobalObject: root::nsCOMPtr, - pub mOriginalDocument: root::nsCOMPtr, - pub mBidiOptions: u32, - pub mSandboxFlags: u32, - pub mContentLanguage: root::nsCString, - pub mChannel: root::nsCOMPtr, - pub mContentType: root::nsCString, - pub mId: ::nsstring::nsStringRepr, - pub mSecurityInfo: root::nsCOMPtr, - pub mFailedChannel: root::nsCOMPtr, - pub mPartID: u32, - pub mMarkedCCGeneration: u32, - pub mPresShell: *mut root::nsIPresShell, - pub mSubtreeModifiedTargets: root::nsCOMArray, - pub mSubtreeModifiedDepth: u32, - pub mDisplayDocument: root::nsCOMPtr, - pub mEventsSuppressed: u32, - /** - * The number number of external scripts (ones with the src attribute) that - * have this document as their owner and that are being evaluated right now. - */ - pub mExternalScriptsBeingEvaluated: u32, - /** - * The current frame request callback handle - */ - pub mFrameRequestCallbackCounter: i32, - pub mStaticCloneCount: u32, - pub mBlockedTrackingNodes: root::nsTArray>, - pub mWindow: *mut root::nsPIDOMWindowInner, - pub mCachedEncoder: root::nsCOMPtr, - pub mFrameRequestCallbacks: root::nsTArray, - pub mBFCacheEntry: *mut root::nsIBFCacheEntry, - pub mBaseTarget: ::nsstring::nsStringRepr, - pub mStateObjectContainer: root::nsCOMPtr, - pub mStateObjectCached: root::nsCOMPtr, - pub mInSyncOperationCount: u32, - pub mXPathEvaluator: root::RefPtr, - pub mAnonymousContents: root::nsTArray>, - pub mBlockDOMContentLoaded: u32, - pub mDOMMediaQueryLists: root::mozilla::LinkedList, - pub mUseCounters: [u64; 2usize], - pub mChildDocumentUseCounters: [u64; 2usize], - pub mNotifiedPageForUseCounter: [u64; 2usize], - pub mUserHasInteracted: bool, - pub mPageUnloadingEventTimeStamp: root::mozilla::TimeStamp, - pub mDocGroup: root::RefPtr, - pub mTrackingScripts: [u64; 6usize], - } - pub type nsIDocument_GlobalObject = root::mozilla::dom::GlobalObject; - pub use self::super::root::mozilla::net::ReferrerPolicy as - nsIDocument_ReferrerPolicyEnum; - pub type nsIDocument_Element = root::mozilla::dom::Element; - pub type nsIDocument_FullscreenRequest = - root::mozilla::dom::FullscreenRequest; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDocument_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug)] - pub struct nsIDocument_PageUnloadingEventTimeStamp { - pub mDocument: root::nsCOMPtr, - pub mSet: bool, - } - #[test] - fn bindgen_test_layout_nsIDocument_PageUnloadingEventTimeStamp() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - nsIDocument_PageUnloadingEventTimeStamp ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsIDocument_PageUnloadingEventTimeStamp ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const nsIDocument_PageUnloadingEventTimeStamp ) - ) . mDocument as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - nsIDocument_PageUnloadingEventTimeStamp ) , "::" , - stringify ! ( mDocument ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const nsIDocument_PageUnloadingEventTimeStamp ) - ) . mSet as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsIDocument_PageUnloadingEventTimeStamp ) , "::" , - stringify ! ( mSet ) )); - } - /** - * This gets fired when the element that an id refers to changes. - * This fires at difficult times. It is generally not safe to do anything - * which could modify the DOM in any way. Use - * nsContentUtils::AddScriptRunner. - * @return true to keep the callback in the callback set, false - * to remove it. - */ - pub type nsIDocument_IDTargetObserver = - ::std::option::Option bool>; - #[repr(C)] - #[derive(Debug)] - pub struct nsIDocument_SelectorCacheKey { - pub mKey: ::nsstring::nsStringRepr, - pub mState: root::nsExpirationState, - } - #[test] - fn bindgen_test_layout_nsIDocument_SelectorCacheKey() { - assert_eq!(::std::mem::size_of::() , - 24usize , concat ! ( - "Size of: " , stringify ! ( nsIDocument_SelectorCacheKey ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsIDocument_SelectorCacheKey ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsIDocument_SelectorCacheKey ) ) . - mKey as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsIDocument_SelectorCacheKey ) , "::" , stringify ! ( mKey - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsIDocument_SelectorCacheKey ) ) . - mState as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsIDocument_SelectorCacheKey ) , "::" , stringify ! ( - mState ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDocument_SelectorCacheKeyDeleter([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDocument_SelectorCache { - pub _bindgen_opaque_blob: [u64; 18usize], - } - #[test] - fn bindgen_test_layout_nsIDocument_SelectorCache() { - assert_eq!(::std::mem::size_of::() , - 144usize , concat ! ( - "Size of: " , stringify ! ( nsIDocument_SelectorCache ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIDocument_SelectorCache - ) )); - } - impl Clone for nsIDocument_SelectorCache { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_additionalSheetType { - eAgentSheet = 0, - eUserSheet = 1, - eAuthorSheet = 2, - AdditionalSheetTypeCount = 3, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_ReadyState { - READYSTATE_UNINITIALIZED = 0, - READYSTATE_LOADING = 1, - READYSTATE_INTERACTIVE = 3, - READYSTATE_COMPLETE = 4, - } - /** - * Enumerate all subdocuments. - * The enumerator callback should return true to continue enumerating, or - * false to stop. This will never get passed a null aDocument. - */ - pub type nsIDocument_nsSubDocEnumFunc = - ::std::option::Option bool>; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_ElementsFromPointFlags { - IGNORE_ROOT_SCROLL_FRAME = 1, - FLUSH_LAYOUT = 2, - IS_ELEMENT_FROM_POINT = 4, - } - /** - * A class that represents an external resource load that has begun but - * doesn't have a document yet. Observers can be registered on this object, - * and will be notified after the document is created. Observers registered - * after the document has been created will NOT be notified. When observers - * are notified, the subject will be the newly-created document, the topic - * will be "external-resource-document-created", and the data will be null. - * If document creation fails for some reason, observers will still be - * notified, with a null document pointer. - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsIDocument_ExternalResourceLoad { - pub _base: root::nsISupports, - pub mObservers: [u64; 10usize], - } - #[test] - fn bindgen_test_layout_nsIDocument_ExternalResourceLoad() { - assert_eq!(::std::mem::size_of::() , - 88usize , concat ! ( - "Size of: " , stringify ! ( - nsIDocument_ExternalResourceLoad ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsIDocument_ExternalResourceLoad ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsIDocument_ExternalResourceLoad ) ) - . mObservers as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsIDocument_ExternalResourceLoad ) , "::" , stringify ! ( - mObservers ) )); - } - pub type nsIDocument_ActivityObserverEnumerator = - ::std::option::Option; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_DocumentTheme { - Doc_Theme_Uninitialized = 0, - Doc_Theme_None = 1, - Doc_Theme_Neutral = 2, - Doc_Theme_Dark = 3, - Doc_Theme_Bright = 4, - } - pub type nsIDocument_FrameRequestCallbackList = - root::nsTArray>; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_DeprecatedOperations { - eGetAttributeNode = 0, - eSetAttributeNode = 1, - eGetAttributeNodeNS = 2, - eSetAttributeNodeNS = 3, - eRemoveAttributeNode = 4, - eCreateAttribute = 5, - eCreateAttributeNS = 6, - eNodeValue = 7, - eTextContent = 8, - eEnablePrivilege = 9, - eDOMExceptionCode = 10, - eNoExposedProps = 11, - eMutationEvent = 12, - eComponents = 13, - ePrefixedVisibilityAPI = 14, - eNodeIteratorDetach = 15, - eLenientThis = 16, - eGetPreventDefault = 17, - eGetSetUserData = 18, - eMozGetAsFile = 19, - eUseOfCaptureEvents = 20, - eUseOfReleaseEvents = 21, - eUseOfDOM3LoadMethod = 22, - eChromeUseOfDOM3LoadMethod = 23, - eShowModalDialog = 24, - eWindow_Content = 25, - eSyncXMLHttpRequest = 26, - eWindow_Controllers = 27, - eImportXULIntoContent = 28, - ePannerNodeDoppler = 29, - eNavigatorGetUserMedia = 30, - eWebrtcDeprecatedPrefix = 31, - eRTCPeerConnectionGetStreams = 32, - eAppCache = 33, - ePrefixedImageSmoothingEnabled = 34, - ePrefixedFullscreenAPI = 35, - eLenientSetter = 36, - eFileLastModifiedDate = 37, - eImageBitmapRenderingContext_TransferImageBitmap = 38, - eURLCreateObjectURL_MediaStream = 39, - eXMLBaseAttribute = 40, - eXMLBaseAttributeForStyleAttr = 41, - eDeprecatedOperationCount = 42, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_DocumentWarnings { - eIgnoringWillChangeOverBudget = 0, - ePreventDefaultFromPassiveListener = 1, - eSVGReferenceLoop = 2, - eSVGReferenceChainLengthExceeded = 3, - eDocumentWarningCount = 4, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_ElementCallbackType { - eCreated = 0, - eAttached = 1, - eDetached = 2, - eAttributeChanged = 3, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_Type { - eUnknown = 0, - eHTML = 1, - eXHTML = 2, - eGenericXML = 3, - eSVG = 4, - eXUL = 5, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_Tri { eTriUnset = 0, eTriFalse = 1, eTriTrue = 2, } - #[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::() , 896usize , concat ! - ( "Size of: " , stringify ! ( nsIDocument ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsIDocument ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDocShell([u8; 0]); - /** - * The global object which keeps a script context for each supported script - * language. This often used to store per-window global state. - * This is a heavyweight interface implemented only by DOM globals, and - * it might go away some time in the future. - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsIScriptGlobalObject { - pub _base: root::nsIGlobalObject, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIScriptGlobalObject_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIScriptGlobalObject() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( - "Size of: " , stringify ! ( nsIScriptGlobalObject ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIScriptGlobalObject ) - )); - } - #[repr(u32)] - /** - * Return status for event processors. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsEventStatus { - nsEventStatus_eIgnore = 0, - nsEventStatus_eConsumeNoDefault = 1, - nsEventStatus_eConsumeDoDefault = 2, - nsEventStatus_eSentinel = 3, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIObserver { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIObserver_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIObserver() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIObserver ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsIObserver ) )); - } - impl Clone for nsIObserver { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIVariant { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIVariant_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIVariant() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIVariant ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIVariant ) )); - } - impl Clone for nsIVariant { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsISimpleEnumerator([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsINamed { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsINamed_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsINamed() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsINamed ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsINamed ) )); - } - impl Clone for nsINamed { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct nsRevocableEventPtr { - pub mEvent: root::RefPtr, - } - pub type DOMHighResTimeStamp = f64; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMAttr { - pub _base: root::nsIDOMNode, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMAttr_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMAttr() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIDOMAttr ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIDOMAttr ) )); - } - impl Clone for nsIDOMAttr { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMElement { - pub _base: root::nsIDOMNode, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMElement_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMElement() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsIDOMElement ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsIDOMElement ) )); - } - impl Clone for nsIDOMElement { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMNode { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMNode_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIDOMNode_ELEMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::ELEMENT_NODE; - pub const nsIDOMNode_ATTRIBUTE_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::ATTRIBUTE_NODE; - pub const nsIDOMNode_TEXT_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::TEXT_NODE; - pub const nsIDOMNode_CDATA_SECTION_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::CDATA_SECTION_NODE; - pub const nsIDOMNode_ENTITY_REFERENCE_NODE: root::nsIDOMNode__bindgen_ty_1 - = - nsIDOMNode__bindgen_ty_1::ENTITY_REFERENCE_NODE; - pub const nsIDOMNode_ENTITY_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::ENTITY_NODE; - pub const nsIDOMNode_PROCESSING_INSTRUCTION_NODE: - root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::PROCESSING_INSTRUCTION_NODE; - pub const nsIDOMNode_COMMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::COMMENT_NODE; - pub const nsIDOMNode_DOCUMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::DOCUMENT_NODE; - pub const nsIDOMNode_DOCUMENT_TYPE_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::DOCUMENT_TYPE_NODE; - pub const nsIDOMNode_DOCUMENT_FRAGMENT_NODE: - root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::DOCUMENT_FRAGMENT_NODE; - pub const nsIDOMNode_NOTATION_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::NOTATION_NODE; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDOMNode__bindgen_ty_1 { - ELEMENT_NODE = 1, - ATTRIBUTE_NODE = 2, - TEXT_NODE = 3, - CDATA_SECTION_NODE = 4, - ENTITY_REFERENCE_NODE = 5, - ENTITY_NODE = 6, - PROCESSING_INSTRUCTION_NODE = 7, - COMMENT_NODE = 8, - DOCUMENT_NODE = 9, - DOCUMENT_TYPE_NODE = 10, - DOCUMENT_FRAGMENT_NODE = 11, - NOTATION_NODE = 12, - } - pub const nsIDOMNode_DOCUMENT_POSITION_DISCONNECTED: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_DISCONNECTED; - pub const nsIDOMNode_DOCUMENT_POSITION_PRECEDING: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_PRECEDING; - pub const nsIDOMNode_DOCUMENT_POSITION_FOLLOWING: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_FOLLOWING; - pub const nsIDOMNode_DOCUMENT_POSITION_CONTAINS: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_CONTAINS; - pub const nsIDOMNode_DOCUMENT_POSITION_CONTAINED_BY: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_CONTAINED_BY; - pub const nsIDOMNode_DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDOMNode__bindgen_ty_2 { - DOCUMENT_POSITION_DISCONNECTED = 1, - DOCUMENT_POSITION_PRECEDING = 2, - DOCUMENT_POSITION_FOLLOWING = 4, - DOCUMENT_POSITION_CONTAINS = 8, - DOCUMENT_POSITION_CONTAINED_BY = 16, - DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 32, - } - #[test] - fn bindgen_test_layout_nsIDOMNode() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIDOMNode ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIDOMNode ) )); - } - impl Clone for nsIDOMNode { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMNodeList { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMNodeList_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMNodeList() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsIDOMNodeList ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsIDOMNodeList ) )); - } - impl Clone for nsIDOMNodeList { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMClientRect { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMClientRect_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMClientRect() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsIDOMClientRect ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMClientRect ) )); - } - impl Clone for nsIDOMClientRect { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMClientRectList { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMClientRectList_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMClientRectList() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( nsIDOMClientRectList ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMClientRectList ) )); - } - impl Clone for nsIDOMClientRectList { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMStyleSheet { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMStyleSheet_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMStyleSheet() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsIDOMStyleSheet ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMStyleSheet ) )); - } - impl Clone for nsIDOMStyleSheet { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMMediaList { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMMediaList_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMMediaList() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsIDOMMediaList ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMMediaList ) )); - } - impl Clone for nsIDOMMediaList { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMEvent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMEventTarget { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMEventTarget_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMEventTarget() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( "Size of: " , stringify ! ( nsIDOMEventTarget ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMEventTarget ) )); - } - impl Clone for nsIDOMEventTarget { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMEventListener([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMHTMLCollection { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMHTMLCollection_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMHTMLCollection() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( nsIDOMHTMLCollection ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMHTMLCollection ) )); - } - impl Clone for nsIDOMHTMLCollection { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMCSSValue { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMCSSValue_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIDOMCSSValue_CSS_INHERIT: root::nsIDOMCSSValue__bindgen_ty_1 = - nsIDOMCSSValue__bindgen_ty_1::CSS_INHERIT; - pub const nsIDOMCSSValue_CSS_PRIMITIVE_VALUE: - root::nsIDOMCSSValue__bindgen_ty_1 = - nsIDOMCSSValue__bindgen_ty_1::CSS_PRIMITIVE_VALUE; - pub const nsIDOMCSSValue_CSS_VALUE_LIST: - root::nsIDOMCSSValue__bindgen_ty_1 = - nsIDOMCSSValue__bindgen_ty_1::CSS_VALUE_LIST; - pub const nsIDOMCSSValue_CSS_CUSTOM: root::nsIDOMCSSValue__bindgen_ty_1 = - nsIDOMCSSValue__bindgen_ty_1::CSS_CUSTOM; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDOMCSSValue__bindgen_ty_1 { - CSS_INHERIT = 0, - CSS_PRIMITIVE_VALUE = 1, - CSS_VALUE_LIST = 2, - CSS_CUSTOM = 3, - } - #[test] - fn bindgen_test_layout_nsIDOMCSSValue() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsIDOMCSSValue ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsIDOMCSSValue ) )); - } - impl Clone for nsIDOMCSSValue { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMCSSRule { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMCSSRule_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIDOMCSSRule_UNKNOWN_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::UNKNOWN_RULE; - pub const nsIDOMCSSRule_STYLE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::STYLE_RULE; - pub const nsIDOMCSSRule_CHARSET_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::CHARSET_RULE; - pub const nsIDOMCSSRule_IMPORT_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::IMPORT_RULE; - pub const nsIDOMCSSRule_MEDIA_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::MEDIA_RULE; - pub const nsIDOMCSSRule_FONT_FACE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 - = - nsIDOMCSSRule__bindgen_ty_1::FONT_FACE_RULE; - pub const nsIDOMCSSRule_PAGE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::PAGE_RULE; - pub const nsIDOMCSSRule_KEYFRAMES_RULE: root::nsIDOMCSSRule__bindgen_ty_1 - = - nsIDOMCSSRule__bindgen_ty_1::KEYFRAMES_RULE; - pub const nsIDOMCSSRule_KEYFRAME_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::KEYFRAME_RULE; - pub const nsIDOMCSSRule_MOZ_KEYFRAMES_RULE: - root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::KEYFRAMES_RULE; - pub const nsIDOMCSSRule_MOZ_KEYFRAME_RULE: - root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::KEYFRAME_RULE; - pub const nsIDOMCSSRule_NAMESPACE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 - = - nsIDOMCSSRule__bindgen_ty_1::NAMESPACE_RULE; - pub const nsIDOMCSSRule_COUNTER_STYLE_RULE: - root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::COUNTER_STYLE_RULE; - pub const nsIDOMCSSRule_SUPPORTS_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::SUPPORTS_RULE; - pub const nsIDOMCSSRule_FONT_FEATURE_VALUES_RULE: - root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::FONT_FEATURE_VALUES_RULE; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDOMCSSRule__bindgen_ty_1 { - UNKNOWN_RULE = 0, - STYLE_RULE = 1, - CHARSET_RULE = 2, - IMPORT_RULE = 3, - MEDIA_RULE = 4, - FONT_FACE_RULE = 5, - PAGE_RULE = 6, - KEYFRAMES_RULE = 7, - KEYFRAME_RULE = 8, - NAMESPACE_RULE = 10, - COUNTER_STYLE_RULE = 11, - SUPPORTS_RULE = 12, - FONT_FEATURE_VALUES_RULE = 14, - } - #[test] - fn bindgen_test_layout_nsIDOMCSSRule() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsIDOMCSSRule ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsIDOMCSSRule ) )); - } - impl Clone for nsIDOMCSSRule { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMCSSRuleList([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMCSSStyleSheet { - pub _base: root::nsIDOMStyleSheet, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMCSSStyleSheet_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMCSSStyleSheet() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( nsIDOMCSSStyleSheet ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMCSSStyleSheet ) )); - } - impl Clone for nsIDOMCSSStyleSheet { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMCSSStyleDeclaration { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMCSSStyleDeclaration_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMCSSStyleDeclaration() { - assert_eq!(::std::mem::size_of::() , 8usize - , concat ! ( - "Size of: " , stringify ! ( nsIDOMCSSStyleDeclaration ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIDOMCSSStyleDeclaration - ) )); - } - impl Clone for nsIDOMCSSStyleDeclaration { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIControllers([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsISelection([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct nsPresContext { - pub _base: root::nsIObserver, - pub _base_1: u64, - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mType: root::nsPresContext_nsPresContextType, - pub mShell: *mut root::nsIPresShell, - pub mDocument: root::nsCOMPtr, - pub mDeviceContext: root::RefPtr, - pub mEventManager: root::RefPtr, - pub mRefreshDriver: root::RefPtr, - pub mEffectCompositor: root::RefPtr, - pub mTransitionManager: root::RefPtr, - pub mAnimationManager: root::RefPtr, - pub mRestyleManager: root::RefPtr, - pub mCounterStyleManager: root::RefPtr, - pub mMedium: *mut root::nsIAtom, - pub mMediaEmulated: root::nsCOMPtr, - pub mLinkHandler: *mut root::nsILinkHandler, - pub mLanguage: root::nsCOMPtr, - pub mInflationDisabledForShrinkWrap: bool, - pub mContainer: u64, - pub mBaseMinFontSize: i32, - pub mSystemFontScale: f32, - pub mTextZoom: f32, - pub mEffectiveTextZoom: f32, - pub mFullZoom: f32, - pub mOverrideDPPX: f32, - pub mLastFontInflationScreenSize: root::gfxSize, - pub mCurAppUnitsPerDevPixel: i32, - pub mAutoQualityMinFontSizePixelsPref: i32, - pub mTheme: root::nsCOMPtr, - pub mLangService: root::nsCOMPtr, - pub mPrintSettings: root::nsCOMPtr, - pub mPrefChangedTimer: root::nsCOMPtr, - pub mBidiEngine: root::mozilla::UniquePtr>, - pub mPropertyTable: root::nsPresContext_FramePropertyTable, - pub mTransactions: [u64; 10usize], - pub mTextPerf: root::nsAutoPtr, - pub mMissingFonts: root::nsAutoPtr, - pub mVisibleArea: root::nsRect, - pub mPageSize: root::nsSize, - pub mPageScale: f32, - pub mPPScale: f32, - pub mDefaultColor: root::nscolor, - pub mBackgroundColor: root::nscolor, - pub mLinkColor: root::nscolor, - pub mActiveLinkColor: root::nscolor, - pub mVisitedLinkColor: root::nscolor, - pub mFocusBackgroundColor: root::nscolor, - pub mFocusTextColor: root::nscolor, - pub mBodyTextColor: root::nscolor, - pub mViewportStyleScrollbar: root::nsPresContext_ScrollbarStyles, - pub mFocusRingWidth: u8, - pub mExistThrottledUpdates: bool, - pub mImageAnimationMode: u16, - pub mImageAnimationModePref: u16, - pub mLangGroupFontPrefs: root::nsPresContext_LangGroupFontPrefs, - pub mBorderWidthTable: [root::nscoord; 3usize], - pub mInterruptChecksToSkip: u32, - pub mElementsRestyled: u64, - pub mFramesConstructed: u64, - pub mFramesReflowed: u64, - pub mReflowStartTime: root::mozilla::TimeStamp, - pub mFirstNonBlankPaintTime: root::mozilla::TimeStamp, - pub mFirstClickTime: root::mozilla::TimeStamp, - pub mFirstKeyTime: root::mozilla::TimeStamp, - pub mFirstMouseMoveTime: root::mozilla::TimeStamp, - pub mFirstScrollTime: root::mozilla::TimeStamp, - pub mInteractionTimeEnabled: bool, - pub mLastStyleUpdateForAllAnimations: root::mozilla::TimeStamp, - pub mTelemetryScrollLastY: root::nscoord, - pub mTelemetryScrollMaxY: root::nscoord, - pub mTelemetryScrollTotalY: root::nscoord, - pub _bitfield_1: [u8; 4usize], - pub _bitfield_2: [u8; 2usize], - pub mRestyleLoggingEnabled: bool, - pub mInitialized: bool, - pub mLayoutPhaseCount: [u32; 3usize], - } - pub type nsPresContext_FramePropertyTable = - root::mozilla::FramePropertyTable; - pub type nsPresContext_LangGroupFontPrefs = - root::mozilla::LangGroupFontPrefs; - pub type nsPresContext_ScrollbarStyles = root::mozilla::ScrollbarStyles; - pub type nsPresContext_StaticPresData = root::mozilla::StaticPresData; - pub type nsPresContext_HasThreadSafeRefCnt = root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsPresContext_cycleCollection { - pub _base: root::nsXPCOMCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_nsPresContext_cycleCollection() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( nsPresContext_cycleCollection ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsPresContext_cycleCollection ) )); - } - impl Clone for nsPresContext_cycleCollection { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsPresContext_nsPresContextType { - eContext_Galley = 0, - eContext_PrintPreview = 1, - eContext_Print = 2, - eContext_PageLayout = 3, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsPresContext_InteractionType { - eClickInteraction = 0, - eKeyInteraction = 1, - eMouseMoveInteraction = 2, - eScrollInteraction = 3, - } - /** - * A class that can be used to temporarily disable reflow interruption. - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsPresContext_InterruptPreventer { - pub mCtx: *mut root::nsPresContext, - pub mInterruptsEnabled: bool, - pub mHasPendingInterrupt: bool, - } - #[test] - fn bindgen_test_layout_nsPresContext_InterruptPreventer() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( - nsPresContext_InterruptPreventer ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsPresContext_InterruptPreventer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) - . mCtx as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsPresContext_InterruptPreventer ) , "::" , stringify ! ( - mCtx ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) - . mInterruptsEnabled as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - nsPresContext_InterruptPreventer ) , "::" , stringify ! ( - mInterruptsEnabled ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) - . mHasPendingInterrupt as * const _ as usize } , 9usize , - concat ! ( - "Alignment of field: " , stringify ! ( - nsPresContext_InterruptPreventer ) , "::" , stringify ! ( - mHasPendingInterrupt ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct nsPresContext_TransactionInvalidations { - pub mTransactionId: u64, - pub mInvalidations: root::nsTArray, - } - #[test] - fn bindgen_test_layout_nsPresContext_TransactionInvalidations() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - nsPresContext_TransactionInvalidations ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsPresContext_TransactionInvalidations ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const nsPresContext_TransactionInvalidations ) - ) . mTransactionId as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - nsPresContext_TransactionInvalidations ) , "::" , - stringify ! ( mTransactionId ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const nsPresContext_TransactionInvalidations ) - ) . mInvalidations as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - nsPresContext_TransactionInvalidations ) , "::" , - stringify ! ( mInvalidations ) )); - } - extern "C" { - #[link_name = "_ZN13nsPresContext21_cycleCollectorGlobalE"] - pub static mut nsPresContext__cycleCollectorGlobal: - root::nsPresContext_cycleCollection; - } - #[test] - fn bindgen_test_layout_nsPresContext() { - assert_eq!(::std::mem::size_of::() , 1328usize , concat - ! ( "Size of: " , stringify ! ( nsPresContext ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsPresContext ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mRefCnt as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . _mOwningThread as - * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( _mOwningThread ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mType as * const - _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mShell as * const - _ as usize } , 40usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mShell ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mDocument as * - const _ as usize } , 48usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mDocument ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mDeviceContext as - * const _ as usize } , 56usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mDeviceContext ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mEventManager as - * const _ as usize } , 64usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mEventManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mRefreshDriver as - * const _ as usize } , 72usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mRefreshDriver ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mEffectCompositor - as * const _ as usize } , 80usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mEffectCompositor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mTransitionManager as * const _ as usize } , 88usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTransitionManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mAnimationManager - as * const _ as usize } , 96usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mAnimationManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mRestyleManager - as * const _ as usize } , 104usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mRestyleManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mCounterStyleManager as * const _ as usize } , 112usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mCounterStyleManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mMedium as * - const _ as usize } , 120usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mMedium ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mMediaEmulated as - * const _ as usize } , 128usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mMediaEmulated ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mLinkHandler as * - const _ as usize } , 136usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLinkHandler ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mLanguage as * - const _ as usize } , 144usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLanguage ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mInflationDisabledForShrinkWrap as * const _ as usize } , - 152usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mInflationDisabledForShrinkWrap ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mContainer as * - const _ as usize } , 160usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mContainer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mBaseMinFontSize - as * const _ as usize } , 168usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mBaseMinFontSize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mSystemFontScale - as * const _ as usize } , 172usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mSystemFontScale ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mTextZoom as * - const _ as usize } , 176usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTextZoom ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mEffectiveTextZoom as * const _ as usize } , 180usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mEffectiveTextZoom ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFullZoom as * - const _ as usize } , 184usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFullZoom ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mOverrideDPPX as - * const _ as usize } , 188usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mOverrideDPPX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mLastFontInflationScreenSize as * const _ as usize } , - 192usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLastFontInflationScreenSize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mCurAppUnitsPerDevPixel as * const _ as usize } , 208usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mCurAppUnitsPerDevPixel ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mAutoQualityMinFontSizePixelsPref as * const _ as usize } - , 212usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mAutoQualityMinFontSizePixelsPref ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mTheme as * const - _ as usize } , 216usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTheme ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mLangService as * - const _ as usize } , 224usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLangService ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPrintSettings as - * const _ as usize } , 232usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPrintSettings ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPrefChangedTimer - as * const _ as usize } , 240usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPrefChangedTimer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mBidiEngine as * - const _ as usize } , 248usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mBidiEngine ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPropertyTable as - * const _ as usize } , 256usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPropertyTable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mTransactions as - * const _ as usize } , 320usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTransactions ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mTextPerf as * - const _ as usize } , 400usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTextPerf ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mMissingFonts as - * const _ as usize } , 408usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mMissingFonts ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mVisibleArea as * - const _ as usize } , 416usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mVisibleArea ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPageSize as * - const _ as usize } , 432usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPageSize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPageScale as * - const _ as usize } , 440usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPageScale ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPPScale as * - const _ as usize } , 444usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPPScale ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mDefaultColor as - * const _ as usize } , 448usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mDefaultColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mBackgroundColor - as * const _ as usize } , 452usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mBackgroundColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mLinkColor as * - const _ as usize } , 456usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLinkColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mActiveLinkColor - as * const _ as usize } , 460usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mActiveLinkColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mVisitedLinkColor - as * const _ as usize } , 464usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mVisitedLinkColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mFocusBackgroundColor as * const _ as usize } , 468usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFocusBackgroundColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFocusTextColor - as * const _ as usize } , 472usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFocusTextColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mBodyTextColor as - * const _ as usize } , 476usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mBodyTextColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mViewportStyleScrollbar as * const _ as usize } , 480usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mViewportStyleScrollbar ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFocusRingWidth - as * const _ as usize } , 544usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFocusRingWidth ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mExistThrottledUpdates as * const _ as usize } , 545usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mExistThrottledUpdates ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mImageAnimationMode as * const _ as usize } , 546usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mImageAnimationMode ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mImageAnimationModePref as * const _ as usize } , 548usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mImageAnimationModePref ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mLangGroupFontPrefs as * const _ as usize } , 552usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLangGroupFontPrefs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mBorderWidthTable - as * const _ as usize } , 1192usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mBorderWidthTable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mInterruptChecksToSkip as * const _ as usize } , 1204usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mInterruptChecksToSkip ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mElementsRestyled - as * const _ as usize } , 1208usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mElementsRestyled ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mFramesConstructed as * const _ as usize } , 1216usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFramesConstructed ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFramesReflowed - as * const _ as usize } , 1224usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFramesReflowed ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mReflowStartTime - as * const _ as usize } , 1232usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mReflowStartTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mFirstNonBlankPaintTime as * const _ as usize } , - 1240usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFirstNonBlankPaintTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFirstClickTime - as * const _ as usize } , 1248usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFirstClickTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFirstKeyTime as - * const _ as usize } , 1256usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFirstKeyTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mFirstMouseMoveTime as * const _ as usize } , 1264usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFirstMouseMoveTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFirstScrollTime - as * const _ as usize } , 1272usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFirstScrollTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mInteractionTimeEnabled as * const _ as usize } , - 1280usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mInteractionTimeEnabled ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mLastStyleUpdateForAllAnimations as * const _ as usize } , - 1288usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLastStyleUpdateForAllAnimations ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mTelemetryScrollLastY as * const _ as usize } , 1296usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTelemetryScrollLastY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mTelemetryScrollMaxY as * const _ as usize } , 1300usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTelemetryScrollMaxY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mTelemetryScrollTotalY as * const _ as usize } , 1304usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTelemetryScrollTotalY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mRestyleLoggingEnabled as * const _ as usize } , 1314usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mRestyleLoggingEnabled ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mInitialized as * - const _ as usize } , 1315usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mInitialized ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mLayoutPhaseCount - as * const _ as usize } , 1316usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLayoutPhaseCount ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct nsPIDOMWindowOuter { - pub _base: [u64; 29usize], - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsPIDOMWindowOuter_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsPIDOMWindowOuter() { - assert_eq!(::std::mem::size_of::() , 232usize , - concat ! ( "Size of: " , stringify ! ( nsPIDOMWindowOuter ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsPIDOMWindowOuter ) )); + pub struct nsAutoPtr_Proxy { } + pub type nsAutoPtr_Proxy_member_function = u8; pub type PLDHashNumber = u32; #[repr(C)] - #[derive(Debug)] pub struct PLDHashTable { pub mOps: *const root::PLDHashTableOps, pub mHashShift: i16, @@ -14406,7 +13267,6 @@ pub mod root { fn clone(&self) -> Self { *self } } #[repr(C)] - #[derive(Debug, Copy)] pub struct Checker { pub mState: u32, pub mIsWritable: u32, @@ -14432,13 +13292,10 @@ pub mod root { "Alignment of field: " , stringify ! ( Checker ) , "::" , stringify ! ( mIsWritable ) )); } - impl Clone for Checker { - fn clone(&self) -> Self { *self } - } pub type PLDHashHashKey = ::std::option::Option ::std::os::raw::c_uint>; + -> root::PLDHashNumber>; pub type PLDHashMatchEntry = ::std::option::Option { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIContent_eAllChildren: root::nsIContent__bindgen_ty_1 = - nsIContent__bindgen_ty_1::eAllChildren; - pub const nsIContent_eAllButXBL: root::nsIContent__bindgen_ty_1 = - nsIContent__bindgen_ty_1::eAllButXBL; - pub const nsIContent_eSkipPlaceholderContent: - root::nsIContent__bindgen_ty_1 = - nsIContent__bindgen_ty_1::eSkipPlaceholderContent; - pub const nsIContent_eSkipDocumentLevelNativeAnonymousContent: - root::nsIContent__bindgen_ty_1 = - nsIContent__bindgen_ty_1::eSkipDocumentLevelNativeAnonymousContent; + pub type nsStringHashKey_KeyType = *const root::nsAString; + pub type nsStringHashKey_KeyTypePointer = *const root::nsAString; + pub const nsStringHashKey_ALLOW_MEMMOVE: + root::nsStringHashKey__bindgen_ty_1 = + nsStringHashKey__bindgen_ty_1::ALLOW_MEMMOVE; #[repr(u32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIContent__bindgen_ty_1 { - eAllChildren = 0, - eAllButXBL = 1, - eSkipPlaceholderContent = 2, - eSkipDocumentLevelNativeAnonymousContent = 4, - } - pub const nsIContent_ATTR_MISSING: root::nsIContent__bindgen_ty_2 = - nsIContent__bindgen_ty_2::ATTR_MISSING; - pub const nsIContent_ATTR_VALUE_NO_MATCH: root::nsIContent__bindgen_ty_2 = - nsIContent__bindgen_ty_2::ATTR_VALUE_NO_MATCH; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIContent__bindgen_ty_2 { - ATTR_MISSING = -1, - ATTR_VALUE_NO_MATCH = -2, + pub enum nsStringHashKey__bindgen_ty_1 { ALLOW_MEMMOVE = 1, } + #[test] + fn bindgen_test_layout_nsStringHashKey() { + assert_eq!(::std::mem::size_of::() , 24usize , concat + ! ( "Size of: " , stringify ! ( nsStringHashKey ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsStringHashKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStringHashKey ) ) . mStr as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStringHashKey ) , + "::" , stringify ! ( mStr ) )); } /** - * Check whether this content node's given attribute has one of a given - * list of values. If there is a match, we return the index in the list - * of the first matching value. If there was no attribute at all, then - * we return ATTR_MISSING. If there was an attribute but it didn't - * match, we return ATTR_VALUE_NO_MATCH. A non-negative result always - * indicates a match. - * - * @param aNameSpaceID The namespace ID of the attribute. Must not - * be kNameSpaceID_Unknown. - * @param aName The name atom of the attribute. Must not be null. - * @param aValues a nullptr-terminated array of pointers to atom values to test - * against. - * @param aCaseSensitive Whether to do a case-sensitive compare on the values. - * @return ATTR_MISSING, ATTR_VALUE_NO_MATCH or the non-negative index - * indicating the first value of aValues that matched - */ - pub type nsIContent_AttrValuesArray = *const *const root::nsIAtom; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIContent_FlattenedParentType { - eNotForStyle = 0, - eForStyle = 1, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIContent_ETabFocusType { - eTabFocus_textControlsMask = 1, - eTabFocus_formElementsMask = 2, - eTabFocus_linksMask = 4, - eTabFocus_any = 7, - } - extern "C" { - #[link_name = "_ZN10nsIContent14sTabFocusModelE"] - pub static mut nsIContent_sTabFocusModel: i32; - } - extern "C" { - #[link_name = "_ZN10nsIContent26sTabFocusModelAppliesToXULE"] - pub static mut nsIContent_sTabFocusModelAppliesToXUL: bool; - } - #[test] - fn bindgen_test_layout_nsIContent() { - assert_eq!(::std::mem::size_of::() , 96usize , concat ! ( - "Size of: " , stringify ! ( nsIContent ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIContent ) )); - } + * hashkey wrapper using nsACString KeyType + * + * @see nsTHashtable::EntryType for specification + */ #[repr(C)] #[derive(Debug)] - pub struct nsICSSDeclaration { - pub _base: root::nsIDOMCSSStyleDeclaration, - pub _base_1: root::nsWrapperCache, + pub struct nsCStringHashKey { + pub _base: root::PLDHashEntryHdr, + pub mStr: root::nsCString, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsICSSDeclaration_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsICSSDeclaration() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( "Size of: " , stringify ! ( nsICSSDeclaration ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsICSSDeclaration ) )); - } - pub type SuspendTypes = u32; + pub type nsCStringHashKey_KeyType = *const root::nsACString; + pub type nsCStringHashKey_KeyTypePointer = *const root::nsACString; + pub const nsCStringHashKey_ALLOW_MEMMOVE: + root::nsCStringHashKey__bindgen_ty_1 = + nsCStringHashKey__bindgen_ty_1::ALLOW_MEMMOVE; #[repr(u32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum UIStateChangeType { - UIStateChangeType_NoChange = 0, - UIStateChangeType_Set = 1, - UIStateChangeType_Clear = 2, - UIStateChangeType_Invalid = 3, + pub enum nsCStringHashKey__bindgen_ty_1 { ALLOW_MEMMOVE = 1, } + #[test] + fn bindgen_test_layout_nsCStringHashKey() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( "Size of: " , stringify ! ( nsCStringHashKey ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsCStringHashKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsCStringHashKey ) ) . mStr as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsCStringHashKey ) + , "::" , stringify ! ( mStr ) )); + } + /** + * hashkey wrapper using refcounted * KeyType + * + * @see nsTHashtable::EntryType for specification + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsRefPtrHashKey { + pub _base: root::PLDHashEntryHdr, + pub mKey: root::RefPtr, + } + pub type nsRefPtrHashKey_KeyType = *mut T; + pub type nsRefPtrHashKey_KeyTypePointer = *mut T; + pub const nsRefPtrHashKey_ALLOW_MEMMOVE: + root::nsRefPtrHashKey__bindgen_ty_1 = + nsRefPtrHashKey__bindgen_ty_1::ALLOW_MEMMOVE; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsRefPtrHashKey__bindgen_ty_1 { ALLOW_MEMMOVE = 0, } + /** + * a base class for templated hashtables. + * + * Clients will rarely need to use this class directly. Check the derived + * classes first, to see if they will meet your needs. + * + * @param EntryType the templated entry-type class that is managed by the + * hashtable. EntryType must extend the following declaration, + * and must not declare any virtual functions or derive from classes + * with virtual functions. Any vtable pointer would break the + * PLDHashTable code. + *
   class EntryType : public PLDHashEntryHdr
+ *   {
+ *   public: or friend nsTHashtable;
+ *     // KeyType is what we use when Get()ing or Put()ing this entry
+ *     // this should either be a simple datatype (uint32_t, nsISupports*) or
+ *     // a const reference (const nsAString&)
+ *     typedef something KeyType;
+ *     // KeyTypePointer is the pointer-version of KeyType, because
+ *     // PLDHashTable.h requires keys to cast to const void*
+ *     typedef const something* KeyTypePointer;
+ *
+ *     EntryType(KeyTypePointer aKey);
+ *
+ *     // A copy or C++11 Move constructor must be defined, even if
+ *     // AllowMemMove() == true, otherwise you will cause link errors.
+ *     EntryType(const EntryType& aEnt);  // Either this...
+ *     EntryType(EntryType&& aEnt);       // ...or this
+ *
+ *     // the destructor must be defined... or you will cause link errors!
+ *     ~EntryType();
+ *
+ *     // KeyEquals(): does this entry match this key?
+ *     bool KeyEquals(KeyTypePointer aKey) const;
+ *
+ *     // KeyToPointer(): Convert KeyType to KeyTypePointer
+ *     static KeyTypePointer KeyToPointer(KeyType aKey);
+ *
+ *     // HashKey(): calculate the hash number
+ *     static PLDHashNumber HashKey(KeyTypePointer aKey);
+ *
+ *     // ALLOW_MEMMOVE can we move this class with memmove(), or do we have
+ *     // to use the copy constructor?
+ *     enum { ALLOW_MEMMOVE = true/false };
+ *   }
+ * + * @see nsInterfaceHashtable + * @see nsDataHashtable + * @see nsClassHashtable + * @author "Benjamin Smedberg " + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsTHashtable { + } + pub type nsTHashtable_fallible_t = root::mozilla::fallible_t; + /** + * KeyType is typedef'ed for ease of use. + */ + pub type nsTHashtable_KeyType = [u8; 0usize]; + /** + * KeyTypePointer is typedef'ed for ease of use. + */ + pub type nsTHashtable_KeyTypePointer = [u8; 0usize]; + #[repr(C)] + #[derive(Debug)] + pub struct nsTHashtable_Iterator { + pub _base: root::PLDHashTable_Iterator, + } + pub type nsTHashtable_Iterator_Base = root::PLDHashTable_Iterator; + /** + * templated hashtable for simple data types + * This class manages simple data types that do not need construction or + * destruction. + * + * @param KeyClass a wrapper-class for the hashtable key, see nsHashKeys.h + * for a complete specification. + * @param DataType the datatype stored in the hashtable, + * for example, uint32_t or nsCOMPtr. If UserDataType is not the same, + * DataType must implicitly cast to UserDataType + * @param UserDataType the user sees, for example uint32_t or nsISupports* + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsBaseHashtable { + pub _base: u8, + } + pub type nsBaseHashtable_fallible_t = root::mozilla::fallible_t; + pub type nsBaseHashtable_KeyType = [u8; 0usize]; + pub type nsBaseHashtable_EntryType = + root::nsBaseHashtableET; + #[repr(C)] + #[derive(Debug)] + pub struct nsBaseHashtable_Iterator { + pub _base: root::PLDHashTable_Iterator, + } + pub type nsBaseHashtable_Iterator_Base = root::PLDHashTable_Iterator; + /** + * the private nsTHashtable::EntryType class used by nsBaseHashtable + * @see nsTHashtable for the specification of this class + * @see nsBaseHashtable for template parameters + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsBaseHashtableET { + pub _base: KeyClass, + pub mData: DataType, + } + pub type nsBaseHashtableET_KeyType = [u8; 0usize]; + pub type nsBaseHashtableET_KeyTypePointer = [u8; 0usize]; + /** + * templated hashtable class maps keys to simple datatypes. + * See nsBaseHashtable for complete declaration + * @param KeyClass a wrapper-class for the hashtable key, see nsHashKeys.h + * for a complete specification. + * @param DataType the simple datatype being wrapped + * @see nsInterfaceHashtable, nsClassHashtable + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsDataHashtable { + } + pub type nsDataHashtable_BaseClass = root::nsBaseHashtable; + pub type nsIntRegion = root::mozilla::gfx::IntRegion; + #[repr(C)] + #[derive(Debug)] + pub struct nsRegion { + pub mImpl: root::pixman_region32_t, + } + pub type nsRegion_RectType = root::nsRect; + pub type nsRegion_PointType = root::nsPoint; + pub type nsRegion_MarginType = root::nsMargin; + /** + * VisitEdges is a weird kind of function that we use for padding + * out surfaces to prevent texture filtering artifacts. + * It calls the visitFn callback for each of the exterior edges of + * the regions. The top and bottom edges will be expanded 1 pixel + * to the left and right if there's an outside corner. The order + * the edges are visited is not guaranteed. + * + * visitFn has a side parameter that can be TOP,BOTTOM,LEFT,RIGHT + * and specifies which kind of edge is being visited. x1, y1, x2, y2 + * are the coordinates of the line. (x1 == x2) || (y1 == y2) + */ + pub type nsRegion_visitFn = + ::std::option::Option; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsRegion_RectIterator { + pub mCurrent: ::std::os::raw::c_int, + pub mLimit: ::std::os::raw::c_int, + pub mTmp: root::nsRect, + pub mBoxes: *mut root::pixman_box32_t, + } + #[test] + fn bindgen_test_layout_nsRegion_RectIterator() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( + "Size of: " , stringify ! ( nsRegion_RectIterator ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsRegion_RectIterator ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsRegion_RectIterator ) ) . mCurrent + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsRegion_RectIterator ) , "::" , stringify ! ( mCurrent ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsRegion_RectIterator ) ) . mLimit as + * const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsRegion_RectIterator ) , "::" , stringify ! ( mLimit ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsRegion_RectIterator ) ) . mTmp as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsRegion_RectIterator ) , "::" , stringify ! ( mTmp ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsRegion_RectIterator ) ) . mBoxes as + * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsRegion_RectIterator ) , "::" , stringify ! ( mBoxes ) + )); + } + impl Clone for nsRegion_RectIterator { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_nsRegion() { + assert_eq!(::std::mem::size_of::() , 24usize , concat ! ( + "Size of: " , stringify ! ( nsRegion ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsRegion ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsRegion ) ) . mImpl as * const _ as + usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsRegion ) , "::" , + stringify ! ( mImpl ) )); } #[repr(C)] #[derive(Debug, Copy)] - pub struct nsIWeakReference { - pub _base: root::nsISupports, + pub struct nsTArrayHeader { + pub mLength: u32, + pub _bitfield_1: u32, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIWeakReference_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, + extern "C" { + #[link_name = "_ZN14nsTArrayHeader9sEmptyHdrE"] + pub static mut nsTArrayHeader_sEmptyHdr: root::nsTArrayHeader; } #[test] - fn bindgen_test_layout_nsIWeakReference() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsIWeakReference ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIWeakReference ) )); + fn bindgen_test_layout_nsTArrayHeader() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsTArrayHeader ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat + ! ( "Alignment of " , stringify ! ( nsTArrayHeader ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsTArrayHeader ) ) . mLength as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsTArrayHeader ) , + "::" , stringify ! ( mLength ) )); } - impl Clone for nsIWeakReference { + impl Clone for nsTArrayHeader { fn clone(&self) -> Self { *self } } - pub type nsWeakPtr = root::nsCOMPtr; - pub mod xpc { - #[allow(unused_imports)] - use self::super::super::root; - #[repr(C)] - #[derive(Debug)] - pub struct ErrorBase { - pub mErrorMsg: ::nsstring::nsStringRepr, - pub mFileName: ::nsstring::nsStringRepr, - pub mLineNumber: u32, - pub mColumn: u32, + impl nsTArrayHeader { + #[inline] + pub fn mCapacity(&self) -> u32 { + let mask = 2147483647usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u32) } } - #[test] - fn bindgen_test_layout_ErrorBase() { - assert_eq!(::std::mem::size_of::() , 40usize , concat ! - ( "Size of: " , stringify ! ( ErrorBase ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( ErrorBase ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ErrorBase ) ) . mErrorMsg as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( ErrorBase ) , - "::" , stringify ! ( mErrorMsg ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ErrorBase ) ) . mFileName as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( ErrorBase ) , - "::" , stringify ! ( mFileName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ErrorBase ) ) . mLineNumber as * - const _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( ErrorBase ) , - "::" , stringify ! ( mLineNumber ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ErrorBase ) ) . mColumn as * - const _ as usize } , 36usize , concat ! ( - "Alignment of field: " , stringify ! ( ErrorBase ) , - "::" , stringify ! ( mColumn ) )); + #[inline] + pub fn set_mCapacity(&mut self, val: u32) { + let mask = 2147483647usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; } - #[repr(C)] - #[derive(Debug)] - pub struct ErrorNote { - pub _base: root::xpc::ErrorBase, + #[inline] + pub fn mIsAutoArray(&self) -> u32 { + let mask = 2147483648usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 31usize; + unsafe { ::std::mem::transmute(val as u32) } } - #[test] - fn bindgen_test_layout_ErrorNote() { - assert_eq!(::std::mem::size_of::() , 40usize , concat ! - ( "Size of: " , stringify ! ( ErrorNote ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( ErrorNote ) )); + #[inline] + pub fn set_mIsAutoArray(&mut self, val: u32) { + let mask = 2147483648usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 31usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; } } + pub type nscoord = i32; + pub type nscolor = u32; + pub type nsIntPoint = root::mozilla::gfx::IntPoint; + pub type nsIntMargin = root::mozilla::gfx::IntMargin; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct gfxFontFeature { + pub mTag: u32, + pub mValue: u32, + } + #[test] + fn bindgen_test_layout_gfxFontFeature() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( gfxFontFeature ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat + ! ( "Alignment of " , stringify ! ( gfxFontFeature ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeature ) ) . mTag as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( gfxFontFeature ) , + "::" , stringify ! ( mTag ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeature ) ) . mValue as * + const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( gfxFontFeature ) , + "::" , stringify ! ( mValue ) )); + } + impl Clone for gfxFontFeature { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct gfxAlternateValue { + pub alternate: u32, + pub value: ::nsstring::nsStringRepr, + } + #[test] + fn bindgen_test_layout_gfxAlternateValue() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( "Size of: " , stringify ! ( gfxAlternateValue ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( gfxAlternateValue ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxAlternateValue ) ) . alternate as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( gfxAlternateValue ) + , "::" , stringify ! ( alternate ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxAlternateValue ) ) . value as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( gfxAlternateValue ) + , "::" , stringify ! ( value ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct gfxFontFeatureValueSet { + pub mRefCnt: root::nsAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mFontFeatureValues: [u64; 6usize], + } + pub type gfxFontFeatureValueSet_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug)] + pub struct gfxFontFeatureValueSet_ValueList { + pub name: ::nsstring::nsStringRepr, + pub featureSelectors: root::nsTArray, + } + #[test] + fn bindgen_test_layout_gfxFontFeatureValueSet_ValueList() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( + gfxFontFeatureValueSet_ValueList ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + gfxFontFeatureValueSet_ValueList ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeatureValueSet_ValueList ) ) + . name as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_ValueList ) , "::" , stringify ! ( + name ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeatureValueSet_ValueList ) ) + . featureSelectors as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_ValueList ) , "::" , stringify ! ( + featureSelectors ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct gfxFontFeatureValueSet_FeatureValues { + pub alternate: u32, + pub valuelist: root::nsTArray, + } + #[test] + fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValues() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValues ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + gfxFontFeatureValueSet_FeatureValues ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const gfxFontFeatureValueSet_FeatureValues ) ) + . alternate as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValues ) , "::" , stringify + ! ( alternate ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const gfxFontFeatureValueSet_FeatureValues ) ) + . valuelist as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValues ) , "::" , stringify + ! ( valuelist ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct gfxFontFeatureValueSet_FeatureValueHashKey { + pub mFamily: ::nsstring::nsStringRepr, + pub mPropVal: u32, + pub mName: ::nsstring::nsStringRepr, + } + #[test] + fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValueHashKey() { + assert_eq!(::std::mem::size_of::() + , 40usize , concat ! ( + "Size of: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashKey ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashKey ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) + ) . mFamily as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , + stringify ! ( mFamily ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) + ) . mPropVal as * const _ as usize } , 16usize , concat ! + ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , + stringify ! ( mPropVal ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) + ) . mName as * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , + stringify ! ( mName ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct gfxFontFeatureValueSet_FeatureValueHashEntry { + pub _base: root::PLDHashEntryHdr, + pub mKey: root::gfxFontFeatureValueSet_FeatureValueHashKey, + pub mValues: root::nsTArray, + } + pub type gfxFontFeatureValueSet_FeatureValueHashEntry_KeyType = + *const root::gfxFontFeatureValueSet_FeatureValueHashKey; + pub type gfxFontFeatureValueSet_FeatureValueHashEntry_KeyTypePointer = + *const root::gfxFontFeatureValueSet_FeatureValueHashKey; + pub const gfxFontFeatureValueSet_FeatureValueHashEntry_ALLOW_MEMMOVE: + root::gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1 + = + gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1::ALLOW_MEMMOVE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1 { + ALLOW_MEMMOVE = 1, + } + #[test] + fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValueHashEntry() { + assert_eq!(::std::mem::size_of::() + , 56usize , concat ! ( + "Size of: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashEntry ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashEntry ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const gfxFontFeatureValueSet_FeatureValueHashEntry + ) ) . mKey as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashEntry ) , "::" , + stringify ! ( mKey ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const gfxFontFeatureValueSet_FeatureValueHashEntry + ) ) . mValues as * const _ as usize } , 48usize , concat ! + ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashEntry ) , "::" , + stringify ! ( mValues ) )); + } + #[test] + fn bindgen_test_layout_gfxFontFeatureValueSet() { + assert_eq!(::std::mem::size_of::() , 64usize , + concat ! ( + "Size of: " , stringify ! ( gfxFontFeatureValueSet ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( gfxFontFeatureValueSet ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeatureValueSet ) ) . mRefCnt + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet ) , "::" , stringify ! ( mRefCnt ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeatureValueSet ) ) . + _mOwningThread as * const _ as usize } , 8usize , concat ! + ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet ) , "::" , stringify ! ( + _mOwningThread ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeatureValueSet ) ) . + mFontFeatureValues as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet ) , "::" , stringify ! ( + mFontFeatureValues ) )); + } + pub type gfxFontVariation = root::mozilla::gfx::FontVariation; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct gfxFontStyle { + _unused: [u8; 0], + } + pub const kGenericFont_NONE: u8 = 0; + pub const kGenericFont_moz_variable: u8 = 0; + pub const kGenericFont_moz_fixed: u8 = 1; + pub const kGenericFont_serif: u8 = 2; + pub const kGenericFont_sans_serif: u8 = 4; + pub const kGenericFont_monospace: u8 = 8; + pub const kGenericFont_cursive: u8 = 16; + pub const kGenericFont_fantasy: u8 = 32; + #[repr(C)] + #[derive(Debug)] + pub struct nsFont { + pub fontlist: root::mozilla::FontFamilyList, + pub style: u8, + pub systemFont: bool, + pub variantCaps: u8, + pub variantNumeric: u8, + pub variantPosition: u8, + pub variantWidth: u8, + pub variantLigatures: u16, + pub variantEastAsian: u16, + pub variantAlternates: u16, + pub smoothing: u8, + pub weight: u16, + pub stretch: i16, + pub kerning: u8, + pub synthesis: u8, + pub size: root::nscoord, + pub sizeAdjust: f32, + pub alternateValues: root::nsTArray, + pub featureValueLookup: root::RefPtr, + pub fontFeatureSettings: root::nsTArray, + pub fontVariationSettings: root::nsTArray, + pub languageOverride: u32, + } + #[test] + fn bindgen_test_layout_nsFont() { + assert_eq!(::std::mem::size_of::() , 88usize , concat ! ( + "Size of: " , stringify ! ( nsFont ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . fontlist as * const _ as + usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( fontlist ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . style as * const _ as + usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( style ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . systemFont as * const _ + as usize } , 17usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( systemFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantCaps as * const _ + as usize } , 18usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantCaps ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantNumeric as * + const _ as usize } , 19usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantNumeric ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantPosition as * + const _ as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantPosition ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantWidth as * const + _ as usize } , 21usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantWidth ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantLigatures as * + const _ as usize } , 22usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantLigatures ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantEastAsian as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantEastAsian ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantAlternates as * + const _ as usize } , 26usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantAlternates ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . smoothing as * const _ + as usize } , 28usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( smoothing ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . weight as * const _ as + usize } , 30usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( weight ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . stretch as * const _ as + usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( stretch ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . kerning as * const _ as + usize } , 34usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( kerning ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . synthesis as * const _ + as usize } , 35usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( synthesis ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . size as * const _ as + usize } , 36usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( size ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . sizeAdjust as * const _ + as usize } , 40usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( sizeAdjust ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . alternateValues as * + const _ as usize } , 48usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( alternateValues ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . featureValueLookup as * + const _ as usize } , 56usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( featureValueLookup ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . fontFeatureSettings as * + const _ as usize } , 64usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( fontFeatureSettings ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . fontVariationSettings as + * const _ as usize } , 72usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( fontVariationSettings ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . languageOverride as * + const _ as usize } , 80usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( languageOverride ) )); + } + /** + * An array of objects, similar to AutoTArray but which is memmovable. It + * always has length >= 1. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsStyleAutoArray { + pub mFirstElement: T, + pub mOtherElements: root::nsTArray, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsStyleAutoArray_WithSingleInitialElement { + WITH_SINGLE_INITIAL_ELEMENT = 0, + } + /** + * Currently needs to be 'double' for Cairo compatibility. Could + * become 'float', perhaps, in some configurations. + */ + pub type gfxFloat = f64; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct gfxSize { + pub _bindgen_opaque_blob: [u64; 2usize], + } + pub type gfxSize_Super = [u64; 2usize]; + #[test] + fn bindgen_test_layout_gfxSize() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! ( + "Size of: " , stringify ! ( gfxSize ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( gfxSize ) )); + } + impl Clone for gfxSize { + fn clone(&self) -> Self { *self } + } + pub type nsIntRect = root::mozilla::gfx::IntRect; + pub const nsStyleUnit_eStyleUnit_MAX: root::nsStyleUnit = + nsStyleUnit::eStyleUnit_Calc; + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + 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(Debug, Copy)] + pub struct nsStyleUnion { + pub mInt: root::__BindgenUnionField, + pub mFloat: root::__BindgenUnionField, + pub mPointer: root::__BindgenUnionField<*mut ::std::os::raw::c_void>, + pub bindgen_union_field: u64, + } + #[test] + fn bindgen_test_layout_nsStyleUnion() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsStyleUnion ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsStyleUnion ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleUnion ) ) . mInt as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleUnion ) , + "::" , stringify ! ( mInt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleUnion ) ) . mFloat as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleUnion ) , + "::" , stringify ! ( mFloat ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleUnion ) ) . mPointer as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleUnion ) , + "::" , stringify ! ( mPointer ) )); + } + impl Clone for nsStyleUnion { + fn clone(&self) -> Self { *self } + } + /** + * 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)] + #[derive(Debug)] + pub struct nsStyleCoord { + mUnit: root::nsStyleUnit, + mValue: root::nsStyleUnion, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsStyleCoord_CalcValue { + pub mLength: root::nscoord, + pub mPercent: f32, + pub mHasPercent: bool, + } + #[test] + fn bindgen_test_layout_nsStyleCoord_CalcValue() { + assert_eq!(::std::mem::size_of::() , 12usize , + concat ! ( + "Size of: " , stringify ! ( nsStyleCoord_CalcValue ) )); + assert_eq! (::std::mem::align_of::() , 4usize + , concat ! ( + "Alignment of " , stringify ! ( nsStyleCoord_CalcValue ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . mLength + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsStyleCoord_CalcValue ) , "::" , stringify ! ( mLength ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . mPercent + as * const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsStyleCoord_CalcValue ) , "::" , stringify ! ( mPercent ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . + mHasPercent as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsStyleCoord_CalcValue ) , "::" , stringify ! ( + mHasPercent ) )); + } + impl Clone for nsStyleCoord_CalcValue { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsStyleCoord_Calc { + pub _base: root::nsStyleCoord_CalcValue, + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + } + pub type nsStyleCoord_Calc_HasThreadSafeRefCnt = root::mozilla::TrueType; + #[test] + fn bindgen_test_layout_nsStyleCoord_Calc() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( "Size of: " , stringify ! ( nsStyleCoord_Calc ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsStyleCoord_Calc ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord_Calc ) ) . mRefCnt as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleCoord_Calc ) + , "::" , stringify ! ( mRefCnt ) )); + } #[repr(u32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsCompatibility { - eCompatibility_FullStandards = 1, - eCompatibility_AlmostStandards = 2, - eCompatibility_NavQuirks = 3, + pub enum nsStyleCoord_CoordConstructorType { CoordConstructor = 0, } + #[test] + fn bindgen_test_layout_nsStyleCoord() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! + ( "Size of: " , stringify ! ( nsStyleCoord ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsStyleCoord ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord ) ) . mUnit as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleCoord ) , + "::" , stringify ! ( mUnit ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord ) ) . mValue as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleCoord ) , + "::" , stringify ! ( mValue ) )); + } + impl nsStyleCoord { + #[inline] + pub unsafe fn get_mUnit(&self) -> &root::nsStyleUnit { &self.mUnit } + #[inline] + pub unsafe fn get_mUnit_mut(&mut self) -> &mut root::nsStyleUnit { + &mut self.mUnit + } + #[inline] + pub unsafe fn get_mValue(&self) -> &root::nsStyleUnion { + &self.mValue + } + #[inline] + pub unsafe fn get_mValue_mut(&mut self) -> &mut root::nsStyleUnion { + &mut self.mValue + } + } + /** + * 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)] + #[derive(Debug)] + pub struct nsStyleSides { + mUnits: [root::nsStyleUnit; 4usize], + mValues: [root::nsStyleUnion; 4usize], + } + #[test] + fn bindgen_test_layout_nsStyleSides() { + assert_eq!(::std::mem::size_of::() , 40usize , concat ! + ( "Size of: " , stringify ! ( nsStyleSides ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsStyleSides ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleSides ) ) . mUnits as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleSides ) , + "::" , stringify ! ( mUnits ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleSides ) ) . mValues as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleSides ) , + "::" , stringify ! ( mValues ) )); + } + impl nsStyleSides { + #[inline] + pub unsafe fn get_mUnits(&self) -> &[root::nsStyleUnit; 4usize] { + &self.mUnits + } + #[inline] + pub unsafe fn get_mUnits_mut(&mut self) + -> &mut [root::nsStyleUnit; 4usize] { + &mut self.mUnits + } + #[inline] + pub unsafe fn get_mValues(&self) -> &[root::nsStyleUnion; 4usize] { + &self.mValues + } + #[inline] + pub unsafe fn get_mValues_mut(&mut self) + -> &mut [root::nsStyleUnion; 4usize] { + &mut self.mValues + } + } + /** + * Class that represents a set of top-left/top-right/bottom-right/bottom-left + * 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)] + #[derive(Debug)] + pub struct nsStyleCorners { + mUnits: [root::nsStyleUnit; 8usize], + mValues: [root::nsStyleUnion; 8usize], + } + #[test] + fn bindgen_test_layout_nsStyleCorners() { + assert_eq!(::std::mem::size_of::() , 72usize , concat + ! ( "Size of: " , stringify ! ( nsStyleCorners ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsStyleCorners ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCorners ) ) . mUnits as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleCorners ) , + "::" , stringify ! ( mUnits ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCorners ) ) . mValues as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleCorners ) , + "::" , stringify ! ( mValues ) )); + } + impl nsStyleCorners { + #[inline] + pub unsafe fn get_mUnits(&self) -> &[root::nsStyleUnit; 8usize] { + &self.mUnits + } + #[inline] + pub unsafe fn get_mUnits_mut(&mut self) + -> &mut [root::nsStyleUnit; 8usize] { + &mut self.mUnits + } + #[inline] + pub unsafe fn get_mValues(&self) -> &[root::nsStyleUnion; 8usize] { + &self.mValues + } + #[inline] + pub unsafe fn get_mValues_mut(&mut self) + -> &mut [root::nsStyleUnion; 8usize] { + &mut self.mValues + } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsCSSSelector { + _unused: [u8; 0], + } + pub const nsChangeHint_nsChangeHint_Empty: root::nsChangeHint = + nsChangeHint(0); + pub const nsChangeHint_nsChangeHint_RepaintFrame: root::nsChangeHint = + nsChangeHint(1); + pub const nsChangeHint_nsChangeHint_NeedReflow: root::nsChangeHint = + nsChangeHint(2); + pub const nsChangeHint_nsChangeHint_ClearAncestorIntrinsics: + root::nsChangeHint = + nsChangeHint(4); + pub const nsChangeHint_nsChangeHint_ClearDescendantIntrinsics: + root::nsChangeHint = + nsChangeHint(8); + pub const nsChangeHint_nsChangeHint_NeedDirtyReflow: root::nsChangeHint = + nsChangeHint(16); + pub const nsChangeHint_nsChangeHint_SyncFrameView: root::nsChangeHint = + nsChangeHint(32); + pub const nsChangeHint_nsChangeHint_UpdateCursor: root::nsChangeHint = + nsChangeHint(64); + pub const nsChangeHint_nsChangeHint_UpdateEffects: root::nsChangeHint = + nsChangeHint(128); + pub const nsChangeHint_nsChangeHint_UpdateOpacityLayer: root::nsChangeHint + = + nsChangeHint(256); + pub const nsChangeHint_nsChangeHint_UpdateTransformLayer: + root::nsChangeHint = + nsChangeHint(512); + pub const nsChangeHint_nsChangeHint_ReconstructFrame: root::nsChangeHint = + nsChangeHint(1024); + pub const nsChangeHint_nsChangeHint_UpdateOverflow: root::nsChangeHint = + nsChangeHint(2048); + pub const nsChangeHint_nsChangeHint_UpdateSubtreeOverflow: + root::nsChangeHint = + nsChangeHint(4096); + pub const nsChangeHint_nsChangeHint_UpdatePostTransformOverflow: + root::nsChangeHint = + nsChangeHint(8192); + pub const nsChangeHint_nsChangeHint_UpdateParentOverflow: + root::nsChangeHint = + nsChangeHint(16384); + pub const nsChangeHint_nsChangeHint_ChildrenOnlyTransform: + root::nsChangeHint = + nsChangeHint(32768); + pub const nsChangeHint_nsChangeHint_RecomputePosition: root::nsChangeHint + = + nsChangeHint(65536); + pub const nsChangeHint_nsChangeHint_UpdateContainingBlock: + root::nsChangeHint = + nsChangeHint(131072); + pub const nsChangeHint_nsChangeHint_BorderStyleNoneChange: + root::nsChangeHint = + nsChangeHint(262144); + pub const nsChangeHint_nsChangeHint_UpdateTextPath: root::nsChangeHint = + nsChangeHint(524288); + pub const nsChangeHint_nsChangeHint_SchedulePaint: root::nsChangeHint = + nsChangeHint(1048576); + pub const nsChangeHint_nsChangeHint_NeutralChange: root::nsChangeHint = + nsChangeHint(2097152); + pub const nsChangeHint_nsChangeHint_InvalidateRenderingObservers: + root::nsChangeHint = + nsChangeHint(4194304); + pub const nsChangeHint_nsChangeHint_ReflowChangesSizeOrPosition: + root::nsChangeHint = + nsChangeHint(8388608); + pub const nsChangeHint_nsChangeHint_UpdateComputedBSize: + root::nsChangeHint = + nsChangeHint(16777216); + pub const nsChangeHint_nsChangeHint_UpdateUsesOpacity: root::nsChangeHint + = + nsChangeHint(33554432); + pub const nsChangeHint_nsChangeHint_UpdateBackgroundPosition: + root::nsChangeHint = + nsChangeHint(67108864); + pub const nsChangeHint_nsChangeHint_AddOrRemoveTransform: + root::nsChangeHint = + nsChangeHint(134217728); + pub const nsChangeHint_nsChangeHint_AllHints: root::nsChangeHint = + nsChangeHint(268435455); + impl ::std::ops::BitOr for root::nsChangeHint { + type + Output + = + Self; + #[inline] + fn bitor(self, other: Self) -> Self { nsChangeHint(self.0 | other.0) } + } + #[repr(C)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub struct nsChangeHint(pub u32); + pub const nsRestyleHint_eRestyle_Self: root::nsRestyleHint = + nsRestyleHint(1); + pub const nsRestyleHint_eRestyle_SomeDescendants: root::nsRestyleHint = + nsRestyleHint(2); + pub const nsRestyleHint_eRestyle_Subtree: root::nsRestyleHint = + nsRestyleHint(4); + pub const nsRestyleHint_eRestyle_LaterSiblings: root::nsRestyleHint = + nsRestyleHint(8); + pub const nsRestyleHint_eRestyle_CSSTransitions: root::nsRestyleHint = + nsRestyleHint(16); + pub const nsRestyleHint_eRestyle_CSSAnimations: root::nsRestyleHint = + nsRestyleHint(32); + pub const nsRestyleHint_eRestyle_StyleAttribute: root::nsRestyleHint = + nsRestyleHint(64); + pub const nsRestyleHint_eRestyle_StyleAttribute_Animations: + root::nsRestyleHint = + nsRestyleHint(128); + pub const nsRestyleHint_eRestyle_Force: root::nsRestyleHint = + nsRestyleHint(256); + pub const nsRestyleHint_eRestyle_ForceDescendants: root::nsRestyleHint = + nsRestyleHint(512); + pub const nsRestyleHint_eRestyle_AllHintsWithAnimations: + root::nsRestyleHint = + nsRestyleHint(176); + impl ::std::ops::BitOr for root::nsRestyleHint { + type + Output + = + Self; + #[inline] + fn bitor(self, other: Self) -> Self { + nsRestyleHint(self.0 | other.0) + } + } + #[repr(C)] + /** + * |nsRestyleHint| is a bitfield for the result of + * |HasStateDependentStyle| and |HasAttributeDependentStyle|. When no + * restyling is necessary, use |nsRestyleHint(0)|. + * + * Without eRestyle_Force or eRestyle_ForceDescendants, the restyling process + * can stop processing at a frame when it detects no style changes and it is + * known that the styles of the subtree beneath it will not change, leaving + * the old style context on the frame. eRestyle_Force can be used to skip this + * optimization on a frame, and to force its new style context to be used. + * + * Similarly, eRestyle_ForceDescendants will cause the frame and all of its + * descendants to be traversed and for the new style contexts that are created + * to be set on the frames. + * + * NOTE: When adding new restyle hints, please also add them to + * RestyleManager::RestyleHintToString. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub struct nsRestyleHint(pub u32); + #[repr(u32)] + /** + * Return status for event processors. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsEventStatus { + nsEventStatus_eIgnore = 0, + nsEventStatus_eConsumeNoDefault = 1, + nsEventStatus_eConsumeDoDefault = 2, + nsEventStatus_eSentinel = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum WeakMapTraceKind { + DoNotTraceWeakMaps = 0, + ExpandWeakMaps = 1, + TraceWeakMapValues = 2, + TraceWeakMapKeysValues = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum JSValueTag { + JSVAL_TAG_MAX_DOUBLE = 131056, + JSVAL_TAG_INT32 = 131057, + JSVAL_TAG_UNDEFINED = 131058, + JSVAL_TAG_NULL = 131059, + JSVAL_TAG_BOOLEAN = 131060, + JSVAL_TAG_MAGIC = 131061, + JSVAL_TAG_STRING = 131062, + JSVAL_TAG_SYMBOL = 131063, + JSVAL_TAG_PRIVATE_GCTHING = 131064, + JSVAL_TAG_OBJECT = 131068, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum JSWhyMagic { + JS_ELEMENTS_HOLE = 0, + JS_NO_ITER_VALUE = 1, + JS_GENERATOR_CLOSING = 2, + JS_NO_CONSTANT = 3, + JS_THIS_POISON = 4, + JS_ARG_POISON = 5, + JS_SERIALIZE_NO_NODE = 6, + JS_LAZY_ARGUMENTS = 7, + JS_OPTIMIZED_ARGUMENTS = 8, + JS_IS_CONSTRUCTING = 9, + JS_BLOCK_NEEDS_CLONE = 10, + JS_HASH_KEY_EMPTY = 11, + JS_ION_ERROR = 12, + JS_ION_BAILOUT = 13, + JS_OPTIMIZED_OUT = 14, + JS_UNINITIALIZED_LEXICAL = 15, + JS_GENERIC_MAGIC = 16, + JS_WHY_MAGIC_COUNT = 17, + } + /** + * 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)] + #[derive(Debug)] + pub struct nsStringBuffer { + pub mRefCount: u32, + pub mStorageSize: u32, + } + #[test] + fn bindgen_test_layout_nsStringBuffer() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsStringBuffer ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat + ! ( "Alignment of " , stringify ! ( nsStringBuffer ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStringBuffer ) ) . mRefCount as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStringBuffer ) , + "::" , stringify ! ( mRefCount ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStringBuffer ) ) . mStorageSize as + * const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStringBuffer ) , + "::" , stringify ! ( mStorageSize ) )); + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIAtom { + pub _base: root::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 u16, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIAtom_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIAtom() { + assert_eq!(::std::mem::size_of::() , 24usize , concat ! ( + "Size of: " , stringify ! ( nsIAtom ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIAtom ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsIAtom ) ) . mHash as * const _ as + usize } , 12usize , concat ! ( + "Alignment of field: " , stringify ! ( nsIAtom ) , "::" , + stringify ! ( mHash ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsIAtom ) ) . mString as * const _ as + usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsIAtom ) , "::" , + stringify ! ( mString ) )); + } + impl Clone for nsIAtom { + fn clone(&self) -> Self { *self } + } + impl nsIAtom { + #[inline] + pub fn mLength(&self) -> u32 { + let mask = 2147483647usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mLength(&mut self, val: u32) { + let mask = 2147483647usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsStatic(&self) -> u32 { + let mask = 2147483648usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 31usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsStatic(&mut self, val: u32) { + let mask = 2147483648usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 31usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIPrincipal { + pub _base: root::nsISerializable, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIPrincipal_COMTypeInfo { + pub _address: u8, + } + pub const nsIPrincipal_APP_STATUS_NOT_INSTALLED: + root::nsIPrincipal__bindgen_ty_1 = + nsIPrincipal__bindgen_ty_1::APP_STATUS_NOT_INSTALLED; + pub const nsIPrincipal_APP_STATUS_INSTALLED: + root::nsIPrincipal__bindgen_ty_1 = + nsIPrincipal__bindgen_ty_1::APP_STATUS_INSTALLED; + pub const nsIPrincipal_APP_STATUS_PRIVILEGED: + root::nsIPrincipal__bindgen_ty_1 = + nsIPrincipal__bindgen_ty_1::APP_STATUS_PRIVILEGED; + pub const nsIPrincipal_APP_STATUS_CERTIFIED: + root::nsIPrincipal__bindgen_ty_1 = + nsIPrincipal__bindgen_ty_1::APP_STATUS_CERTIFIED; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIPrincipal__bindgen_ty_1 { + APP_STATUS_NOT_INSTALLED = 0, + APP_STATUS_INSTALLED = 1, + APP_STATUS_PRIVILEGED = 2, + APP_STATUS_CERTIFIED = 3, + } + #[test] + fn bindgen_test_layout_nsIPrincipal() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIPrincipal ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsIPrincipal ) )); + } + impl Clone for nsIPrincipal { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + pub struct nsWrapperCache__bindgen_vtable(::std::os::raw::c_void); + /** + * Class to store the wrapper for an object. This can only be used with objects + * that only have one non-security wrapper at a time (for an XPCWrappedNative + * this is usually ensured by setting an explicit parent in the PreCreate hook + * for the class). + * + * An instance of nsWrapperCache can be gotten from an object that implements + * a wrapper cache by calling QueryInterface on it. Note that this breaks XPCOM + * rules a bit (this object doesn't derive from nsISupports). + * + * The cache can store objects other than wrappers. We allow wrappers to use a + * separate JSObject to store their state (mostly expandos). If the wrapper is + * collected and we want to preserve this state we actually store the state + * object in the cache. + * + * The cache can store 2 types of objects: + * + * If WRAPPER_IS_NOT_DOM_BINDING is set (IsDOMBinding() returns false): + * - the JSObject of an XPCWrappedNative wrapper + * + * If WRAPPER_IS_NOT_DOM_BINDING is not set (IsDOMBinding() returns true): + * - a DOM binding object (regular JS object or proxy) + * + * The finalizer for the wrapper clears the cache. + * + * A compacting GC can move the wrapper object. Pointers to moved objects are + * usually found and updated by tracing the heap, however non-preserved wrappers + * are weak references and are not traced, so another approach is + * necessary. Instead a class hook (objectMovedOp) is provided that is called + * when an object is moved and is responsible for ensuring pointers are + * updated. It does this by calling UpdateWrapper() on the wrapper + * cache. SetWrapper() asserts that the hook is implemented for any wrapper set. + * + * A number of the methods are implemented in nsWrapperCacheInlines.h because we + * have to include some JS headers that don't play nicely with the rest of the + * codebase. Include nsWrapperCacheInlines.h if you need to call those methods. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsWrapperCache { + pub vtable_: *const nsWrapperCache__bindgen_vtable, + pub mWrapper: *mut root::JSObject, + pub mFlags: root::nsWrapperCache_FlagsType, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsWrapperCache_COMTypeInfo { + pub _address: u8, + } + pub type nsWrapperCache_FlagsType = u32; + pub const nsWrapperCache_WRAPPER_BIT_PRESERVED: + root::nsWrapperCache__bindgen_ty_1 = + nsWrapperCache__bindgen_ty_1::WRAPPER_BIT_PRESERVED; + #[repr(u32)] + /** + * If this bit is set then we're preserving the wrapper, which in effect ties + * the lifetime of the JS object stored in the cache to the lifetime of the + * native object. We rely on the cycle collector to break the cycle that this + * causes between the native object and the JS object, so it is important that + * any native object that supports preserving of its wrapper + * traces/traverses/unlinks the cached JS object (see + * NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER and + * NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER). + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsWrapperCache__bindgen_ty_1 { WRAPPER_BIT_PRESERVED = 1, } + pub const nsWrapperCache_WRAPPER_IS_NOT_DOM_BINDING: + root::nsWrapperCache__bindgen_ty_2 = + nsWrapperCache__bindgen_ty_2::WRAPPER_IS_NOT_DOM_BINDING; + #[repr(u32)] + /** + * If this bit is set then the wrapper for the native object is not a DOM + * binding. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsWrapperCache__bindgen_ty_2 { WRAPPER_IS_NOT_DOM_BINDING = 2, } + pub const nsWrapperCache_kWrapperFlagsMask: + root::nsWrapperCache__bindgen_ty_3 = + nsWrapperCache__bindgen_ty_3::kWrapperFlagsMask; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsWrapperCache__bindgen_ty_3 { kWrapperFlagsMask = 3, } + #[test] + fn bindgen_test_layout_nsWrapperCache() { + assert_eq!(::std::mem::size_of::() , 24usize , concat + ! ( "Size of: " , stringify ! ( nsWrapperCache ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsWrapperCache ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsWrapperCache ) ) . mWrapper as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsWrapperCache ) , + "::" , stringify ! ( mWrapper ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsWrapperCache ) ) . mFlags as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsWrapperCache ) , + "::" , stringify ! ( mFlags ) )); } #[repr(C)] #[derive(Debug, Copy)] @@ -14692,10 +14854,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsILoadGroup_COMTypeInfo { + pub struct nsILoadGroup_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsILoadGroup() { @@ -14715,10 +14875,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIRequest_COMTypeInfo { + pub struct nsIRequest_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsIRequest_LOAD_REQUESTMASK: root::nsIRequest__bindgen_ty_1 = nsIRequest__bindgen_ty_1::LOAD_REQUESTMASK; @@ -14777,7 +14935,123 @@ pub mod root { impl Clone for nsIRequest { fn clone(&self) -> Self { *self } } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIURI { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIURI_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIURI() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIURI ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIURI ) )); + } + impl Clone for nsIURI { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMNode { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMNode_COMTypeInfo { + pub _address: u8, + } + pub const nsIDOMNode_ELEMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::ELEMENT_NODE; + pub const nsIDOMNode_ATTRIBUTE_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::ATTRIBUTE_NODE; + pub const nsIDOMNode_TEXT_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::TEXT_NODE; + pub const nsIDOMNode_CDATA_SECTION_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::CDATA_SECTION_NODE; + pub const nsIDOMNode_ENTITY_REFERENCE_NODE: root::nsIDOMNode__bindgen_ty_1 + = + nsIDOMNode__bindgen_ty_1::ENTITY_REFERENCE_NODE; + pub const nsIDOMNode_ENTITY_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::ENTITY_NODE; + pub const nsIDOMNode_PROCESSING_INSTRUCTION_NODE: + root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::PROCESSING_INSTRUCTION_NODE; + pub const nsIDOMNode_COMMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::COMMENT_NODE; + pub const nsIDOMNode_DOCUMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::DOCUMENT_NODE; + pub const nsIDOMNode_DOCUMENT_TYPE_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::DOCUMENT_TYPE_NODE; + pub const nsIDOMNode_DOCUMENT_FRAGMENT_NODE: + root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::DOCUMENT_FRAGMENT_NODE; + pub const nsIDOMNode_NOTATION_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::NOTATION_NODE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDOMNode__bindgen_ty_1 { + ELEMENT_NODE = 1, + ATTRIBUTE_NODE = 2, + TEXT_NODE = 3, + CDATA_SECTION_NODE = 4, + ENTITY_REFERENCE_NODE = 5, + ENTITY_NODE = 6, + PROCESSING_INSTRUCTION_NODE = 7, + COMMENT_NODE = 8, + DOCUMENT_NODE = 9, + DOCUMENT_TYPE_NODE = 10, + DOCUMENT_FRAGMENT_NODE = 11, + NOTATION_NODE = 12, + } + pub const nsIDOMNode_DOCUMENT_POSITION_DISCONNECTED: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_DISCONNECTED; + pub const nsIDOMNode_DOCUMENT_POSITION_PRECEDING: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_PRECEDING; + pub const nsIDOMNode_DOCUMENT_POSITION_FOLLOWING: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_FOLLOWING; + pub const nsIDOMNode_DOCUMENT_POSITION_CONTAINS: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_CONTAINS; + pub const nsIDOMNode_DOCUMENT_POSITION_CONTAINED_BY: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_CONTAINED_BY; + pub const nsIDOMNode_DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDOMNode__bindgen_ty_2 { + DOCUMENT_POSITION_DISCONNECTED = 1, + DOCUMENT_POSITION_PRECEDING = 2, + DOCUMENT_POSITION_FOLLOWING = 4, + DOCUMENT_POSITION_CONTAINS = 8, + DOCUMENT_POSITION_CONTAINED_BY = 16, + DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 32, + } + #[test] + fn bindgen_test_layout_nsIDOMNode() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIDOMNode ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIDOMNode ) )); + } + impl Clone for nsIDOMNode { + fn clone(&self) -> Self { *self } + } pub type nsContentPolicyType = u32; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMDocument { + _unused: [u8; 0], + } /** * An internal interface that abstracts some DOMNode-related parts that both * nsIContent and nsIDocument share. An instance of this interface has a list @@ -14809,12 +15083,11 @@ pub mod root { root::mozilla::dom::TextOrElementOrDocument; pub use self::super::root::mozilla::dom::CallerType as nsINode_CallerType; pub type nsINode_ErrorResult = root::mozilla::ErrorResult; + pub type nsINode_Sequence = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsINode_COMTypeInfo { + pub struct nsINode_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsINode_eCONTENT: root::nsINode__bindgen_ty_2 = nsINode__bindgen_ty_2::eCONTENT; @@ -14860,8 +15133,7 @@ pub mod root { eFILTER = 2048, } #[repr(C)] - pub struct nsINode_nsSlots__bindgen_vtable { - } + pub struct nsINode_nsSlots__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug)] pub struct nsINode_nsSlots { @@ -15034,15 +15306,313 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy)] + pub struct JSErrorFormatString { + /** The error message name in ASCII. */ + pub name: *const ::std::os::raw::c_char, + /** The error format string in ASCII. */ + pub format: *const ::std::os::raw::c_char, + /** The number of arguments to expand in the formatted error message. */ + pub argCount: u16, + /** One of the JSExnType constants above. */ + pub exnType: i16, + } + #[test] + fn bindgen_test_layout_JSErrorFormatString() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( + "Size of: " , stringify ! ( JSErrorFormatString ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( JSErrorFormatString ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorFormatString ) ) . name as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorFormatString + ) , "::" , stringify ! ( name ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorFormatString ) ) . format as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorFormatString + ) , "::" , stringify ! ( format ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorFormatString ) ) . argCount as + * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorFormatString + ) , "::" , stringify ! ( argCount ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorFormatString ) ) . exnType as + * const _ as usize } , 18usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorFormatString + ) , "::" , stringify ! ( exnType ) )); + } + impl Clone for JSErrorFormatString { + fn clone(&self) -> Self { *self } + } + pub type JSErrorCallback = + ::std::option::Option *const root::JSErrorFormatString>; + #[repr(C)] + #[derive(Debug)] + pub struct JSAutoRequest { + pub mContext: *mut root::JSContext, + pub _mCheckNotUsedAsTemporary: root::mozilla::detail::GuardObjectNotificationReceiver, + } + #[test] + fn bindgen_test_layout_JSAutoRequest() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! + ( "Size of: " , stringify ! ( JSAutoRequest ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( JSAutoRequest ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoRequest ) ) . mContext as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSAutoRequest ) , + "::" , stringify ! ( mContext ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoRequest ) ) . + _mCheckNotUsedAsTemporary as * const _ as usize } , 8usize + , concat ! ( + "Alignment of field: " , stringify ! ( JSAutoRequest ) , + "::" , stringify ! ( _mCheckNotUsedAsTemporary ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct JSAutoCompartment { + pub cx_: *mut root::JSContext, + pub oldCompartment_: *mut root::JSCompartment, + pub _mCheckNotUsedAsTemporary: root::mozilla::detail::GuardObjectNotificationReceiver, + } + #[test] + fn bindgen_test_layout_JSAutoCompartment() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( "Size of: " , stringify ! ( JSAutoCompartment ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( JSAutoCompartment ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoCompartment ) ) . cx_ as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSAutoCompartment ) + , "::" , stringify ! ( cx_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoCompartment ) ) . + oldCompartment_ as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( JSAutoCompartment ) + , "::" , stringify ! ( oldCompartment_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoCompartment ) ) . + _mCheckNotUsedAsTemporary as * const _ as usize } , + 16usize , concat ! ( + "Alignment of field: " , stringify ! ( JSAutoCompartment ) + , "::" , stringify ! ( _mCheckNotUsedAsTemporary ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct JSAutoNullableCompartment { + pub cx_: *mut root::JSContext, + pub oldCompartment_: *mut root::JSCompartment, + pub _mCheckNotUsedAsTemporary: root::mozilla::detail::GuardObjectNotificationReceiver, + } + #[test] + fn bindgen_test_layout_JSAutoNullableCompartment() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( JSAutoNullableCompartment ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( JSAutoNullableCompartment + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoNullableCompartment ) ) . cx_ + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + JSAutoNullableCompartment ) , "::" , stringify ! ( cx_ ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoNullableCompartment ) ) . + oldCompartment_ as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + JSAutoNullableCompartment ) , "::" , stringify ! ( + oldCompartment_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoNullableCompartment ) ) . + _mCheckNotUsedAsTemporary as * const _ as usize } , + 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + JSAutoNullableCompartment ) , "::" , stringify ! ( + _mCheckNotUsedAsTemporary ) )); + } + /** + * Base class that implements parts shared by JSErrorReport and + * JSErrorNotes::Note. + */ + #[repr(C)] + #[derive(Debug)] + pub struct JSErrorBase { + pub message_: root::JS::ConstUTF8CharsZ, + pub filename: *const ::std::os::raw::c_char, + pub lineno: ::std::os::raw::c_uint, + pub column: ::std::os::raw::c_uint, + pub errorNumber: ::std::os::raw::c_uint, + pub _bitfield_1: u8, + pub __bindgen_padding_0: [u8; 3usize], + } + #[test] + fn bindgen_test_layout_JSErrorBase() { + assert_eq!(::std::mem::size_of::() , 32usize , concat ! ( + "Size of: " , stringify ! ( JSErrorBase ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( JSErrorBase ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorBase ) ) . message_ as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorBase ) , + "::" , stringify ! ( message_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorBase ) ) . filename as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorBase ) , + "::" , stringify ! ( filename ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorBase ) ) . lineno as * const _ + as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorBase ) , + "::" , stringify ! ( lineno ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorBase ) ) . column as * const _ + as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorBase ) , + "::" , stringify ! ( column ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorBase ) ) . errorNumber as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorBase ) , + "::" , stringify ! ( errorNumber ) )); + } + impl JSErrorBase { + #[inline] + pub fn ownsMessage_(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_ownsMessage_(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } + /** + * Notes associated with JSErrorReport. + */ + #[repr(C)] + pub struct JSErrorNotes { + pub notes_: [u64; 6usize], + } + #[repr(C)] + #[derive(Debug)] + pub struct JSErrorNotes_Note { + pub _base: root::JSErrorBase, + } + #[test] + fn bindgen_test_layout_JSErrorNotes_Note() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( "Size of: " , stringify ! ( JSErrorNotes_Note ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( JSErrorNotes_Note ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct JSErrorNotes_iterator { + pub note_: *mut root::mozilla::UniquePtr, + } + #[test] + fn bindgen_test_layout_JSErrorNotes_iterator() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( JSErrorNotes_iterator ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( JSErrorNotes_iterator ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorNotes_iterator ) ) . note_ as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + JSErrorNotes_iterator ) , "::" , stringify ! ( note_ ) )); + } + #[test] + fn bindgen_test_layout_JSErrorNotes() { + assert_eq!(::std::mem::size_of::() , 48usize , concat ! + ( "Size of: " , stringify ! ( JSErrorNotes ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( JSErrorNotes ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorNotes ) ) . notes_ as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorNotes ) , + "::" , stringify ! ( notes_ ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIObjectInputStream { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIObjectOutputStream { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsISerializable { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsISerializable_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsISerializable() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsISerializable ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsISerializable ) )); + } + impl Clone for nsISerializable { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIContentSecurityPolicy { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] pub struct nsIChannel { pub _base: root::nsIRequest, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIChannel_COMTypeInfo { + pub struct nsIChannel_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsIChannel_LOAD_DOCUMENT_URI: root::nsIChannel__bindgen_ty_1 = nsIChannel__bindgen_ty_1::LOAD_DOCUMENT_URI; @@ -15107,7 +15677,14 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsILoadContext([u8; 0]); + pub struct nsIDocShell { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsILoadContext { + _unused: [u8; 0], + } pub type nsSecurityFlags = u32; #[repr(C)] #[derive(Debug, Copy)] @@ -15116,10 +15693,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsILoadInfo_COMTypeInfo { + pub struct nsILoadInfo_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsILoadInfo_SEC_NORMAL: root::nsILoadInfo__bindgen_ty_1 = nsILoadInfo__bindgen_ty_1::SEC_NORMAL; @@ -15222,10 +15797,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIInterfaceRequestor_COMTypeInfo { + pub struct nsIInterfaceRequestor_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIInterfaceRequestor() { @@ -15242,7 +15815,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIInputStream([u8; 0]); + pub struct nsIInputStream { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsIStreamListener { @@ -15250,10 +15825,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIStreamListener_COMTypeInfo { + pub struct nsIStreamListener_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIStreamListener() { @@ -15274,10 +15847,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsICSSLoaderObserver_COMTypeInfo { + pub struct nsICSSLoaderObserver_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsICSSLoaderObserver() { @@ -15291,6 +15862,2825 @@ pub mod root { impl Clone for nsICSSLoaderObserver { fn clone(&self) -> Self { *self } } + pub type DOMHighResTimeStamp = f64; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMAttr { + pub _base: root::nsIDOMNode, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMAttr_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMAttr() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIDOMAttr ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIDOMAttr ) )); + } + impl Clone for nsIDOMAttr { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMElement { + pub _base: root::nsIDOMNode, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMElement_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMElement() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsIDOMElement ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsIDOMElement ) )); + } + impl Clone for nsIDOMElement { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMNodeList { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMNodeList_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMNodeList() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsIDOMNodeList ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsIDOMNodeList ) )); + } + impl Clone for nsIDOMNodeList { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMClientRect { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMClientRect_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMClientRect() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsIDOMClientRect ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMClientRect ) )); + } + impl Clone for nsIDOMClientRect { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMClientRectList { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMClientRectList_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMClientRectList() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsIDOMClientRectList ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMClientRectList ) )); + } + impl Clone for nsIDOMClientRectList { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMStyleSheet { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMStyleSheet_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMStyleSheet() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsIDOMStyleSheet ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMStyleSheet ) )); + } + impl Clone for nsIDOMStyleSheet { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMMediaList { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMMediaList_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMMediaList() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsIDOMMediaList ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMMediaList ) )); + } + impl Clone for nsIDOMMediaList { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMEvent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMEventTarget { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMEventTarget_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMEventTarget() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( "Size of: " , stringify ! ( nsIDOMEventTarget ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMEventTarget ) )); + } + impl Clone for nsIDOMEventTarget { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMEventListener { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMHTMLCollection { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMHTMLCollection_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMHTMLCollection() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsIDOMHTMLCollection ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMHTMLCollection ) )); + } + impl Clone for nsIDOMHTMLCollection { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMCSSValue { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMCSSValue_COMTypeInfo { + pub _address: u8, + } + pub const nsIDOMCSSValue_CSS_INHERIT: root::nsIDOMCSSValue__bindgen_ty_1 = + nsIDOMCSSValue__bindgen_ty_1::CSS_INHERIT; + pub const nsIDOMCSSValue_CSS_PRIMITIVE_VALUE: + root::nsIDOMCSSValue__bindgen_ty_1 = + nsIDOMCSSValue__bindgen_ty_1::CSS_PRIMITIVE_VALUE; + pub const nsIDOMCSSValue_CSS_VALUE_LIST: + root::nsIDOMCSSValue__bindgen_ty_1 = + nsIDOMCSSValue__bindgen_ty_1::CSS_VALUE_LIST; + pub const nsIDOMCSSValue_CSS_CUSTOM: root::nsIDOMCSSValue__bindgen_ty_1 = + nsIDOMCSSValue__bindgen_ty_1::CSS_CUSTOM; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDOMCSSValue__bindgen_ty_1 { + CSS_INHERIT = 0, + CSS_PRIMITIVE_VALUE = 1, + CSS_VALUE_LIST = 2, + CSS_CUSTOM = 3, + } + #[test] + fn bindgen_test_layout_nsIDOMCSSValue() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsIDOMCSSValue ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsIDOMCSSValue ) )); + } + impl Clone for nsIDOMCSSValue { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMCSSRule { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMCSSRule_COMTypeInfo { + pub _address: u8, + } + pub const nsIDOMCSSRule_UNKNOWN_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::UNKNOWN_RULE; + pub const nsIDOMCSSRule_STYLE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::STYLE_RULE; + pub const nsIDOMCSSRule_CHARSET_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::CHARSET_RULE; + pub const nsIDOMCSSRule_IMPORT_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::IMPORT_RULE; + pub const nsIDOMCSSRule_MEDIA_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::MEDIA_RULE; + pub const nsIDOMCSSRule_FONT_FACE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 + = + nsIDOMCSSRule__bindgen_ty_1::FONT_FACE_RULE; + pub const nsIDOMCSSRule_PAGE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::PAGE_RULE; + pub const nsIDOMCSSRule_KEYFRAMES_RULE: root::nsIDOMCSSRule__bindgen_ty_1 + = + nsIDOMCSSRule__bindgen_ty_1::KEYFRAMES_RULE; + pub const nsIDOMCSSRule_KEYFRAME_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::KEYFRAME_RULE; + pub const nsIDOMCSSRule_MOZ_KEYFRAMES_RULE: + root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::KEYFRAMES_RULE; + pub const nsIDOMCSSRule_MOZ_KEYFRAME_RULE: + root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::KEYFRAME_RULE; + pub const nsIDOMCSSRule_NAMESPACE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 + = + nsIDOMCSSRule__bindgen_ty_1::NAMESPACE_RULE; + pub const nsIDOMCSSRule_COUNTER_STYLE_RULE: + root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::COUNTER_STYLE_RULE; + pub const nsIDOMCSSRule_SUPPORTS_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::SUPPORTS_RULE; + pub const nsIDOMCSSRule_FONT_FEATURE_VALUES_RULE: + root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::FONT_FEATURE_VALUES_RULE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDOMCSSRule__bindgen_ty_1 { + UNKNOWN_RULE = 0, + STYLE_RULE = 1, + CHARSET_RULE = 2, + IMPORT_RULE = 3, + MEDIA_RULE = 4, + FONT_FACE_RULE = 5, + PAGE_RULE = 6, + KEYFRAMES_RULE = 7, + KEYFRAME_RULE = 8, + NAMESPACE_RULE = 10, + COUNTER_STYLE_RULE = 11, + SUPPORTS_RULE = 12, + FONT_FEATURE_VALUES_RULE = 14, + } + #[test] + fn bindgen_test_layout_nsIDOMCSSRule() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsIDOMCSSRule ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsIDOMCSSRule ) )); + } + impl Clone for nsIDOMCSSRule { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMCSSRuleList { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMCSSStyleSheet { + pub _base: root::nsIDOMStyleSheet, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMCSSStyleSheet_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMCSSStyleSheet() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsIDOMCSSStyleSheet ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMCSSStyleSheet ) )); + } + impl Clone for nsIDOMCSSStyleSheet { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMCSSStyleDeclaration { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMCSSStyleDeclaration_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMCSSStyleDeclaration() { + assert_eq!(::std::mem::size_of::() , 8usize + , concat ! ( + "Size of: " , stringify ! ( nsIDOMCSSStyleDeclaration ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIDOMCSSStyleDeclaration + ) )); + } + impl Clone for nsIDOMCSSStyleDeclaration { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + pub struct TraceCallbacks__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug, Copy)] + pub struct TraceCallbacks { + pub vtable_: *const TraceCallbacks__bindgen_vtable, + } + #[test] + fn bindgen_test_layout_TraceCallbacks() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( TraceCallbacks ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( TraceCallbacks ) )); + } + impl Clone for TraceCallbacks { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsScriptObjectTracer { + pub _base: root::nsCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_nsScriptObjectTracer() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( + "Size of: " , stringify ! ( nsScriptObjectTracer ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsScriptObjectTracer ) )); + } + impl Clone for nsScriptObjectTracer { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsXPCOMCycleCollectionParticipant { + pub _base: root::nsScriptObjectTracer, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsXPCOMCycleCollectionParticipant_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsXPCOMCycleCollectionParticipant() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsXPCOMCycleCollectionParticipant ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsXPCOMCycleCollectionParticipant ) )); + } + impl Clone for nsXPCOMCycleCollectionParticipant { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + pub struct nsIDocument { + pub _base: root::nsINode, + pub _base_1: root::mozilla::dom::DispatcherTrait, + pub mDeprecationWarnedAbout: u64, + pub mDocWarningWarnedAbout: u64, + pub mSelectorCache: root::nsAutoPtr, + pub mReferrer: root::nsCString, + pub mLastModified: ::nsstring::nsStringRepr, + pub mDocumentURI: root::nsCOMPtr, + pub mOriginalURI: root::nsCOMPtr, + pub mChromeXHRDocURI: root::nsCOMPtr, + pub mDocumentBaseURI: root::nsCOMPtr, + pub mChromeXHRDocBaseURI: root::nsCOMPtr, + pub mCachedURLData: root::RefPtr, + pub mDocumentLoadGroup: root::nsWeakPtr, + pub mReferrerPolicySet: bool, + pub mReferrerPolicy: root::nsIDocument_ReferrerPolicyEnum, + pub mBlockAllMixedContent: bool, + pub mBlockAllMixedContentPreloads: bool, + pub mUpgradeInsecureRequests: bool, + pub mUpgradeInsecurePreloads: bool, + pub mHSTSPrimingURIList: [u64; 6usize], + pub mDocumentContainer: u64, + pub mCharacterSet: root::nsCString, + pub mCharacterSetSource: i32, + pub mParentDocument: *mut root::nsIDocument, + pub mCachedRootElement: *mut root::mozilla::dom::Element, + pub mNodeInfoManager: *mut root::nsNodeInfoManager, + pub mCSSLoader: root::RefPtr, + pub mStyleImageLoader: root::RefPtr, + pub mAttrStyleSheet: root::RefPtr, + pub mStyleAttrStyleSheet: root::RefPtr, + pub mImageTracker: root::RefPtr, + pub mActivityObservers: u64, + pub mLinksToUpdate: [u64; 3usize], + pub mAnimationController: root::RefPtr, + pub mPropertyTable: root::nsPropertyTable, + pub mExtraPropertyTables: root::nsTArray>, + pub mChildrenCollection: root::nsCOMPtr, + pub mFontFaceSet: root::RefPtr, + pub mLastFocusTime: root::mozilla::TimeStamp, + pub _bitfield_1: u8, + pub _bitfield_2: u8, + pub _bitfield_3: u8, + pub _bitfield_4: u8, + pub _bitfield_5: u8, + pub _bitfield_6: u8, + pub mCompatMode: root::nsCompatibility, + pub mReadyState: root::nsIDocument_ReadyState, + pub mStyleBackendType: root::mozilla::StyleBackendType, + pub mVisibilityState: root::mozilla::dom::VisibilityState, + pub mType: root::nsIDocument_Type, + pub mDefaultElementType: u8, + pub mAllowXULXBL: root::nsIDocument_Tri, + /** + * This is true while FlushPendingLinkUpdates executes. Calls to + * [Un]RegisterPendingLinkUpdate will assert when this is true. + */ + pub mIsLinkUpdateRegistrationsForbidden: bool, + pub mScriptGlobalObject: root::nsCOMPtr, + pub mOriginalDocument: root::nsCOMPtr, + pub mBidiOptions: u32, + pub mSandboxFlags: u32, + pub mContentLanguage: root::nsCString, + pub mChannel: root::nsCOMPtr, + pub mContentType: root::nsCString, + pub mId: ::nsstring::nsStringRepr, + pub mSecurityInfo: root::nsCOMPtr, + pub mFailedChannel: root::nsCOMPtr, + pub mPartID: u32, + pub mMarkedCCGeneration: u32, + pub mPresShell: *mut root::nsIPresShell, + pub mSubtreeModifiedTargets: root::nsCOMArray, + pub mSubtreeModifiedDepth: u32, + pub mDisplayDocument: root::nsCOMPtr, + pub mEventsSuppressed: u32, + /** + * The number number of external scripts (ones with the src attribute) that + * have this document as their owner and that are being evaluated right now. + */ + pub mExternalScriptsBeingEvaluated: u32, + /** + * The current frame request callback handle + */ + pub mFrameRequestCallbackCounter: i32, + pub mStaticCloneCount: u32, + pub mBlockedTrackingNodes: root::nsTArray, + pub mWindow: *mut root::nsPIDOMWindowInner, + pub mCachedEncoder: root::nsCOMPtr, + pub mFrameRequestCallbacks: root::nsTArray, + pub mBFCacheEntry: *mut root::nsIBFCacheEntry, + pub mBaseTarget: ::nsstring::nsStringRepr, + pub mStateObjectContainer: root::nsCOMPtr, + pub mStateObjectCached: root::nsCOMPtr, + pub mInSyncOperationCount: u32, + pub mXPathEvaluator: root::RefPtr, + pub mAnonymousContents: root::nsTArray>, + pub mBlockDOMContentLoaded: u32, + pub mDOMMediaQueryLists: root::mozilla::LinkedList, + pub mUseCounters: [u64; 2usize], + pub mChildDocumentUseCounters: [u64; 2usize], + pub mNotifiedPageForUseCounter: [u64; 2usize], + pub mUserHasInteracted: bool, + pub mPageUnloadingEventTimeStamp: root::mozilla::TimeStamp, + pub mDocGroup: root::RefPtr, + pub mTrackingScripts: [u64; 6usize], + } + pub type nsIDocument_GlobalObject = root::mozilla::dom::GlobalObject; + pub use self::super::root::mozilla::net::ReferrerPolicy as + nsIDocument_ReferrerPolicyEnum; + pub type nsIDocument_Element = root::mozilla::dom::Element; + pub type nsIDocument_FullscreenRequest = + root::mozilla::dom::FullscreenRequest; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDocument_COMTypeInfo { + pub _address: u8, + } + #[repr(C)] + pub struct nsIDocument_PageUnloadingEventTimeStamp { + pub mDocument: root::nsCOMPtr, + pub mSet: bool, + } + #[test] + fn bindgen_test_layout_nsIDocument_PageUnloadingEventTimeStamp() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsIDocument_PageUnloadingEventTimeStamp ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsIDocument_PageUnloadingEventTimeStamp ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const nsIDocument_PageUnloadingEventTimeStamp ) + ) . mDocument as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + nsIDocument_PageUnloadingEventTimeStamp ) , "::" , + stringify ! ( mDocument ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const nsIDocument_PageUnloadingEventTimeStamp ) + ) . mSet as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsIDocument_PageUnloadingEventTimeStamp ) , "::" , + stringify ! ( mSet ) )); + } + /** + * This gets fired when the element that an id refers to changes. + * This fires at difficult times. It is generally not safe to do anything + * which could modify the DOM in any way. Use + * nsContentUtils::AddScriptRunner. + * @return true to keep the callback in the callback set, false + * to remove it. + */ + pub type nsIDocument_IDTargetObserver = + ::std::option::Option bool>; + #[repr(C)] + #[derive(Debug)] + pub struct nsIDocument_SelectorCacheKey { + pub mKey: ::nsstring::nsStringRepr, + pub mState: root::nsExpirationState, + } + #[test] + fn bindgen_test_layout_nsIDocument_SelectorCacheKey() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( nsIDocument_SelectorCacheKey ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsIDocument_SelectorCacheKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsIDocument_SelectorCacheKey ) ) . + mKey as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsIDocument_SelectorCacheKey ) , "::" , stringify ! ( mKey + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsIDocument_SelectorCacheKey ) ) . + mState as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsIDocument_SelectorCacheKey ) , "::" , stringify ! ( + mState ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDocument_SelectorCacheKeyDeleter { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDocument_SelectorCache { + pub _bindgen_opaque_blob: [u64; 18usize], + } + #[test] + fn bindgen_test_layout_nsIDocument_SelectorCache() { + assert_eq!(::std::mem::size_of::() , + 144usize , concat ! ( + "Size of: " , stringify ! ( nsIDocument_SelectorCache ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIDocument_SelectorCache + ) )); + } + impl Clone for nsIDocument_SelectorCache { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_additionalSheetType { + eAgentSheet = 0, + eUserSheet = 1, + eAuthorSheet = 2, + AdditionalSheetTypeCount = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_ReadyState { + READYSTATE_UNINITIALIZED = 0, + READYSTATE_LOADING = 1, + READYSTATE_INTERACTIVE = 3, + READYSTATE_COMPLETE = 4, + } + /** + * Enumerate all subdocuments. + * The enumerator callback should return true to continue enumerating, or + * false to stop. This will never get passed a null aDocument. + */ + pub type nsIDocument_nsSubDocEnumFunc = + ::std::option::Option bool>; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_ElementsFromPointFlags { + IGNORE_ROOT_SCROLL_FRAME = 1, + FLUSH_LAYOUT = 2, + IS_ELEMENT_FROM_POINT = 4, + } + /** + * A class that represents an external resource load that has begun but + * doesn't have a document yet. Observers can be registered on this object, + * and will be notified after the document is created. Observers registered + * after the document has been created will NOT be notified. When observers + * are notified, the subject will be the newly-created document, the topic + * will be "external-resource-document-created", and the data will be null. + * If document creation fails for some reason, observers will still be + * notified, with a null document pointer. + */ + #[repr(C)] + pub struct nsIDocument_ExternalResourceLoad { + pub _base: root::nsISupports, + pub mObservers: [u64; 10usize], + } + #[test] + fn bindgen_test_layout_nsIDocument_ExternalResourceLoad() { + assert_eq!(::std::mem::size_of::() , + 88usize , concat ! ( + "Size of: " , stringify ! ( + nsIDocument_ExternalResourceLoad ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsIDocument_ExternalResourceLoad ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsIDocument_ExternalResourceLoad ) ) + . mObservers as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsIDocument_ExternalResourceLoad ) , "::" , stringify ! ( + mObservers ) )); + } + pub type nsIDocument_ActivityObserverEnumerator = + ::std::option::Option; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_DocumentTheme { + Doc_Theme_Uninitialized = 0, + Doc_Theme_None = 1, + Doc_Theme_Neutral = 2, + Doc_Theme_Dark = 3, + Doc_Theme_Bright = 4, + } + pub type nsIDocument_FrameRequestCallbackList = + root::nsTArray>; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_DeprecatedOperations { + eGetAttributeNode = 0, + eSetAttributeNode = 1, + eGetAttributeNodeNS = 2, + eSetAttributeNodeNS = 3, + eRemoveAttributeNode = 4, + eCreateAttribute = 5, + eCreateAttributeNS = 6, + eNodeValue = 7, + eTextContent = 8, + eEnablePrivilege = 9, + eDOMExceptionCode = 10, + eNoExposedProps = 11, + eMutationEvent = 12, + eComponents = 13, + ePrefixedVisibilityAPI = 14, + eNodeIteratorDetach = 15, + eLenientThis = 16, + eGetPreventDefault = 17, + eGetSetUserData = 18, + eMozGetAsFile = 19, + eUseOfCaptureEvents = 20, + eUseOfReleaseEvents = 21, + eUseOfDOM3LoadMethod = 22, + eChromeUseOfDOM3LoadMethod = 23, + eShowModalDialog = 24, + eWindow_Content = 25, + eSyncXMLHttpRequest = 26, + eWindow_Controllers = 27, + eImportXULIntoContent = 28, + ePannerNodeDoppler = 29, + eNavigatorGetUserMedia = 30, + eWebrtcDeprecatedPrefix = 31, + eRTCPeerConnectionGetStreams = 32, + eAppCache = 33, + ePrefixedImageSmoothingEnabled = 34, + ePrefixedFullscreenAPI = 35, + eLenientSetter = 36, + eFileLastModifiedDate = 37, + eImageBitmapRenderingContext_TransferImageBitmap = 38, + eURLCreateObjectURL_MediaStream = 39, + eXMLBaseAttribute = 40, + eXMLBaseAttributeForStyleAttr = 41, + eDeprecatedOperationCount = 42, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_DocumentWarnings { + eIgnoringWillChangeOverBudget = 0, + ePreventDefaultFromPassiveListener = 1, + eSVGReferenceLoop = 2, + eSVGReferenceChainLengthExceeded = 3, + eDocumentWarningCount = 4, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_ElementCallbackType { + eCreated = 0, + eAttached = 1, + eDetached = 2, + eAttributeChanged = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_Type { + eUnknown = 0, + eHTML = 1, + eXHTML = 2, + eGenericXML = 3, + eSVG = 4, + eXUL = 5, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_Tri { eTriUnset = 0, eTriFalse = 1, eTriTrue = 2, } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDocument_FrameRequest { + _unused: [u8; 0], + } + pub const nsIDocument_kSegmentSize: usize = 128; + #[test] + fn bindgen_test_layout_nsIDocument() { + assert_eq!(::std::mem::size_of::() , 896usize , concat ! + ( "Size of: " , stringify ! ( nsIDocument ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsIDocument ) )); + } + impl nsIDocument { + #[inline] + pub fn mBidiEnabled(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mBidiEnabled(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mMathMLEnabled(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mMathMLEnabled(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsInitialDocumentInWindow(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsInitialDocumentInWindow(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIgnoreDocGroupMismatches(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIgnoreDocGroupMismatches(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mLoadedAsData(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mLoadedAsData(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mLoadedAsInteractiveData(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mLoadedAsInteractiveData(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mMayStartLayout(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mMayStartLayout(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHaveFiredTitleChange(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHaveFiredTitleChange(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsShowing(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsShowing(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mVisible(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mVisible(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasReferrerPolicyCSP(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasReferrerPolicyCSP(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mRemovedFromDocShell(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mRemovedFromDocShell(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mAllowDNSPrefetch(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mAllowDNSPrefetch(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsStaticDocument(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsStaticDocument(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mCreatingStaticClone(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mCreatingStaticClone(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mInUnlinkOrDeletion(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mInUnlinkOrDeletion(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasHadScriptHandlingObject(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasHadScriptHandlingObject(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsBeingUsedAsImage(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsBeingUsedAsImage(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsSyntheticDocument(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsSyntheticDocument(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasLinksToUpdate(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasLinksToUpdate(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasLinksToUpdateRunnable(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasLinksToUpdateRunnable(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mMayHaveDOMMutationObservers(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mMayHaveDOMMutationObservers(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mMayHaveAnimationObservers(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mMayHaveAnimationObservers(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasMixedActiveContentLoaded(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasMixedActiveContentLoaded(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasMixedActiveContentBlocked(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasMixedActiveContentBlocked(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasMixedDisplayContentLoaded(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasMixedDisplayContentLoaded(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasMixedDisplayContentBlocked(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasMixedDisplayContentBlocked(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasMixedContentObjectSubrequest(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasMixedContentObjectSubrequest(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasCSP(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasCSP(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasUnsafeEvalCSP(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasUnsafeEvalCSP(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasUnsafeInlineCSP(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasUnsafeInlineCSP(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasTrackingContentBlocked(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasTrackingContentBlocked(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasTrackingContentLoaded(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasTrackingContentLoaded(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mBFCacheDisallowed(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mBFCacheDisallowed(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasHadDefaultView(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasHadDefaultView(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mStyleSheetChangeEventsEnabled(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mStyleSheetChangeEventsEnabled(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsSrcdocDocument(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsSrcdocDocument(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDidDocumentOpen(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mDidDocumentOpen(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasDisplayDocument(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasDisplayDocument(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFontFaceSetDirty(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mFontFaceSetDirty(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mGetUserFontSetCalled(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mGetUserFontSetCalled(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_6 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPostedFlushUserFontSet(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mPostedFlushUserFontSet(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_6 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDidFireDOMContentLoaded(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mDidFireDOMContentLoaded(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_6 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasScrollLinkedEffect(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasScrollLinkedEffect(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_6 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFrameRequestCallbacksScheduled(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mFrameRequestCallbacksScheduled(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_6 = unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsFontFaceRuleContainer { + pub mRule: root::RefPtr, + pub mSheetType: root::mozilla::SheetType, + } + #[test] + fn bindgen_test_layout_nsFontFaceRuleContainer() { + assert_eq!(::std::mem::size_of::() , 16usize + , concat ! ( + "Size of: " , stringify ! ( nsFontFaceRuleContainer ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( nsFontFaceRuleContainer ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFontFaceRuleContainer ) ) . mRule + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsFontFaceRuleContainer ) , "::" , stringify ! ( mRule ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFontFaceRuleContainer ) ) . + mSheetType as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsFontFaceRuleContainer ) , "::" , stringify ! ( + mSheetType ) )); + } + /** + * A node of content in a document's content model. This interface + * is supported by all content objects. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsIContent { + pub _base: root::nsINode, + } + pub type nsIContent_IMEState = root::mozilla::widget::IMEState; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIContent_COMTypeInfo { + pub _address: u8, + } + pub const nsIContent_eAllChildren: root::nsIContent__bindgen_ty_1 = + nsIContent__bindgen_ty_1::eAllChildren; + pub const nsIContent_eAllButXBL: root::nsIContent__bindgen_ty_1 = + nsIContent__bindgen_ty_1::eAllButXBL; + pub const nsIContent_eSkipPlaceholderContent: + root::nsIContent__bindgen_ty_1 = + nsIContent__bindgen_ty_1::eSkipPlaceholderContent; + pub const nsIContent_eSkipDocumentLevelNativeAnonymousContent: + root::nsIContent__bindgen_ty_1 = + nsIContent__bindgen_ty_1::eSkipDocumentLevelNativeAnonymousContent; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIContent__bindgen_ty_1 { + eAllChildren = 0, + eAllButXBL = 1, + eSkipPlaceholderContent = 2, + eSkipDocumentLevelNativeAnonymousContent = 4, + } + pub const nsIContent_ATTR_MISSING: root::nsIContent__bindgen_ty_2 = + nsIContent__bindgen_ty_2::ATTR_MISSING; + pub const nsIContent_ATTR_VALUE_NO_MATCH: root::nsIContent__bindgen_ty_2 = + nsIContent__bindgen_ty_2::ATTR_VALUE_NO_MATCH; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIContent__bindgen_ty_2 { + ATTR_MISSING = -1, + ATTR_VALUE_NO_MATCH = -2, + } + /** + * Check whether this content node's given attribute has one of a given + * list of values. If there is a match, we return the index in the list + * of the first matching value. If there was no attribute at all, then + * we return ATTR_MISSING. If there was an attribute but it didn't + * match, we return ATTR_VALUE_NO_MATCH. A non-negative result always + * indicates a match. + * + * @param aNameSpaceID The namespace ID of the attribute. Must not + * be kNameSpaceID_Unknown. + * @param aName The name atom of the attribute. Must not be null. + * @param aValues a nullptr-terminated array of pointers to atom values to test + * against. + * @param aCaseSensitive Whether to do a case-sensitive compare on the values. + * @return ATTR_MISSING, ATTR_VALUE_NO_MATCH or the non-negative index + * indicating the first value of aValues that matched + */ + pub type nsIContent_AttrValuesArray = *const *const root::nsIAtom; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIContent_FlattenedParentType { + eNotForStyle = 0, + eForStyle = 1, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIContent_ETabFocusType { + eTabFocus_textControlsMask = 1, + eTabFocus_formElementsMask = 2, + eTabFocus_linksMask = 4, + eTabFocus_any = 7, + } + extern "C" { + #[link_name = "_ZN10nsIContent14sTabFocusModelE"] + pub static mut nsIContent_sTabFocusModel: i32; + } + extern "C" { + #[link_name = "_ZN10nsIContent26sTabFocusModelAppliesToXULE"] + pub static mut nsIContent_sTabFocusModelAppliesToXUL: bool; + } + #[test] + fn bindgen_test_layout_nsIContent() { + assert_eq!(::std::mem::size_of::() , 96usize , concat ! ( + "Size of: " , stringify ! ( nsIContent ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIContent ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsStyleContext { + _unused: [u8; 0], + } + #[repr(C)] + pub struct nsPresContext { + pub _base: root::nsIObserver, + pub _base_1: u64, + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub _mOwningThread: root::nsAutoOwningThread, + pub mType: root::nsPresContext_nsPresContextType, + pub mShell: *mut root::nsIPresShell, + pub mDocument: root::nsCOMPtr, + pub mDeviceContext: root::RefPtr, + pub mEventManager: root::RefPtr, + pub mRefreshDriver: root::RefPtr, + pub mEffectCompositor: root::RefPtr, + pub mTransitionManager: root::RefPtr, + pub mAnimationManager: root::RefPtr, + pub mRestyleManager: root::RefPtr, + pub mCounterStyleManager: root::RefPtr, + pub mMedium: *mut root::nsIAtom, + pub mMediaEmulated: root::nsCOMPtr, + pub mLinkHandler: *mut root::nsILinkHandler, + pub mLanguage: root::nsCOMPtr, + pub mInflationDisabledForShrinkWrap: bool, + pub mContainer: u64, + pub mBaseMinFontSize: i32, + pub mSystemFontScale: f32, + pub mTextZoom: f32, + pub mEffectiveTextZoom: f32, + pub mFullZoom: f32, + pub mOverrideDPPX: f32, + pub mLastFontInflationScreenSize: root::gfxSize, + pub mCurAppUnitsPerDevPixel: i32, + pub mAutoQualityMinFontSizePixelsPref: i32, + pub mTheme: root::nsCOMPtr, + pub mLangService: root::nsCOMPtr, + pub mPrintSettings: root::nsCOMPtr, + pub mPrefChangedTimer: root::nsCOMPtr, + pub mBidiEngine: root::mozilla::UniquePtr, + pub mPropertyTable: root::nsPresContext_FramePropertyTable, + pub mTransactions: [u64; 10usize], + pub mTextPerf: root::nsAutoPtr, + pub mMissingFonts: root::nsAutoPtr, + pub mVisibleArea: root::nsRect, + pub mPageSize: root::nsSize, + pub mPageScale: f32, + pub mPPScale: f32, + pub mDefaultColor: root::nscolor, + pub mBackgroundColor: root::nscolor, + pub mLinkColor: root::nscolor, + pub mActiveLinkColor: root::nscolor, + pub mVisitedLinkColor: root::nscolor, + pub mFocusBackgroundColor: root::nscolor, + pub mFocusTextColor: root::nscolor, + pub mBodyTextColor: root::nscolor, + pub mViewportStyleScrollbar: root::nsPresContext_ScrollbarStyles, + pub mFocusRingWidth: u8, + pub mExistThrottledUpdates: bool, + pub mImageAnimationMode: u16, + pub mImageAnimationModePref: u16, + pub mLangGroupFontPrefs: root::nsPresContext_LangGroupFontPrefs, + pub mBorderWidthTable: [root::nscoord; 3usize], + pub mInterruptChecksToSkip: u32, + pub mElementsRestyled: u64, + pub mFramesConstructed: u64, + pub mFramesReflowed: u64, + pub mReflowStartTime: root::mozilla::TimeStamp, + pub mFirstNonBlankPaintTime: root::mozilla::TimeStamp, + pub mFirstClickTime: root::mozilla::TimeStamp, + pub mFirstKeyTime: root::mozilla::TimeStamp, + pub mFirstMouseMoveTime: root::mozilla::TimeStamp, + pub mFirstScrollTime: root::mozilla::TimeStamp, + pub mInteractionTimeEnabled: bool, + pub mLastStyleUpdateForAllAnimations: root::mozilla::TimeStamp, + pub mTelemetryScrollLastY: root::nscoord, + pub mTelemetryScrollMaxY: root::nscoord, + pub mTelemetryScrollTotalY: root::nscoord, + pub _bitfield_1: [u8; 4usize], + pub _bitfield_2: [u8; 2usize], + pub mRestyleLoggingEnabled: bool, + pub mInitialized: bool, + pub mLayoutPhaseCount: [u32; 3usize], + } + pub type nsPresContext_FramePropertyTable = + root::mozilla::FramePropertyTable; + pub type nsPresContext_LangGroupFontPrefs = + root::mozilla::LangGroupFontPrefs; + pub type nsPresContext_ScrollbarStyles = root::mozilla::ScrollbarStyles; + pub type nsPresContext_StaticPresData = root::mozilla::StaticPresData; + pub type nsPresContext_HasThreadSafeRefCnt = root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsPresContext_cycleCollection { + pub _base: root::nsXPCOMCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_nsPresContext_cycleCollection() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( nsPresContext_cycleCollection ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsPresContext_cycleCollection ) )); + } + impl Clone for nsPresContext_cycleCollection { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsPresContext_nsPresContextType { + eContext_Galley = 0, + eContext_PrintPreview = 1, + eContext_Print = 2, + eContext_PageLayout = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsPresContext_InteractionType { + eClickInteraction = 0, + eKeyInteraction = 1, + eMouseMoveInteraction = 2, + eScrollInteraction = 3, + } + /** + * A class that can be used to temporarily disable reflow interruption. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsPresContext_InterruptPreventer { + pub mCtx: *mut root::nsPresContext, + pub mInterruptsEnabled: bool, + pub mHasPendingInterrupt: bool, + } + #[test] + fn bindgen_test_layout_nsPresContext_InterruptPreventer() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( + nsPresContext_InterruptPreventer ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsPresContext_InterruptPreventer ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) + . mCtx as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsPresContext_InterruptPreventer ) , "::" , stringify ! ( + mCtx ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) + . mInterruptsEnabled as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + nsPresContext_InterruptPreventer ) , "::" , stringify ! ( + mInterruptsEnabled ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) + . mHasPendingInterrupt as * const _ as usize } , 9usize , + concat ! ( + "Alignment of field: " , stringify ! ( + nsPresContext_InterruptPreventer ) , "::" , stringify ! ( + mHasPendingInterrupt ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct nsPresContext_TransactionInvalidations { + pub mTransactionId: u64, + pub mInvalidations: root::nsTArray, + } + #[test] + fn bindgen_test_layout_nsPresContext_TransactionInvalidations() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsPresContext_TransactionInvalidations ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsPresContext_TransactionInvalidations ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const nsPresContext_TransactionInvalidations ) + ) . mTransactionId as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + nsPresContext_TransactionInvalidations ) , "::" , + stringify ! ( mTransactionId ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const nsPresContext_TransactionInvalidations ) + ) . mInvalidations as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + nsPresContext_TransactionInvalidations ) , "::" , + stringify ! ( mInvalidations ) )); + } + extern "C" { + #[link_name = "_ZN13nsPresContext21_cycleCollectorGlobalE"] + pub static mut nsPresContext__cycleCollectorGlobal: + root::nsPresContext_cycleCollection; + } + #[test] + fn bindgen_test_layout_nsPresContext() { + assert_eq!(::std::mem::size_of::() , 1328usize , concat + ! ( "Size of: " , stringify ! ( nsPresContext ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsPresContext ) )); + } + impl nsPresContext { + #[inline] + pub fn mHasPendingInterrupt(&self) -> ::std::os::raw::c_uint { + let mask = 1usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mHasPendingInterrupt(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 1usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingInterruptFromTest(&self) -> ::std::os::raw::c_uint { + let mask = 2usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingInterruptFromTest(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 2usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mInterruptsEnabled(&self) -> ::std::os::raw::c_uint { + let mask = 4usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mInterruptsEnabled(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 4usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUseDocumentFonts(&self) -> ::std::os::raw::c_uint { + let mask = 8usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUseDocumentFonts(&mut self, val: ::std::os::raw::c_uint) { + let mask = 8usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUseDocumentColors(&self) -> ::std::os::raw::c_uint { + let mask = 16usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUseDocumentColors(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 16usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUnderlineLinks(&self) -> ::std::os::raw::c_uint { + let mask = 32usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUnderlineLinks(&mut self, val: ::std::os::raw::c_uint) { + let mask = 32usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mSendAfterPaintToContent(&self) -> ::std::os::raw::c_uint { + let mask = 64usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mSendAfterPaintToContent(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 64usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUseFocusColors(&self) -> ::std::os::raw::c_uint { + let mask = 128usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUseFocusColors(&mut self, val: ::std::os::raw::c_uint) { + let mask = 128usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFocusRingOnAnything(&self) -> ::std::os::raw::c_uint { + let mask = 256usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 8usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mFocusRingOnAnything(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 256usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 8usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFocusRingStyle(&self) -> ::std::os::raw::c_uint { + let mask = 512usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 9usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mFocusRingStyle(&mut self, val: ::std::os::raw::c_uint) { + let mask = 512usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 9usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDrawImageBackground(&self) -> ::std::os::raw::c_uint { + let mask = 1024usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 10usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mDrawImageBackground(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 1024usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 10usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDrawColorBackground(&self) -> ::std::os::raw::c_uint { + let mask = 2048usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 11usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mDrawColorBackground(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 2048usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 11usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNeverAnimate(&self) -> ::std::os::raw::c_uint { + let mask = 4096usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 12usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mNeverAnimate(&mut self, val: ::std::os::raw::c_uint) { + let mask = 4096usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 12usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsRenderingOnlySelection(&self) -> ::std::os::raw::c_uint { + let mask = 8192usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 13usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsRenderingOnlySelection(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 8192usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 13usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPaginated(&self) -> ::std::os::raw::c_uint { + let mask = 16384usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 14usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPaginated(&mut self, val: ::std::os::raw::c_uint) { + let mask = 16384usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 14usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mCanPaginatedScroll(&self) -> ::std::os::raw::c_uint { + let mask = 32768usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 15usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mCanPaginatedScroll(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 32768usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 15usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDoScaledTwips(&self) -> ::std::os::raw::c_uint { + let mask = 65536usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 16usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mDoScaledTwips(&mut self, val: ::std::os::raw::c_uint) { + let mask = 65536usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 16usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsRootPaginatedDocument(&self) -> ::std::os::raw::c_uint { + let mask = 131072usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 17usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsRootPaginatedDocument(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 131072usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 17usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPrefBidiDirection(&self) -> ::std::os::raw::c_uint { + let mask = 262144usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 18usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPrefBidiDirection(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 262144usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 18usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPrefScrollbarSide(&self) -> ::std::os::raw::c_uint { + let mask = 1572864usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 19usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPrefScrollbarSide(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 1572864usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 19usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingSysColorChanged(&self) -> ::std::os::raw::c_uint { + let mask = 2097152usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 21usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingSysColorChanged(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 2097152usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 21usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingThemeChanged(&self) -> ::std::os::raw::c_uint { + let mask = 4194304usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 22usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingThemeChanged(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 4194304usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 22usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingUIResolutionChanged(&self) -> ::std::os::raw::c_uint { + let mask = 8388608usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 23usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingUIResolutionChanged(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 8388608usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 23usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingMediaFeatureValuesChanged(&self) + -> ::std::os::raw::c_uint { + let mask = 16777216usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 24usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingMediaFeatureValuesChanged(&mut self, + val: + ::std::os::raw::c_uint) { + let mask = 16777216usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 24usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPrefChangePendingNeedsReflow(&self) + -> ::std::os::raw::c_uint { + let mask = 33554432usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 25usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPrefChangePendingNeedsReflow(&mut self, + val: + ::std::os::raw::c_uint) { + let mask = 33554432usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 25usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsEmulatingMedia(&self) -> ::std::os::raw::c_uint { + let mask = 67108864usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 26usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsEmulatingMedia(&mut self, val: ::std::os::raw::c_uint) { + let mask = 67108864usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 26usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsGlyph(&self) -> ::std::os::raw::c_uint { + let mask = 134217728usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 27usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsGlyph(&mut self, val: ::std::os::raw::c_uint) { + let mask = 134217728usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 27usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUsesRootEMUnits(&self) -> ::std::os::raw::c_uint { + let mask = 268435456usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 28usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUsesRootEMUnits(&mut self, val: ::std::os::raw::c_uint) { + let mask = 268435456usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 28usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUsesExChUnits(&self) -> ::std::os::raw::c_uint { + let mask = 536870912usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 29usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUsesExChUnits(&mut self, val: ::std::os::raw::c_uint) { + let mask = 536870912usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 29usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUsesViewportUnits(&self) -> ::std::os::raw::c_uint { + let mask = 1073741824usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 30usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUsesViewportUnits(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 1073741824usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 30usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingViewportChange(&self) -> ::std::os::raw::c_uint { + let mask = 2147483648usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 31usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingViewportChange(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 2147483648usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 31usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mCounterStylesDirty(&self) -> ::std::os::raw::c_uint { + let mask = 1usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mCounterStylesDirty(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 1usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPostedFlushCounterStyles(&self) -> ::std::os::raw::c_uint { + let mask = 2usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPostedFlushCounterStyles(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 2usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mSuppressResizeReflow(&self) -> ::std::os::raw::c_uint { + let mask = 4usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mSuppressResizeReflow(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 4usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsVisual(&self) -> ::std::os::raw::c_uint { + let mask = 8usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsVisual(&mut self, val: ::std::os::raw::c_uint) { + let mask = 8usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFireAfterPaintEvents(&self) -> ::std::os::raw::c_uint { + let mask = 16usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mFireAfterPaintEvents(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 16usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsChrome(&self) -> ::std::os::raw::c_uint { + let mask = 32usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsChrome(&mut self, val: ::std::os::raw::c_uint) { + let mask = 32usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsChromeOriginImage(&self) -> ::std::os::raw::c_uint { + let mask = 64usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsChromeOriginImage(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 64usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPaintFlashing(&self) -> ::std::os::raw::c_uint { + let mask = 128usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPaintFlashing(&mut self, val: ::std::os::raw::c_uint) { + let mask = 128usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPaintFlashingInitialized(&self) -> ::std::os::raw::c_uint { + let mask = 256usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 8usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPaintFlashingInitialized(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 256usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 8usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasWarnedAboutPositionedTableParts(&self) + -> ::std::os::raw::c_uint { + let mask = 512usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 9usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mHasWarnedAboutPositionedTableParts(&mut self, + val: + ::std::os::raw::c_uint) { + let mask = 512usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 9usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasWarnedAboutTooLargeDashedOrDottedRadius(&self) + -> ::std::os::raw::c_uint { + let mask = 1024usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 10usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mHasWarnedAboutTooLargeDashedOrDottedRadius(&mut self, + val: + ::std::os::raw::c_uint) { + let mask = 1024usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 10usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mQuirkSheetAdded(&self) -> ::std::os::raw::c_uint { + let mask = 2048usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 11usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mQuirkSheetAdded(&mut self, val: ::std::os::raw::c_uint) { + let mask = 2048usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 11usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNeedsPrefUpdate(&self) -> ::std::os::raw::c_uint { + let mask = 4096usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 12usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mNeedsPrefUpdate(&mut self, val: ::std::os::raw::c_uint) { + let mask = 4096usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 12usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHadNonBlankPaint(&self) -> ::std::os::raw::c_uint { + let mask = 8192usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 13usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mHadNonBlankPaint(&mut self, val: ::std::os::raw::c_uint) { + let mask = 8192usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 13usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsAttrName { + pub mBits: usize, + } + #[test] + fn bindgen_test_layout_nsAttrName() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsAttrName ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsAttrName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsAttrName ) ) . mBits as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsAttrName ) , "::" + , stringify ! ( mBits ) )); + } #[repr(C)] #[derive(Debug)] pub struct nsAttrValue { @@ -15398,222 +18788,31 @@ pub mod root { "Alignment of field: " , stringify ! ( nsAttrValue ) , "::" , stringify ! ( mBits ) )); } - /** - * Information details about a characterdata change. Basically, we - * view all changes as replacements of a length of text at some offset - * with some other text (of possibly some other length). - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct CharacterDataChangeInfo { - /** - * True if this character data change is just an append. - */ - pub mAppend: bool, - /** - * The offset in the text where the change occurred. - */ - pub mChangeStart: u32, - /** - * The offset such that mChangeEnd - mChangeStart is equal to the length of - * the text we removed. If this was a pure insert or append, this is equal to - * mChangeStart. - */ - pub mChangeEnd: u32, - /** - * The length of the text that was inserted in place of the removed text. If - * this was a pure text removal, this is 0. - */ - pub mReplaceLength: u32, - /** - * Used for splitText() and normalize(), otherwise null. - */ - pub mDetails: *mut root::CharacterDataChangeInfo_Details, - } - /** - * The net result is that mChangeStart characters at the beginning of the - * text remained as they were. The next mChangeEnd - mChangeStart characters - * were removed, and mReplaceLength characters were inserted in their place. - * The text that used to begin at mChangeEnd now begins at - * mChangeStart + mReplaceLength. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct CharacterDataChangeInfo_Details { - pub mType: root::CharacterDataChangeInfo_Details__bindgen_ty_1, - /** - * For eMerge it's the text node that will be removed, for eSplit it's the - * new text node. - */ - pub mNextSibling: *mut root::nsIContent, - } - pub const CharacterDataChangeInfo_Details_eMerge: - root::CharacterDataChangeInfo_Details__bindgen_ty_1 = - CharacterDataChangeInfo_Details__bindgen_ty_1::eMerge; - pub const CharacterDataChangeInfo_Details_eSplit: - root::CharacterDataChangeInfo_Details__bindgen_ty_1 = - CharacterDataChangeInfo_Details__bindgen_ty_1::eSplit; #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CharacterDataChangeInfo_Details__bindgen_ty_1 { - eMerge = 0, - eSplit = 1, - } - #[test] - fn bindgen_test_layout_CharacterDataChangeInfo_Details() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( CharacterDataChangeInfo_Details - ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - CharacterDataChangeInfo_Details ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo_Details ) ) . - mType as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo_Details ) , "::" , stringify ! ( - mType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo_Details ) ) . - mNextSibling as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo_Details ) , "::" , stringify ! ( - mNextSibling ) )); - } - impl Clone for CharacterDataChangeInfo_Details { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_CharacterDataChangeInfo() { - assert_eq!(::std::mem::size_of::() , 24usize - , concat ! ( - "Size of: " , stringify ! ( CharacterDataChangeInfo ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( CharacterDataChangeInfo ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo ) ) . mAppend - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo ) , "::" , stringify ! ( mAppend ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo ) ) . - mChangeStart as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo ) , "::" , stringify ! ( - mChangeStart ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo ) ) . - mChangeEnd as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo ) , "::" , stringify ! ( - mChangeEnd ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo ) ) . - mReplaceLength as * const _ as usize } , 12usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo ) , "::" , stringify ! ( - mReplaceLength ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo ) ) . - mDetails as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo ) , "::" , stringify ! ( mDetails - ) )); - } - impl Clone for CharacterDataChangeInfo { - fn clone(&self) -> Self { *self } - } /** - * Mutation observer interface - * - * See nsINode::AddMutationObserver, nsINode::RemoveMutationObserver for how to - * attach or remove your observers. - * - * WARNING: During these notifications, you are not allowed to perform - * any mutations to the current or any other document, or start a - * network load. If you need to perform such operations do that - * during the _last_ nsIDocumentObserver::EndUpdate notification. The - * expection for this is ParentChainChanged, where mutations should be - * done from an async event, as the notification might not be - * surrounded by BeginUpdate/EndUpdate calls. + * This is the enum used by functions that need to be told whether to + * do case-sensitive or case-insensitive string comparisons. */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsCaseTreatment { eCaseMatters = 0, eIgnoreCase = 1, } #[repr(C)] #[derive(Debug, Copy)] - pub struct nsIMutationObserver { + pub struct nsIVariant { pub _base: root::nsISupports, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIMutationObserver_COMTypeInfo { + pub struct nsIVariant_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] - fn bindgen_test_layout_nsIMutationObserver() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( nsIMutationObserver ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIMutationObserver ) )); + fn bindgen_test_layout_nsIVariant() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIVariant ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIVariant ) )); } - impl Clone for nsIMutationObserver { - fn clone(&self) -> Self { *self } - } - pub type nsUpdateType = u32; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDocumentObserver { - pub _base: root::nsIMutationObserver, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDocumentObserver_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDocumentObserver() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( nsIDocumentObserver ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDocumentObserver ) )); - } - impl Clone for nsIDocumentObserver { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIRequestObserver { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIRequestObserver_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIRequestObserver() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( "Size of: " , stringify ! ( nsIRequestObserver ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIRequestObserver ) )); - } - impl Clone for nsIRequestObserver { + impl Clone for nsIVariant { fn clone(&self) -> Self { *self } } pub const kNameSpaceID_None: i32 = 0; @@ -15736,7 +18935,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsBindingManager([u8; 0]); + pub struct nsBindingManager { + _unused: [u8; 0], + } pub type NSPropertyFunc = ::std::option::Option() , 8usize , concat @@ -15798,6 +19003,144 @@ pub mod root { "Alignment of field: " , stringify ! ( nsPropertyTable ) , "::" , stringify ! ( mPropertyList ) )); } + /** + * An array of observers. Like a normal array, but supports iterators that are + * stable even if the array is modified during iteration. + * The template parameter T is the observer type the array will hold; + * N is the number of built-in storage slots that come with the array. + * NOTE: You probably want to use nsTObserverArray, unless you specifically + * want built-in storage. See below. + * @see nsTObserverArray, nsTArray + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsTObserverArray_base { + pub mIterators: *mut root::nsTObserverArray_base_Iterator_base, + } + pub type nsTObserverArray_base_index_type = usize; + pub type nsTObserverArray_base_size_type = usize; + pub type nsTObserverArray_base_diff_type = isize; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsTObserverArray_base_Iterator_base { + pub mPosition: root::nsTObserverArray_base_index_type, + pub mNext: *mut root::nsTObserverArray_base_Iterator_base, + } + #[test] + fn bindgen_test_layout_nsTObserverArray_base_Iterator_base() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsTObserverArray_base_Iterator_base ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsTObserverArray_base_Iterator_base ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsTObserverArray_base_Iterator_base ) + ) . mPosition as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + nsTObserverArray_base_Iterator_base ) , "::" , stringify ! + ( mPosition ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsTObserverArray_base_Iterator_base ) + ) . mNext as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsTObserverArray_base_Iterator_base ) , "::" , stringify ! + ( mNext ) )); + } + impl Clone for nsTObserverArray_base_Iterator_base { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_nsTObserverArray_base() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsTObserverArray_base ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsTObserverArray_base ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsTObserverArray_base ) ) . + mIterators as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsTObserverArray_base ) , "::" , stringify ! ( mIterators + ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsTObserverArray { + } + pub type nsTObserverArray_base_type = u8; + pub type nsTObserverArray_size_type = + root::nsTObserverArray_base_size_type; + /** + * It is used by the application to initialize a runtime and run scripts. + * A script runtime would implement this interface. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIScriptContext { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIScriptContext_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIScriptContext() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsIScriptContext ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIScriptContext ) )); + } + impl Clone for nsIScriptContext { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsPIDOMWindowOuter { + pub _base: [u64; 29usize], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsPIDOMWindowOuter_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsPIDOMWindowOuter() { + assert_eq!(::std::mem::size_of::() , 232usize , + concat ! ( "Size of: " , stringify ! ( nsPIDOMWindowOuter ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsPIDOMWindowOuter ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct nsIGlobalObject { + pub _base: root::nsISupports, + pub _base_1: root::mozilla::dom::DispatcherTrait, + pub mHostObjectURIs: root::nsTArray, + pub mIsDying: bool, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIGlobalObject_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIGlobalObject() { + assert_eq!(::std::mem::size_of::() , 32usize , concat + ! ( "Size of: " , stringify ! ( nsIGlobalObject ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIGlobalObject ) )); + } #[repr(C)] #[derive(Debug)] pub struct nsAttrAndChildArray { @@ -15896,10 +19239,14 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsChildContentList([u8; 0]); + pub struct nsChildContentList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsCSSSelectorList([u8; 0]); + pub struct nsCSSSelectorList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct nsDOMAttributeMap { @@ -15907,7 +19254,7 @@ pub mod root { pub _base_1: root::nsWrapperCache, pub mRefCnt: root::nsCycleCollectingAutoRefCnt, pub _mOwningThread: root::nsAutoOwningThread, - pub mContent: root::nsCOMPtr, + pub mContent: root::nsCOMPtr, /** * Cache of Attrs. */ @@ -15953,10 +19300,50 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIAnimationObserver([u8; 0]); + pub struct nsIAnimationObserver { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIEditor([u8; 0]); + pub struct nsIEditor { + _unused: [u8; 0], + } + /** + * Mutation observer interface + * + * See nsINode::AddMutationObserver, nsINode::RemoveMutationObserver for how to + * attach or remove your observers. + * + * WARNING: During these notifications, you are not allowed to perform + * any mutations to the current or any other document, or start a + * network load. If you need to perform such operations do that + * during the _last_ nsIDocumentObserver::EndUpdate notification. The + * expection for this is ParentChainChanged, where mutations should be + * done from an async event, as the notification might not be + * surrounded by BeginUpdate/EndUpdate calls. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIMutationObserver { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIMutationObserver_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIMutationObserver() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsIMutationObserver ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIMutationObserver ) )); + } + impl Clone for nsIMutationObserver { + fn clone(&self) -> Self { *self } + } /** * An internal interface for a reasonably fast indexOf. */ @@ -15968,10 +19355,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsINodeList_COMTypeInfo { + pub struct nsINodeList_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsINodeList() { @@ -15992,7 +19377,6 @@ pub mod root { * frame. */ #[repr(C)] - #[derive(Debug)] pub struct nsIPresShell { pub _base: root::nsISupports, pub mDocument: root::nsCOMPtr, @@ -16034,10 +19418,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIPresShell_COMTypeInfo { + pub struct nsIPresShell_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub type nsIPresShell_LayerManager = root::mozilla::layers::LayerManager; pub type nsIPresShell_SourceSurface = root::mozilla::gfx::SourceSurface; @@ -16553,6 +19935,315 @@ pub mod root { "Alignment of field: " , stringify ! ( nsIPresShell ) , "::" , stringify ! ( mInFlush ) )); } + impl nsIPresShell { + #[inline] + pub fn mStylesHaveChanged(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mStylesHaveChanged(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDidInitialize(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mDidInitialize(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsDestroying(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsDestroying(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsReflowing(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsReflowing(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPaintingSuppressed(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mPaintingSuppressed(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsThemeSupportDisabled(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsThemeSupportDisabled(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsActive(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsActive(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFrozen(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mFrozen(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsFirstPaint(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsFirstPaint(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mObservesMutationsForPrint(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mObservesMutationsForPrint(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mSuppressInterruptibleReflows(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mSuppressInterruptibleReflows(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mScrollPositionClampingScrollPortSizeSet(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mScrollPositionClampingScrollPortSizeSet(&mut self, + val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNeedLayoutFlush(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mNeedLayoutFlush(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNeedStyleFlush(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mNeedStyleFlush(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mObservingStyleFlushes(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mObservingStyleFlushes(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mObservingLayoutFlushes(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mObservingLayoutFlushes(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNeedThrottledAnimationFlush(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mNeedThrottledAnimationFlush(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + } /** * A class that implements nsIWeakReference */ @@ -16593,67 +20284,69 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDOMMutationObserver([u8; 0]); - pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_HAS_LISTENERMANAGER; - pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_HAS_PROPERTIES; - pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_IS_ANONYMOUS_ROOT; - pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE; - pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_IS_NATIVE_ANONYMOUS_ROOT; - pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_FORCE_XBL_BINDINGS; - pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_MAY_BE_IN_BINDING_MNGR; - pub const NODE_IS_EDITABLE: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_IS_EDITABLE; - pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_IS_NATIVE_ANONYMOUS; - pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_IS_IN_SHADOW_TREE; - pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_HAS_EMPTY_SELECTOR; - pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_HAS_SLOW_SELECTOR; - pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_HAS_EDGE_CHILD_SELECTOR; - pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS; - pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_ALL_SELECTOR_FLAGS; - pub const NODE_NEEDS_FRAME: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_NEEDS_FRAME; - pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_DESCENDANTS_NEED_FRAMES; - pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_HAS_ACCESSKEY; - pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_HAS_DIRECTION_RTL; - pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_HAS_DIRECTION_LTR; - pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_ALL_DIRECTION_FLAGS; - pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_CHROME_ONLY_ACCESS; - pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS; - pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_SHARED_RESTYLE_BIT_1; - pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_SHARED_RESTYLE_BIT_2; - pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_SHARED_RESTYLE_BIT_1; + pub struct nsDOMMutationObserver { + _unused: [u8; 0], + } + pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_HAS_LISTENERMANAGER; + pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_HAS_PROPERTIES; + pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_IS_ANONYMOUS_ROOT; + pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE; + pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_IS_NATIVE_ANONYMOUS_ROOT; + pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_FORCE_XBL_BINDINGS; + pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_MAY_BE_IN_BINDING_MNGR; + pub const NODE_IS_EDITABLE: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_IS_EDITABLE; + pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_IS_NATIVE_ANONYMOUS; + pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_IS_IN_SHADOW_TREE; + pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_HAS_EMPTY_SELECTOR; + pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_HAS_SLOW_SELECTOR; + pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_HAS_EDGE_CHILD_SELECTOR; + pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS; + pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_ALL_SELECTOR_FLAGS; + pub const NODE_NEEDS_FRAME: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_NEEDS_FRAME; + pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_DESCENDANTS_NEED_FRAMES; + pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_HAS_ACCESSKEY; + pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_HAS_DIRECTION_RTL; + pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_HAS_DIRECTION_LTR; + pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_ALL_DIRECTION_FLAGS; + pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_CHROME_ONLY_ACCESS; + pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS; + pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_SHARED_RESTYLE_BIT_1; + pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_SHARED_RESTYLE_BIT_2; + pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_SHARED_RESTYLE_BIT_1; pub const NODE_HAS_ANIMATION_ONLY_DIRTY_DESCENDANTS_FOR_SERVO: - root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_SHARED_RESTYLE_BIT_2; - pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_104 = - _bindgen_ty_104::NODE_TYPE_SPECIFIC_BITS_OFFSET; + root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_SHARED_RESTYLE_BIT_2; + pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_77 = + _bindgen_ty_77::NODE_TYPE_SPECIFIC_BITS_OFFSET; #[repr(u32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum _bindgen_ty_104 { + pub enum _bindgen_ty_77 { NODE_HAS_LISTENERMANAGER = 4, NODE_HAS_PROPERTIES = 8, NODE_IS_ANONYMOUS_ROOT = 16, @@ -16683,1764 +20376,28 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsScanner([u8; 0]); - /*************************************************************** - Notes: - ***************************************************************/ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsITokenizer { - pub _base: root::nsISupports, + pub struct nsRuleWalker { + _unused: [u8; 0], } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsITokenizer_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsITokenizer() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsITokenizer ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsITokenizer ) )); - } - impl Clone for nsITokenizer { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsDTDMode { - eDTDMode_unknown = 0, - eDTDMode_quirks = 1, - eDTDMode_almost_standards = 2, - eDTDMode_full_standards = 3, - eDTDMode_autodetect = 4, - eDTDMode_fragment = 5, + pub struct nsTextFragment { + _unused: [u8; 0], } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIContentSink([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct CParserContext([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDTD { - pub _base: root::nsISupports, + pub struct nsXBLBinding { + _unused: [u8; 0], } #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDTD_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDTD() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIDTD ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIDTD ) )); - } - impl Clone for nsIDTD { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsParserBase { - pub _base: root::nsISupports, - } - #[test] - fn bindgen_test_layout_nsParserBase() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsParserBase ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsParserBase ) )); - } - impl Clone for nsParserBase { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum eParserCommands { - eViewNormal = 0, - eViewSource = 1, - eViewFragment = 2, - eViewErrors = 3, - } - /** - * This GECKO-INTERNAL interface is on track to being REMOVED (or refactored - * to the point of being near-unrecognizable). - * - * Please DO NOT #include this file in comm-central code, in your XULRunner - * app or binary extensions. - * - * Please DO NOT #include this into new files even inside Gecko. It is more - * likely than not that #including this header is the wrong thing to do. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIParser { - pub _base: root::nsParserBase, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIParser_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIParser() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIParser ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIParser ) )); - } - impl Clone for nsIParser { - fn clone(&self) -> Self { *self } - } - pub type nscoord = i32; - pub type nsIntPoint = root::mozilla::gfx::IntPoint; - /** - * Currently needs to be 'double' for Cairo compatibility. Could - * become 'float', perhaps, in some configurations. - */ - pub type gfxFloat = f64; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct gfxSize { - pub _bindgen_opaque_blob: [u64; 2usize], - } - pub type gfxSize_Super = [u64; 2usize]; - #[test] - fn bindgen_test_layout_gfxSize() { - assert_eq!(::std::mem::size_of::() , 16usize , concat ! ( - "Size of: " , stringify ! ( gfxSize ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( gfxSize ) )); - } - impl Clone for gfxSize { - fn clone(&self) -> Self { *self } - } - pub type nsIntMargin = root::mozilla::gfx::IntMargin; - pub type nsIntRect = root::mozilla::gfx::IntRect; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct pixman_region32_data { - pub size: ::std::os::raw::c_long, - pub numRects: ::std::os::raw::c_long, - } - #[test] - fn bindgen_test_layout_pixman_region32_data() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( - "Size of: " , stringify ! ( pixman_region32_data ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( pixman_region32_data ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_region32_data ) ) . size as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - pixman_region32_data ) , "::" , stringify ! ( size ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_region32_data ) ) . numRects - as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - pixman_region32_data ) , "::" , stringify ! ( numRects ) - )); - } - impl Clone for pixman_region32_data { - fn clone(&self) -> Self { *self } - } - pub type pixman_region32_data_t = root::pixman_region32_data; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct pixman_box32 { - pub x1: i32, - pub y1: i32, - pub x2: i32, - pub y2: i32, - } - #[test] - fn bindgen_test_layout_pixman_box32() { - assert_eq!(::std::mem::size_of::() , 16usize , concat ! - ( "Size of: " , stringify ! ( pixman_box32 ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat ! - ( "Alignment of " , stringify ! ( pixman_box32 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_box32 ) ) . x1 as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_box32 ) , - "::" , stringify ! ( x1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_box32 ) ) . y1 as * const _ as - usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_box32 ) , - "::" , stringify ! ( y1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_box32 ) ) . x2 as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_box32 ) , - "::" , stringify ! ( x2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_box32 ) ) . y2 as * const _ as - usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_box32 ) , - "::" , stringify ! ( y2 ) )); - } - impl Clone for pixman_box32 { - fn clone(&self) -> Self { *self } - } - pub type pixman_box32_t = root::pixman_box32; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct pixman_region32 { - pub extents: root::pixman_box32_t, - pub data: *mut root::pixman_region32_data_t, - } - #[test] - fn bindgen_test_layout_pixman_region32() { - assert_eq!(::std::mem::size_of::() , 24usize , concat - ! ( "Size of: " , stringify ! ( pixman_region32 ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( pixman_region32 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_region32 ) ) . extents as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_region32 ) , - "::" , stringify ! ( extents ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_region32 ) ) . data as * const - _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_region32 ) , - "::" , stringify ! ( data ) )); - } - impl Clone for pixman_region32 { - fn clone(&self) -> Self { *self } - } - pub type pixman_region32_t = root::pixman_region32; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum VisitSide { TOP = 0, BOTTOM = 1, LEFT = 2, RIGHT = 3, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsContentList([u8; 0]); - /** - * The signature of the timer callback function passed to initWithFuncCallback. - * This is the function that will get called when the timer expires if the - * timer is initialized via initWithFuncCallback. - * - * @param aTimer the timer which has expired - * @param aClosure opaque parameter passed to initWithFuncCallback - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsITimer { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsITimer_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsITimer_TYPE_ONE_SHOT: root::nsITimer__bindgen_ty_1 = - nsITimer__bindgen_ty_1::TYPE_ONE_SHOT; - pub const nsITimer_TYPE_REPEATING_SLACK: root::nsITimer__bindgen_ty_1 = - nsITimer__bindgen_ty_1::TYPE_REPEATING_SLACK; - pub const nsITimer_TYPE_REPEATING_PRECISE: root::nsITimer__bindgen_ty_1 = - nsITimer__bindgen_ty_1::TYPE_REPEATING_PRECISE; - pub const nsITimer_TYPE_REPEATING_PRECISE_CAN_SKIP: - root::nsITimer__bindgen_ty_1 = - nsITimer__bindgen_ty_1::TYPE_REPEATING_PRECISE_CAN_SKIP; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsITimer__bindgen_ty_1 { - TYPE_ONE_SHOT = 0, - TYPE_REPEATING_SLACK = 1, - TYPE_REPEATING_PRECISE = 2, - TYPE_REPEATING_PRECISE_CAN_SKIP = 3, - } - #[test] - fn bindgen_test_layout_nsITimer() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsITimer ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsITimer ) )); - } - impl Clone for nsITimer { - fn clone(&self) -> Self { *self } - } - pub type nsTimerCallbackFunc = - ::std::option::Option; - /** - * The signature of the timer name callback function passed to - * initWithNameableFuncCallback. - * This is the function that will get called when timer profiling is enabled - * via the "TimerFirings" log module. - * - * @param aTimer the timer which has expired - * @param aAnonymize whether the name should avoid including privacy sensitive info - * @param aClosure opaque parameter passed to initWithFuncCallback - * @param aBuf a buffer in which to put the name - * @param aLen the length of the buffer - */ - pub type nsTimerNameCallbackFunc = - ::std::option::Option; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsITimerCallback { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsITimerCallback_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsITimerCallback() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsITimerCallback ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsITimerCallback ) )); - } - impl Clone for nsITimerCallback { - fn clone(&self) -> Self { *self } - } - /** - * Data used to track the expiration state of an object. We promise that this - * is 32 bits so that objects that includes this as a field can pad and align - * efficiently. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsExpirationState { - pub _bitfield_1: u32, - pub __bindgen_align: [u32; 0usize], - } - pub const nsExpirationState_NOT_TRACKED: - root::nsExpirationState__bindgen_ty_1 = - nsExpirationState__bindgen_ty_1::NOT_TRACKED; - pub const nsExpirationState_MAX_INDEX_IN_GENERATION: - root::nsExpirationState__bindgen_ty_1 = - nsExpirationState__bindgen_ty_1::MAX_INDEX_IN_GENERATION; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsExpirationState__bindgen_ty_1 { - NOT_TRACKED = 15, - MAX_INDEX_IN_GENERATION = 268435455, - } - #[test] - fn bindgen_test_layout_nsExpirationState() { - assert_eq!(::std::mem::size_of::() , 4usize , - concat ! ( "Size of: " , stringify ! ( nsExpirationState ) - )); - assert_eq! (::std::mem::align_of::() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( nsExpirationState ) )); - } - impl Clone for nsExpirationState { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct gfxUserFontSet([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct imgIRequest { - pub _base: root::nsIRequest, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct imgIRequest_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const imgIRequest_STATUS_NONE: root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_NONE; - pub const imgIRequest_STATUS_SIZE_AVAILABLE: - root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_SIZE_AVAILABLE; - pub const imgIRequest_STATUS_LOAD_COMPLETE: - root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_LOAD_COMPLETE; - pub const imgIRequest_STATUS_ERROR: root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_ERROR; - pub const imgIRequest_STATUS_FRAME_COMPLETE: - root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_FRAME_COMPLETE; - pub const imgIRequest_STATUS_DECODE_COMPLETE: - root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_DECODE_COMPLETE; - pub const imgIRequest_STATUS_IS_ANIMATED: root::imgIRequest__bindgen_ty_1 - = - imgIRequest__bindgen_ty_1::STATUS_IS_ANIMATED; - pub const imgIRequest_STATUS_HAS_TRANSPARENCY: - root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_HAS_TRANSPARENCY; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum imgIRequest__bindgen_ty_1 { - STATUS_NONE = 0, - STATUS_SIZE_AVAILABLE = 1, - STATUS_LOAD_COMPLETE = 2, - STATUS_ERROR = 4, - STATUS_FRAME_COMPLETE = 8, - STATUS_DECODE_COMPLETE = 16, - STATUS_IS_ANIMATED = 32, - STATUS_HAS_TRANSPARENCY = 64, - } - pub const imgIRequest_CORS_NONE: root::imgIRequest__bindgen_ty_2 = - imgIRequest__bindgen_ty_2::CORS_NONE; - pub const imgIRequest_CORS_ANONYMOUS: root::imgIRequest__bindgen_ty_2 = - imgIRequest__bindgen_ty_2::CORS_ANONYMOUS; - pub const imgIRequest_CORS_USE_CREDENTIALS: - root::imgIRequest__bindgen_ty_2 = - imgIRequest__bindgen_ty_2::CORS_USE_CREDENTIALS; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum imgIRequest__bindgen_ty_2 { - CORS_NONE = 1, - 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::() , 8usize , concat ! ( - "Size of: " , stringify ! ( imgIRequest ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( imgIRequest ) )); - } - impl Clone for imgIRequest { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsDocShell([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsDOMNavigationTiming([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsFrameLoader([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsHTMLCSSStyleSheet([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsHTMLStyleSheet([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIBFCacheEntry([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDocumentEncoder([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMNodeFilter([u8; 0]); - /** - * An internal interface - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIHTMLCollection { - pub _base: root::nsIDOMHTMLCollection, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIHTMLCollection_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIHTMLCollection() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( "Size of: " , stringify ! ( nsIHTMLCollection ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIHTMLCollection ) )); - } - impl Clone for nsIHTMLCollection { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsILayoutHistoryState([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIObjectLoadingContent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIStructuredCloneContainer([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsViewManager([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsRange([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsScriptLoader([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsSMILAnimationController([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsSVGElement([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsTextNode([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsWindowSizes([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsDOMCaretPosition([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsViewportInfo([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ProfilerBacktrace([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ProfilerBacktraceDestructor { - pub _address: u8, - } - #[test] - fn bindgen_test_layout_ProfilerBacktraceDestructor() { - assert_eq!(::std::mem::size_of::() , - 1usize , concat ! ( - "Size of: " , stringify ! ( ProfilerBacktraceDestructor ) - )); - assert_eq! (::std::mem::align_of::() , - 1usize , concat ! ( - "Alignment of " , stringify ! ( - ProfilerBacktraceDestructor ) )); - } - impl Clone for ProfilerBacktraceDestructor { - fn clone(&self) -> Self { *self } - } - /** - * Utility class to provide scaling defined in a keySplines element. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsSMILKeySpline { - pub mX1: f64, - pub mY1: f64, - pub mX2: f64, - pub mY2: f64, - pub mSampleValues: [f64; 11usize], - } - pub const nsSMILKeySpline_kSplineTableSize: - root::nsSMILKeySpline__bindgen_ty_1 = - nsSMILKeySpline__bindgen_ty_1::kSplineTableSize; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsSMILKeySpline__bindgen_ty_1 { kSplineTableSize = 11, } - extern "C" { - #[link_name = "_ZN15nsSMILKeySpline15kSampleStepSizeE"] - pub static nsSMILKeySpline_kSampleStepSize: f64; - } - #[test] - fn bindgen_test_layout_nsSMILKeySpline() { - assert_eq!(::std::mem::size_of::() , 120usize , - concat ! ( "Size of: " , stringify ! ( nsSMILKeySpline ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsSMILKeySpline ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSMILKeySpline ) ) . mX1 as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , - "::" , stringify ! ( mX1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSMILKeySpline ) ) . mY1 as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , - "::" , stringify ! ( mY1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSMILKeySpline ) ) . mX2 as * const - _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , - "::" , stringify ! ( mX2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSMILKeySpline ) ) . mY2 as * const - _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , - "::" , stringify ! ( mY2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSMILKeySpline ) ) . mSampleValues - as * const _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , - "::" , stringify ! ( mSampleValues ) )); - } - impl Clone for nsSMILKeySpline { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - pub struct nsQueryFrame__bindgen_vtable { - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsQueryFrame { - pub vtable_: *const nsQueryFrame__bindgen_vtable, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsQueryFrame_FrameIID { - BRFrame_id = 0, - DetailsFrame_id = 1, - nsAutoRepeatBoxFrame_id = 2, - nsBCTableCellFrame_id = 3, - nsBackdropFrame_id = 4, - nsBlockFrame_id = 5, - nsBox_id = 6, - nsBoxFrame_id = 7, - nsBulletFrame_id = 8, - nsButtonBoxFrame_id = 9, - nsCanvasFrame_id = 10, - nsColorControlFrame_id = 11, - nsColumnSetFrame_id = 12, - nsComboboxControlFrame_id = 13, - nsComboboxDisplayFrame_id = 14, - nsContainerFrame_id = 15, - nsContinuingTextFrame_id = 16, - nsDateTimeControlFrame_id = 17, - nsDeckFrame_id = 18, - nsDocElementBoxFrame_id = 19, - nsFieldSetFrame_id = 20, - nsFileControlFrame_id = 21, - nsFirstLetterFrame_id = 22, - nsFirstLineFrame_id = 23, - nsFlexContainerFrame_id = 24, - nsFormControlFrame_id = 25, - nsFrame_id = 26, - nsGfxButtonControlFrame_id = 27, - nsGfxCheckboxControlFrame_id = 28, - nsGfxRadioControlFrame_id = 29, - nsGridContainerFrame_id = 30, - nsGridRowGroupFrame_id = 31, - nsGridRowLeafFrame_id = 32, - nsGroupBoxFrame_id = 33, - nsHTMLButtonControlFrame_id = 34, - nsHTMLCanvasFrame_id = 35, - nsHTMLFramesetBlankFrame_id = 36, - nsHTMLFramesetBorderFrame_id = 37, - nsHTMLFramesetFrame_id = 38, - nsHTMLScrollFrame_id = 39, - nsIAnonymousContentCreator_id = 40, - nsIComboboxControlFrame_id = 41, - nsIFormControlFrame_id = 42, - nsIFrame_id = 43, - nsIFrameFrame_id = 44, - nsIListControlFrame_id = 45, - nsIMathMLFrame_id = 46, - nsIMenuFrame_id = 47, - nsIObjectFrame_id = 48, - nsIPageSequenceFrame_id = 49, - nsIPercentBSizeObserver_id = 50, - nsIRootBox_id = 51, - nsSVGDisplayableFrame_id = 52, - nsISVGSVGFrame_id = 53, - nsIScrollableFrame_id = 54, - nsIScrollbarMediator_id = 55, - nsISelectControlFrame_id = 56, - nsIStatefulFrame_id = 57, - nsITableCellLayout_id = 58, - nsITableLayout_id = 59, - nsITextControlFrame_id = 60, - nsITreeBoxObject_id = 61, - nsImageBoxFrame_id = 62, - nsImageControlFrame_id = 63, - nsImageFrame_id = 64, - nsInlineFrame_id = 65, - nsLeafBoxFrame_id = 66, - nsLeafFrame_id = 67, - nsLegendFrame_id = 68, - nsListBoxBodyFrame_id = 69, - nsListControlFrame_id = 70, - nsListItemFrame_id = 71, - nsMathMLContainerFrame_id = 72, - nsMathMLFrame_id = 73, - nsMathMLmactionFrame_id = 74, - nsMathMLmathBlockFrame_id = 75, - nsMathMLmathInlineFrame_id = 76, - nsMathMLmencloseFrame_id = 77, - nsMathMLmfencedFrame_id = 78, - nsMathMLmfracFrame_id = 79, - nsMathMLmmultiscriptsFrame_id = 80, - nsMathMLmoFrame_id = 81, - nsMathMLmoverFrame_id = 82, - nsMathMLmpaddedFrame_id = 83, - nsMathMLmrootFrame_id = 84, - nsMathMLmrowFrame_id = 85, - nsMathMLmspaceFrame_id = 86, - nsMathMLmsqrtFrame_id = 87, - nsMathMLmstyleFrame_id = 88, - nsMathMLmtableFrame_id = 89, - nsMathMLmtableWrapperFrame_id = 90, - nsMathMLmtdFrame_id = 91, - nsMathMLmtdInnerFrame_id = 92, - nsMathMLmtrFrame_id = 93, - nsMathMLmunderFrame_id = 94, - nsMathMLmunderoverFrame_id = 95, - nsMathMLsemanticsFrame_id = 96, - nsMathMLTokenFrame_id = 97, - nsMenuBarFrame_id = 98, - nsMenuFrame_id = 99, - nsMenuPopupFrame_id = 100, - nsMeterFrame_id = 101, - nsNumberControlFrame_id = 102, - nsPluginFrame_id = 103, - nsPageBreakFrame_id = 104, - nsPageContentFrame_id = 105, - nsPageFrame_id = 106, - nsPlaceholderFrame_id = 107, - nsPopupSetFrame_id = 108, - nsProgressFrame_id = 109, - nsProgressMeterFrame_id = 110, - nsRangeFrame_id = 111, - nsResizerFrame_id = 112, - nsRootBoxFrame_id = 113, - nsRubyBaseContainerFrame_id = 114, - nsRubyBaseFrame_id = 115, - nsRubyContentFrame_id = 116, - nsRubyFrame_id = 117, - nsRubyTextContainerFrame_id = 118, - nsRubyTextFrame_id = 119, - nsScrollbarButtonFrame_id = 120, - nsScrollbarFrame_id = 121, - nsSelectsAreaFrame_id = 122, - nsSimplePageSequenceFrame_id = 123, - nsSliderFrame_id = 124, - nsSplittableFrame_id = 125, - nsSplitterFrame_id = 126, - nsStackFrame_id = 127, - nsSubDocumentFrame_id = 128, - nsSVGAFrame_id = 129, - nsSVGClipPathFrame_id = 130, - nsSVGContainerFrame_id = 131, - nsSVGDisplayContainerFrame_id = 132, - SVGFEContainerFrame_id = 133, - SVGFEImageFrame_id = 134, - SVGFELeafFrame_id = 135, - SVGFEUnstyledLeafFrame_id = 136, - nsSVGFilterFrame_id = 137, - nsSVGForeignObjectFrame_id = 138, - nsSVGGenericContainerFrame_id = 139, - nsSVGGFrame_id = 140, - nsSVGGradientFrame_id = 141, - nsSVGImageFrame_id = 142, - nsSVGInnerSVGFrame_id = 143, - nsSVGLinearGradientFrame_id = 144, - nsSVGMarkerFrame_id = 145, - nsSVGMarkerAnonChildFrame_id = 146, - nsSVGMaskFrame_id = 147, - nsSVGOuterSVGFrame_id = 148, - nsSVGOuterSVGAnonChildFrame_id = 149, - nsSVGPaintServerFrame_id = 150, - SVGGeometryFrame_id = 151, - nsSVGPatternFrame_id = 152, - nsSVGRadialGradientFrame_id = 153, - nsSVGStopFrame_id = 154, - nsSVGSwitchFrame_id = 155, - SVGTextFrame_id = 156, - nsSVGUseFrame_id = 157, - SVGViewFrame_id = 158, - nsTableCellFrame_id = 159, - nsTableColFrame_id = 160, - nsTableColGroupFrame_id = 161, - nsTableFrame_id = 162, - nsTableWrapperFrame_id = 163, - nsTableRowFrame_id = 164, - nsTableRowGroupFrame_id = 165, - nsTextBoxFrame_id = 166, - nsTextControlFrame_id = 167, - nsTextFrame_id = 168, - nsTitleBarFrame_id = 169, - nsTreeBodyFrame_id = 170, - nsTreeColFrame_id = 171, - nsVideoFrame_id = 172, - nsXULLabelFrame_id = 173, - nsXULScrollFrame_id = 174, - ViewportFrame_id = 175, - NON_FRAME_MARKER = 536870912, - } - #[test] - fn bindgen_test_layout_nsQueryFrame() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsQueryFrame ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsQueryFrame ) )); - } - impl Clone for nsQueryFrame { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsCSSTokenSerializationType { - eCSSTokenSerialization_Nothing = 0, - eCSSTokenSerialization_Whitespace = 1, - eCSSTokenSerialization_AtKeyword_or_Hash = 2, - eCSSTokenSerialization_Number = 3, - eCSSTokenSerialization_Dimension = 4, - eCSSTokenSerialization_Percentage = 5, - eCSSTokenSerialization_URange = 6, - eCSSTokenSerialization_URL_or_BadURL = 7, - eCSSTokenSerialization_Function = 8, - eCSSTokenSerialization_Ident = 9, - eCSSTokenSerialization_CDC = 10, - eCSSTokenSerialization_DashMatch = 11, - eCSSTokenSerialization_ContainsMatch = 12, - eCSSTokenSerialization_Symbol_Hash = 13, - eCSSTokenSerialization_Symbol_At = 14, - eCSSTokenSerialization_Symbol_Dot_or_Plus = 15, - eCSSTokenSerialization_Symbol_Minus = 16, - eCSSTokenSerialization_Symbol_OpenParen = 17, - eCSSTokenSerialization_Symbol_Question = 18, - eCSSTokenSerialization_Symbol_Assorted = 19, - eCSSTokenSerialization_Symbol_Equals = 20, - eCSSTokenSerialization_Symbol_Bar = 21, - eCSSTokenSerialization_Symbol_Slash = 22, - eCSSTokenSerialization_Symbol_Asterisk = 23, - eCSSTokenSerialization_Other = 24, - } - pub type nscolor = u32; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct gfxFontFeature { - pub mTag: u32, - pub mValue: u32, - } - #[test] - fn bindgen_test_layout_gfxFontFeature() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( gfxFontFeature ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat - ! ( "Alignment of " , stringify ! ( gfxFontFeature ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeature ) ) . mTag as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxFontFeature ) , - "::" , stringify ! ( mTag ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeature ) ) . mValue as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxFontFeature ) , - "::" , stringify ! ( mValue ) )); - } - impl Clone for gfxFontFeature { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct gfxAlternateValue { - pub alternate: u32, - pub value: ::nsstring::nsStringRepr, - } - #[test] - fn bindgen_test_layout_gfxAlternateValue() { - assert_eq!(::std::mem::size_of::() , 24usize , - concat ! ( "Size of: " , stringify ! ( gfxAlternateValue ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( gfxAlternateValue ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxAlternateValue ) ) . alternate as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxAlternateValue ) - , "::" , stringify ! ( alternate ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxAlternateValue ) ) . value as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxAlternateValue ) - , "::" , stringify ! ( value ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct gfxFontFeatureValueSet { - pub mRefCnt: root::nsAutoRefCnt, - pub _mOwningThread: root::nsAutoOwningThread, - pub mFontFeatureValues: [u64; 6usize], - } - pub type gfxFontFeatureValueSet_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug)] - pub struct gfxFontFeatureValueSet_ValueList { - pub name: ::nsstring::nsStringRepr, - pub featureSelectors: root::nsTArray<::std::os::raw::c_uint>, - } - #[test] - fn bindgen_test_layout_gfxFontFeatureValueSet_ValueList() { - assert_eq!(::std::mem::size_of::() , - 24usize , concat ! ( - "Size of: " , stringify ! ( - gfxFontFeatureValueSet_ValueList ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - gfxFontFeatureValueSet_ValueList ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeatureValueSet_ValueList ) ) - . name as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_ValueList ) , "::" , stringify ! ( - name ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeatureValueSet_ValueList ) ) - . featureSelectors as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_ValueList ) , "::" , stringify ! ( - featureSelectors ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct gfxFontFeatureValueSet_FeatureValues { - pub alternate: u32, - pub valuelist: root::nsTArray, - } - #[test] - fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValues() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValues ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - gfxFontFeatureValueSet_FeatureValues ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const gfxFontFeatureValueSet_FeatureValues ) ) - . alternate as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValues ) , "::" , stringify - ! ( alternate ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const gfxFontFeatureValueSet_FeatureValues ) ) - . valuelist as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValues ) , "::" , stringify - ! ( valuelist ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct gfxFontFeatureValueSet_FeatureValueHashKey { - pub mFamily: ::nsstring::nsStringRepr, - pub mPropVal: u32, - pub mName: ::nsstring::nsStringRepr, - } - #[test] - fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValueHashKey() { - assert_eq!(::std::mem::size_of::() - , 40usize , concat ! ( - "Size of: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashKey ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashKey ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) - ) . mFamily as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , - stringify ! ( mFamily ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) - ) . mPropVal as * const _ as usize } , 16usize , concat ! - ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , - stringify ! ( mPropVal ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) - ) . mName as * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , - stringify ! ( mName ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct gfxFontFeatureValueSet_FeatureValueHashEntry { - pub _base: root::PLDHashEntryHdr, - pub mKey: root::gfxFontFeatureValueSet_FeatureValueHashKey, - pub mValues: root::nsTArray<::std::os::raw::c_uint>, - } - pub type gfxFontFeatureValueSet_FeatureValueHashEntry_KeyType = - *const root::gfxFontFeatureValueSet_FeatureValueHashKey; - pub type gfxFontFeatureValueSet_FeatureValueHashEntry_KeyTypePointer = - *const root::gfxFontFeatureValueSet_FeatureValueHashKey; - pub const gfxFontFeatureValueSet_FeatureValueHashEntry_ALLOW_MEMMOVE: - root::gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1 - = - gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1::ALLOW_MEMMOVE; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1 { - ALLOW_MEMMOVE = 1, - } - #[test] - fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValueHashEntry() { - assert_eq!(::std::mem::size_of::() - , 56usize , concat ! ( - "Size of: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashEntry ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashEntry ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const gfxFontFeatureValueSet_FeatureValueHashEntry - ) ) . mKey as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashEntry ) , "::" , - stringify ! ( mKey ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const gfxFontFeatureValueSet_FeatureValueHashEntry - ) ) . mValues as * const _ as usize } , 48usize , concat ! - ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashEntry ) , "::" , - stringify ! ( mValues ) )); - } - #[test] - fn bindgen_test_layout_gfxFontFeatureValueSet() { - assert_eq!(::std::mem::size_of::() , 64usize , - concat ! ( - "Size of: " , stringify ! ( gfxFontFeatureValueSet ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( gfxFontFeatureValueSet ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeatureValueSet ) ) . mRefCnt - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet ) , "::" , stringify ! ( mRefCnt ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeatureValueSet ) ) . - _mOwningThread as * const _ as usize } , 8usize , concat ! - ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet ) , "::" , stringify ! ( - _mOwningThread ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeatureValueSet ) ) . - mFontFeatureValues as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet ) , "::" , stringify ! ( - mFontFeatureValues ) )); - } - pub type gfxFontVariation = root::mozilla::gfx::FontVariation; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct gfxFontStyle([u8; 0]); - pub const kGenericFont_NONE: u8 = 0; - pub const kGenericFont_moz_variable: u8 = 0; - pub const kGenericFont_moz_fixed: u8 = 1; - pub const kGenericFont_serif: u8 = 2; - pub const kGenericFont_sans_serif: u8 = 4; - pub const kGenericFont_monospace: u8 = 8; - pub const kGenericFont_cursive: u8 = 16; - pub const kGenericFont_fantasy: u8 = 32; - #[repr(C)] - #[derive(Debug)] - pub struct nsFont { - pub fontlist: root::mozilla::FontFamilyList, - pub style: u8, - pub systemFont: bool, - pub variantCaps: u8, - pub variantNumeric: u8, - pub variantPosition: u8, - pub variantWidth: u8, - pub variantLigatures: u16, - pub variantEastAsian: u16, - pub variantAlternates: u16, - pub smoothing: u8, - pub weight: u16, - pub stretch: i16, - pub kerning: u8, - pub synthesis: u8, - pub size: root::nscoord, - pub sizeAdjust: f32, - pub alternateValues: root::nsTArray, - pub featureValueLookup: root::RefPtr, - pub fontFeatureSettings: root::nsTArray, - pub fontVariationSettings: root::nsTArray, - pub languageOverride: u32, - } - #[test] - fn bindgen_test_layout_nsFont() { - assert_eq!(::std::mem::size_of::() , 88usize , concat ! ( - "Size of: " , stringify ! ( nsFont ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . fontlist as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( fontlist ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . style as * const _ as - usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( style ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . systemFont as * const _ - as usize } , 17usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( systemFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantCaps as * const _ - as usize } , 18usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantCaps ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantNumeric as * - const _ as usize } , 19usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantNumeric ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantPosition as * - const _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantPosition ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantWidth as * const - _ as usize } , 21usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantWidth ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantLigatures as * - const _ as usize } , 22usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantLigatures ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantEastAsian as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantEastAsian ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantAlternates as * - const _ as usize } , 26usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantAlternates ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . smoothing as * const _ - as usize } , 28usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( smoothing ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . weight as * const _ as - usize } , 30usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( weight ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . stretch as * const _ as - usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( stretch ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . kerning as * const _ as - usize } , 34usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( kerning ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . synthesis as * const _ - as usize } , 35usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( synthesis ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . size as * const _ as - usize } , 36usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( size ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . sizeAdjust as * const _ - as usize } , 40usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( sizeAdjust ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . alternateValues as * - const _ as usize } , 48usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( alternateValues ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . featureValueLookup as * - const _ as usize } , 56usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( featureValueLookup ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . fontFeatureSettings as * - const _ as usize } , 64usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( fontFeatureSettings ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . fontVariationSettings as - * const _ as usize } , 72usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( fontVariationSettings ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . languageOverride as * - const _ as usize } , 80usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( languageOverride ) )); - } - /** - * An array of objects, similar to AutoTArray but which is memmovable. It - * always has length >= 1. - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsStyleAutoArray { - pub mFirstElement: T, - pub mOtherElements: root::nsTArray, - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsStyleAutoArray_WithSingleInitialElement { - WITH_SINGLE_INITIAL_ELEMENT = 0, - } - pub const nsStyleUnit_eStyleUnit_MAX: root::nsStyleUnit = - nsStyleUnit::eStyleUnit_Calc; - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - 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(Debug, Copy)] - pub struct nsStyleUnion { - pub mInt: root::__BindgenUnionField, - pub mFloat: root::__BindgenUnionField, - pub mPointer: root::__BindgenUnionField<*mut ::std::os::raw::c_void>, - pub bindgen_union_field: u64, - } - #[test] - fn bindgen_test_layout_nsStyleUnion() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsStyleUnion ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsStyleUnion ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleUnion ) ) . mInt as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleUnion ) , - "::" , stringify ! ( mInt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleUnion ) ) . mFloat as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleUnion ) , - "::" , stringify ! ( mFloat ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleUnion ) ) . mPointer as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleUnion ) , - "::" , stringify ! ( mPointer ) )); - } - impl Clone for nsStyleUnion { - fn clone(&self) -> Self { *self } - } - /** - * 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)] - #[derive(Debug)] - pub struct nsStyleCoord { - mUnit: root::nsStyleUnit, - mValue: root::nsStyleUnion, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsStyleCoord_CalcValue { - pub mLength: root::nscoord, - pub mPercent: f32, - pub mHasPercent: bool, - } - #[test] - fn bindgen_test_layout_nsStyleCoord_CalcValue() { - assert_eq!(::std::mem::size_of::() , 12usize , - concat ! ( - "Size of: " , stringify ! ( nsStyleCoord_CalcValue ) )); - assert_eq! (::std::mem::align_of::() , 4usize - , concat ! ( - "Alignment of " , stringify ! ( nsStyleCoord_CalcValue ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . mLength - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsStyleCoord_CalcValue ) , "::" , stringify ! ( mLength ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . mPercent - as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsStyleCoord_CalcValue ) , "::" , stringify ! ( mPercent ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . - mHasPercent as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsStyleCoord_CalcValue ) , "::" , stringify ! ( - mHasPercent ) )); - } - impl Clone for nsStyleCoord_CalcValue { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct nsStyleCoord_Calc { - pub _base: root::nsStyleCoord_CalcValue, - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - } - pub type nsStyleCoord_Calc_HasThreadSafeRefCnt = root::mozilla::TrueType; - #[test] - fn bindgen_test_layout_nsStyleCoord_Calc() { - assert_eq!(::std::mem::size_of::() , 24usize , - concat ! ( "Size of: " , stringify ! ( nsStyleCoord_Calc ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsStyleCoord_Calc ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord_Calc ) ) . mRefCnt as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleCoord_Calc ) - , "::" , stringify ! ( mRefCnt ) )); - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsStyleCoord_CoordConstructorType { CoordConstructor = 0, } - #[test] - fn bindgen_test_layout_nsStyleCoord() { - assert_eq!(::std::mem::size_of::() , 16usize , concat ! - ( "Size of: " , stringify ! ( nsStyleCoord ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsStyleCoord ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord ) ) . mUnit as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleCoord ) , - "::" , stringify ! ( mUnit ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord ) ) . mValue as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleCoord ) , - "::" , stringify ! ( mValue ) )); - } - impl nsStyleCoord { - #[inline] - pub unsafe fn get_mUnit(&self) -> &root::nsStyleUnit { &self.mUnit } - #[inline] - pub unsafe fn get_mUnit_mut(&mut self) -> &mut root::nsStyleUnit { - &mut self.mUnit - } - #[inline] - pub unsafe fn get_mValue(&self) -> &root::nsStyleUnion { - &self.mValue - } - #[inline] - pub unsafe fn get_mValue_mut(&mut self) -> &mut root::nsStyleUnion { - &mut self.mValue - } - } - /** - * 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)] - #[derive(Debug)] - pub struct nsStyleSides { - mUnits: [root::nsStyleUnit; 4usize], - mValues: [root::nsStyleUnion; 4usize], - } - #[test] - fn bindgen_test_layout_nsStyleSides() { - assert_eq!(::std::mem::size_of::() , 40usize , concat ! - ( "Size of: " , stringify ! ( nsStyleSides ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsStyleSides ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleSides ) ) . mUnits as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleSides ) , - "::" , stringify ! ( mUnits ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleSides ) ) . mValues as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleSides ) , - "::" , stringify ! ( mValues ) )); - } - impl nsStyleSides { - #[inline] - pub unsafe fn get_mUnits(&self) -> &[root::nsStyleUnit; 4usize] { - &self.mUnits - } - #[inline] - pub unsafe fn get_mUnits_mut(&mut self) - -> &mut [root::nsStyleUnit; 4usize] { - &mut self.mUnits - } - #[inline] - pub unsafe fn get_mValues(&self) -> &[root::nsStyleUnion; 4usize] { - &self.mValues - } - #[inline] - pub unsafe fn get_mValues_mut(&mut self) - -> &mut [root::nsStyleUnion; 4usize] { - &mut self.mValues - } - } - /** - * Class that represents a set of top-left/top-right/bottom-right/bottom-left - * 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)] - #[derive(Debug)] - pub struct nsStyleCorners { - mUnits: [root::nsStyleUnit; 8usize], - mValues: [root::nsStyleUnion; 8usize], - } - #[test] - fn bindgen_test_layout_nsStyleCorners() { - assert_eq!(::std::mem::size_of::() , 72usize , concat - ! ( "Size of: " , stringify ! ( nsStyleCorners ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsStyleCorners ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCorners ) ) . mUnits as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleCorners ) , - "::" , stringify ! ( mUnits ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCorners ) ) . mValues as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleCorners ) , - "::" , stringify ! ( mValues ) )); - } - impl nsStyleCorners { - #[inline] - pub unsafe fn get_mUnits(&self) -> &[root::nsStyleUnit; 8usize] { - &self.mUnits - } - #[inline] - pub unsafe fn get_mUnits_mut(&mut self) - -> &mut [root::nsStyleUnit; 8usize] { - &mut self.mUnits - } - #[inline] - pub unsafe fn get_mValues(&self) -> &[root::nsStyleUnion; 8usize] { - &self.mValues - } - #[inline] - pub unsafe fn get_mValues_mut(&mut self) - -> &mut [root::nsStyleUnion; 8usize] { - &mut self.mValues - } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsCSSSelector([u8; 0]); - pub const nsChangeHint_nsChangeHint_Empty: root::nsChangeHint = - nsChangeHint(0); - pub const nsChangeHint_nsChangeHint_RepaintFrame: root::nsChangeHint = - nsChangeHint(1); - pub const nsChangeHint_nsChangeHint_NeedReflow: root::nsChangeHint = - nsChangeHint(2); - pub const nsChangeHint_nsChangeHint_ClearAncestorIntrinsics: - root::nsChangeHint = - nsChangeHint(4); - pub const nsChangeHint_nsChangeHint_ClearDescendantIntrinsics: - root::nsChangeHint = - nsChangeHint(8); - pub const nsChangeHint_nsChangeHint_NeedDirtyReflow: root::nsChangeHint = - nsChangeHint(16); - pub const nsChangeHint_nsChangeHint_SyncFrameView: root::nsChangeHint = - nsChangeHint(32); - pub const nsChangeHint_nsChangeHint_UpdateCursor: root::nsChangeHint = - nsChangeHint(64); - pub const nsChangeHint_nsChangeHint_UpdateEffects: root::nsChangeHint = - nsChangeHint(128); - pub const nsChangeHint_nsChangeHint_UpdateOpacityLayer: root::nsChangeHint - = - nsChangeHint(256); - pub const nsChangeHint_nsChangeHint_UpdateTransformLayer: - root::nsChangeHint = - nsChangeHint(512); - pub const nsChangeHint_nsChangeHint_ReconstructFrame: root::nsChangeHint = - nsChangeHint(1024); - pub const nsChangeHint_nsChangeHint_UpdateOverflow: root::nsChangeHint = - nsChangeHint(2048); - pub const nsChangeHint_nsChangeHint_UpdateSubtreeOverflow: - root::nsChangeHint = - nsChangeHint(4096); - pub const nsChangeHint_nsChangeHint_UpdatePostTransformOverflow: - root::nsChangeHint = - nsChangeHint(8192); - pub const nsChangeHint_nsChangeHint_UpdateParentOverflow: - root::nsChangeHint = - nsChangeHint(16384); - pub const nsChangeHint_nsChangeHint_ChildrenOnlyTransform: - root::nsChangeHint = - nsChangeHint(32768); - pub const nsChangeHint_nsChangeHint_RecomputePosition: root::nsChangeHint - = - nsChangeHint(65536); - pub const nsChangeHint_nsChangeHint_UpdateContainingBlock: - root::nsChangeHint = - nsChangeHint(131072); - pub const nsChangeHint_nsChangeHint_BorderStyleNoneChange: - root::nsChangeHint = - nsChangeHint(262144); - pub const nsChangeHint_nsChangeHint_UpdateTextPath: root::nsChangeHint = - nsChangeHint(524288); - pub const nsChangeHint_nsChangeHint_SchedulePaint: root::nsChangeHint = - nsChangeHint(1048576); - pub const nsChangeHint_nsChangeHint_NeutralChange: root::nsChangeHint = - nsChangeHint(2097152); - pub const nsChangeHint_nsChangeHint_InvalidateRenderingObservers: - root::nsChangeHint = - nsChangeHint(4194304); - pub const nsChangeHint_nsChangeHint_ReflowChangesSizeOrPosition: - root::nsChangeHint = - nsChangeHint(8388608); - pub const nsChangeHint_nsChangeHint_UpdateComputedBSize: - root::nsChangeHint = - nsChangeHint(16777216); - pub const nsChangeHint_nsChangeHint_UpdateUsesOpacity: root::nsChangeHint - = - nsChangeHint(33554432); - pub const nsChangeHint_nsChangeHint_UpdateBackgroundPosition: - root::nsChangeHint = - nsChangeHint(67108864); - pub const nsChangeHint_nsChangeHint_AddOrRemoveTransform: - root::nsChangeHint = - nsChangeHint(134217728); - pub const nsChangeHint_nsChangeHint_AllHints: root::nsChangeHint = - nsChangeHint(268435455); - impl ::std::ops::BitOr for root::nsChangeHint { - type - Output - = - Self; - #[inline] - fn bitor(self, other: Self) -> Self { nsChangeHint(self.0 | other.0) } - } - #[repr(C)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub struct nsChangeHint(pub u32); - pub const nsRestyleHint_eRestyle_Self: root::nsRestyleHint = - nsRestyleHint(1); - pub const nsRestyleHint_eRestyle_SomeDescendants: root::nsRestyleHint = - nsRestyleHint(2); - pub const nsRestyleHint_eRestyle_Subtree: root::nsRestyleHint = - nsRestyleHint(4); - pub const nsRestyleHint_eRestyle_LaterSiblings: root::nsRestyleHint = - nsRestyleHint(8); - pub const nsRestyleHint_eRestyle_CSSTransitions: root::nsRestyleHint = - nsRestyleHint(16); - pub const nsRestyleHint_eRestyle_CSSAnimations: root::nsRestyleHint = - nsRestyleHint(32); - pub const nsRestyleHint_eRestyle_StyleAttribute: root::nsRestyleHint = - nsRestyleHint(64); - pub const nsRestyleHint_eRestyle_StyleAttribute_Animations: - root::nsRestyleHint = - nsRestyleHint(128); - pub const nsRestyleHint_eRestyle_Force: root::nsRestyleHint = - nsRestyleHint(256); - pub const nsRestyleHint_eRestyle_ForceDescendants: root::nsRestyleHint = - nsRestyleHint(512); - pub const nsRestyleHint_eRestyle_AllHintsWithAnimations: - root::nsRestyleHint = - nsRestyleHint(176); - impl ::std::ops::BitOr for root::nsRestyleHint { - type - Output - = - Self; - #[inline] - fn bitor(self, other: Self) -> Self { - nsRestyleHint(self.0 | other.0) - } - } - #[repr(C)] - /** - * |nsRestyleHint| is a bitfield for the result of - * |HasStateDependentStyle| and |HasAttributeDependentStyle|. When no - * restyling is necessary, use |nsRestyleHint(0)|. - * - * Without eRestyle_Force or eRestyle_ForceDescendants, the restyling process - * can stop processing at a frame when it detects no style changes and it is - * known that the styles of the subtree beneath it will not change, leaving - * the old style context on the frame. eRestyle_Force can be used to skip this - * optimization on a frame, and to force its new style context to be used. - * - * Similarly, eRestyle_ForceDescendants will cause the frame and all of its - * descendants to be traversed and for the new style contexts that are created - * to be set on the frames. - * - * NOTE: When adding new restyle hints, please also add them to - * RestyleManager::RestyleHintToString. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub struct nsRestyleHint(pub u32); - #[repr(C)] - #[derive(Debug)] - pub struct nsFontFaceRuleContainer { - pub mRule: root::RefPtr, - pub mSheetType: root::mozilla::SheetType, - } - #[test] - fn bindgen_test_layout_nsFontFaceRuleContainer() { - assert_eq!(::std::mem::size_of::() , 16usize - , concat ! ( - "Size of: " , stringify ! ( nsFontFaceRuleContainer ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( nsFontFaceRuleContainer ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFontFaceRuleContainer ) ) . mRule - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsFontFaceRuleContainer ) , "::" , stringify ! ( mRule ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFontFaceRuleContainer ) ) . - mSheetType as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsFontFaceRuleContainer ) , "::" , stringify ! ( - mSheetType ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsStyleContext([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct nsAttrName { - pub mBits: usize, - } - #[test] - fn bindgen_test_layout_nsAttrName() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsAttrName ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsAttrName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsAttrName ) ) . mBits as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsAttrName ) , "::" - , stringify ! ( mBits ) )); - } - #[repr(u32)] - /** - * This is the enum used by functions that need to be told whether to - * do case-sensitive or case-insensitive string comparisons. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsCaseTreatment { eCaseMatters = 0, eIgnoreCase = 1, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsRuleWalker([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsTextFragment([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsXBLBinding([u8; 0]); - #[repr(C)] #[derive(Debug, Copy)] pub struct nsISelectionDisplay { pub _base: root::nsISupports, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsISelectionDisplay_COMTypeInfo { + pub struct nsISelectionDisplay_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsISelectionDisplay_DISPLAY_TEXT: root::nsISelectionDisplay__bindgen_ty_1 = @@ -18475,16 +20432,19 @@ pub mod root { fn clone(&self) -> Self { *self } } #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsISelection { + _unused: [u8; 0], + } + #[repr(C)] #[derive(Debug, Copy)] pub struct nsISelectionController { pub _base: root::nsISelectionDisplay, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsISelectionController_COMTypeInfo { + pub struct nsISelectionController_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsISelectionController_SELECTION_NONE: root::nsISelectionController__bindgen_ty_1 = @@ -18624,7 +20584,6 @@ pub mod root { fn clone(&self) -> Self { *self } } #[repr(C)] - #[derive(Debug)] pub struct nsFrameManagerBase { pub mPresShell: *mut root::nsIPresShell, pub mRootFrame: *mut root::nsIFrame, @@ -18635,7 +20594,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsFrameManagerBase_UndisplayedMap([u8; 0]); + pub struct nsFrameManagerBase_UndisplayedMap { + _unused: [u8; 0], + } #[test] fn bindgen_test_layout_nsFrameManagerBase() { assert_eq!(::std::mem::size_of::() , 88usize , @@ -18680,7 +20641,43 @@ pub mod root { ) , "::" , stringify ! ( mIsDestroyingFrames ) )); } #[repr(C)] - #[derive(Debug)] + #[derive(Debug, Copy)] + pub struct nsIWeakReference { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIWeakReference_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIWeakReference() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsIWeakReference ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIWeakReference ) )); + } + impl Clone for nsIWeakReference { + fn clone(&self) -> Self { *self } + } + pub type nsWeakPtr = root::nsCOMPtr; + /** + * templated hashtable class maps keys to reference pointers. + * See nsBaseHashtable for complete declaration. + * @param KeyClass a wrapper-class for the hashtable key, see nsHashKeys.h + * for a complete specification. + * @param PtrType the reference-type being wrapped + * @see nsDataHashtable, nsClassHashtable + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsRefPtrHashtable { + } + pub type nsRefPtrHashtable_KeyType = [u8; 0usize]; + pub type nsRefPtrHashtable_UserDataType = *mut PtrType; + pub type nsRefPtrHashtable_base_type = root::nsBaseHashtable; + #[repr(C)] pub struct nsPresArena { pub mFreeLists: [u64; 6usize], pub mPool: [u64; 4usize], @@ -18761,7 +20758,92 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsArenaMemoryStats([u8; 0]); + pub struct nsArenaMemoryStats { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct imgIRequest { + pub _base: root::nsIRequest, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct imgIRequest_COMTypeInfo { + pub _address: u8, + } + pub const imgIRequest_STATUS_NONE: root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_NONE; + pub const imgIRequest_STATUS_SIZE_AVAILABLE: + root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_SIZE_AVAILABLE; + pub const imgIRequest_STATUS_LOAD_COMPLETE: + root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_LOAD_COMPLETE; + pub const imgIRequest_STATUS_ERROR: root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_ERROR; + pub const imgIRequest_STATUS_FRAME_COMPLETE: + root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_FRAME_COMPLETE; + pub const imgIRequest_STATUS_DECODE_COMPLETE: + root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_DECODE_COMPLETE; + pub const imgIRequest_STATUS_IS_ANIMATED: root::imgIRequest__bindgen_ty_1 + = + imgIRequest__bindgen_ty_1::STATUS_IS_ANIMATED; + pub const imgIRequest_STATUS_HAS_TRANSPARENCY: + root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_HAS_TRANSPARENCY; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum imgIRequest__bindgen_ty_1 { + STATUS_NONE = 0, + STATUS_SIZE_AVAILABLE = 1, + STATUS_LOAD_COMPLETE = 2, + STATUS_ERROR = 4, + STATUS_FRAME_COMPLETE = 8, + STATUS_DECODE_COMPLETE = 16, + STATUS_IS_ANIMATED = 32, + STATUS_HAS_TRANSPARENCY = 64, + } + pub const imgIRequest_CORS_NONE: root::imgIRequest__bindgen_ty_2 = + imgIRequest__bindgen_ty_2::CORS_NONE; + pub const imgIRequest_CORS_ANONYMOUS: root::imgIRequest__bindgen_ty_2 = + imgIRequest__bindgen_ty_2::CORS_ANONYMOUS; + pub const imgIRequest_CORS_USE_CREDENTIALS: + root::imgIRequest__bindgen_ty_2 = + imgIRequest__bindgen_ty_2::CORS_USE_CREDENTIALS; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum imgIRequest__bindgen_ty_2 { + CORS_NONE = 1, + 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::() , 8usize , concat ! ( + "Size of: " , stringify ! ( imgIRequest ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( imgIRequest ) )); + } + impl Clone for imgIRequest { + fn clone(&self) -> Self { *self } + } #[repr(C)] #[derive(Debug, Copy)] pub struct imgINotificationObserver { @@ -18769,10 +20851,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct imgINotificationObserver_COMTypeInfo { + pub struct imgINotificationObserver_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const imgINotificationObserver_SIZE_AVAILABLE: root::imgINotificationObserver__bindgen_ty_1 = @@ -19066,35 +21146,170 @@ pub mod root { TEXT_IN_OFFSET_CACHE = 9223372036854775808, } #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsView([u8; 0]); + #[derive(Debug, Copy)] + pub struct pixman_region32_data { + pub size: ::std::os::raw::c_long, + pub numRects: ::std::os::raw::c_long, + } + #[test] + fn bindgen_test_layout_pixman_region32_data() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( + "Size of: " , stringify ! ( pixman_region32_data ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( pixman_region32_data ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_region32_data ) ) . size as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + pixman_region32_data ) , "::" , stringify ! ( size ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_region32_data ) ) . numRects + as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + pixman_region32_data ) , "::" , stringify ! ( numRects ) + )); + } + impl Clone for pixman_region32_data { + fn clone(&self) -> Self { *self } + } + pub type pixman_region32_data_t = root::pixman_region32_data; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct pixman_box32 { + pub x1: i32, + pub y1: i32, + pub x2: i32, + pub y2: i32, + } + #[test] + fn bindgen_test_layout_pixman_box32() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! + ( "Size of: " , stringify ! ( pixman_box32 ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat ! + ( "Alignment of " , stringify ! ( pixman_box32 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_box32 ) ) . x1 as * const _ as + usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_box32 ) , + "::" , stringify ! ( x1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_box32 ) ) . y1 as * const _ as + usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_box32 ) , + "::" , stringify ! ( y1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_box32 ) ) . x2 as * const _ as + usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_box32 ) , + "::" , stringify ! ( x2 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_box32 ) ) . y2 as * const _ as + usize } , 12usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_box32 ) , + "::" , stringify ! ( y2 ) )); + } + impl Clone for pixman_box32 { + fn clone(&self) -> Self { *self } + } + pub type pixman_box32_t = root::pixman_box32; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct pixman_region32 { + pub extents: root::pixman_box32_t, + pub data: *mut root::pixman_region32_data_t, + } + #[test] + fn bindgen_test_layout_pixman_region32() { + assert_eq!(::std::mem::size_of::() , 24usize , concat + ! ( "Size of: " , stringify ! ( pixman_region32 ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( pixman_region32 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_region32 ) ) . extents as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_region32 ) , + "::" , stringify ! ( extents ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_region32 ) ) . data as * const + _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_region32 ) , + "::" , stringify ! ( data ) )); + } + impl Clone for pixman_region32 { + fn clone(&self) -> Self { *self } + } + pub type pixman_region32_t = root::pixman_region32; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum VisitSide { TOP = 0, BOTTOM = 1, LEFT = 2, RIGHT = 3, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsRenderingContext([u8; 0]); + pub struct nsDocShell { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIPageSequenceFrame([u8; 0]); + pub struct nsViewManager { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsCanvasFrame([u8; 0]); + pub struct nsView { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsCaret([u8; 0]); + pub struct nsRenderingContext { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsFrameSelection([u8; 0]); + pub struct nsIPageSequenceFrame { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIReflowCallback([u8; 0]); + pub struct nsCanvasFrame { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsCSSFrameConstructor([u8; 0]); + pub struct nsCaret { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AutoWeakFrame([u8; 0]); + pub struct nsFrameSelection { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct WeakFrame([u8; 0]); + pub struct nsILayoutHistoryState { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIReflowCallback { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsCSSFrameConstructor { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AutoWeakFrame { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WeakFrame { + _unused: [u8; 0], + } /** * Interface for frames that are scrollable. This interface exposes * APIs for examining scroll state, observing changes to scroll state, @@ -19204,25 +21419,84 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct gfxContext([u8; 0]); + pub struct gfxContext { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDisplayList([u8; 0]); + pub struct nsDisplayList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDisplayListBuilder([u8; 0]); + pub struct nsDisplayListBuilder { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsRefreshDriver([u8; 0]); + pub struct nsRefreshDriver { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsARefreshObserver([u8; 0]); + pub struct nsARefreshObserver { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsAPostRefreshObserver([u8; 0]); + pub struct nsAPostRefreshObserver { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsAccessibilityService([u8; 0]); + pub struct nsAccessibilityService { + _unused: [u8; 0], + } + /** + * The signature of the timer callback function passed to initWithFuncCallback. + * This is the function that will get called when the timer expires if the + * timer is initialized via initWithFuncCallback. + * + * @param aTimer the timer which has expired + * @param aClosure opaque parameter passed to initWithFuncCallback + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsITimer { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsITimer_COMTypeInfo { + pub _address: u8, + } + pub const nsITimer_TYPE_ONE_SHOT: root::nsITimer__bindgen_ty_1 = + nsITimer__bindgen_ty_1::TYPE_ONE_SHOT; + pub const nsITimer_TYPE_REPEATING_SLACK: root::nsITimer__bindgen_ty_1 = + nsITimer__bindgen_ty_1::TYPE_REPEATING_SLACK; + pub const nsITimer_TYPE_REPEATING_PRECISE: root::nsITimer__bindgen_ty_1 = + nsITimer__bindgen_ty_1::TYPE_REPEATING_PRECISE; + pub const nsITimer_TYPE_REPEATING_PRECISE_CAN_SKIP: + root::nsITimer__bindgen_ty_1 = + nsITimer__bindgen_ty_1::TYPE_REPEATING_PRECISE_CAN_SKIP; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsITimer__bindgen_ty_1 { + TYPE_ONE_SHOT = 0, + TYPE_REPEATING_SLACK = 1, + TYPE_REPEATING_PRECISE = 2, + TYPE_REPEATING_PRECISE_CAN_SKIP = 3, + } + #[test] + fn bindgen_test_layout_nsITimer() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsITimer ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsITimer ) )); + } + impl Clone for nsITimer { + fn clone(&self) -> Self { *self } + } #[repr(C)] #[derive(Debug)] pub struct CapturingContentInfo { @@ -19282,8 +21556,113 @@ pub mod root { nsRectVisibility_kRightOfViewport = 4, } #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIObserver { + pub _base: root::nsISupports, + } + #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIWidget([u8; 0]); + pub struct nsIObserver_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIObserver() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIObserver ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsIObserver ) )); + } + impl Clone for nsIObserver { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIEventTarget { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIEventTarget_COMTypeInfo { + pub _address: u8, + } + pub const nsIEventTarget_DISPATCH_NORMAL: + root::nsIEventTarget__bindgen_ty_1 = + nsIEventTarget__bindgen_ty_1::DISPATCH_NORMAL; + pub const nsIEventTarget_DISPATCH_SYNC: root::nsIEventTarget__bindgen_ty_1 + = + nsIEventTarget__bindgen_ty_1::DISPATCH_SYNC; + pub const nsIEventTarget_DISPATCH_AT_END: + root::nsIEventTarget__bindgen_ty_1 = + nsIEventTarget__bindgen_ty_1::DISPATCH_AT_END; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIEventTarget__bindgen_ty_1 { + DISPATCH_NORMAL = 0, + DISPATCH_SYNC = 1, + DISPATCH_AT_END = 2, + } + #[test] + fn bindgen_test_layout_nsIEventTarget() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsIEventTarget ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsIEventTarget ) )); + } + impl Clone for nsIEventTarget { + fn clone(&self) -> Self { *self } + } + pub type nsTimerCallbackFunc = + ::std::option::Option; + /** + * The signature of the timer name callback function passed to + * initWithNameableFuncCallback. + * This is the function that will get called when timer profiling is enabled + * via the "TimerFirings" log module. + * + * @param aTimer the timer which has expired + * @param aAnonymize whether the name should avoid including privacy sensitive info + * @param aClosure opaque parameter passed to initWithFuncCallback + * @param aBuf a buffer in which to put the name + * @param aLen the length of the buffer + */ + pub type nsTimerNameCallbackFunc = + ::std::option::Option; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsITimerCallback { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsITimerCallback_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsITimerCallback() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsITimerCallback ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsITimerCallback ) )); + } + impl Clone for nsITimerCallback { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIWidget { + _unused: [u8; 0], + } #[repr(u32)] /** * sizemode is an adjunct to widget size @@ -19297,6 +21676,796 @@ pub mod root { nsSizeMode_Invalid = 4, } #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsINamed { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsINamed_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsINamed() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsINamed ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsINamed ) )); + } + impl Clone for nsINamed { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIRunnable { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIRunnable_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIRunnable() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIRunnable ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsIRunnable ) )); + } + impl Clone for nsIRunnable { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsRevocableEventPtr { + pub mEvent: root::RefPtr, + } + #[repr(C)] + #[derive(Debug)] + pub struct nsPIDOMWindowInner { + pub _base: [u64; 29usize], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsPIDOMWindowInner_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsPIDOMWindowInner() { + assert_eq!(::std::mem::size_of::() , 232usize , + concat ! ( "Size of: " , stringify ! ( nsPIDOMWindowInner ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsPIDOMWindowInner ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsGlobalWindow { + _unused: [u8; 0], + } + /** + * The global object which keeps a script context for each supported script + * language. This often used to store per-window global state. + * This is a heavyweight interface implemented only by DOM globals, and + * it might go away some time in the future. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsIScriptGlobalObject { + pub _base: root::nsIGlobalObject, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIScriptGlobalObject_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIScriptGlobalObject() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( + "Size of: " , stringify ! ( nsIScriptGlobalObject ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIScriptGlobalObject ) + )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsISimpleEnumerator { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIControllers { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct mozIDOMWindow { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct mozIDOMWindow_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_mozIDOMWindow() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( mozIDOMWindow ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( mozIDOMWindow ) )); + } + impl Clone for mozIDOMWindow { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct mozIDOMWindowProxy { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct mozIDOMWindowProxy_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_mozIDOMWindowProxy() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( "Size of: " , stringify ! ( mozIDOMWindowProxy ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( mozIDOMWindowProxy ) )); + } + impl Clone for mozIDOMWindowProxy { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsICSSDeclaration { + pub _base: root::nsIDOMCSSStyleDeclaration, + pub _base_1: root::nsWrapperCache, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsICSSDeclaration_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsICSSDeclaration() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( "Size of: " , stringify ! ( nsICSSDeclaration ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsICSSDeclaration ) )); + } + pub type SuspendTypes = u32; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum UIStateChangeType { + UIStateChangeType_NoChange = 0, + UIStateChangeType_Set = 1, + UIStateChangeType_Clear = 2, + UIStateChangeType_Invalid = 3, + } + #[repr(C)] + pub struct nsPIDOMWindow__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsPIDOMWindow { + } + pub type nsPIDOMWindow_ServiceWorkerRegistrationTable = [u64; 6usize]; + pub mod xpc { + #[allow(unused_imports)] + use self::super::super::root; + #[repr(C)] + #[derive(Debug)] + pub struct ErrorBase { + pub mErrorMsg: ::nsstring::nsStringRepr, + pub mFileName: ::nsstring::nsStringRepr, + pub mLineNumber: u32, + pub mColumn: u32, + } + #[test] + fn bindgen_test_layout_ErrorBase() { + assert_eq!(::std::mem::size_of::() , 40usize , concat ! + ( "Size of: " , stringify ! ( ErrorBase ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( ErrorBase ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ErrorBase ) ) . mErrorMsg as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( ErrorBase ) , + "::" , stringify ! ( mErrorMsg ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ErrorBase ) ) . mFileName as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( ErrorBase ) , + "::" , stringify ! ( mFileName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ErrorBase ) ) . mLineNumber as * + const _ as usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( ErrorBase ) , + "::" , stringify ! ( mLineNumber ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ErrorBase ) ) . mColumn as * + const _ as usize } , 36usize , concat ! ( + "Alignment of field: " , stringify ! ( ErrorBase ) , + "::" , stringify ! ( mColumn ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct ErrorNote { + pub _base: root::xpc::ErrorBase, + } + #[test] + fn bindgen_test_layout_ErrorNote() { + assert_eq!(::std::mem::size_of::() , 40usize , concat ! + ( "Size of: " , stringify ! ( ErrorNote ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( ErrorNote ) )); + } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsCompatibility { + eCompatibility_FullStandards = 1, + eCompatibility_AlmostStandards = 2, + eCompatibility_NavQuirks = 3, + } + /** + * Information details about a characterdata change. Basically, we + * view all changes as replacements of a length of text at some offset + * with some other text (of possibly some other length). + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct CharacterDataChangeInfo { + /** + * True if this character data change is just an append. + */ + pub mAppend: bool, + /** + * The offset in the text where the change occurred. + */ + pub mChangeStart: u32, + /** + * The offset such that mChangeEnd - mChangeStart is equal to the length of + * the text we removed. If this was a pure insert or append, this is equal to + * mChangeStart. + */ + pub mChangeEnd: u32, + /** + * The length of the text that was inserted in place of the removed text. If + * this was a pure text removal, this is 0. + */ + pub mReplaceLength: u32, + /** + * Used for splitText() and normalize(), otherwise null. + */ + pub mDetails: *mut root::CharacterDataChangeInfo_Details, + } + /** + * The net result is that mChangeStart characters at the beginning of the + * text remained as they were. The next mChangeEnd - mChangeStart characters + * were removed, and mReplaceLength characters were inserted in their place. + * The text that used to begin at mChangeEnd now begins at + * mChangeStart + mReplaceLength. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct CharacterDataChangeInfo_Details { + pub mType: root::CharacterDataChangeInfo_Details__bindgen_ty_1, + /** + * For eMerge it's the text node that will be removed, for eSplit it's the + * new text node. + */ + pub mNextSibling: *mut root::nsIContent, + } + pub const CharacterDataChangeInfo_Details_eMerge: + root::CharacterDataChangeInfo_Details__bindgen_ty_1 = + CharacterDataChangeInfo_Details__bindgen_ty_1::eMerge; + pub const CharacterDataChangeInfo_Details_eSplit: + root::CharacterDataChangeInfo_Details__bindgen_ty_1 = + CharacterDataChangeInfo_Details__bindgen_ty_1::eSplit; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CharacterDataChangeInfo_Details__bindgen_ty_1 { + eMerge = 0, + eSplit = 1, + } + #[test] + fn bindgen_test_layout_CharacterDataChangeInfo_Details() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( CharacterDataChangeInfo_Details + ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + CharacterDataChangeInfo_Details ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo_Details ) ) . + mType as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo_Details ) , "::" , stringify ! ( + mType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo_Details ) ) . + mNextSibling as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo_Details ) , "::" , stringify ! ( + mNextSibling ) )); + } + impl Clone for CharacterDataChangeInfo_Details { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_CharacterDataChangeInfo() { + assert_eq!(::std::mem::size_of::() , 24usize + , concat ! ( + "Size of: " , stringify ! ( CharacterDataChangeInfo ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( CharacterDataChangeInfo ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo ) ) . mAppend + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo ) , "::" , stringify ! ( mAppend ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo ) ) . + mChangeStart as * const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo ) , "::" , stringify ! ( + mChangeStart ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo ) ) . + mChangeEnd as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo ) , "::" , stringify ! ( + mChangeEnd ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo ) ) . + mReplaceLength as * const _ as usize } , 12usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo ) , "::" , stringify ! ( + mReplaceLength ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo ) ) . + mDetails as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo ) , "::" , stringify ! ( mDetails + ) )); + } + impl Clone for CharacterDataChangeInfo { + fn clone(&self) -> Self { *self } + } + pub type nsUpdateType = u32; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDocumentObserver { + pub _base: root::nsIMutationObserver, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDocumentObserver_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDocumentObserver() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsIDocumentObserver ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDocumentObserver ) )); + } + impl Clone for nsIDocumentObserver { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIRequestObserver { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIRequestObserver_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIRequestObserver() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( "Size of: " , stringify ! ( nsIRequestObserver ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIRequestObserver ) )); + } + impl Clone for nsIRequestObserver { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsScanner { + _unused: [u8; 0], + } + /*************************************************************** + Notes: + ***************************************************************/ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsITokenizer { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsITokenizer_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsITokenizer() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsITokenizer ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsITokenizer ) )); + } + impl Clone for nsITokenizer { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsDTDMode { + eDTDMode_unknown = 0, + eDTDMode_quirks = 1, + eDTDMode_almost_standards = 2, + eDTDMode_full_standards = 3, + eDTDMode_autodetect = 4, + eDTDMode_fragment = 5, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIContentSink { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct CParserContext { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDTD { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDTD_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDTD() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIDTD ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIDTD ) )); + } + impl Clone for nsIDTD { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsParserBase { + pub _base: root::nsISupports, + } + #[test] + fn bindgen_test_layout_nsParserBase() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsParserBase ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsParserBase ) )); + } + impl Clone for nsParserBase { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum eParserCommands { + eViewNormal = 0, + eViewSource = 1, + eViewFragment = 2, + eViewErrors = 3, + } + /** + * This GECKO-INTERNAL interface is on track to being REMOVED (or refactored + * to the point of being near-unrecognizable). + * + * Please DO NOT #include this file in comm-central code, in your XULRunner + * app or binary extensions. + * + * Please DO NOT #include this into new files even inside Gecko. It is more + * likely than not that #including this header is the wrong thing to do. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIParser { + pub _base: root::nsParserBase, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIParser_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIParser() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIParser ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIParser ) )); + } + impl Clone for nsIParser { + fn clone(&self) -> Self { *self } + } + /** + * Hashtable key class to use with nsTHashtable/nsBaseHashtable + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsURIHashKey { + pub _base: root::PLDHashEntryHdr, + pub mKey: root::nsCOMPtr, + } + pub type nsURIHashKey_KeyType = *mut root::nsIURI; + pub type nsURIHashKey_KeyTypePointer = *const root::nsIURI; + pub const nsURIHashKey_ALLOW_MEMMOVE: root::nsURIHashKey__bindgen_ty_1 = + nsURIHashKey__bindgen_ty_1::ALLOW_MEMMOVE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsURIHashKey__bindgen_ty_1 { ALLOW_MEMMOVE = 1, } + #[test] + fn bindgen_test_layout_nsURIHashKey() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! + ( "Size of: " , stringify ! ( nsURIHashKey ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsURIHashKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsURIHashKey ) ) . mKey as * const _ + as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsURIHashKey ) , + "::" , stringify ! ( mKey ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsContentList { + _unused: [u8; 0], + } + /** + * Data used to track the expiration state of an object. We promise that this + * is 32 bits so that objects that includes this as a field can pad and align + * efficiently. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsExpirationState { + pub _bitfield_1: u32, + pub __bindgen_align: [u32; 0usize], + } + pub const nsExpirationState_NOT_TRACKED: + root::nsExpirationState__bindgen_ty_1 = + nsExpirationState__bindgen_ty_1::NOT_TRACKED; + pub const nsExpirationState_MAX_INDEX_IN_GENERATION: + root::nsExpirationState__bindgen_ty_1 = + nsExpirationState__bindgen_ty_1::MAX_INDEX_IN_GENERATION; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsExpirationState__bindgen_ty_1 { + NOT_TRACKED = 15, + MAX_INDEX_IN_GENERATION = 268435455, + } + #[test] + fn bindgen_test_layout_nsExpirationState() { + assert_eq!(::std::mem::size_of::() , 4usize , + concat ! ( "Size of: " , stringify ! ( nsExpirationState ) + )); + assert_eq! (::std::mem::align_of::() , 4usize , + concat ! ( + "Alignment of " , stringify ! ( nsExpirationState ) )); + } + impl Clone for nsExpirationState { + fn clone(&self) -> Self { *self } + } + impl nsExpirationState { + #[inline] + pub fn mGeneration(&self) -> u32 { + let mask = 15usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mGeneration(&mut self, val: u32) { + let mask = 15usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIndexInGeneration(&self) -> u32 { + let mask = 4294967280usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIndexInGeneration(&mut self, val: u32) { + let mask = 4294967280usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct gfxUserFontSet { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsDOMNavigationTiming { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsFrameLoader { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsHTMLCSSStyleSheet { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsHTMLStyleSheet { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIBFCacheEntry { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDocumentEncoder { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMNodeFilter { + _unused: [u8; 0], + } + /** + * An internal interface + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIHTMLCollection { + pub _base: root::nsIDOMHTMLCollection, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIHTMLCollection_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIHTMLCollection() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( "Size of: " , stringify ! ( nsIHTMLCollection ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIHTMLCollection ) )); + } + impl Clone for nsIHTMLCollection { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIObjectLoadingContent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIStructuredCloneContainer { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsRange { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsScriptLoader { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsSMILAnimationController { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsSVGElement { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsTextNode { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsWindowSizes { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsDOMCaretPosition { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsViewportInfo { + _unused: [u8; 0], + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum HSTSPrimingState { + eNO_HSTS_PRIMING = 0, + eHSTS_PRIMING_ALLOW = 1, + eHSTS_PRIMING_BLOCK = 2, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ProfilerBacktrace { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ProfilerBacktraceDestructor { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_ProfilerBacktraceDestructor() { + assert_eq!(::std::mem::size_of::() , + 1usize , concat ! ( + "Size of: " , stringify ! ( ProfilerBacktraceDestructor ) + )); + assert_eq! (::std::mem::align_of::() , + 1usize , concat ! ( + "Alignment of " , stringify ! ( + ProfilerBacktraceDestructor ) )); + } + impl Clone for ProfilerBacktraceDestructor { + fn clone(&self) -> Self { *self } + } + #[repr(C)] #[derive(Debug)] pub struct nsStyleDisplay { pub mBinding: root::BindingHolder, @@ -19320,7 +22489,7 @@ pub mod root { pub mIsolation: u8, pub mTopLayer: u8, pub mWillChangeBitField: u8, - pub mWillChange: root::nsCOMArray, + pub mWillChange: root::nsCOMArray, pub mTouchAction: u8, pub mScrollBehavior: u8, pub mScrollSnapTypeX: u8, @@ -19655,10 +22824,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsILanguageAtomService_COMTypeInfo { + pub struct nsILanguageAtomService_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsILanguageAtomService() { @@ -19675,13 +22842,19 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsBidi([u8; 0]); + pub struct nsBidi { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIPrintSettings([u8; 0]); + pub struct nsIPrintSettings { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsITheme([u8; 0]); + pub struct nsITheme { + _unused: [u8; 0], + } /** * Interface used for handling clicks on links */ @@ -19692,10 +22865,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsILinkHandler_COMTypeInfo { + pub struct nsILinkHandler_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsILinkHandler() { @@ -19709,26 +22880,37 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct gfxUserFontEntry([u8; 0]); + pub struct gfxUserFontEntry { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct gfxTextPerfMetrics([u8; 0]); + pub struct gfxTextPerfMetrics { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsTransitionManager([u8; 0]); + pub struct nsTransitionManager { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsAnimationManager([u8; 0]); + pub struct nsAnimationManager { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDeviceContext([u8; 0]); + pub struct nsDeviceContext { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct gfxMissingFontRecorder([u8; 0]); + pub struct gfxMissingFontRecorder { + _unused: [u8; 0], + } pub const kPresContext_DefaultVariableFont_ID: u8 = 0; pub const kPresContext_DefaultFixedFont_ID: u8 = 1; #[repr(C)] - #[derive(Debug)] pub struct nsRootPresContext { pub _base: root::nsPresContext, pub mNotifyDidPaintTimers: [u64; 10usize], @@ -21192,10 +24374,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIProperties_COMTypeInfo { + pub struct nsIProperties_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIProperties() { @@ -22300,9 +25480,8 @@ pub mod root { pub _base_4: root::nsITimedChannel, pub mRefCnt: root::nsAutoRefCnt, pub _mOwningThread: root::nsAutoOwningThread, - pub mBehaviour: root::mozilla::UniquePtr>, - pub mURI: root::RefPtr, + pub mBehaviour: root::mozilla::UniquePtr, + pub mURI: root::RefPtr, pub mListener: *mut root::imgINotificationObserver, pub mLoadGroup: root::nsCOMPtr, pub mLoadFlags: root::nsLoadFlags, @@ -23287,7 +26466,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct imgIContainer([u8; 0]); + pub struct imgIContainer { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsISecurityInfoProvider { @@ -23295,10 +26476,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsISecurityInfoProvider_COMTypeInfo { + pub struct nsISecurityInfoProvider_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsISecurityInfoProvider() { @@ -23320,10 +26499,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsISupportsPriority_COMTypeInfo { + pub struct nsISupportsPriority_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsISupportsPriority_PRIORITY_HIGHEST: root::nsISupportsPriority__bindgen_ty_1 = @@ -23368,10 +26545,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsITimedChannel_COMTypeInfo { + pub struct nsITimedChannel_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsITimedChannel() { @@ -23391,10 +26566,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIAsyncVerifyRedirectCallback_COMTypeInfo { + pub struct nsIAsyncVerifyRedirectCallback_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIAsyncVerifyRedirectCallback() { @@ -23417,10 +26590,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIChannelEventSink_COMTypeInfo { + pub struct nsIChannelEventSink_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsIChannelEventSink_REDIRECT_TEMPORARY: root::nsIChannelEventSink__bindgen_ty_1 = @@ -23461,10 +26632,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIThreadRetargetableStreamListener_COMTypeInfo { + pub struct nsIThreadRetargetableStreamListener_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIThreadRetargetableStreamListener() { @@ -23514,16 +26683,24 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct imgCacheValidator([u8; 0]); + pub struct imgCacheValidator { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct imgLoader([u8; 0]); + pub struct imgLoader { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct imgCacheEntry([u8; 0]); + pub struct imgCacheEntry { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIApplicationCache([u8; 0]); + pub struct nsIApplicationCache { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct imgRequest { @@ -23536,7 +26713,7 @@ pub mod root { pub _mOwningThread: root::nsAutoOwningThread, pub mLoader: *mut root::imgLoader, pub mRequest: root::nsCOMPtr, - pub mURI: root::RefPtr, + pub mURI: root::RefPtr, pub mCurrentURI: root::nsCOMPtr, pub mLoadingPrincipal: root::nsCOMPtr, pub mPrincipal: root::nsCOMPtr, @@ -23563,8 +26740,8 @@ pub mod root { pub mImageErrorCode: root::nsresult, pub mBoostCategoriesRequested: u32, pub mMutex: root::mozilla::Mutex, - pub mProgressTracker: root::RefPtr, - pub mImage: root::RefPtr, + pub mProgressTracker: root::RefPtr, + pub mImage: root::RefPtr, pub _bitfield_1: u8, pub __bindgen_padding_0: [u8; 7usize], } @@ -23583,9 +26760,121 @@ pub mod root { assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( "Alignment of " , stringify ! ( imgRequest ) )); } + impl imgRequest { + #[inline] + pub fn mIsMultiPartChannel(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsMultiPartChannel(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mGotData(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mGotData(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsInCache(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsInCache(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDecodeRequested(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mDecodeRequested(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNewPartPending(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mNewPartPending(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHadInsecureRedirect(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHadInsecureRedirect(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ProxyBehaviour([u8; 0]); + pub struct ProxyBehaviour { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct nsStyleVisibility { @@ -23960,7 +27249,7 @@ pub mod root { #[derive(Debug)] pub struct CachedBorderImageData { pub mCachedSVGViewportSize: [u32; 3usize], - pub mSubImages: root::nsCOMArray, + pub mSubImages: root::nsCOMArray, } #[test] fn bindgen_test_layout_CachedBorderImageData() { @@ -23998,12 +27287,10 @@ pub mod root { #[repr(C)] #[derive(Debug)] pub struct nsStyleImage { - pub mCachedBIData: root::mozilla::UniquePtr>, + pub mCachedBIData: root::mozilla::UniquePtr, pub mType: root::nsStyleImageType, pub __bindgen_anon_1: root::nsStyleImage__bindgen_ty_1, - pub mCropRect: root::mozilla::UniquePtr>, + pub mCropRect: root::mozilla::UniquePtr, } pub type nsStyleImage_URLValue = root::mozilla::css::URLValue; pub type nsStyleImage_URLValueData = root::mozilla::css::URLValueData; @@ -24884,7 +28171,7 @@ pub mod root { ) , "::" , stringify ! ( mQuotePairs ) )); } #[test] - fn __bindgen_test_layout_template_6() { + fn __bindgen_test_layout_StaticRefPtr_instantiation_152310() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -25036,6 +28323,44 @@ pub mod root { "Alignment of field: " , stringify ! ( nsStyleGridTemplate ) , "::" , stringify ! ( mRepeatAutoIndex ) )); } + impl nsStyleGridTemplate { + #[inline] + pub fn mIsAutoFill(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsAutoFill(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsSubgrid(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsSubgrid(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } #[repr(C)] #[derive(Debug)] pub struct nsStylePosition { @@ -25579,6 +28904,44 @@ pub mod root { "Alignment of field: " , stringify ! ( nsStyleText ) , "::" , stringify ! ( mTextEmphasisStyleString ) )); } + impl nsStyleText { + #[inline] + pub fn mTextAlignTrue(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mTextAlignTrue(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mTextAlignLastTrue(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mTextAlignLastTrue(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsStyleImageOrientation { @@ -26871,25 +30234,34 @@ pub mod root { */ #[repr(C)] #[derive(Debug)] - pub struct nsCOMArray { + pub struct nsCOMArray { pub mBuffer: root::nsTArray<*mut root::nsISupports>, - pub _phantom_0: ::std::marker::PhantomData, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RawServoStyleSet([u8; 0]); + pub struct RawServoStyleSet { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RawServoAnimationValueMap([u8; 0]); + pub struct RawServoAnimationValueMap { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RawServoDeclarationBlock([u8; 0]); + pub struct RawServoDeclarationBlock { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RawServoStyleRule([u8; 0]); + pub struct RawServoStyleRule { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RawServoAnimationValue([u8; 0]); + pub struct RawServoAnimationValue { + _unused: [u8; 0], + } pub type RawGeckoNode = root::nsINode; pub type RawGeckoElement = root::mozilla::dom::Element; pub type RawGeckoDocument = root::nsIDocument; @@ -26897,7 +30269,7 @@ pub mod root { pub type RawGeckoURLExtraData = root::mozilla::URLExtraData; pub type RawGeckoKeyframeList = root::nsTArray; pub type RawGeckoComputedKeyframeValuesList = - root::nsTArray>; + root::nsTArray; pub type RawGeckoAnimationValueList = root::nsTArray; pub type RawGeckoStyleAnimationList = @@ -26937,24 +30309,95 @@ pub mod root { *const root::RawGeckoComputedTiming; pub type RawGeckoServoStyleRuleListBorrowedMut = *mut root::RawGeckoServoStyleRuleList; + /** + * Utility class to provide scaling defined in a keySplines element. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsSMILKeySpline { + pub mX1: f64, + pub mY1: f64, + pub mX2: f64, + pub mY2: f64, + pub mSampleValues: [f64; 11usize], + } + pub const nsSMILKeySpline_kSplineTableSize: + root::nsSMILKeySpline__bindgen_ty_1 = + nsSMILKeySpline__bindgen_ty_1::kSplineTableSize; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsSMILKeySpline__bindgen_ty_1 { kSplineTableSize = 11, } + extern "C" { + #[link_name = "_ZN15nsSMILKeySpline15kSampleStepSizeE"] + pub static nsSMILKeySpline_kSampleStepSize: f64; + } + #[test] + fn bindgen_test_layout_nsSMILKeySpline() { + assert_eq!(::std::mem::size_of::() , 120usize , + concat ! ( "Size of: " , stringify ! ( nsSMILKeySpline ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsSMILKeySpline ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSMILKeySpline ) ) . mX1 as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , + "::" , stringify ! ( mX1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSMILKeySpline ) ) . mY1 as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , + "::" , stringify ! ( mY1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSMILKeySpline ) ) . mX2 as * const + _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , + "::" , stringify ! ( mX2 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSMILKeySpline ) ) . mY2 as * const + _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , + "::" , stringify ! ( mY2 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSMILKeySpline ) ) . mSampleValues + as * const _ as usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , + "::" , stringify ! ( mSampleValues ) )); + } + impl Clone for nsSMILKeySpline { + fn clone(&self) -> Self { *self } + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsSVGAngle([u8; 0]); + pub struct nsSVGAngle { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsSVGIntegerPair([u8; 0]); + pub struct nsSVGIntegerPair { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsSVGLength2([u8; 0]); + pub struct nsSVGLength2 { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsSVGNumberPair([u8; 0]); + pub struct nsSVGNumberPair { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsSVGViewBox([u8; 0]); + pub struct nsSVGViewBox { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsStyledElement([u8; 0]); + pub struct nsStyledElement { + _unused: [u8; 0], + } /** * A class used to construct a nsString from a nsStringBuffer (we might * want to move this to nsString at some point). @@ -26980,16 +30423,24 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsMappedAttributes([u8; 0]); + pub struct nsMappedAttributes { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsMappedAttributeElement([u8; 0]); + pub struct nsMappedAttributeElement { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDOMTokenList([u8; 0]); + pub struct nsDOMTokenList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDOMStringMap([u8; 0]); + pub struct nsDOMStringMap { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsIDOMMozNamedAttrMap { @@ -26997,10 +30448,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIDOMMozNamedAttrMap_COMTypeInfo { + pub struct nsIDOMMozNamedAttrMap_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIDOMMozNamedAttrMap() { @@ -27023,10 +30472,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIAttribute_COMTypeInfo { + pub struct nsIAttribute_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIAttribute() { @@ -27040,9 +30487,75 @@ pub mod root { "Alignment of field: " , stringify ! ( nsIAttribute ) , "::" , stringify ! ( mAttrMap ) )); } + /** + * Structure used as a key for caching Attrs in nsDOMAttributeMap's mAttributeCache. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsAttrKey { + /** + * The namespace of the attribute + */ + pub mNamespaceID: i32, + /** + * The atom for attribute, stored as void*, to make sure that we only use it + * for the hashcode, and we can never dereference it. + */ + pub mLocalName: *mut ::std::os::raw::c_void, + } + #[test] + fn bindgen_test_layout_nsAttrKey() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! ( + "Size of: " , stringify ! ( nsAttrKey ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsAttrKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsAttrKey ) ) . mNamespaceID as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsAttrKey ) , "::" + , stringify ! ( mNamespaceID ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsAttrKey ) ) . mLocalName as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsAttrKey ) , "::" + , stringify ! ( mLocalName ) )); + } + impl Clone for nsAttrKey { + fn clone(&self) -> Self { *self } + } + /** + * PLDHashEntryHdr implementation for nsAttrKey. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsAttrHashKey { + pub _base: root::PLDHashEntryHdr, + pub mKey: root::nsAttrKey, + } + pub type nsAttrHashKey_KeyType = *const root::nsAttrKey; + pub type nsAttrHashKey_KeyTypePointer = *const root::nsAttrKey; + pub const nsAttrHashKey_ALLOW_MEMMOVE: root::nsAttrHashKey__bindgen_ty_1 = + nsAttrHashKey__bindgen_ty_1::ALLOW_MEMMOVE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsAttrHashKey__bindgen_ty_1 { ALLOW_MEMMOVE = 1, } + #[test] + fn bindgen_test_layout_nsAttrHashKey() { + assert_eq!(::std::mem::size_of::() , 24usize , concat ! + ( "Size of: " , stringify ! ( nsAttrHashKey ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsAttrHashKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsAttrHashKey ) ) . mKey as * const _ + as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsAttrHashKey ) , + "::" , stringify ! ( mKey ) )); + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsScrollbarFrame([u8; 0]); + pub struct nsScrollbarFrame { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsIScrollbarMediator { @@ -27081,16 +30594,21 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsBoxLayoutState([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIScrollPositionListener([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsSMILValue([u8; 0]); - #[repr(C)] - pub struct nsISMILAttr__bindgen_vtable { + pub struct nsBoxLayoutState { + _unused: [u8; 0], } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIScrollPositionListener { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsSMILValue { + _unused: [u8; 0], + } + #[repr(C)] + pub struct nsISMILAttr__bindgen_vtable(::std::os::raw::c_void); //////////////////////////////////////////////////////////////////////// #[repr(C)] #[derive(Debug)] @@ -27106,10 +30624,14 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct mozAutoDocUpdate([u8; 0]); + pub struct mozAutoDocUpdate { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsAttrValueOrString([u8; 0]); + pub struct nsAttrValueOrString { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct LookAndFeelInt { @@ -27138,25 +30660,39 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ElementRuleProcessorData([u8; 0]); + pub struct ElementRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct PseudoElementRuleProcessorData([u8; 0]); + pub struct PseudoElementRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AnonBoxRuleProcessorData([u8; 0]); + pub struct AnonBoxRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct XULTreeRuleProcessorData([u8; 0]); + pub struct XULTreeRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct StateRuleProcessorData([u8; 0]); + pub struct StateRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct PseudoElementStateRuleProcessorData([u8; 0]); + pub struct PseudoElementStateRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AttributeRuleProcessorData([u8; 0]); + pub struct AttributeRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsIStyleRuleProcessor { @@ -27164,10 +30700,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIStyleRuleProcessor_COMTypeInfo { + pub struct nsIStyleRuleProcessor_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub type nsIStyleRuleProcessor_EnumFunc = ::std::option::Option { + pub struct nsIDOMCSSFontFaceRule_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIDOMCSSFontFaceRule() { @@ -27805,264 +31341,77 @@ pub mod root { } pub type __builtin_va_list = [root::__va_list_tag; 1usize]; #[test] - fn __bindgen_test_layout_template_7() { - assert_eq!(::std::mem::size_of::>() , - 24usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsReadingIterator ) )); - assert_eq!(::std::mem::align_of::>() , - 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsReadingIterator ) )); + fn __bindgen_test_layout_IntegralConstant_instantiation_179919() { + assert_eq!(::std::mem::size_of::() , 1usize , concat ! ( + "Size of template specialization: " , stringify ! ( u8 ) + )); + assert_eq!(::std::mem::align_of::() , 1usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( u8 + ) )); } #[test] - fn __bindgen_test_layout_template_8() { - assert_eq!(::std::mem::size_of::>() , - 24usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsWritingIterator ) )); - assert_eq!(::std::mem::align_of::>() , - 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsWritingIterator ) )); + fn __bindgen_test_layout_IntegralConstant_instantiation_179923() { + assert_eq!(::std::mem::size_of::() , 1usize , concat ! ( + "Size of template specialization: " , stringify ! ( u8 ) + )); + assert_eq!(::std::mem::align_of::() , 1usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( u8 + ) )); } #[test] - fn __bindgen_test_layout_template_9() { - assert_eq!(::std::mem::size_of::>() + fn __bindgen_test_layout_nsReadingIterator_instantiation_180755() { + assert_eq!(::std::mem::size_of::>() , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::nsReadingIterator<::std::os::raw::c_char> ) )); - assert_eq!(::std::mem::align_of::>() + root::nsReadingIterator + ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::nsReadingIterator<::std::os::raw::c_char> ) )); + root::nsReadingIterator + ) )); } #[test] - fn __bindgen_test_layout_template_10() { - assert_eq!(::std::mem::size_of::>() + fn __bindgen_test_layout_nsWritingIterator_instantiation_180758() { + assert_eq!(::std::mem::size_of::>() , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::nsWritingIterator<::std::os::raw::c_char> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsWritingIterator<::std::os::raw::c_char> ) )); - } - #[test] - fn __bindgen_test_layout_template_11() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - } - #[test] - fn __bindgen_test_layout_template_12() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - } - #[test] - fn __bindgen_test_layout_template_13() { - assert_eq!(::std::mem::size_of::>>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> + root::nsWritingIterator ) )); - assert_eq!(::std::mem::align_of::>>() + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> + root::nsWritingIterator ) )); } #[test] - fn __bindgen_test_layout_template_14() { - assert_eq!(::std::mem::size_of::>() , - 8usize , concat ! ( + fn __bindgen_test_layout_nsReadingIterator_instantiation_180830() { + assert_eq!(::std::mem::size_of::>() + , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::nsTArray<::nsstring::nsStringRepr> ) )); - assert_eq!(::std::mem::align_of::>() , - 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray<::nsstring::nsStringRepr> ) )); - } - #[test] - fn __bindgen_test_layout_template_15() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::Handle<*mut root::JSObject> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::Handle<*mut root::JSObject> ) )); - } - #[test] - fn __bindgen_test_layout_template_16() { - assert_eq!(::std::mem::size_of::<[u64; 6usize]>() , 48usize , concat ! - ( - "Size of template specialization: " , stringify ! ( - [u64; 6usize] ) )); - assert_eq!(::std::mem::align_of::<[u64; 6usize]>() , 8usize , concat ! - ( - "Alignment of template specialization: " , stringify ! ( - [u64; 6usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_17() { - assert_eq!(::std::mem::size_of::<[u8; 2usize]>() , 2usize , concat ! ( - "Size of template specialization: " , stringify ! ( - [u8; 2usize] ) )); - assert_eq!(::std::mem::align_of::<[u8; 2usize]>() , 1usize , concat ! - ( - "Alignment of template specialization: " , stringify ! ( - [u8; 2usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_18() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::Handle ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::Handle ) )); - } - #[test] - fn __bindgen_test_layout_template_19() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::MutableHandle<*mut root::JSObject> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::MutableHandle<*mut root::JSObject> ) )); - } - #[test] - fn __bindgen_test_layout_template_20() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::MutableHandle ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::MutableHandle ) )); - } - #[test] - fn __bindgen_test_layout_template_21() { - assert_eq!(::std::mem::size_of::<[u64; 3usize]>() , 24usize , concat ! - ( - "Size of template specialization: " , stringify ! ( - [u64; 3usize] ) )); - assert_eq!(::std::mem::align_of::<[u64; 3usize]>() , 8usize , concat ! - ( - "Alignment of template specialization: " , stringify ! ( - [u64; 3usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_22() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::DeletePolicy ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::DeletePolicy ) )); - } - #[test] - fn __bindgen_test_layout_template_23() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr<[::std::os::raw::c_char; 0usize], - root::JS::FreePolicy> + root::nsReadingIterator ) )); - assert_eq!(::std::mem::align_of::>() + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr<[::std::os::raw::c_char; 0usize], - root::JS::FreePolicy> + root::nsReadingIterator ) )); } #[test] - fn __bindgen_test_layout_template_24() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( + fn __bindgen_test_layout_nsWritingIterator_instantiation_180833() { + assert_eq!(::std::mem::size_of::>() + , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::JS::TenuredHeap<*mut root::JSObject> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::TenuredHeap<*mut root::JSObject> ) )); - } - #[test] - fn __bindgen_test_layout_template_25() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::Heap<*mut root::JSObject> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::Heap<*mut root::JSObject> ) )); - } - #[test] - fn __bindgen_test_layout_template_26() { - assert_eq!(::std::mem::size_of::>() , - 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::Heap ) )); - assert_eq!(::std::mem::align_of::>() , - 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::Heap ) )); - } - #[test] - fn __bindgen_test_layout_template_27() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete<[root::nsDependentSubstring; 0usize]> + root::nsWritingIterator ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete<[root::nsDependentSubstring; 0usize]> + root::nsWritingIterator ) )); } #[test] - fn __bindgen_test_layout_template_28() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete<[root::nsDependentCSubstring; 0usize]> - ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete<[root::nsDependentCSubstring; 0usize]> - ) )); - } - #[test] - fn __bindgen_test_layout_template_29() { + fn __bindgen_test_layout_nsTArray_instantiation_185233() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28073,20 +31422,150 @@ pub mod root { root::nsTArray ) )); } #[test] - fn __bindgen_test_layout_template_30() { - assert_eq!(::std::mem::size_of::>() - , 32usize , concat ! ( + fn __bindgen_test_layout_Handle_instantiation_186084() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::binding_danger::TErrorResult - ) )); - assert_eq!(::std::mem::align_of::>() + root::JS::Handle<*mut root::JSObject> ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::binding_danger::TErrorResult - ) )); + root::JS::Handle<*mut root::JSObject> ) )); } #[test] - fn __bindgen_test_layout_template_31() { + fn __bindgen_test_layout_Handle_instantiation_186100() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::Handle ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::Handle ) )); + } + #[test] + fn __bindgen_test_layout_MutableHandle_instantiation_186110() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::MutableHandle<*mut root::JSObject> ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::MutableHandle<*mut root::JSObject> ) )); + } + #[test] + fn __bindgen_test_layout_MutableHandle_instantiation_186126() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::MutableHandle ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::MutableHandle ) )); + } + #[test] + fn __bindgen_test_layout_Rooted_instantiation_186129() { + assert_eq!(::std::mem::size_of::<[u64; 3usize]>() , 24usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + [u64; 3usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 3usize]>() , 8usize , concat ! + ( + "Alignment of template specialization: " , stringify ! ( + [u64; 3usize] ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_188676() { + assert_eq!(::std::mem::size_of::>() , + 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray<::nsstring::nsStringRepr> ) )); + assert_eq!(::std::mem::align_of::>() , + 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray<::nsstring::nsStringRepr> ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_188680() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_188693() { + assert_eq!(::std::mem::size_of::>() , 8usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray ) )); + } + #[test] + fn __bindgen_test_layout_TenuredHeap_instantiation_189841() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::TenuredHeap ) )); + assert_eq!(::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::TenuredHeap ) )); + } + #[test] + fn __bindgen_test_layout_Heap_instantiation_189931() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::Heap<*mut root::JSObject> ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::Heap<*mut root::JSObject> ) )); + } + #[test] + fn __bindgen_test_layout_Heap_instantiation_190046() { + assert_eq!(::std::mem::size_of::>() , + 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::Heap ) )); + assert_eq!(::std::mem::align_of::>() , + 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::Heap ) )); + } + #[test] + fn __bindgen_test_layout_TErrorResult_instantiation_190053() { + assert_eq!(::std::mem::size_of::() + , 32usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::binding_danger::TErrorResult ) )); + assert_eq!(::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::binding_danger::TErrorResult ) )); + } + #[test] + fn __bindgen_test_layout_TErrorResult_instantiation_190069() { + assert_eq!(::std::mem::size_of::() + , 32usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::binding_danger::TErrorResult ) )); + assert_eq!(::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::binding_danger::TErrorResult ) )); + } + #[test] + fn __bindgen_test_layout_already_AddRefed_instantiation_190074() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28097,7 +31576,7 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_32() { + fn __bindgen_test_layout_already_AddRefed_instantiation_190126() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28108,109 +31587,29 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_33() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::DeletePolicy ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::DeletePolicy ) )); - } - #[test] - fn __bindgen_test_layout_template_34() { - assert_eq!(::std::mem::size_of::>>() + fn __bindgen_test_layout_RefPtr_instantiation_190609() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); - assert_eq!(::std::mem::align_of::>>() + root::RefPtr ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); + root::RefPtr ) )); } #[test] - fn __bindgen_test_layout_template_35() { - assert_eq!(::std::mem::size_of::>, - ::std::os::raw::c_long, - *mut root::mozilla::UniquePtr>, - *mut root::mozilla::UniquePtr>>>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::std::iterator>, - ::std::os::raw::c_long, - *mut root::mozilla::UniquePtr>, - *mut root::mozilla::UniquePtr>> - ) )); - assert_eq!(::std::mem::align_of::>, - ::std::os::raw::c_long, - *mut root::mozilla::UniquePtr>, - *mut root::mozilla::UniquePtr>>>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::std::iterator>, - ::std::os::raw::c_long, - *mut root::mozilla::UniquePtr>, - *mut root::mozilla::UniquePtr>> - ) )); - } - #[test] - fn __bindgen_test_layout_template_36() { - assert_eq!(::std::mem::size_of::>() + fn __bindgen_test_layout_already_AddRefed_instantiation_190955() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); + root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_37() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - } - #[test] - fn __bindgen_test_layout_template_38() { - assert_eq!(::std::mem::size_of::<[u64; 29usize]>() , 232usize , concat - ! ( - "Size of template specialization: " , stringify ! ( - [u64; 29usize] ) )); - assert_eq!(::std::mem::align_of::<[u64; 29usize]>() , 8usize , concat - ! ( - "Alignment of template specialization: " , stringify ! ( - [u64; 29usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_39() { + fn __bindgen_test_layout_already_AddRefed_instantiation_191200() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28221,7 +31620,51 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_40() { + fn __bindgen_test_layout_already_AddRefed_instantiation_191347() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + } + #[test] + fn __bindgen_test_layout_UniquePtr_instantiation_195451() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + } + #[test] + fn __bindgen_test_layout_iterator_instantiation_195483() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::std::iterator ) )); + assert_eq!(::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::std::iterator ) )); + } + #[test] + fn __bindgen_test_layout_nsCOMPtr_instantiation_196052() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_197645() { assert_eq!(::std::mem::size_of::>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28234,31 +31677,18 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_41() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( + fn __bindgen_test_layout_LinkedList_instantiation_197918() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::RefPtr ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( + root::mozilla::LinkedList ) )); + assert_eq!(::std::mem::align_of::() , + 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::RefPtr ) )); + root::mozilla::LinkedList ) )); } #[test] - fn __bindgen_test_layout_template_42() { - assert_eq!(::std::mem::size_of::>() - , 24usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::LinkedList - ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::LinkedList - ) )); - } - #[test] - fn __bindgen_test_layout_template_43() { + fn __bindgen_test_layout_RefPtr_instantiation_197934() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28269,7 +31699,7 @@ pub mod root { root::RefPtr ) )); } #[test] - fn __bindgen_test_layout_template_44() { + fn __bindgen_test_layout_nsTArray_instantiation_197933() { assert_eq!(::std::mem::size_of::>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28282,7 +31712,7 @@ pub mod root { )); } #[test] - fn __bindgen_test_layout_template_45() { + fn __bindgen_test_layout_nsCOMPtr_instantiation_197963() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28293,7 +31723,7 @@ pub mod root { root::nsCOMPtr ) )); } #[test] - fn __bindgen_test_layout_template_46() { + fn __bindgen_test_layout_nsTArray_instantiation_197962() { assert_eq!(::std::mem::size_of::>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28304,7 +31734,7 @@ pub mod root { root::nsTArray> ) )); } #[test] - fn __bindgen_test_layout_template_47() { + fn __bindgen_test_layout_already_AddRefed_instantiation_198008() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28315,7 +31745,7 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_48() { + fn __bindgen_test_layout_already_AddRefed_instantiation_198173() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28326,18 +31756,18 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_49() { - assert_eq!(::std::mem::size_of::>() + fn __bindgen_test_layout_already_AddRefed_instantiation_198500() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); + root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_50() { + fn __bindgen_test_layout_nsCOMPtr_instantiation_198593() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28348,139 +31778,31 @@ pub mod root { root::nsCOMPtr ) )); } #[test] - fn __bindgen_test_layout_template_51() { - assert_eq!(::std::mem::size_of::>() + fn __bindgen_test_layout_UniquePtr_instantiation_198884() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - assert_eq!(::std::mem::align_of::>() + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); + root::mozilla::UniquePtr ) )); } #[test] - fn __bindgen_test_layout_template_52() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( u64 ) - )); - assert_eq!(::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - u64 ) )); - } - #[test] - fn __bindgen_test_layout_template_53() { - assert_eq!(::std::mem::size_of::>() , - 8usize , concat ! ( + fn __bindgen_test_layout_nsRefPtrHashKey_instantiation_199431() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::nsTArray ) )); - assert_eq!(::std::mem::align_of::>() , - 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray ) )); - } - #[test] - fn __bindgen_test_layout_template_54() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - } - #[test] - fn __bindgen_test_layout_template_55() { - assert_eq!(::std::mem::size_of::<[u64; 29usize]>() , 232usize , concat - ! ( - "Size of template specialization: " , stringify ! ( - [u64; 29usize] ) )); - assert_eq!(::std::mem::align_of::<[u64; 29usize]>() , 8usize , concat - ! ( - "Alignment of template specialization: " , stringify ! ( - [u64; 29usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_56() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray<*mut root::nsIContent> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray<*mut root::nsIContent> ) )); - } - #[test] - fn __bindgen_test_layout_template_57() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - } - #[test] - fn __bindgen_test_layout_template_58() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete + root::nsRefPtrHashKey ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete + root::nsRefPtrHashKey ) )); } #[test] - fn __bindgen_test_layout_template_59() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - } - #[test] - fn __bindgen_test_layout_template_60() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - } - #[test] - fn __bindgen_test_layout_template_61() { - assert_eq!(::std::mem::size_of::>>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray> ) )); - assert_eq!(::std::mem::align_of::>>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray> ) )); - } - #[test] - fn __bindgen_test_layout_template_62() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - } - #[test] - fn __bindgen_test_layout_template_63() { + fn __bindgen_test_layout_nsDataHashtable_instantiation_199430() { assert_eq!(::std::mem::size_of::<[u64; 6usize]>() , 48usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28491,7 +31813,104 @@ pub mod root { [u64; 6usize] ) )); } #[test] - fn __bindgen_test_layout_template_64() { + fn __bindgen_test_layout_nsTArray_instantiation_199546() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray<*mut root::nsIContent> ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray<*mut root::nsIContent> ) )); + } + #[test] + fn __bindgen_test_layout_SupportsWeakPtr_instantiation_199597() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( u64 ) + )); + assert_eq!(::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + u64 ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_199775() { + assert_eq!(::std::mem::size_of::>() , + 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray ) )); + assert_eq!(::std::mem::align_of::>() , + 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_200051() { + assert_eq!(::std::mem::size_of::>>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray> ) )); + assert_eq!(::std::mem::align_of::>>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray> ) )); + } + #[test] + fn __bindgen_test_layout_nsPIDOMWindow_instantiation_200838() { + assert_eq!(::std::mem::size_of::<[u64; 29usize]>() , 232usize , concat + ! ( + "Size of template specialization: " , stringify ! ( + [u64; 29usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 29usize]>() , 8usize , concat + ! ( + "Alignment of template specialization: " , stringify ! ( + [u64; 29usize] ) )); + } + #[test] + fn __bindgen_test_layout_already_AddRefed_instantiation_200930() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + } + #[test] + fn __bindgen_test_layout_nsRefPtrHashtable_instantiation_201111() { + assert_eq!(::std::mem::size_of::<[u64; 6usize]>() , 48usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + [u64; 6usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 6usize]>() , 8usize , concat ! + ( + "Alignment of template specialization: " , stringify ! ( + [u64; 6usize] ) )); + } + #[test] + fn __bindgen_test_layout_nsPtrHashKey_instantiation_201634() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsPtrHashKey<::std::os::raw::c_void> ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsPtrHashKey<::std::os::raw::c_void> ) )); + } + #[test] + fn __bindgen_test_layout_nsPtrHashKey_instantiation_201642() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsPtrHashKey ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsPtrHashKey ) )); + } + #[test] + fn __bindgen_test_layout_OwningNonNull_instantiation_201757() { assert_eq!(::std::mem::size_of::>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28502,7 +31921,18 @@ pub mod root { root::mozilla::OwningNonNull ) )); } #[test] - fn __bindgen_test_layout_template_65() { + fn __bindgen_test_layout_nsCOMPtr_instantiation_201884() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + } + #[test] + fn __bindgen_test_layout_PointTyped_instantiation_202846() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28513,7 +31943,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_66() { + fn __bindgen_test_layout_IntPointTyped_instantiation_202849() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28524,7 +31954,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_67() { + fn __bindgen_test_layout_SizeTyped_instantiation_202852() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28535,7 +31965,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_68() { + fn __bindgen_test_layout_RectTyped_instantiation_202858() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28546,7 +31976,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_69() { + fn __bindgen_test_layout_IntPointTyped_instantiation_202882() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28557,7 +31987,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_70() { + fn __bindgen_test_layout_IntSizeTyped_instantiation_202888() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28568,7 +31998,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_71() { + fn __bindgen_test_layout_IntRectTyped_instantiation_202894() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28579,7 +32009,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_72() { + fn __bindgen_test_layout_MarginTyped_instantiation_203023() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28590,7 +32020,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_73() { + fn __bindgen_test_layout_RectTyped_instantiation_203050() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28601,7 +32031,18 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_74() { + fn __bindgen_test_layout_IntRectTyped_instantiation_203053() { + assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + [u32; 4usize] ) )); + assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat ! + ( + "Alignment of template specialization: " , stringify ! ( + [u32; 4usize] ) )); + } + #[test] + fn __bindgen_test_layout_ScaleFactor_instantiation_203089() { assert_eq!(::std::mem::size_of::() , 4usize , concat ! ( "Size of template specialization: " , stringify ! ( u32 ) )); @@ -28610,7 +32051,7 @@ pub mod root { u32 ) )); } #[test] - fn __bindgen_test_layout_template_75() { + fn __bindgen_test_layout_ScaleFactors2D_instantiation_203189() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28621,7 +32062,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_76() { + fn __bindgen_test_layout_ScaleFactors2D_instantiation_203197() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28632,7 +32073,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_77() { + fn __bindgen_test_layout_ScaleFactors2D_instantiation_203241() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28643,83 +32084,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_78() { - assert_eq!(::std::mem::size_of::>() , 8usize , - concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray ) )); - assert_eq!(::std::mem::align_of::>() , 8usize , - concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray ) )); - } - #[test] - fn __bindgen_test_layout_template_79() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::RefPtr - ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::RefPtr - ) )); - } - #[test] - fn __bindgen_test_layout_template_80() { - assert_eq!(::std::mem::size_of::>>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray> - ) )); - assert_eq!(::std::mem::align_of::>>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray> - ) )); - } - #[test] - fn __bindgen_test_layout_template_81() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr - ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr - ) )); - } - #[test] - fn __bindgen_test_layout_template_82() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray ) )); - } - #[test] - fn __bindgen_test_layout_template_83() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray<::std::os::raw::c_uint> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray<::std::os::raw::c_uint> ) )); - } - #[test] - fn __bindgen_test_layout_template_84() { + fn __bindgen_test_layout_nsTArray_instantiation_203871() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28732,7 +32097,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_85() { + fn __bindgen_test_layout_nsPtrHashKey_instantiation_203887() { assert_eq!(::std::mem::size_of::>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28743,7 +32108,29 @@ pub mod root { root::nsPtrHashKey ) )); } #[test] - fn __bindgen_test_layout_template_86() { + fn __bindgen_test_layout_nsPIDOMWindow_instantiation_207140() { + assert_eq!(::std::mem::size_of::<[u64; 29usize]>() , 232usize , concat + ! ( + "Size of template specialization: " , stringify ! ( + [u64; 29usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 29usize]>() , 8usize , concat + ! ( + "Alignment of template specialization: " , stringify ! ( + [u64; 29usize] ) )); + } + #[test] + fn __bindgen_test_layout_already_AddRefed_instantiation_207773() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + } + #[test] + fn __bindgen_test_layout_nsRefPtrHashtable_instantiation_207865() { assert_eq!(::std::mem::size_of::<[u64; 6usize]>() , 48usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28754,7 +32141,99 @@ pub mod root { [u64; 6usize] ) )); } #[test] - fn __bindgen_test_layout_template_87() { + fn __bindgen_test_layout_already_AddRefed_instantiation_209062() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + } + #[test] + fn __bindgen_test_layout_nsCOMPtr_instantiation_209408() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_210973() { + assert_eq!(::std::mem::size_of::>() , 8usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray ) )); + } + #[test] + fn __bindgen_test_layout_RefPtr_instantiation_210985() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::RefPtr + ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::RefPtr + ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_210984() { + assert_eq!(::std::mem::size_of::>>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray> + ) )); + assert_eq!(::std::mem::align_of::>>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray> + ) )); + } + #[test] + fn __bindgen_test_layout_nsPtrHashKey_instantiation_211018() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsPtrHashKey ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsPtrHashKey ) )); + } + #[test] + fn __bindgen_test_layout_UniquePtr_instantiation_211115() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + } + #[test] + fn __bindgen_test_layout_nsDataHashtable_instantiation_213053() { + assert_eq!(::std::mem::size_of::<[u64; 6usize]>() , 48usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + [u64; 6usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 6usize]>() , 8usize , concat ! + ( + "Alignment of template specialization: " , stringify ! ( + [u64; 6usize] ) )); + } + #[test] + fn __bindgen_test_layout_OwningNonNull_instantiation_213092() { assert_eq!(::std::mem::size_of::>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28767,18 +32246,29 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_88() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( + fn __bindgen_test_layout_nsRefPtrHashKey_instantiation_213113() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( + root::nsRefPtrHashKey ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); + root::nsRefPtrHashKey ) )); } #[test] - fn __bindgen_test_layout_template_89() { + fn __bindgen_test_layout_nsRefPtrHashKey_instantiation_213144() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsRefPtrHashKey ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsRefPtrHashKey ) )); + } + #[test] + fn __bindgen_test_layout_already_AddRefed_instantiation_213700() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28789,7 +32279,7 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_90() { + fn __bindgen_test_layout_nsMainThreadPtrHolder_instantiation_213704() { assert_eq!(::std::mem::size_of::>() , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28800,65 +32290,40 @@ pub mod root { root::nsMainThreadPtrHolder ) )); } #[test] - fn __bindgen_test_layout_template_91() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( + fn __bindgen_test_layout_nsPtrHashKey_instantiation_213778() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - } - #[test] - fn __bindgen_test_layout_template_92() { - assert_eq!(::std::mem::size_of::>>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); - assert_eq!(::std::mem::align_of::>>() + root::nsPtrHashKey ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); + root::nsPtrHashKey ) )); } #[test] - fn __bindgen_test_layout_template_93() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) - )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) - )); - } - #[test] - fn __bindgen_test_layout_template_94() { - assert_eq!(::std::mem::size_of::>>() + fn __bindgen_test_layout_UniquePtr_instantiation_214063() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); - assert_eq!(::std::mem::align_of::>>() + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); + root::mozilla::UniquePtr ) )); } #[test] - fn __bindgen_test_layout_template_95() { + fn __bindgen_test_layout_UniquePtr_instantiation_214066() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + } + #[test] + fn __bindgen_test_layout_Maybe_instantiation_214408() { assert_eq!(::std::mem::size_of::<[u64; 2usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28869,7 +32334,7 @@ pub mod root { [u64; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_96() { + fn __bindgen_test_layout_SupportsWeakPtr_instantiation_214574() { assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -28878,7 +32343,7 @@ pub mod root { u64 ) )); } #[test] - fn __bindgen_test_layout_template_97() { + fn __bindgen_test_layout_Maybe_instantiation_214725() { assert_eq!(::std::mem::size_of::<[u32; 3usize]>() , 12usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28889,7 +32354,7 @@ pub mod root { [u32; 3usize] ) )); } #[test] - fn __bindgen_test_layout_template_98() { + fn __bindgen_test_layout_already_AddRefed_instantiation_214740() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28900,48 +32365,18 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_99() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - } - #[test] - fn __bindgen_test_layout_template_100() { - assert_eq!(::std::mem::size_of::>>() + fn __bindgen_test_layout_UniquePtr_instantiation_214746() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); - assert_eq!(::std::mem::align_of::>>() + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); + root::mozilla::UniquePtr ) )); } #[test] - fn __bindgen_test_layout_template_101() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) - )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) - )); - } - #[test] - fn __bindgen_test_layout_template_102() { + fn __bindgen_test_layout_pair_instantiation_214932() { assert_eq!(::std::mem::size_of::>() , 32usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28952,7 +32387,7 @@ pub mod root { root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr> ) )); } #[test] - fn __bindgen_test_layout_template_103() { + fn __bindgen_test_layout_nsTArray_instantiation_214931() { assert_eq!(::std::mem::size_of::>>() , 8usize , concat ! ( @@ -28967,18 +32402,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_104() { - assert_eq!(::std::mem::size_of::<[u64; 18usize]>() , 144usize , concat - ! ( - "Size of template specialization: " , stringify ! ( - [u64; 18usize] ) )); - assert_eq!(::std::mem::align_of::<[u64; 18usize]>() , 8usize , concat - ! ( - "Alignment of template specialization: " , stringify ! ( - [u64; 18usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_105() { + fn __bindgen_test_layout_RefPtr_instantiation_215911() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28989,20 +32413,18 @@ pub mod root { root::RefPtr ) )); } #[test] - fn __bindgen_test_layout_template_106() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( + fn __bindgen_test_layout_BaseTimeDuration_instantiation_219899() { + assert_eq!(::std::mem::size_of::() , + 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::BaseTimeDuration - ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( + root::mozilla::BaseTimeDuration ) )); + assert_eq!(::std::mem::align_of::() , + 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::BaseTimeDuration - ) )); + root::mozilla::BaseTimeDuration ) )); } #[test] - fn __bindgen_test_layout_template_107() { + fn __bindgen_test_layout_nsTArray_instantiation_220491() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -29015,7 +32437,18 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_108() { + fn __bindgen_test_layout_Maybe_instantiation_220671() { + assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + [u64; 5usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 5usize]>() , 8usize , concat ! + ( + "Alignment of template specialization: " , stringify ! ( + [u64; 5usize] ) )); + } + #[test] + fn __bindgen_test_layout_RefPtr_instantiation_220846() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -29026,7 +32459,7 @@ pub mod root { root::RefPtr ) )); } #[test] - fn __bindgen_test_layout_template_109() { + fn __bindgen_test_layout_Sequence_instantiation_221090() { assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -29035,7 +32468,7 @@ pub mod root { u64 ) )); } #[test] - fn __bindgen_test_layout_template_110() { + fn __bindgen_test_layout_nsTArray_instantiation_222487() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -29046,7 +32479,7 @@ pub mod root { root::nsTArray<*mut root::mozilla::css::DocumentRule> ) )); } #[test] - fn __bindgen_test_layout_template_111() { + fn __bindgen_test_layout_nsAutoPtr_instantiation_222525() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( diff --git a/servo/components/style/gecko/generated/structs_release.rs b/servo/components/style/gecko/generated/structs_release.rs index d69c258bc05c..035c42bbf8a1 100644 --- a/servo/components/style/gecko/generated/structs_release.rs +++ b/servo/components/style/gecko/generated/structs_release.rs @@ -10,6 +10,7 @@ pub type ServoUnsafeCell = ::std::cell::UnsafeCell; pub type ServoCell = ::std::cell::Cell; pub type ServoNodeData = AtomicRefCell; +#[allow(non_snake_case, non_camel_case_types, non_upper_case_globals)] pub mod root { #[repr(C)] pub struct __BindgenUnionField(::std::marker::PhantomData); @@ -176,163 +177,12 @@ pub mod root { pub const NS_FONT_VARIANT_WIDTH_HALF: ::std::os::raw::c_uint = 2; pub const NS_FONT_VARIANT_WIDTH_THIRD: ::std::os::raw::c_uint = 3; pub const NS_FONT_VARIANT_WIDTH_QUARTER: ::std::os::raw::c_uint = 4; - pub const NS_FONT_SUBSCRIPT_OFFSET_RATIO: f32 = 0.2; - pub const NS_FONT_SUPERSCRIPT_OFFSET_RATIO: f32 = 0.34; - pub const NS_FONT_SUB_SUPER_SIZE_RATIO_SMALL: f32 = 0.82; - pub const NS_FONT_SUB_SUPER_SIZE_RATIO_LARGE: f32 = 0.667; - pub const NS_FONT_SUB_SUPER_SMALL_SIZE: f32 = 20.; - pub const NS_FONT_SUB_SUPER_LARGE_SIZE: f32 = 45.; - pub const NS_THEME_NONE: ::std::os::raw::c_uint = 0; - pub const NS_THEME_BUTTON: ::std::os::raw::c_uint = 1; - pub const NS_THEME_RADIO: ::std::os::raw::c_uint = 2; - pub const NS_THEME_CHECKBOX: ::std::os::raw::c_uint = 3; - pub const NS_THEME_AUTO: ::std::os::raw::c_uint = 4; - pub const NS_THEME_BUTTON_BEVEL: ::std::os::raw::c_uint = 7; - pub const NS_THEME_FOCUS_OUTLINE: ::std::os::raw::c_uint = 8; - pub const NS_THEME_TOOLBOX: ::std::os::raw::c_uint = 11; - pub const NS_THEME_TOOLBAR: ::std::os::raw::c_uint = 12; - pub const NS_THEME_TOOLBARBUTTON: ::std::os::raw::c_uint = 13; - pub const NS_THEME_DUALBUTTON: ::std::os::raw::c_uint = 14; - pub const NS_THEME_TOOLBARBUTTON_DROPDOWN: ::std::os::raw::c_uint = 15; - pub const NS_THEME_BUTTON_ARROW_UP: ::std::os::raw::c_uint = 16; - pub const NS_THEME_BUTTON_ARROW_DOWN: ::std::os::raw::c_uint = 17; - pub const NS_THEME_BUTTON_ARROW_NEXT: ::std::os::raw::c_uint = 18; - pub const NS_THEME_BUTTON_ARROW_PREVIOUS: ::std::os::raw::c_uint = 19; - pub const NS_THEME_SEPARATOR: ::std::os::raw::c_uint = 20; - pub const NS_THEME_TOOLBARGRIPPER: ::std::os::raw::c_uint = 21; - pub const NS_THEME_SPLITTER: ::std::os::raw::c_uint = 22; - pub const NS_THEME_STATUSBAR: ::std::os::raw::c_uint = 23; - pub const NS_THEME_STATUSBARPANEL: ::std::os::raw::c_uint = 24; - pub const NS_THEME_RESIZERPANEL: ::std::os::raw::c_uint = 25; - pub const NS_THEME_RESIZER: ::std::os::raw::c_uint = 26; - pub const NS_THEME_LISTBOX: ::std::os::raw::c_uint = 31; - pub const NS_THEME_LISTITEM: ::std::os::raw::c_uint = 32; - pub const NS_THEME_TREEVIEW: ::std::os::raw::c_uint = 41; - pub const NS_THEME_TREEITEM: ::std::os::raw::c_uint = 42; - pub const NS_THEME_TREETWISTY: ::std::os::raw::c_uint = 43; - pub const NS_THEME_TREELINE: ::std::os::raw::c_uint = 44; - pub const NS_THEME_TREEHEADER: ::std::os::raw::c_uint = 45; - pub const NS_THEME_TREEHEADERCELL: ::std::os::raw::c_uint = 46; - pub const NS_THEME_TREEHEADERSORTARROW: ::std::os::raw::c_uint = 47; - pub const NS_THEME_TREETWISTYOPEN: ::std::os::raw::c_uint = 48; - pub const NS_THEME_PROGRESSBAR: ::std::os::raw::c_uint = 51; - pub const NS_THEME_PROGRESSCHUNK: ::std::os::raw::c_uint = 52; - pub const NS_THEME_PROGRESSBAR_VERTICAL: ::std::os::raw::c_uint = 53; - pub const NS_THEME_PROGRESSCHUNK_VERTICAL: ::std::os::raw::c_uint = 54; - pub const NS_THEME_METERBAR: ::std::os::raw::c_uint = 55; - pub const NS_THEME_METERCHUNK: ::std::os::raw::c_uint = 56; - pub const NS_THEME_TAB: ::std::os::raw::c_uint = 61; - pub const NS_THEME_TABPANEL: ::std::os::raw::c_uint = 62; - pub const NS_THEME_TABPANELS: ::std::os::raw::c_uint = 65; - pub const NS_THEME_TAB_SCROLL_ARROW_BACK: ::std::os::raw::c_uint = 66; - pub const NS_THEME_TAB_SCROLL_ARROW_FORWARD: ::std::os::raw::c_uint = 67; - pub const NS_THEME_TOOLTIP: ::std::os::raw::c_uint = 71; - pub const NS_THEME_SPINNER: ::std::os::raw::c_uint = 72; - pub const NS_THEME_SPINNER_UPBUTTON: ::std::os::raw::c_uint = 73; - pub const NS_THEME_SPINNER_DOWNBUTTON: ::std::os::raw::c_uint = 74; - pub const NS_THEME_SPINNER_TEXTFIELD: ::std::os::raw::c_uint = 75; - pub const NS_THEME_NUMBER_INPUT: ::std::os::raw::c_uint = 76; - pub const NS_THEME_SCROLLBAR: ::std::os::raw::c_uint = 80; - pub const NS_THEME_SCROLLBAR_SMALL: ::std::os::raw::c_uint = 81; - pub const NS_THEME_SCROLLBAR_HORIZONTAL: ::std::os::raw::c_uint = 82; - pub const NS_THEME_SCROLLBAR_VERTICAL: ::std::os::raw::c_uint = 83; - pub const NS_THEME_SCROLLBARBUTTON_UP: ::std::os::raw::c_uint = 84; - pub const NS_THEME_SCROLLBARBUTTON_DOWN: ::std::os::raw::c_uint = 85; - pub const NS_THEME_SCROLLBARBUTTON_LEFT: ::std::os::raw::c_uint = 86; - pub const NS_THEME_SCROLLBARBUTTON_RIGHT: ::std::os::raw::c_uint = 87; - pub const NS_THEME_SCROLLBARTRACK_HORIZONTAL: ::std::os::raw::c_uint = 88; - pub const NS_THEME_SCROLLBARTRACK_VERTICAL: ::std::os::raw::c_uint = 89; - pub const NS_THEME_SCROLLBARTHUMB_HORIZONTAL: ::std::os::raw::c_uint = 90; - pub const NS_THEME_SCROLLBARTHUMB_VERTICAL: ::std::os::raw::c_uint = 91; - pub const NS_THEME_SCROLLBAR_NON_DISAPPEARING: ::std::os::raw::c_uint = - 92; - pub const NS_THEME_TEXTFIELD: ::std::os::raw::c_uint = 95; - pub const NS_THEME_CARET: ::std::os::raw::c_uint = 96; - pub const NS_THEME_TEXTFIELD_MULTILINE: ::std::os::raw::c_uint = 97; - pub const NS_THEME_SEARCHFIELD: ::std::os::raw::c_uint = 98; - pub const NS_THEME_MENULIST: ::std::os::raw::c_uint = 101; - pub const NS_THEME_MENULIST_BUTTON: ::std::os::raw::c_uint = 102; - pub const NS_THEME_MENULIST_TEXT: ::std::os::raw::c_uint = 103; - pub const NS_THEME_MENULIST_TEXTFIELD: ::std::os::raw::c_uint = 104; - pub const NS_THEME_SCALE_HORIZONTAL: ::std::os::raw::c_uint = 111; - pub const NS_THEME_SCALE_VERTICAL: ::std::os::raw::c_uint = 112; - pub const NS_THEME_SCALETHUMB_HORIZONTAL: ::std::os::raw::c_uint = 113; - pub const NS_THEME_SCALETHUMB_VERTICAL: ::std::os::raw::c_uint = 114; - pub const NS_THEME_SCALETHUMBSTART: ::std::os::raw::c_uint = 115; - pub const NS_THEME_SCALETHUMBEND: ::std::os::raw::c_uint = 116; - pub const NS_THEME_SCALETHUMBTICK: ::std::os::raw::c_uint = 117; - pub const NS_THEME_RANGE: ::std::os::raw::c_uint = 120; - pub const NS_THEME_RANGE_THUMB: ::std::os::raw::c_uint = 121; - pub const NS_THEME_GROUPBOX: ::std::os::raw::c_uint = 149; - pub const NS_THEME_CHECKBOX_CONTAINER: ::std::os::raw::c_uint = 150; - pub const NS_THEME_RADIO_CONTAINER: ::std::os::raw::c_uint = 151; - pub const NS_THEME_CHECKBOX_LABEL: ::std::os::raw::c_uint = 152; - pub const NS_THEME_RADIO_LABEL: ::std::os::raw::c_uint = 153; - pub const NS_THEME_BUTTON_FOCUS: ::std::os::raw::c_uint = 154; - pub const NS_THEME_WINDOW: ::std::os::raw::c_uint = 200; - pub const NS_THEME_DIALOG: ::std::os::raw::c_uint = 201; - pub const NS_THEME_MENUBAR: ::std::os::raw::c_uint = 210; - pub const NS_THEME_MENUPOPUP: ::std::os::raw::c_uint = 211; - pub const NS_THEME_MENUITEM: ::std::os::raw::c_uint = 212; - pub const NS_THEME_CHECKMENUITEM: ::std::os::raw::c_uint = 213; - pub const NS_THEME_RADIOMENUITEM: ::std::os::raw::c_uint = 214; - pub const NS_THEME_MENUCHECKBOX: ::std::os::raw::c_uint = 215; - pub const NS_THEME_MENURADIO: ::std::os::raw::c_uint = 216; - pub const NS_THEME_MENUSEPARATOR: ::std::os::raw::c_uint = 217; - pub const NS_THEME_MENUARROW: ::std::os::raw::c_uint = 218; - pub const NS_THEME_MENUIMAGE: ::std::os::raw::c_uint = 219; - pub const NS_THEME_MENUITEMTEXT: ::std::os::raw::c_uint = 220; - pub const NS_THEME_WIN_COMMUNICATIONS_TOOLBOX: ::std::os::raw::c_uint = - 221; - pub const NS_THEME_WIN_MEDIA_TOOLBOX: ::std::os::raw::c_uint = 222; - pub const NS_THEME_WIN_BROWSERTABBAR_TOOLBOX: ::std::os::raw::c_uint = - 223; - pub const NS_THEME_MAC_FULLSCREEN_BUTTON: ::std::os::raw::c_uint = 226; - pub const NS_THEME_MAC_HELP_BUTTON: ::std::os::raw::c_uint = 227; - pub const NS_THEME_WIN_BORDERLESS_GLASS: ::std::os::raw::c_uint = 229; - pub const NS_THEME_WIN_GLASS: ::std::os::raw::c_uint = 230; - pub const NS_THEME_WINDOW_TITLEBAR: ::std::os::raw::c_uint = 231; - pub const NS_THEME_WINDOW_TITLEBAR_MAXIMIZED: ::std::os::raw::c_uint = - 232; - pub const NS_THEME_WINDOW_FRAME_LEFT: ::std::os::raw::c_uint = 233; - pub const NS_THEME_WINDOW_FRAME_RIGHT: ::std::os::raw::c_uint = 234; - pub const NS_THEME_WINDOW_FRAME_BOTTOM: ::std::os::raw::c_uint = 235; - pub const NS_THEME_WINDOW_BUTTON_CLOSE: ::std::os::raw::c_uint = 236; - pub const NS_THEME_WINDOW_BUTTON_MINIMIZE: ::std::os::raw::c_uint = 237; - pub const NS_THEME_WINDOW_BUTTON_MAXIMIZE: ::std::os::raw::c_uint = 238; - pub const NS_THEME_WINDOW_BUTTON_RESTORE: ::std::os::raw::c_uint = 239; - pub const NS_THEME_WINDOW_BUTTON_BOX: ::std::os::raw::c_uint = 240; - pub const NS_THEME_WINDOW_BUTTON_BOX_MAXIMIZED: ::std::os::raw::c_uint = - 241; - pub const NS_THEME_WIN_EXCLUDE_GLASS: ::std::os::raw::c_uint = 242; - pub const NS_THEME_MAC_VIBRANCY_LIGHT: ::std::os::raw::c_uint = 243; - pub const NS_THEME_MAC_VIBRANCY_DARK: ::std::os::raw::c_uint = 244; - pub const NS_THEME_MAC_DISCLOSURE_BUTTON_OPEN: ::std::os::raw::c_uint = - 245; - pub const NS_THEME_MAC_DISCLOSURE_BUTTON_CLOSED: ::std::os::raw::c_uint = - 246; - pub const NS_THEME_GTK_INFO_BAR: ::std::os::raw::c_uint = 247; - pub const NS_THEME_MAC_SOURCE_LIST: ::std::os::raw::c_uint = 248; - pub const NS_THEME_MAC_SOURCE_LIST_SELECTION: ::std::os::raw::c_uint = - 249; - pub const NS_THEME_MAC_ACTIVE_SOURCE_LIST_SELECTION: - ::std::os::raw::c_uint = - 250; - pub const kNameSpaceID_Unknown: ::std::os::raw::c_int = -1; - pub const kNameSpaceID_XMLNS: ::std::os::raw::c_uint = 1; - pub const kNameSpaceID_XML: ::std::os::raw::c_uint = 2; - pub const kNameSpaceID_XHTML: ::std::os::raw::c_uint = 3; - pub const kNameSpaceID_XLink: ::std::os::raw::c_uint = 4; - pub const kNameSpaceID_XSLT: ::std::os::raw::c_uint = 5; - pub const kNameSpaceID_XBL: ::std::os::raw::c_uint = 6; - pub const kNameSpaceID_MathML: ::std::os::raw::c_uint = 7; - pub const kNameSpaceID_RDF: ::std::os::raw::c_uint = 8; - pub const kNameSpaceID_XUL: ::std::os::raw::c_uint = 9; - pub const kNameSpaceID_SVG: ::std::os::raw::c_uint = 10; - pub const kNameSpaceID_disabled_MathML: ::std::os::raw::c_uint = 11; - pub const kNameSpaceID_disabled_SVG: ::std::os::raw::c_uint = 12; - pub const kNameSpaceID_LastBuiltin: ::std::os::raw::c_uint = 12; - pub const kNameSpaceID_Wildcard: ::std::os::raw::c_int = -2147483648; + pub const NS_FONT_SUBSCRIPT_OFFSET_RATIO: f64 = 0.2; + pub const NS_FONT_SUPERSCRIPT_OFFSET_RATIO: f64 = 0.34; + pub const NS_FONT_SUB_SUPER_SIZE_RATIO_SMALL: f64 = 0.82; + pub const NS_FONT_SUB_SUPER_SIZE_RATIO_LARGE: f64 = 0.667; + pub const NS_FONT_SUB_SUPER_SMALL_SIZE: f64 = 20.; + pub const NS_FONT_SUB_SUPER_LARGE_SIZE: f64 = 45.; pub const NS_FONT_VARIANT_NORMAL: ::std::os::raw::c_uint = 0; pub const NS_FONT_VARIANT_SMALL_CAPS: ::std::os::raw::c_uint = 1; pub const NS_STYLE_STACK_SIZING_IGNORE: ::std::os::raw::c_uint = 0; @@ -633,7 +483,7 @@ pub mod root { pub const NS_STYLE_GRID_TEMPLATE_SUBGRID: ::std::os::raw::c_uint = 0; pub const NS_STYLE_GRID_REPEAT_AUTO_FILL: ::std::os::raw::c_uint = 0; pub const NS_STYLE_GRID_REPEAT_AUTO_FIT: ::std::os::raw::c_uint = 1; - pub const NS_MATHML_DEFAULT_SCRIPT_SIZE_MULTIPLIER: f32 = 0.71; + pub const NS_MATHML_DEFAULT_SCRIPT_SIZE_MULTIPLIER: f64 = 0.71; pub const NS_MATHML_DEFAULT_SCRIPT_MIN_SIZE_PT: ::std::os::raw::c_uint = 8; pub const NS_MATHML_MATHVARIANT_NONE: ::std::os::raw::c_uint = 0; @@ -1124,6 +974,158 @@ pub mod root { pub const NS_STYLE_DISPLAY_MODE_BROWSER: ::std::os::raw::c_uint = 0; pub const NS_STYLE_DISPLAY_MODE_MINIMAL_UI: ::std::os::raw::c_uint = 1; pub const NS_STYLE_DISPLAY_MODE_STANDALONE: ::std::os::raw::c_uint = 2; + pub const NS_STYLE_DISPLAY_MODE_FULLSCREEN: ::std::os::raw::c_uint = 3; + pub const NS_THEME_NONE: ::std::os::raw::c_uint = 0; + pub const NS_THEME_BUTTON: ::std::os::raw::c_uint = 1; + pub const NS_THEME_RADIO: ::std::os::raw::c_uint = 2; + pub const NS_THEME_CHECKBOX: ::std::os::raw::c_uint = 3; + pub const NS_THEME_AUTO: ::std::os::raw::c_uint = 4; + pub const NS_THEME_BUTTON_BEVEL: ::std::os::raw::c_uint = 7; + pub const NS_THEME_FOCUS_OUTLINE: ::std::os::raw::c_uint = 8; + pub const NS_THEME_TOOLBOX: ::std::os::raw::c_uint = 11; + pub const NS_THEME_TOOLBAR: ::std::os::raw::c_uint = 12; + pub const NS_THEME_TOOLBARBUTTON: ::std::os::raw::c_uint = 13; + pub const NS_THEME_DUALBUTTON: ::std::os::raw::c_uint = 14; + pub const NS_THEME_TOOLBARBUTTON_DROPDOWN: ::std::os::raw::c_uint = 15; + pub const NS_THEME_BUTTON_ARROW_UP: ::std::os::raw::c_uint = 16; + pub const NS_THEME_BUTTON_ARROW_DOWN: ::std::os::raw::c_uint = 17; + pub const NS_THEME_BUTTON_ARROW_NEXT: ::std::os::raw::c_uint = 18; + pub const NS_THEME_BUTTON_ARROW_PREVIOUS: ::std::os::raw::c_uint = 19; + pub const NS_THEME_SEPARATOR: ::std::os::raw::c_uint = 20; + pub const NS_THEME_TOOLBARGRIPPER: ::std::os::raw::c_uint = 21; + pub const NS_THEME_SPLITTER: ::std::os::raw::c_uint = 22; + pub const NS_THEME_STATUSBAR: ::std::os::raw::c_uint = 23; + pub const NS_THEME_STATUSBARPANEL: ::std::os::raw::c_uint = 24; + pub const NS_THEME_RESIZERPANEL: ::std::os::raw::c_uint = 25; + pub const NS_THEME_RESIZER: ::std::os::raw::c_uint = 26; + pub const NS_THEME_LISTBOX: ::std::os::raw::c_uint = 31; + pub const NS_THEME_LISTITEM: ::std::os::raw::c_uint = 32; + pub const NS_THEME_TREEVIEW: ::std::os::raw::c_uint = 41; + pub const NS_THEME_TREEITEM: ::std::os::raw::c_uint = 42; + pub const NS_THEME_TREETWISTY: ::std::os::raw::c_uint = 43; + pub const NS_THEME_TREELINE: ::std::os::raw::c_uint = 44; + pub const NS_THEME_TREEHEADER: ::std::os::raw::c_uint = 45; + pub const NS_THEME_TREEHEADERCELL: ::std::os::raw::c_uint = 46; + pub const NS_THEME_TREEHEADERSORTARROW: ::std::os::raw::c_uint = 47; + pub const NS_THEME_TREETWISTYOPEN: ::std::os::raw::c_uint = 48; + pub const NS_THEME_PROGRESSBAR: ::std::os::raw::c_uint = 51; + pub const NS_THEME_PROGRESSCHUNK: ::std::os::raw::c_uint = 52; + pub const NS_THEME_PROGRESSBAR_VERTICAL: ::std::os::raw::c_uint = 53; + pub const NS_THEME_PROGRESSCHUNK_VERTICAL: ::std::os::raw::c_uint = 54; + pub const NS_THEME_METERBAR: ::std::os::raw::c_uint = 55; + pub const NS_THEME_METERCHUNK: ::std::os::raw::c_uint = 56; + pub const NS_THEME_TAB: ::std::os::raw::c_uint = 61; + pub const NS_THEME_TABPANEL: ::std::os::raw::c_uint = 62; + pub const NS_THEME_TABPANELS: ::std::os::raw::c_uint = 65; + pub const NS_THEME_TAB_SCROLL_ARROW_BACK: ::std::os::raw::c_uint = 66; + pub const NS_THEME_TAB_SCROLL_ARROW_FORWARD: ::std::os::raw::c_uint = 67; + pub const NS_THEME_TOOLTIP: ::std::os::raw::c_uint = 71; + pub const NS_THEME_SPINNER: ::std::os::raw::c_uint = 72; + pub const NS_THEME_SPINNER_UPBUTTON: ::std::os::raw::c_uint = 73; + pub const NS_THEME_SPINNER_DOWNBUTTON: ::std::os::raw::c_uint = 74; + pub const NS_THEME_SPINNER_TEXTFIELD: ::std::os::raw::c_uint = 75; + pub const NS_THEME_NUMBER_INPUT: ::std::os::raw::c_uint = 76; + pub const NS_THEME_SCROLLBAR: ::std::os::raw::c_uint = 80; + pub const NS_THEME_SCROLLBAR_SMALL: ::std::os::raw::c_uint = 81; + pub const NS_THEME_SCROLLBAR_HORIZONTAL: ::std::os::raw::c_uint = 82; + pub const NS_THEME_SCROLLBAR_VERTICAL: ::std::os::raw::c_uint = 83; + pub const NS_THEME_SCROLLBARBUTTON_UP: ::std::os::raw::c_uint = 84; + pub const NS_THEME_SCROLLBARBUTTON_DOWN: ::std::os::raw::c_uint = 85; + pub const NS_THEME_SCROLLBARBUTTON_LEFT: ::std::os::raw::c_uint = 86; + pub const NS_THEME_SCROLLBARBUTTON_RIGHT: ::std::os::raw::c_uint = 87; + pub const NS_THEME_SCROLLBARTRACK_HORIZONTAL: ::std::os::raw::c_uint = 88; + pub const NS_THEME_SCROLLBARTRACK_VERTICAL: ::std::os::raw::c_uint = 89; + pub const NS_THEME_SCROLLBARTHUMB_HORIZONTAL: ::std::os::raw::c_uint = 90; + pub const NS_THEME_SCROLLBARTHUMB_VERTICAL: ::std::os::raw::c_uint = 91; + pub const NS_THEME_SCROLLBAR_NON_DISAPPEARING: ::std::os::raw::c_uint = + 92; + pub const NS_THEME_TEXTFIELD: ::std::os::raw::c_uint = 95; + pub const NS_THEME_CARET: ::std::os::raw::c_uint = 96; + pub const NS_THEME_TEXTFIELD_MULTILINE: ::std::os::raw::c_uint = 97; + pub const NS_THEME_SEARCHFIELD: ::std::os::raw::c_uint = 98; + pub const NS_THEME_MENULIST: ::std::os::raw::c_uint = 101; + pub const NS_THEME_MENULIST_BUTTON: ::std::os::raw::c_uint = 102; + pub const NS_THEME_MENULIST_TEXT: ::std::os::raw::c_uint = 103; + pub const NS_THEME_MENULIST_TEXTFIELD: ::std::os::raw::c_uint = 104; + pub const NS_THEME_SCALE_HORIZONTAL: ::std::os::raw::c_uint = 111; + pub const NS_THEME_SCALE_VERTICAL: ::std::os::raw::c_uint = 112; + pub const NS_THEME_SCALETHUMB_HORIZONTAL: ::std::os::raw::c_uint = 113; + pub const NS_THEME_SCALETHUMB_VERTICAL: ::std::os::raw::c_uint = 114; + pub const NS_THEME_SCALETHUMBSTART: ::std::os::raw::c_uint = 115; + pub const NS_THEME_SCALETHUMBEND: ::std::os::raw::c_uint = 116; + pub const NS_THEME_SCALETHUMBTICK: ::std::os::raw::c_uint = 117; + pub const NS_THEME_RANGE: ::std::os::raw::c_uint = 120; + pub const NS_THEME_RANGE_THUMB: ::std::os::raw::c_uint = 121; + pub const NS_THEME_GROUPBOX: ::std::os::raw::c_uint = 149; + pub const NS_THEME_CHECKBOX_CONTAINER: ::std::os::raw::c_uint = 150; + pub const NS_THEME_RADIO_CONTAINER: ::std::os::raw::c_uint = 151; + pub const NS_THEME_CHECKBOX_LABEL: ::std::os::raw::c_uint = 152; + pub const NS_THEME_RADIO_LABEL: ::std::os::raw::c_uint = 153; + pub const NS_THEME_BUTTON_FOCUS: ::std::os::raw::c_uint = 154; + pub const NS_THEME_WINDOW: ::std::os::raw::c_uint = 200; + pub const NS_THEME_DIALOG: ::std::os::raw::c_uint = 201; + pub const NS_THEME_MENUBAR: ::std::os::raw::c_uint = 210; + pub const NS_THEME_MENUPOPUP: ::std::os::raw::c_uint = 211; + pub const NS_THEME_MENUITEM: ::std::os::raw::c_uint = 212; + pub const NS_THEME_CHECKMENUITEM: ::std::os::raw::c_uint = 213; + pub const NS_THEME_RADIOMENUITEM: ::std::os::raw::c_uint = 214; + pub const NS_THEME_MENUCHECKBOX: ::std::os::raw::c_uint = 215; + pub const NS_THEME_MENURADIO: ::std::os::raw::c_uint = 216; + pub const NS_THEME_MENUSEPARATOR: ::std::os::raw::c_uint = 217; + pub const NS_THEME_MENUARROW: ::std::os::raw::c_uint = 218; + pub const NS_THEME_MENUIMAGE: ::std::os::raw::c_uint = 219; + pub const NS_THEME_MENUITEMTEXT: ::std::os::raw::c_uint = 220; + pub const NS_THEME_WIN_COMMUNICATIONS_TOOLBOX: ::std::os::raw::c_uint = + 221; + pub const NS_THEME_WIN_MEDIA_TOOLBOX: ::std::os::raw::c_uint = 222; + pub const NS_THEME_WIN_BROWSERTABBAR_TOOLBOX: ::std::os::raw::c_uint = + 223; + pub const NS_THEME_MAC_FULLSCREEN_BUTTON: ::std::os::raw::c_uint = 226; + pub const NS_THEME_MAC_HELP_BUTTON: ::std::os::raw::c_uint = 227; + pub const NS_THEME_WIN_BORDERLESS_GLASS: ::std::os::raw::c_uint = 229; + pub const NS_THEME_WIN_GLASS: ::std::os::raw::c_uint = 230; + pub const NS_THEME_WINDOW_TITLEBAR: ::std::os::raw::c_uint = 231; + pub const NS_THEME_WINDOW_TITLEBAR_MAXIMIZED: ::std::os::raw::c_uint = + 232; + pub const NS_THEME_WINDOW_FRAME_LEFT: ::std::os::raw::c_uint = 233; + pub const NS_THEME_WINDOW_FRAME_RIGHT: ::std::os::raw::c_uint = 234; + pub const NS_THEME_WINDOW_FRAME_BOTTOM: ::std::os::raw::c_uint = 235; + pub const NS_THEME_WINDOW_BUTTON_CLOSE: ::std::os::raw::c_uint = 236; + pub const NS_THEME_WINDOW_BUTTON_MINIMIZE: ::std::os::raw::c_uint = 237; + pub const NS_THEME_WINDOW_BUTTON_MAXIMIZE: ::std::os::raw::c_uint = 238; + pub const NS_THEME_WINDOW_BUTTON_RESTORE: ::std::os::raw::c_uint = 239; + pub const NS_THEME_WINDOW_BUTTON_BOX: ::std::os::raw::c_uint = 240; + pub const NS_THEME_WINDOW_BUTTON_BOX_MAXIMIZED: ::std::os::raw::c_uint = + 241; + pub const NS_THEME_WIN_EXCLUDE_GLASS: ::std::os::raw::c_uint = 242; + pub const NS_THEME_MAC_VIBRANCY_LIGHT: ::std::os::raw::c_uint = 243; + pub const NS_THEME_MAC_VIBRANCY_DARK: ::std::os::raw::c_uint = 244; + pub const NS_THEME_MAC_DISCLOSURE_BUTTON_OPEN: ::std::os::raw::c_uint = + 245; + pub const NS_THEME_MAC_DISCLOSURE_BUTTON_CLOSED: ::std::os::raw::c_uint = + 246; + pub const NS_THEME_GTK_INFO_BAR: ::std::os::raw::c_uint = 247; + pub const NS_THEME_MAC_SOURCE_LIST: ::std::os::raw::c_uint = 248; + pub const NS_THEME_MAC_SOURCE_LIST_SELECTION: ::std::os::raw::c_uint = + 249; + pub const NS_THEME_MAC_ACTIVE_SOURCE_LIST_SELECTION: + ::std::os::raw::c_uint = + 250; + pub const kNameSpaceID_Unknown: ::std::os::raw::c_int = -1; + pub const kNameSpaceID_XMLNS: ::std::os::raw::c_uint = 1; + pub const kNameSpaceID_XML: ::std::os::raw::c_uint = 2; + pub const kNameSpaceID_XHTML: ::std::os::raw::c_uint = 3; + pub const kNameSpaceID_XLink: ::std::os::raw::c_uint = 4; + pub const kNameSpaceID_XSLT: ::std::os::raw::c_uint = 5; + pub const kNameSpaceID_XBL: ::std::os::raw::c_uint = 6; + pub const kNameSpaceID_MathML: ::std::os::raw::c_uint = 7; + pub const kNameSpaceID_RDF: ::std::os::raw::c_uint = 8; + pub const kNameSpaceID_XUL: ::std::os::raw::c_uint = 9; + pub const kNameSpaceID_SVG: ::std::os::raw::c_uint = 10; + pub const kNameSpaceID_disabled_MathML: ::std::os::raw::c_uint = 11; + pub const kNameSpaceID_disabled_SVG: ::std::os::raw::c_uint = 12; + pub const kNameSpaceID_LastBuiltin: ::std::os::raw::c_uint = 12; + pub const kNameSpaceID_Wildcard: ::std::os::raw::c_int = -2147483648; pub const NS_STYLE_INHERIT_MASK: ::std::os::raw::c_uint = 16777215; pub const NS_STYLE_HAS_TEXT_DECORATION_LINES: ::std::os::raw::c_uint = 16777216; @@ -1161,6 +1163,8 @@ pub mod root { } pub type pair_first_type<_T1> = _T1; pub type pair_second_type<_T2> = _T2; + pub type pair__PCCP = u8; + pub type pair__PCCFP = u8; #[repr(C)] #[derive(Debug, Copy)] pub struct input_iterator_tag { @@ -1181,21 +1185,20 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct iterator<_Category, _Tp, _Distance, _Pointer, _Reference> { + pub struct iterator { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData<_Category>, - pub _phantom_1: ::std::marker::PhantomData<_Tp>, - pub _phantom_2: ::std::marker::PhantomData<_Distance>, - pub _phantom_3: ::std::marker::PhantomData<_Pointer>, - pub _phantom_4: ::std::marker::PhantomData<_Reference>, } pub type iterator_iterator_category<_Category> = _Category; pub type iterator_value_type<_Tp> = _Tp; pub type iterator_difference_type<_Distance> = _Distance; pub type iterator_pointer<_Pointer> = _Pointer; pub type iterator_reference<_Reference> = _Reference; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct atomic { + } #[test] - fn __bindgen_test_layout_template_1() { + fn __bindgen_test_layout_atomic_instantiation_60414() { assert_eq!(::std::mem::size_of::() , 4usize , concat ! ( "Size of template specialization: " , stringify ! ( u32 ) )); @@ -1204,7 +1207,7 @@ pub mod root { ( u32 ) )); } #[test] - fn __bindgen_test_layout_template_2() { + fn __bindgen_test_layout_atomic_instantiation_60422() { assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -1259,8 +1262,9 @@ pub mod root { root::nsSubstringTuple; pub type nsStringRepr_string_type = ::nsstring::nsStringRepr; pub type nsStringRepr_const_iterator = - root::nsReadingIterator; - pub type nsStringRepr_iterator = root::nsWritingIterator; + root::nsReadingIterator; + pub type nsStringRepr_iterator = + root::nsWritingIterator; pub type nsStringRepr_comparator_type = root::nsStringComparator; pub type nsStringRepr_char_iterator = *mut root::mozilla::detail::nsStringRepr_char_type; @@ -1350,9 +1354,9 @@ pub mod root { root::nsCSubstringTuple; pub type nsCStringRepr_string_type = root::nsCString; pub type nsCStringRepr_const_iterator = - root::nsReadingIterator<::std::os::raw::c_char>; + root::nsReadingIterator; pub type nsCStringRepr_iterator = - root::nsWritingIterator<::std::os::raw::c_char>; + root::nsWritingIterator; pub type nsCStringRepr_comparator_type = root::nsCStringComparator; pub type nsCStringRepr_char_iterator = @@ -1434,22 +1438,33 @@ pub mod root { */ #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct LinkedListElementTraits { + pub struct LinkedListElementTraits { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, } pub type LinkedListElementTraits_RawType = *mut T; pub type LinkedListElementTraits_ConstRawType = *mut T; pub type LinkedListElementTraits_ClientType = *mut T; pub type LinkedListElementTraits_ConstClientType = *mut T; #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WeakReference { + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct FramePropertyTypeHelper { + pub _address: u8, + } + pub type FramePropertyTypeHelper_Type = *mut T; + #[repr(C)] #[derive(Debug)] pub struct MutexImpl { pub platformData_: [*mut ::std::os::raw::c_void; 5usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct MutexImpl_PlatformData([u8; 0]); + pub struct MutexImpl_PlatformData { + _unused: [u8; 0], + } #[test] fn bindgen_test_layout_MutexImpl() { assert_eq!(::std::mem::size_of::() , 40usize , @@ -1465,134 +1480,1357 @@ pub mod root { , "::" , stringify ! ( platformData_ ) )); } } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum ArenaObjectID { + eArenaObjectID_DummyBeforeFirstObjectID = 536870911, + eArenaObjectID_nsLineBox = 536870912, + eArenaObjectID_nsRuleNode = 536870913, + eArenaObjectID_nsStyleContext = 536870914, + eArenaObjectID_nsInheritedStyleData = 536870915, + eArenaObjectID_nsResetStyleData = 536870916, + eArenaObjectID_nsConditionalResetStyleData = 536870917, + eArenaObjectID_nsConditionalResetStyleDataEntry = 536870918, + eArenaObjectID_nsFrameList = 536870919, + eArenaObjectID_CustomCounterStyle = 536870920, + eArenaObjectID_DependentBuiltinCounterStyle = 536870921, + eArenaObjectID_nsStyleFont = 536870922, + eArenaObjectID_nsStyleColor = 536870923, + eArenaObjectID_nsStyleList = 536870924, + eArenaObjectID_nsStyleText = 536870925, + eArenaObjectID_nsStyleVisibility = 536870926, + eArenaObjectID_nsStyleUserInterface = 536870927, + eArenaObjectID_nsStyleTableBorder = 536870928, + eArenaObjectID_nsStyleSVG = 536870929, + eArenaObjectID_nsStyleVariables = 536870930, + eArenaObjectID_nsStyleBackground = 536870931, + eArenaObjectID_nsStylePosition = 536870932, + eArenaObjectID_nsStyleTextReset = 536870933, + eArenaObjectID_nsStyleDisplay = 536870934, + eArenaObjectID_nsStyleContent = 536870935, + eArenaObjectID_nsStyleUIReset = 536870936, + eArenaObjectID_nsStyleTable = 536870937, + eArenaObjectID_nsStyleMargin = 536870938, + eArenaObjectID_nsStylePadding = 536870939, + eArenaObjectID_nsStyleBorder = 536870940, + eArenaObjectID_nsStyleOutline = 536870941, + eArenaObjectID_nsStyleXUL = 536870942, + eArenaObjectID_nsStyleSVGReset = 536870943, + eArenaObjectID_nsStyleColumn = 536870944, + eArenaObjectID_nsStyleEffects = 536870945, + eArenaObjectID_NON_OBJECT_MARKER = 1073741824, + } + /** + * A default deletion policy using plain old operator delete. + * + * Note that this type can be specialized, but authors should beware of the risk + * that the specialization may at some point cease to match (either because it + * gets moved to a different compilation unit or the signature changes). If the + * non-specialized (|delete|-based) version compiles for that type but does the + * wrong thing, bad things could happen. + * + * This is a non-issue for types which are always incomplete (i.e. opaque handle + * types), since |delete|-ing such a type will always trigger a compilation + * error. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DefaultDelete { + pub _address: u8, + } + pub type MallocSizeOf = + ::std::option::Option usize>; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ReverseIterator { + pub mCurrent: IteratorT, + } + pub mod css { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(u32)] + /** + * Enum defining the mode in which a sheet is to be parsed. This is + * usually, but not always, the same as the cascade level at which the + * sheet will apply (see nsStyleSet.h). Most of the Loader APIs only + * support loading of author sheets. + * + * Author sheets are the normal case: styles embedded in or linked + * from HTML pages. They are also the most restricted. + * + * User sheets can do anything author sheets can do, and also get + * access to a few CSS extensions that are not yet suitable for + * exposure on the public Web, but are very useful for expressing + * user style overrides, such as @-moz-document rules. + * + * XXX: eUserSheetFeatures was added in bug 1035091, but some patches in + * that bug never landed to use this enum value. Currently, all the features + * in user sheet are also available in author sheet. + * + * Agent sheets have access to all author- and user-sheet features + * plus more extensions that are necessary for internal use but, + * again, not yet suitable for exposure on the public Web. Some of + * these are outright unsafe to expose; in particular, incorrect + * styling of anonymous box pseudo-elements can violate layout + * invariants. + * + * Agent sheets that do not use any unsafe rules could use + * eSafeAgentSheetFeatures when creating the sheet. This enum value allows + * Servo backend to recognize the sheets as the agent level, but Gecko + * backend will parse it under _author_ level. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum SheetParsingMode { + eAuthorSheetFeatures = 0, + eUserSheetFeatures = 1, + eAgentSheetFeatures = 2, + eSafeAgentSheetFeatures = 3, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct GroupRule { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ImportRule { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct Rule { + pub _base: root::nsIDOMCSSRule, + pub _base_1: root::nsWrapperCache, + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub mSheet: *mut root::mozilla::StyleSheet, + pub mParentRule: *mut root::mozilla::css::GroupRule, + pub mLineNumber: u32, + pub mColumnNumber: u32, + } + pub type Rule_HasThreadSafeRefCnt = root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Rule_cycleCollection { + pub _base: root::nsXPCOMCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_Rule_cycleCollection() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( Rule_cycleCollection ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + Rule_cycleCollection ) )); + } + impl Clone for Rule_cycleCollection { + fn clone(&self) -> Self { *self } + } + pub const Rule_UNKNOWN_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::UNKNOWN_RULE; + pub const Rule_CHARSET_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::CHARSET_RULE; + pub const Rule_IMPORT_RULE: root::mozilla::css::Rule__bindgen_ty_1 + = + Rule__bindgen_ty_1::IMPORT_RULE; + pub const Rule_NAMESPACE_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::NAMESPACE_RULE; + pub const Rule_STYLE_RULE: root::mozilla::css::Rule__bindgen_ty_1 + = + Rule__bindgen_ty_1::STYLE_RULE; + pub const Rule_MEDIA_RULE: root::mozilla::css::Rule__bindgen_ty_1 + = + Rule__bindgen_ty_1::MEDIA_RULE; + pub const Rule_FONT_FACE_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::FONT_FACE_RULE; + pub const Rule_PAGE_RULE: root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::PAGE_RULE; + pub const Rule_KEYFRAME_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::KEYFRAME_RULE; + pub const Rule_KEYFRAMES_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::KEYFRAMES_RULE; + pub const Rule_DOCUMENT_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::DOCUMENT_RULE; + pub const Rule_SUPPORTS_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::SUPPORTS_RULE; + pub const Rule_FONT_FEATURE_VALUES_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::FONT_FEATURE_VALUES_RULE; + pub const Rule_COUNTER_STYLE_RULE: + root::mozilla::css::Rule__bindgen_ty_1 = + Rule__bindgen_ty_1::COUNTER_STYLE_RULE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum Rule__bindgen_ty_1 { + UNKNOWN_RULE = 0, + CHARSET_RULE = 1, + IMPORT_RULE = 2, + NAMESPACE_RULE = 3, + STYLE_RULE = 4, + MEDIA_RULE = 5, + FONT_FACE_RULE = 6, + PAGE_RULE = 7, + KEYFRAME_RULE = 8, + KEYFRAMES_RULE = 9, + DOCUMENT_RULE = 10, + SUPPORTS_RULE = 11, + FONT_FEATURE_VALUES_RULE = 12, + COUNTER_STYLE_RULE = 13, + } + extern "C" { + #[link_name = "_ZN7mozilla3css4Rule21_cycleCollectorGlobalE"] + pub static mut Rule__cycleCollectorGlobal: + root::mozilla::css::Rule_cycleCollection; + } + #[test] + fn bindgen_test_layout_Rule() { + assert_eq!(::std::mem::size_of::() , 64usize , concat ! + ( "Size of: " , stringify ! ( Rule ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( Rule ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Loader { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ImageLoader { + _unused: [u8; 0], + } + #[repr(C)] + pub struct URLValueData__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug)] + pub struct URLValueData { + pub vtable_: *const URLValueData__bindgen_vtable, + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + pub mURI: root::nsMainThreadPtrHandle, + pub mString: ::nsstring::nsStringRepr, + pub mExtraData: root::RefPtr, + pub mURIResolved: bool, + pub mIsLocalRef: [u8; 2usize], + pub mMightHaveRef: [u8; 2usize], + } + pub type URLValueData_HasThreadSafeRefCnt = + root::mozilla::TrueType; + #[test] + fn bindgen_test_layout_URLValueData() { + assert_eq!(::std::mem::size_of::() , 56usize , + concat ! ( + "Size of: " , stringify ! ( URLValueData ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( URLValueData ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . mRefCnt as + * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mRefCnt ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . mURI as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mURI ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . mString as + * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mString ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . mExtraData + as * const _ as usize } , 40usize , concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mExtraData ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . + mURIResolved as * const _ as usize } , 48usize , + concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mURIResolved + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . + mIsLocalRef as * const _ as usize } , 49usize , + concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( mIsLocalRef + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLValueData ) ) . + mMightHaveRef as * const _ as usize } , 51usize , + concat ! ( + "Alignment of field: " , stringify ! ( + URLValueData ) , "::" , stringify ! ( + mMightHaveRef ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct URLValue { + pub _base: root::mozilla::css::URLValueData, + } + #[test] + fn bindgen_test_layout_URLValue() { + assert_eq!(::std::mem::size_of::() , 56usize , + concat ! ( "Size of: " , stringify ! ( URLValue ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( URLValue ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct ImageValue { + pub _base: root::mozilla::css::URLValueData, + pub mRequests: [u64; 5usize], + } + #[test] + fn bindgen_test_layout_ImageValue() { + assert_eq!(::std::mem::size_of::() , 96usize , + concat ! ( "Size of: " , stringify ! ( ImageValue ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( ImageValue ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageValue ) ) . mRequests as + * const _ as usize } , 56usize , concat ! ( + "Alignment of field: " , stringify ! ( ImageValue + ) , "::" , stringify ! ( mRequests ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct GridNamedArea { + pub mName: ::nsstring::nsStringRepr, + pub mColumnStart: u32, + pub mColumnEnd: u32, + pub mRowStart: u32, + pub mRowEnd: u32, + } + #[test] + fn bindgen_test_layout_GridNamedArea() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( + "Size of: " , stringify ! ( GridNamedArea ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( GridNamedArea ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridNamedArea ) ) . mName as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + GridNamedArea ) , "::" , stringify ! ( mName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridNamedArea ) ) . + mColumnStart as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GridNamedArea ) , "::" , stringify ! ( + mColumnStart ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridNamedArea ) ) . + mColumnEnd as * const _ as usize } , 20usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GridNamedArea ) , "::" , stringify ! ( mColumnEnd + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridNamedArea ) ) . mRowStart + as * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + GridNamedArea ) , "::" , stringify ! ( mRowStart ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridNamedArea ) ) . mRowEnd + as * const _ as usize } , 28usize , concat ! ( + "Alignment of field: " , stringify ! ( + GridNamedArea ) , "::" , stringify ! ( mRowEnd ) + )); + } + #[repr(C)] + #[derive(Debug)] + pub struct GridTemplateAreasValue { + pub mNamedAreas: root::nsTArray, + pub mTemplates: root::nsTArray<::nsstring::nsStringRepr>, + pub mNColumns: u32, + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + } + pub type GridTemplateAreasValue_HasThreadSafeRefCnt = + root::mozilla::TrueType; + #[test] + fn bindgen_test_layout_GridTemplateAreasValue() { + assert_eq!(::std::mem::size_of::() , + 32usize , concat ! ( + "Size of: " , stringify ! ( GridTemplateAreasValue + ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + GridTemplateAreasValue ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridTemplateAreasValue ) ) . + mNamedAreas as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GridTemplateAreasValue ) , "::" , stringify ! ( + mNamedAreas ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridTemplateAreasValue ) ) . + mTemplates as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GridTemplateAreasValue ) , "::" , stringify ! ( + mTemplates ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridTemplateAreasValue ) ) . + mNColumns as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + GridTemplateAreasValue ) , "::" , stringify ! ( + mNColumns ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const GridTemplateAreasValue ) ) . + mRefCnt as * const _ as usize } , 24usize , concat + ! ( + "Alignment of field: " , stringify ! ( + GridTemplateAreasValue ) , "::" , stringify ! ( + mRefCnt ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct FontFamilyListRefCnt { + pub _base: root::mozilla::FontFamilyList, + pub mRefCnt: root::nsAutoRefCnt, + } + pub type FontFamilyListRefCnt_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[test] + fn bindgen_test_layout_FontFamilyListRefCnt() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( FontFamilyListRefCnt ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + FontFamilyListRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyListRefCnt ) ) . + mRefCnt as * const _ as usize } , 16usize , concat + ! ( + "Alignment of field: " , stringify ! ( + FontFamilyListRefCnt ) , "::" , stringify ! ( + mRefCnt ) )); + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct RGBAColorData { + pub mR: f32, + pub mG: f32, + pub mB: f32, + pub mA: f32, + } + #[test] + fn bindgen_test_layout_RGBAColorData() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( + "Size of: " , stringify ! ( RGBAColorData ) )); + assert_eq! (::std::mem::align_of::() , 4usize , + concat ! ( + "Alignment of " , stringify ! ( RGBAColorData ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const RGBAColorData ) ) . mR as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + RGBAColorData ) , "::" , stringify ! ( mR ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const RGBAColorData ) ) . mG as * + const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( + RGBAColorData ) , "::" , stringify ! ( mG ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const RGBAColorData ) ) . mB as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + RGBAColorData ) , "::" , stringify ! ( mB ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const RGBAColorData ) ) . mA as * + const _ as usize } , 12usize , concat ! ( + "Alignment of field: " , stringify ! ( + RGBAColorData ) , "::" , stringify ! ( mA ) )); + } + impl Clone for RGBAColorData { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ComplexColorData { + pub mColor: root::mozilla::css::RGBAColorData, + pub mForegroundRatio: f32, + } + #[test] + fn bindgen_test_layout_ComplexColorData() { + assert_eq!(::std::mem::size_of::() , 20usize + , concat ! ( + "Size of: " , stringify ! ( ComplexColorData ) )); + assert_eq! (::std::mem::align_of::() , + 4usize , concat ! ( + "Alignment of " , stringify ! ( ComplexColorData ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComplexColorData ) ) . mColor + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + ComplexColorData ) , "::" , stringify ! ( mColor ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComplexColorData ) ) . + mForegroundRatio as * const _ as usize } , 16usize + , concat ! ( + "Alignment of field: " , stringify ! ( + ComplexColorData ) , "::" , stringify ! ( + mForegroundRatio ) )); + } + impl Clone for ComplexColorData { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct ComplexColorValue { + pub _base: root::mozilla::css::ComplexColorData, + pub mRefCnt: root::nsAutoRefCnt, + } + pub type ComplexColorValue_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[test] + fn bindgen_test_layout_ComplexColorValue() { + assert_eq!(::std::mem::size_of::() , + 32usize , concat ! ( + "Size of: " , stringify ! ( ComplexColorValue ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( ComplexColorValue + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComplexColorValue ) ) . + mRefCnt as * const _ as usize } , 24usize , concat + ! ( + "Alignment of field: " , stringify ! ( + ComplexColorValue ) , "::" , stringify ! ( mRefCnt + ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DocumentRule { + _unused: [u8; 0], + } + } + #[repr(C)] + #[derive(Debug)] + pub struct ThreadSafeAutoRefCnt { + pub mValue: u64, + } + pub const ThreadSafeAutoRefCnt_isThreadSafe: bool = true; + #[test] + fn bindgen_test_layout_ThreadSafeAutoRefCnt() { + assert_eq!(::std::mem::size_of::() , 8usize + , concat ! ( + "Size of: " , stringify ! ( ThreadSafeAutoRefCnt ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( ThreadSafeAutoRefCnt ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ThreadSafeAutoRefCnt ) ) . mValue + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + ThreadSafeAutoRefCnt ) , "::" , stringify ! ( mValue ) + )); + } + #[repr(C)] + #[derive(Debug)] + pub struct OwningNonNull { + pub mPtr: root::RefPtr, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct StaticRefPtr { + pub mRawPtr: *mut T, + } + #[repr(C)] + #[derive(Debug)] + pub struct LinkedListElement { + pub mNext: *mut root::mozilla::LinkedListElement, + pub mPrev: *mut root::mozilla::LinkedListElement, + pub mIsSentinel: bool, + } + pub type LinkedListElement_Traits = + root::mozilla::detail::LinkedListElementTraits; + pub type LinkedListElement_RawType = + root::mozilla::LinkedListElement_Traits; + pub type LinkedListElement_ConstRawType = + root::mozilla::LinkedListElement_Traits; + pub type LinkedListElement_ClientType = + root::mozilla::LinkedListElement_Traits; + pub type LinkedListElement_ConstClientType = + root::mozilla::LinkedListElement_Traits; + pub const LinkedListElement_NodeKind_Sentinel: + root::mozilla::LinkedListElement_NodeKind = + LinkedListElement_NodeKind::Normal; #[repr(i32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CSSEnabledState { - eForAllContent = 0, - eInUASheets = 1, - eInChrome = 2, - eIgnoreEnabledState = 255, + pub enum LinkedListElement_NodeKind { Normal = 0, } + #[repr(C)] + #[derive(Debug)] + pub struct LinkedList { + pub sentinel: root::mozilla::LinkedListElement, + } + pub type LinkedList_Traits = + root::mozilla::detail::LinkedListElementTraits; + pub type LinkedList_RawType = root::mozilla::LinkedList_Traits; + pub type LinkedList_ConstRawType = root::mozilla::LinkedList_Traits; + pub type LinkedList_ClientType = root::mozilla::LinkedList_Traits; + pub type LinkedList_ConstClientType = + root::mozilla::LinkedList_Traits; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct LinkedList_Iterator { + pub mCurrent: root::mozilla::LinkedList_RawType, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AlignedStorage2 { - pub u: root::mozilla::AlignedStorage2_U, - pub _phantom_0: ::std::marker::PhantomData, + pub struct AlignedStorage2 { + pub u: root::mozilla::AlignedStorage2_U, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AlignedStorage2_U { + pub struct AlignedStorage2_U { pub mBytes: root::__BindgenUnionField<*mut ::std::os::raw::c_char>, pub mDummy: root::__BindgenUnionField, pub bindgen_union_field: u64, - pub _phantom_0: ::std::marker::PhantomData, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Maybe { + } + pub type Maybe_ValueType = T; + pub mod gfx { + #[allow(unused_imports)] + use self::super::super::super::root; + pub type IntRegion = [u64; 3usize]; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Color { + pub _bindgen_opaque_blob: [u32; 4usize], + } + #[test] + fn bindgen_test_layout_Color() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! + ( "Size of: " , stringify ! ( Color ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat + ! ( "Alignment of " , stringify ! ( Color ) )); + } + impl Clone for Color { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct PointTyped { + } + pub type PointTyped_Coord = u8; + pub type PointTyped_Super = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct SizeTyped { + } + pub type SizeTyped_Super = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct IntPointTyped { + } + pub type IntPointTyped_ToInt = u32; + pub type IntPointTyped_Coord = u8; + pub type IntPointTyped_Super = u8; + pub type IntPoint = [u32; 2usize]; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct IntSizeTyped { + } + pub type IntSizeTyped_ToInt = u32; + pub type IntSizeTyped_Super = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct RectTyped { + } + pub type RectTyped_Super = u8; + pub type IntMargin = [u32; 4usize]; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct MarginTyped { + } + pub type MarginTyped_Super = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct IntRectTyped { + } + pub type IntRectTyped_Super = u8; + pub type IntRectTyped_Self = u8; + pub type IntRectTyped_ToInt = u32; + pub type IntRect = [u32; 4usize]; + #[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::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( FontVariation ) )); + assert_eq! (::std::mem::align_of::() , 4usize , + concat ! ( + "Alignment of " , stringify ! ( FontVariation ) + )); + } + impl Clone for FontVariation { + fn clone(&self) -> Self { *self } + } + pub type Matrix4x4 = [u32; 16usize]; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ScaleFactor { + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ScaleFactors2D { + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct SourceSurface { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DrawTarget { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Path { + _unused: [u8; 0], + } + } + pub mod layers { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct LayerManager { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ContainerLayer { + _unused: [u8; 0], + } + /** + * The viewport and displayport metrics for the painted frame at the + * time of a layer-tree transaction. These metrics are especially + * useful for shadow layers, because the metrics values are updated + * atomically with new pixels. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct FrameMetrics { + pub mScrollId: root::mozilla::layers::FrameMetrics_ViewID, + pub mPresShellResolution: f32, + pub mCompositionBounds: root::mozilla::ParentLayerRect, + pub mDisplayPort: root::mozilla::CSSRect, + pub mCriticalDisplayPort: root::mozilla::CSSRect, + pub mScrollableRect: root::mozilla::CSSRect, + pub mCumulativeResolution: root::mozilla::LayoutDeviceToLayerScale2D, + pub mDevPixelsPerCSSPixel: root::mozilla::CSSToLayoutDeviceScale, + pub mScrollOffset: root::mozilla::CSSPoint, + pub mZoom: root::mozilla::CSSToParentLayerScale2D, + pub mScrollGeneration: u32, + pub mSmoothScrollOffset: root::mozilla::CSSPoint, + pub mRootCompositionSize: root::mozilla::CSSSize, + pub mDisplayPortMargins: root::mozilla::ScreenMargin, + pub mPresShellId: u32, + pub mViewport: root::mozilla::CSSRect, + pub mExtraResolution: root::mozilla::ScreenToLayerScale2D, + pub mPaintRequestTime: root::mozilla::TimeStamp, + pub mScrollUpdateType: root::mozilla::layers::FrameMetrics_ScrollOffsetUpdateType, + pub _bitfield_1: u8, + pub __bindgen_padding_0: [u16; 3usize], + } + pub type FrameMetrics_ViewID = u64; + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum FrameMetrics_ScrollOffsetUpdateType { + eNone = 0, + eMainThread = 1, + ePending = 2, + eUserAction = 3, + eRestore = 4, + eSentinel = 5, + } + extern "C" { + #[link_name = + "_ZN7mozilla6layers12FrameMetrics14NULL_SCROLL_IDE"] + pub static FrameMetrics_NULL_SCROLL_ID: + root::mozilla::layers::FrameMetrics_ViewID; + } + pub const FrameMetrics_START_SCROLL_ID: + root::mozilla::layers::FrameMetrics_ViewID = + 2; + #[test] + fn bindgen_test_layout_FrameMetrics() { + assert_eq!(::std::mem::size_of::() , 184usize , + concat ! ( + "Size of: " , stringify ! ( FrameMetrics ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( FrameMetrics ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . mScrollId + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( mScrollId ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mPresShellResolution as * const _ as usize } , + 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mPresShellResolution ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mCompositionBounds as * const _ as usize } , + 12usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mCompositionBounds ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mDisplayPort as * const _ as usize } , 28usize , + concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( mDisplayPort + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mCriticalDisplayPort as * const _ as usize } , + 44usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mCriticalDisplayPort ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mScrollableRect as * const _ as usize } , 60usize + , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mScrollableRect ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mCumulativeResolution as * const _ as usize } , + 76usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mCumulativeResolution ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mDevPixelsPerCSSPixel as * const _ as usize } , + 84usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mDevPixelsPerCSSPixel ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mScrollOffset as * const _ as usize } , 88usize , + concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mScrollOffset ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . mZoom as * + const _ as usize } , 96usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( mZoom ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mScrollGeneration as * const _ as usize } , + 104usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mScrollGeneration ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mSmoothScrollOffset as * const _ as usize } , + 108usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mSmoothScrollOffset ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mRootCompositionSize as * const _ as usize } , + 116usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mRootCompositionSize ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mDisplayPortMargins as * const _ as usize } , + 124usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mDisplayPortMargins ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mPresShellId as * const _ as usize } , 140usize , + concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( mPresShellId + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . mViewport + as * const _ as usize } , 144usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( mViewport ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mExtraResolution as * const _ as usize } , + 160usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mExtraResolution ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mPaintRequestTime as * const _ as usize } , + 168usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mPaintRequestTime ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FrameMetrics ) ) . + mScrollUpdateType as * const _ as usize } , + 176usize , concat ! ( + "Alignment of field: " , stringify ! ( + FrameMetrics ) , "::" , stringify ! ( + mScrollUpdateType ) )); + } + impl Clone for FrameMetrics { + fn clone(&self) -> Self { *self } + } + impl FrameMetrics { + #[inline] + pub fn mIsRootContent(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsRootContent(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDoSmoothScroll(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mDoSmoothScroll(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUseDisplayPortMargins(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mUseDisplayPortMargins(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsScrollInfoLayer(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsScrollInfoLayer(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug)] + pub struct ScrollSnapInfo { + pub mScrollSnapTypeX: u8, + pub mScrollSnapTypeY: u8, + pub mScrollSnapIntervalX: [u32; 2usize], + pub mScrollSnapIntervalY: [u32; 2usize], + pub mScrollSnapDestination: root::nsPoint, + pub mScrollSnapCoordinates: root::nsTArray, + } + #[test] + fn bindgen_test_layout_ScrollSnapInfo() { + assert_eq!(::std::mem::size_of::() , 40usize , + concat ! ( + "Size of: " , stringify ! ( ScrollSnapInfo ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( ScrollSnapInfo ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapTypeX as * const _ as usize } , 0usize + , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapTypeX ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapTypeY as * const _ as usize } , 1usize + , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapTypeY ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapIntervalX as * const _ as usize } , + 4usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapIntervalX ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapIntervalY as * const _ as usize } , + 12usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapIntervalY ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapDestination as * const _ as usize } , + 20usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapDestination ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollSnapInfo ) ) . + mScrollSnapCoordinates as * const _ as usize } , + 32usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollSnapInfo ) , "::" , stringify ! ( + mScrollSnapCoordinates ) )); + } + /** + * A clip that applies to a layer, that may be scrolled by some of the + * scroll frames associated with the layer. + */ + #[repr(C)] + #[derive(Debug)] + pub struct LayerClip { + pub mClipRect: root::mozilla::ParentLayerIntRect, + pub mMaskLayerIndex: [u64; 2usize], + } + #[test] + fn bindgen_test_layout_LayerClip() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( "Size of: " , stringify ! ( LayerClip ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( LayerClip ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LayerClip ) ) . mClipRect as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( LayerClip ) + , "::" , stringify ! ( mClipRect ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LayerClip ) ) . + mMaskLayerIndex as * const _ as usize } , 16usize + , concat ! ( + "Alignment of field: " , stringify ! ( LayerClip ) + , "::" , stringify ! ( mMaskLayerIndex ) )); + } + /** + * Metadata about a scroll frame that's stored in the layer tree for use by + * the compositor (including APZ). This includes the scroll frame's FrameMetrics, + * as well as other metadata. We don't put the other metadata into FrameMetrics + * to avoid FrameMetrics becoming too bloated (as a FrameMetrics is e.g. sent + * over IPC for every repaint request for every active scroll frame). + */ + #[repr(C)] + #[derive(Debug)] + pub struct ScrollMetadata { + pub mMetrics: root::mozilla::layers::FrameMetrics, + pub mSnapInfo: root::mozilla::layers::ScrollSnapInfo, + pub mScrollParentId: root::mozilla::layers::ScrollMetadata_ViewID, + pub mBackgroundColor: root::mozilla::gfx::Color, + pub mContentDescription: root::nsCString, + pub mLineScrollAmount: root::mozilla::LayoutDeviceIntSize, + pub mPageScrollAmount: root::mozilla::LayoutDeviceIntSize, + pub mScrollClip: [u64; 5usize], + pub _bitfield_1: u8, + pub __bindgen_padding_0: [u8; 7usize], + } + pub type ScrollMetadata_ViewID = + root::mozilla::layers::FrameMetrics_ViewID; + extern "C" { + #[link_name = + "_ZN7mozilla6layers14ScrollMetadata13sNullMetadataE"] + pub static mut ScrollMetadata_sNullMetadata: + root::mozilla::StaticAutoPtr; + } + #[test] + fn bindgen_test_layout_ScrollMetadata() { + assert_eq!(::std::mem::size_of::() , 328usize + , concat ! ( + "Size of: " , stringify ! ( ScrollMetadata ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( ScrollMetadata ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . mMetrics + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( mMetrics ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mSnapInfo as * const _ as usize } , 184usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( mSnapInfo + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mScrollParentId as * const _ as usize } , 224usize + , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mScrollParentId ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mBackgroundColor as * const _ as usize } , + 232usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mBackgroundColor ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mContentDescription as * const _ as usize } , + 248usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mContentDescription ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mLineScrollAmount as * const _ as usize } , + 264usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mLineScrollAmount ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mPageScrollAmount as * const _ as usize } , + 272usize , concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mPageScrollAmount ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollMetadata ) ) . + mScrollClip as * const _ as usize } , 280usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ScrollMetadata ) , "::" , stringify ! ( + mScrollClip ) )); + } + impl ScrollMetadata { + #[inline] + pub fn mHasScrollgrab(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasScrollgrab(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mAllowVerticalScrollWithWheel(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mAllowVerticalScrollWithWheel(&mut self, + val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsLayersIdRoot(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsLayersIdRoot(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUsesContainerScrolling(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mUsesContainerScrolling(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mForceDisableApz(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mForceDisableApz(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Layer { + _unused: [u8; 0], + } } pub mod dom { #[allow(unused_imports)] use self::super::super::super::root; - #[repr(C)] - #[derive(Debug)] - pub struct Element { - pub _base: root::mozilla::dom::FragmentOrElement, - pub mState: root::mozilla::EventStates, - pub mServoData: ::gecko_bindings::structs::ServoCell<*mut ::gecko_bindings::structs::ServoNodeData>, + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum PlaybackDirection { + Normal = 0, + Reverse = 1, + Alternate = 2, + Alternate_reverse = 3, + EndGuard_ = 4, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Element_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - /** - * StyleStateLocks is used to specify which event states should be locked, - * and whether they should be locked to on or off. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Element_StyleStateLocks { - pub mLocks: root::mozilla::EventStates, - pub mValues: root::mozilla::EventStates, - } - #[test] - fn bindgen_test_layout_Element_StyleStateLocks() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( Element_StyleStateLocks - ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - Element_StyleStateLocks ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Element_StyleStateLocks ) ) . - mLocks as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - Element_StyleStateLocks ) , "::" , stringify ! ( - mLocks ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Element_StyleStateLocks ) ) . - mValues as * const _ as usize } , 8usize , concat - ! ( - "Alignment of field: " , stringify ! ( - Element_StyleStateLocks ) , "::" , stringify ! ( - mValues ) )); - } - impl Clone for Element_StyleStateLocks { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Element_MappedAttributeEntry { - pub attribute: *mut *mut root::nsIAtom, - } - #[test] - fn bindgen_test_layout_Element_MappedAttributeEntry() { - assert_eq!(::std::mem::size_of::() - , 8usize , concat ! ( - "Size of: " , stringify ! ( - Element_MappedAttributeEntry ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - Element_MappedAttributeEntry ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const Element_MappedAttributeEntry ) ) - . attribute as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - Element_MappedAttributeEntry ) , "::" , stringify - ! ( attribute ) )); - } - impl Clone for Element_MappedAttributeEntry { - fn clone(&self) -> Self { *self } - } - pub const Element_kFireMutationEvent: bool = true; - pub const Element_kDontFireMutationEvent: bool = false; - pub const Element_kNotifyDocumentObservers: bool = true; - pub const Element_kDontNotifyDocumentObservers: bool = false; - pub const Element_kCallAfterSetAttr: bool = true; - pub const Element_kDontCallAfterSetAttr: bool = false; - #[test] - fn bindgen_test_layout_Element() { - assert_eq!(::std::mem::size_of::() , 128usize , - concat ! ( "Size of: " , stringify ! ( Element ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( Element ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Element ) ) . mState as * - const _ as usize } , 112usize , concat ! ( - "Alignment of field: " , stringify ! ( Element ) , - "::" , stringify ! ( mState ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Element ) ) . mServoData as * - const _ as usize } , 120usize , concat ! ( - "Alignment of field: " , stringify ! ( Element ) , - "::" , stringify ! ( mServoData ) )); + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum FillMode { + None = 0, + Forwards = 1, + Backwards = 2, + Both = 3, + Auto = 4, + EndGuard_ = 5, } pub mod binding_detail { #[allow(unused_imports)] @@ -1600,7 +2838,7 @@ pub mod root { #[repr(C)] #[derive(Debug)] pub struct FastErrorResult { - pub _base: root::mozilla::binding_danger::TErrorResult, + pub _base: root::mozilla::binding_danger::TErrorResult, } #[test] fn bindgen_test_layout_FastErrorResult() { @@ -1835,8 +3073,9 @@ pub mod root { impl Clone for AllOwningUnionBase { fn clone(&self) -> Self { *self } } + #[repr(u32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CallerType { } + pub enum CallerType { System = 0, NonSystem = 1, } #[repr(C)] #[derive(Debug)] pub struct GlobalObject { @@ -1873,6 +3112,14 @@ pub mod root { mGlobalObject ) )); } #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Optional { + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Sequence { + } + #[repr(C)] #[derive(Debug, Copy)] pub struct ParentObject { pub mObject: *const root::nsISupports, @@ -1913,10 +3160,651 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Event([u8; 0]); - #[repr(C)] - pub struct DispatcherTrait__bindgen_vtable { + pub struct Nullable { } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CSSStyleSheetParsingMode { + Author = 0, + User = 1, + Agent = 2, + EndGuard_ = 3, + } + #[repr(C)] + #[derive(Debug)] + pub struct OriginAttributesDictionary { + pub _base: root::mozilla::dom::DictionaryBase, + pub mAppId: u32, + pub mFirstPartyDomain: ::nsstring::nsStringRepr, + pub mInIsolatedMozBrowser: bool, + pub mPrivateBrowsingId: u32, + pub mUserContextId: u32, + } + #[test] + fn bindgen_test_layout_OriginAttributesDictionary() { + assert_eq!(::std::mem::size_of::() + , 40usize , concat ! ( + "Size of: " , stringify ! ( + OriginAttributesDictionary ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + OriginAttributesDictionary ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OriginAttributesDictionary ) + ) . mAppId as * const _ as usize } , 4usize , + concat ! ( + "Alignment of field: " , stringify ! ( + OriginAttributesDictionary ) , "::" , stringify ! + ( mAppId ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OriginAttributesDictionary ) + ) . mFirstPartyDomain as * const _ as usize } , + 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + OriginAttributesDictionary ) , "::" , stringify ! + ( mFirstPartyDomain ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OriginAttributesDictionary ) + ) . mInIsolatedMozBrowser as * const _ as usize } + , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + OriginAttributesDictionary ) , "::" , stringify ! + ( mInIsolatedMozBrowser ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OriginAttributesDictionary ) + ) . mPrivateBrowsingId as * const _ as usize } , + 28usize , concat ! ( + "Alignment of field: " , stringify ! ( + OriginAttributesDictionary ) , "::" , stringify ! + ( mPrivateBrowsingId ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OriginAttributesDictionary ) + ) . mUserContextId as * const _ as usize } , + 32usize , concat ! ( + "Alignment of field: " , stringify ! ( + OriginAttributesDictionary ) , "::" , stringify ! + ( mUserContextId ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Promise { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct CSSRuleList { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct MediaList { + pub _base: root::nsIDOMMediaList, + pub _base_1: root::nsWrapperCache, + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub mStyleSheet: *mut root::mozilla::StyleSheet, + } + pub type MediaList_HasThreadSafeRefCnt = root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct MediaList_cycleCollection { + pub _base: root::nsXPCOMCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_MediaList_cycleCollection() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + MediaList_cycleCollection ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + MediaList_cycleCollection ) )); + } + impl Clone for MediaList_cycleCollection { + fn clone(&self) -> Self { *self } + } + extern "C" { + #[link_name = + "_ZN7mozilla3dom9MediaList21_cycleCollectorGlobalE"] + pub static mut MediaList__cycleCollectorGlobal: + root::mozilla::dom::MediaList_cycleCollection; + } + #[test] + fn bindgen_test_layout_MediaList() { + assert_eq!(::std::mem::size_of::() , 48usize , + concat ! ( "Size of: " , stringify ! ( MediaList ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( MediaList ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct Element { + pub _base: root::mozilla::dom::FragmentOrElement, + pub mState: root::mozilla::EventStates, + pub mServoData: ::gecko_bindings::structs::ServoCell<*mut ::gecko_bindings::structs::ServoNodeData>, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Element_COMTypeInfo { + pub _address: u8, + } + /** + * StyleStateLocks is used to specify which event states should be locked, + * and whether they should be locked to on or off. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Element_StyleStateLocks { + pub mLocks: root::mozilla::EventStates, + pub mValues: root::mozilla::EventStates, + } + #[test] + fn bindgen_test_layout_Element_StyleStateLocks() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( Element_StyleStateLocks + ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + Element_StyleStateLocks ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Element_StyleStateLocks ) ) . + mLocks as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + Element_StyleStateLocks ) , "::" , stringify ! ( + mLocks ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Element_StyleStateLocks ) ) . + mValues as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + Element_StyleStateLocks ) , "::" , stringify ! ( + mValues ) )); + } + impl Clone for Element_StyleStateLocks { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Element_MappedAttributeEntry { + pub attribute: *mut *mut root::nsIAtom, + } + #[test] + fn bindgen_test_layout_Element_MappedAttributeEntry() { + assert_eq!(::std::mem::size_of::() + , 8usize , concat ! ( + "Size of: " , stringify ! ( + Element_MappedAttributeEntry ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + Element_MappedAttributeEntry ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const Element_MappedAttributeEntry ) ) + . attribute as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + Element_MappedAttributeEntry ) , "::" , stringify + ! ( attribute ) )); + } + impl Clone for Element_MappedAttributeEntry { + fn clone(&self) -> Self { *self } + } + pub const Element_kFireMutationEvent: bool = true; + pub const Element_kDontFireMutationEvent: bool = false; + pub const Element_kNotifyDocumentObservers: bool = true; + pub const Element_kDontNotifyDocumentObservers: bool = false; + pub const Element_kCallAfterSetAttr: bool = true; + pub const Element_kDontCallAfterSetAttr: bool = false; + #[test] + fn bindgen_test_layout_Element() { + assert_eq!(::std::mem::size_of::() , 128usize , + concat ! ( "Size of: " , stringify ! ( Element ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( Element ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Element ) ) . mState as * + const _ as usize } , 112usize , concat ! ( + "Alignment of field: " , stringify ! ( Element ) , + "::" , stringify ! ( mState ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Element ) ) . mServoData as * + const _ as usize } , 120usize , concat ! ( + "Alignment of field: " , stringify ! ( Element ) , + "::" , stringify ! ( mServoData ) )); + } + /** + * Struct that stores info on an attribute. The name and value must either both + * be null or both be non-null. + * + * Note that, just as the pointers returned by GetAttrNameAt, the pointers that + * this struct hold are only valid until the element or its attributes are + * mutated (directly or via script). + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct BorrowedAttrInfo { + pub mName: *const root::nsAttrName, + pub mValue: *const root::nsAttrValue, + } + #[test] + fn bindgen_test_layout_BorrowedAttrInfo() { + assert_eq!(::std::mem::size_of::() , 16usize + , concat ! ( + "Size of: " , stringify ! ( BorrowedAttrInfo ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( BorrowedAttrInfo ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const BorrowedAttrInfo ) ) . mName + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + BorrowedAttrInfo ) , "::" , stringify ! ( mName ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const BorrowedAttrInfo ) ) . mValue + as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + BorrowedAttrInfo ) , "::" , stringify ! ( mValue ) + )); + } + impl Clone for BorrowedAttrInfo { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct NodeInfo { + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub mDocument: *mut root::nsIDocument, + pub mInner: root::mozilla::dom::NodeInfo_NodeInfoInner, + pub mOwnerManager: root::RefPtr, + pub mQualifiedName: ::nsstring::nsStringRepr, + pub mNodeName: ::nsstring::nsStringRepr, + pub mLocalName: ::nsstring::nsStringRepr, + } + pub type NodeInfo_HasThreadSafeRefCnt = root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct NodeInfo_cycleCollection { + pub _base: root::nsCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_NodeInfo_cycleCollection() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( + NodeInfo_cycleCollection ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + NodeInfo_cycleCollection ) )); + } + impl Clone for NodeInfo_cycleCollection { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct NodeInfo_NodeInfoInner { + pub mName: root::nsCOMPtr, + pub mPrefix: root::nsCOMPtr, + pub mNamespaceID: i32, + pub mNodeType: u16, + pub mNameString: *const root::nsAString, + pub mExtraName: root::nsCOMPtr, + } + #[test] + fn bindgen_test_layout_NodeInfo_NodeInfoInner() { + assert_eq!(::std::mem::size_of::() , + 40usize , concat ! ( + "Size of: " , stringify ! ( NodeInfo_NodeInfoInner + ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + NodeInfo_NodeInfoInner ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mName as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mPrefix as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mPrefix ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mNamespaceID as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mNamespaceID ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mNodeType as * const _ as usize } , 20usize , + concat ! ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mNodeType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mNameString as * const _ as usize } , 24usize , + concat ! ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mNameString ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . + mExtraName as * const _ as usize } , 32usize , + concat ! ( + "Alignment of field: " , stringify ! ( + NodeInfo_NodeInfoInner ) , "::" , stringify ! ( + mExtraName ) )); + } + extern "C" { + #[link_name = + "_ZN7mozilla3dom8NodeInfo21_cycleCollectorGlobalE"] + pub static mut NodeInfo__cycleCollectorGlobal: + root::mozilla::dom::NodeInfo_cycleCollection; + } + #[test] + fn bindgen_test_layout_NodeInfo() { + assert_eq!(::std::mem::size_of::() , 112usize , + concat ! ( "Size of: " , stringify ! ( NodeInfo ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( NodeInfo ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mRefCnt as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mDocument as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mDocument ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mInner as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mInner ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mOwnerManager + as * const _ as usize } , 56usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mOwnerManager ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mQualifiedName + as * const _ as usize } , 64usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mQualifiedName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mNodeName as * + const _ as usize } , 80usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mNodeName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NodeInfo ) ) . mLocalName as + * const _ as usize } , 96usize , concat ! ( + "Alignment of field: " , stringify ! ( NodeInfo ) + , "::" , stringify ! ( mLocalName ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct EventTarget { + pub _base: root::nsIDOMEventTarget, + pub _base_1: root::nsWrapperCache, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventTarget_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_EventTarget() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( + "Size of: " , stringify ! ( EventTarget ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( EventTarget ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AddEventListenerOptionsOrBoolean { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Event { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventListener { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventListenerOptionsOrBoolean { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct EventHandlerNonNull { + pub _base: root::mozilla::dom::CallbackFunction, + } + #[test] + fn bindgen_test_layout_EventHandlerNonNull() { + assert_eq!(::std::mem::size_of::() , + 48usize , concat ! ( + "Size of: " , stringify ! ( EventHandlerNonNull ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + EventHandlerNonNull ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AccessibleNode { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct BoxQuadOptions { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ConvertCoordinateOptions { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DOMPoint { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DOMQuad { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct DOMRectReadOnly { + pub _base: root::nsISupports, + pub _base_1: root::nsWrapperCache, + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub mParent: root::nsCOMPtr, + } + pub type DOMRectReadOnly_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct DOMRectReadOnly_cycleCollection { + pub _base: root::nsXPCOMCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_DOMRectReadOnly_cycleCollection() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + DOMRectReadOnly_cycleCollection ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + DOMRectReadOnly_cycleCollection ) )); + } + impl Clone for DOMRectReadOnly_cycleCollection { + fn clone(&self) -> Self { *self } + } + extern "C" { + #[link_name = + "_ZN7mozilla3dom15DOMRectReadOnly21_cycleCollectorGlobalE"] + pub static mut DOMRectReadOnly__cycleCollectorGlobal: + root::mozilla::dom::DOMRectReadOnly_cycleCollection; + } + #[test] + fn bindgen_test_layout_DOMRectReadOnly() { + assert_eq!(::std::mem::size_of::() , 48usize + , concat ! ( + "Size of: " , stringify ! ( DOMRectReadOnly ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( DOMRectReadOnly ) + )); + } + #[repr(C)] + #[derive(Debug)] + pub struct OwningNodeOrString { + pub mType: root::mozilla::dom::OwningNodeOrString_Type, + pub mValue: root::mozilla::dom::OwningNodeOrString_Value, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum OwningNodeOrString_Type { + eUninitialized = 0, + eNode = 1, + eString = 2, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct OwningNodeOrString_Value { + pub mNode: root::__BindgenUnionField, + pub mString: root::__BindgenUnionField, + pub bindgen_union_field: [u64; 2usize], + } + #[test] + fn bindgen_test_layout_OwningNodeOrString_Value() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( + OwningNodeOrString_Value ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + OwningNodeOrString_Value ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OwningNodeOrString_Value ) ) + . mNode as * const _ as usize } , 0usize , concat + ! ( + "Alignment of field: " , stringify ! ( + OwningNodeOrString_Value ) , "::" , stringify ! ( + mNode ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OwningNodeOrString_Value ) ) + . mString as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + OwningNodeOrString_Value ) , "::" , stringify ! ( + mString ) )); + } + impl Clone for OwningNodeOrString_Value { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_OwningNodeOrString() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( OwningNodeOrString ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( OwningNodeOrString + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OwningNodeOrString ) ) . + mType as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + OwningNodeOrString ) , "::" , stringify ! ( mType + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const OwningNodeOrString ) ) . + mValue as * const _ as usize } , 8usize , concat ! + ( + "Alignment of field: " , stringify ! ( + OwningNodeOrString ) , "::" , stringify ! ( mValue + ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Text { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct TextOrElementOrDocument { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DOMPointInit { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct GetRootNodeOptions { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ShadowRoot { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Touch { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Selection { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct UnionMember { + pub mStorage: root::mozilla::AlignedStorage2, + } + #[repr(C)] + pub struct DispatcherTrait__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug, Copy)] pub struct DispatcherTrait { @@ -1937,69 +3825,217 @@ pub mod root { } #[repr(C)] #[derive(Debug)] - pub struct EventTarget { - pub _base: root::nsIDOMEventTarget, - pub _base_1: root::nsWrapperCache, + pub struct ScriptSettingsStackEntry { + pub mGlobalObject: root::nsCOMPtr, + pub mType: root::mozilla::dom::ScriptSettingsStackEntry_Type, + pub mOlder: *mut root::mozilla::dom::ScriptSettingsStackEntry, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventTarget_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum ScriptSettingsStackEntry_Type { + eEntryScript = 0, + eIncumbentScript = 1, + eJSAPI = 2, + eNoJSAPI = 3, } #[test] - fn bindgen_test_layout_EventTarget() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( - "Size of: " , stringify ! ( EventTarget ) )); - assert_eq! (::std::mem::align_of::() , 8usize , + fn bindgen_test_layout_ScriptSettingsStackEntry() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( + ScriptSettingsStackEntry ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + ScriptSettingsStackEntry ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScriptSettingsStackEntry ) ) + . mGlobalObject as * const _ as usize } , 0usize , concat ! ( - "Alignment of " , stringify ! ( EventTarget ) )); + "Alignment of field: " , stringify ! ( + ScriptSettingsStackEntry ) , "::" , stringify ! ( + mGlobalObject ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScriptSettingsStackEntry ) ) + . mType as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + ScriptSettingsStackEntry ) , "::" , stringify ! ( + mType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScriptSettingsStackEntry ) ) + . mOlder as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ScriptSettingsStackEntry ) , "::" , stringify ! ( + mOlder ) )); } #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct AddEventListenerOptionsOrBoolean([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventListener([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventListenerOptionsOrBoolean([u8; 0]); - #[repr(C)] #[derive(Debug)] - pub struct EventHandlerNonNull { - pub _base: root::mozilla::dom::CallbackFunction, + pub struct AutoJSAPI { + pub _base: root::mozilla::dom::ScriptSettingsStackEntry, + pub mAutoRequest: [u64; 2usize], + pub mAutoNullableCompartment: [u64; 3usize], + pub mCx: *mut root::JSContext, + pub mIsMainThread: bool, + pub mOldWarningReporter: [u64; 2usize], } #[test] - fn bindgen_test_layout_EventHandlerNonNull() { - assert_eq!(::std::mem::size_of::() , - 48usize , concat ! ( - "Size of: " , stringify ! ( EventHandlerNonNull ) + fn bindgen_test_layout_AutoJSAPI() { + assert_eq!(::std::mem::size_of::() , 96usize , + concat ! ( "Size of: " , stringify ! ( AutoJSAPI ) )); - assert_eq! (::std::mem::align_of::() , + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( AutoJSAPI ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoJSAPI ) ) . mAutoRequest + as * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( AutoJSAPI ) + , "::" , stringify ! ( mAutoRequest ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoJSAPI ) ) . + mAutoNullableCompartment as * const _ as usize } , + 40usize , concat ! ( + "Alignment of field: " , stringify ! ( AutoJSAPI ) + , "::" , stringify ! ( mAutoNullableCompartment ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoJSAPI ) ) . mCx as * + const _ as usize } , 64usize , concat ! ( + "Alignment of field: " , stringify ! ( AutoJSAPI ) + , "::" , stringify ! ( mCx ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoJSAPI ) ) . mIsMainThread + as * const _ as usize } , 72usize , concat ! ( + "Alignment of field: " , stringify ! ( AutoJSAPI ) + , "::" , stringify ! ( mIsMainThread ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoJSAPI ) ) . + mOldWarningReporter as * const _ as usize } , + 80usize , concat ! ( + "Alignment of field: " , stringify ! ( AutoJSAPI ) + , "::" , stringify ! ( mOldWarningReporter ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct AutoEntryScript { + pub _base: root::mozilla::dom::AutoJSAPI, + pub mWebIDLCallerPrincipal: *mut root::nsIPrincipal, + pub mDocShellEntryMonitor: [u64; 5usize], + pub mCallerOverride: root::JS::AutoHideScriptedCaller, + } + #[repr(C)] + #[derive(Debug)] + pub struct AutoEntryScript_DocshellEntryMonitor { + pub _base: root::JS::dbg::AutoEntryMonitor, + pub mReason: *const ::std::os::raw::c_char, + } + #[test] + fn bindgen_test_layout_AutoEntryScript_DocshellEntryMonitor() { + assert_eq!(::std::mem::size_of::() + , 32usize , concat ! ( + "Size of: " , stringify ! ( + AutoEntryScript_DocshellEntryMonitor ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + AutoEntryScript_DocshellEntryMonitor ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const AutoEntryScript_DocshellEntryMonitor + ) ) . mReason as * const _ as usize } , 24usize , + concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryScript_DocshellEntryMonitor ) , "::" , + stringify ! ( mReason ) )); + } + #[test] + fn bindgen_test_layout_AutoEntryScript() { + assert_eq!(::std::mem::size_of::() , 152usize + , concat ! ( + "Size of: " , stringify ! ( AutoEntryScript ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( AutoEntryScript ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoEntryScript ) ) . + mWebIDLCallerPrincipal as * const _ as usize } , + 96usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryScript ) , "::" , stringify ! ( + mWebIDLCallerPrincipal ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoEntryScript ) ) . + mDocShellEntryMonitor as * const _ as usize } , + 104usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryScript ) , "::" , stringify ! ( + mDocShellEntryMonitor ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoEntryScript ) ) . + mCallerOverride as * const _ as usize } , 144usize + , concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryScript ) , "::" , stringify ! ( + mCallerOverride ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct AutoIncumbentScript { + pub _base: root::mozilla::dom::ScriptSettingsStackEntry, + pub mCallerOverride: root::JS::AutoHideScriptedCaller, + } + #[test] + fn bindgen_test_layout_AutoIncumbentScript() { + assert_eq!(::std::mem::size_of::() , + 32usize , concat ! ( + "Size of: " , stringify ! ( AutoIncumbentScript ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( "Alignment of " , stringify ! ( - EventHandlerNonNull ) )); + AutoIncumbentScript ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoIncumbentScript ) ) . + mCallerOverride as * const _ as usize } , 24usize + , concat ! ( + "Alignment of field: " , stringify ! ( + AutoIncumbentScript ) , "::" , stringify ! ( + mCallerOverride ) )); } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AudioContext([u8; 0]); + pub struct AudioContext { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DocGroup([u8; 0]); + pub struct DocGroup { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Performance([u8; 0]); + pub struct Performance { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ServiceWorkerRegistration([u8; 0]); + pub struct ServiceWorkerRegistration { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct TimeoutManager([u8; 0]); + pub struct TimeoutManager { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct CustomElementRegistry([u8; 0]); + pub struct CustomElementRegistry { + _unused: [u8; 0], + } #[repr(u8)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum LargeAllocStatus { @@ -2012,7 +4048,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct PrefSetting([u8; 0]); + pub struct PrefSetting { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct CallbackObject { @@ -2020,15 +4058,13 @@ pub mod root { pub mRefCnt: root::nsCycleCollectingAutoRefCnt, pub mCallback: root::JS::Heap<*mut root::JSObject>, pub mCreationStack: root::JS::Heap<*mut root::JSObject>, - pub mIncumbentGlobal: root::nsCOMPtr, - pub mIncumbentJSGlobal: root::JS::TenuredHeap<*mut root::JSObject>, + pub mIncumbentGlobal: root::nsCOMPtr, + pub mIncumbentJSGlobal: root::JS::TenuredHeap, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct CallbackObject_COMTypeInfo { + pub struct CallbackObject_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub type CallbackObject_HasThreadSafeRefCnt = root::mozilla::FalseType; @@ -2256,10 +4292,8 @@ pub mod root { } #[repr(C)] #[derive(Debug)] - pub struct CallbackObjectHolder { + pub struct CallbackObjectHolder { pub mPtrBits: usize, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[repr(C)] #[derive(Debug, Copy)] @@ -2309,413 +4343,6 @@ pub mod root { } #[repr(u8)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CSSStyleSheetParsingMode { - Author = 0, - User = 1, - Agent = 2, - EndGuard_ = 3, - } - #[repr(C)] - #[derive(Debug)] - pub struct OriginAttributesDictionary { - pub _base: root::mozilla::dom::DictionaryBase, - pub mAppId: u32, - pub mFirstPartyDomain: ::nsstring::nsStringRepr, - pub mInIsolatedMozBrowser: bool, - pub mPrivateBrowsingId: u32, - pub mUserContextId: u32, - } - #[test] - fn bindgen_test_layout_OriginAttributesDictionary() { - assert_eq!(::std::mem::size_of::() - , 40usize , concat ! ( - "Size of: " , stringify ! ( - OriginAttributesDictionary ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - OriginAttributesDictionary ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OriginAttributesDictionary ) - ) . mAppId as * const _ as usize } , 4usize , - concat ! ( - "Alignment of field: " , stringify ! ( - OriginAttributesDictionary ) , "::" , stringify ! - ( mAppId ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OriginAttributesDictionary ) - ) . mFirstPartyDomain as * const _ as usize } , - 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - OriginAttributesDictionary ) , "::" , stringify ! - ( mFirstPartyDomain ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OriginAttributesDictionary ) - ) . mInIsolatedMozBrowser as * const _ as usize } - , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - OriginAttributesDictionary ) , "::" , stringify ! - ( mInIsolatedMozBrowser ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OriginAttributesDictionary ) - ) . mPrivateBrowsingId as * const _ as usize } , - 28usize , concat ! ( - "Alignment of field: " , stringify ! ( - OriginAttributesDictionary ) , "::" , stringify ! - ( mPrivateBrowsingId ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OriginAttributesDictionary ) - ) . mUserContextId as * const _ as usize } , - 32usize , concat ! ( - "Alignment of field: " , stringify ! ( - OriginAttributesDictionary ) , "::" , stringify ! - ( mUserContextId ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Promise([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct CSSRuleList([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct MediaList { - pub _base: root::nsIDOMMediaList, - pub _base_1: root::nsWrapperCache, - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub mStyleSheet: *mut root::mozilla::StyleSheet, - } - pub type MediaList_HasThreadSafeRefCnt = root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct MediaList_cycleCollection { - pub _base: root::nsXPCOMCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_MediaList_cycleCollection() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - MediaList_cycleCollection ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - MediaList_cycleCollection ) )); - } - impl Clone for MediaList_cycleCollection { - fn clone(&self) -> Self { *self } - } - extern "C" { - #[link_name = - "_ZN7mozilla3dom9MediaList21_cycleCollectorGlobalE"] - pub static mut MediaList__cycleCollectorGlobal: - root::mozilla::dom::MediaList_cycleCollection; - } - #[test] - fn bindgen_test_layout_MediaList() { - assert_eq!(::std::mem::size_of::() , 48usize , - concat ! ( "Size of: " , stringify ! ( MediaList ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( MediaList ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct NodeInfo { - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub mDocument: *mut root::nsIDocument, - pub mInner: root::mozilla::dom::NodeInfo_NodeInfoInner, - pub mOwnerManager: root::RefPtr, - pub mQualifiedName: ::nsstring::nsStringRepr, - pub mNodeName: ::nsstring::nsStringRepr, - pub mLocalName: ::nsstring::nsStringRepr, - } - pub type NodeInfo_HasThreadSafeRefCnt = root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct NodeInfo_cycleCollection { - pub _base: root::nsCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_NodeInfo_cycleCollection() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( - NodeInfo_cycleCollection ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - NodeInfo_cycleCollection ) )); - } - impl Clone for NodeInfo_cycleCollection { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct NodeInfo_NodeInfoInner { - pub mName: root::nsCOMPtr, - pub mPrefix: root::nsCOMPtr, - pub mNamespaceID: i32, - pub mNodeType: u16, - pub mNameString: *const root::nsAString, - pub mExtraName: root::nsCOMPtr, - } - #[test] - fn bindgen_test_layout_NodeInfo_NodeInfoInner() { - assert_eq!(::std::mem::size_of::() , - 40usize , concat ! ( - "Size of: " , stringify ! ( NodeInfo_NodeInfoInner - ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - NodeInfo_NodeInfoInner ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mName as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mPrefix as * const _ as usize } , 8usize , concat - ! ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mPrefix ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mNamespaceID as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mNamespaceID ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mNodeType as * const _ as usize } , 20usize , - concat ! ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mNodeType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mNameString as * const _ as usize } , 24usize , - concat ! ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mNameString ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo_NodeInfoInner ) ) . - mExtraName as * const _ as usize } , 32usize , - concat ! ( - "Alignment of field: " , stringify ! ( - NodeInfo_NodeInfoInner ) , "::" , stringify ! ( - mExtraName ) )); - } - extern "C" { - #[link_name = - "_ZN7mozilla3dom8NodeInfo21_cycleCollectorGlobalE"] - pub static mut NodeInfo__cycleCollectorGlobal: - root::mozilla::dom::NodeInfo_cycleCollection; - } - #[test] - fn bindgen_test_layout_NodeInfo() { - assert_eq!(::std::mem::size_of::() , 112usize , - concat ! ( "Size of: " , stringify ! ( NodeInfo ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( NodeInfo ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mRefCnt as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mDocument as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mDocument ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mInner as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mInner ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mOwnerManager - as * const _ as usize } , 56usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mOwnerManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mQualifiedName - as * const _ as usize } , 64usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mQualifiedName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mNodeName as * - const _ as usize } , 80usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mNodeName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const NodeInfo ) ) . mLocalName as - * const _ as usize } , 96usize , concat ! ( - "Alignment of field: " , stringify ! ( NodeInfo ) - , "::" , stringify ! ( mLocalName ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct AccessibleNode([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct BoxQuadOptions([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ConvertCoordinateOptions([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DOMPoint([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DOMQuad([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct DOMRectReadOnly { - pub _base: root::nsISupports, - pub _base_1: root::nsWrapperCache, - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub mParent: root::nsCOMPtr, - } - pub type DOMRectReadOnly_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct DOMRectReadOnly_cycleCollection { - pub _base: root::nsXPCOMCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_DOMRectReadOnly_cycleCollection() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - DOMRectReadOnly_cycleCollection ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - DOMRectReadOnly_cycleCollection ) )); - } - impl Clone for DOMRectReadOnly_cycleCollection { - fn clone(&self) -> Self { *self } - } - extern "C" { - #[link_name = - "_ZN7mozilla3dom15DOMRectReadOnly21_cycleCollectorGlobalE"] - pub static mut DOMRectReadOnly__cycleCollectorGlobal: - root::mozilla::dom::DOMRectReadOnly_cycleCollection; - } - #[test] - fn bindgen_test_layout_DOMRectReadOnly() { - assert_eq!(::std::mem::size_of::() , 48usize - , concat ! ( - "Size of: " , stringify ! ( DOMRectReadOnly ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( DOMRectReadOnly ) - )); - } - #[repr(C)] - #[derive(Debug)] - pub struct OwningNodeOrString { - pub mType: root::mozilla::dom::OwningNodeOrString_Type, - pub mValue: root::mozilla::dom::OwningNodeOrString_Value, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum OwningNodeOrString_Type { - eUninitialized = 0, - eNode = 1, - eString = 2, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct OwningNodeOrString_Value { - pub mNode: root::__BindgenUnionField>>, - pub mString: root::__BindgenUnionField>, - pub bindgen_union_field: [u64; 2usize], - } - #[test] - fn bindgen_test_layout_OwningNodeOrString_Value() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( - OwningNodeOrString_Value ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - OwningNodeOrString_Value ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OwningNodeOrString_Value ) ) - . mNode as * const _ as usize } , 0usize , concat - ! ( - "Alignment of field: " , stringify ! ( - OwningNodeOrString_Value ) , "::" , stringify ! ( - mNode ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OwningNodeOrString_Value ) ) - . mString as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - OwningNodeOrString_Value ) , "::" , stringify ! ( - mString ) )); - } - impl Clone for OwningNodeOrString_Value { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_OwningNodeOrString() { - assert_eq!(::std::mem::size_of::() , - 24usize , concat ! ( - "Size of: " , stringify ! ( OwningNodeOrString ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( OwningNodeOrString - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OwningNodeOrString ) ) . - mType as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - OwningNodeOrString ) , "::" , stringify ! ( mType - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const OwningNodeOrString ) ) . - mValue as * const _ as usize } , 8usize , concat ! - ( - "Alignment of field: " , stringify ! ( - OwningNodeOrString ) , "::" , stringify ! ( mValue - ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Text([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct TextOrElementOrDocument([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DOMPointInit([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct GetRootNodeOptions([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct UnionMember { - pub mStorage: root::mozilla::AlignedStorage2, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum VisibilityState { Hidden = 0, Visible = 1, @@ -2778,8 +4405,8 @@ pub mod root { #[repr(C)] #[derive(Debug, Copy)] pub struct ElementCreationOptionsOrString_Value { - pub mElementCreationOptions: root::__BindgenUnionField>, - pub mString: root::__BindgenUnionField>, + pub mElementCreationOptions: root::__BindgenUnionField, + pub mString: root::__BindgenUnionField, pub bindgen_union_field: [u64; 18usize], } #[test] @@ -2843,10 +4470,14 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Animation([u8; 0]); + pub struct Animation { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AnonymousContent([u8; 0]); + pub struct AnonymousContent { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct Attr { @@ -2893,32 +4524,45 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct BoxObject([u8; 0]); + pub struct BoxObject { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct CDATASection([u8; 0]); + pub struct CDATASection { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Comment([u8; 0]); + pub struct Comment { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DocumentFragment([u8; 0]); + pub struct DocumentFragment { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DocumentTimeline([u8; 0]); + pub struct DocumentTimeline { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DocumentType([u8; 0]); + pub struct DocumentType { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DOMImplementation([u8; 0]); + pub struct DOMImplementation { + _unused: [u8; 0], + } #[repr(C)] - #[derive(Debug)] pub struct DOMIntersectionObserver { pub _base: root::nsISupports, pub _base_1: root::nsWrapperCache, pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub mOwner: root::nsCOMPtr, + pub mOwner: root::nsCOMPtr, pub mDocument: root::RefPtr, pub mCallback: root::RefPtr, pub mRoot: root::RefPtr, @@ -2951,10 +4595,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DOMIntersectionObserver_COMTypeInfo { + pub struct DOMIntersectionObserver_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } extern "C" { #[link_name = @@ -2975,13 +4617,19 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DOMStringList([u8; 0]); + pub struct DOMStringList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ElementRegistrationOptions([u8; 0]); + pub struct ElementRegistrationOptions { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct FontFaceSet([u8; 0]); + pub struct FontFaceSet { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct FrameRequestCallback { @@ -3000,130 +4648,98 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct FullscreenRequest([u8; 0]); + pub struct FullscreenRequest { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ImageTracker([u8; 0]); + pub struct ImageTracker { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ImportManager([u8; 0]); + pub struct ImportManager { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct HTMLBodyElement([u8; 0]); + pub struct HTMLBodyElement { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Link([u8; 0]); + pub struct Link { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Location([u8; 0]); + pub struct Location { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct MediaQueryList([u8; 0]); + pub struct MediaQueryList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct NodeFilter([u8; 0]); + pub struct NodeFilter { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct NodeIterator([u8; 0]); + pub struct NodeIterator { + _unused: [u8; 0], + } #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum OrientationType { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ProcessingInstruction([u8; 0]); + pub struct ProcessingInstruction { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct StyleSheetList([u8; 0]); + pub struct StyleSheetList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGSVGElement([u8; 0]); + pub struct SVGSVGElement { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Touch([u8; 0]); + pub struct TouchList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct TouchList([u8; 0]); + pub struct TreeWalker { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct TreeWalker([u8; 0]); + pub struct XPathEvaluator { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct XPathEvaluator([u8; 0]); + pub struct XPathExpression { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct XPathExpression([u8; 0]); + pub struct XPathNSResolver { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct XPathNSResolver([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct XPathResult([u8; 0]); + pub struct XPathResult { + _unused: [u8; 0], + } pub type NodeFilterHolder = - root::mozilla::dom::CallbackObjectHolder; - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum FillMode { - None = 0, - Forwards = 1, - Backwards = 2, - Both = 3, - Auto = 4, - EndGuard_ = 5, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum PlaybackDirection { - Normal = 0, - Reverse = 1, - Alternate = 2, - Alternate_reverse = 3, - EndGuard_ = 4, - } - /** - * Struct that stores info on an attribute. The name and value must either both - * be null or both be non-null. - * - * Note that, just as the pointers returned by GetAttrNameAt, the pointers that - * this struct hold are only valid until the element or its attributes are - * mutated (directly or via script). - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct BorrowedAttrInfo { - pub mName: *const root::nsAttrName, - pub mValue: *const root::nsAttrValue, - } - #[test] - fn bindgen_test_layout_BorrowedAttrInfo() { - assert_eq!(::std::mem::size_of::() , 16usize - , concat ! ( - "Size of: " , stringify ! ( BorrowedAttrInfo ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( BorrowedAttrInfo ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const BorrowedAttrInfo ) ) . mName - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - BorrowedAttrInfo ) , "::" , stringify ! ( mName ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const BorrowedAttrInfo ) ) . mValue - as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - BorrowedAttrInfo ) , "::" , stringify ! ( mValue ) - )); - } - impl Clone for BorrowedAttrInfo { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ShadowRoot([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Selection([u8; 0]); + root::mozilla::dom::CallbackObjectHolder; #[repr(u8)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum ScrollBehavior { @@ -3196,7 +4812,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct CustomElementData([u8; 0]); + pub struct CustomElementData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct FragmentOrElement { @@ -3245,7 +4863,7 @@ pub mod root { * style rules) * @see nsGenericHTMLElement::GetStyle */ - pub mStyle: root::nsCOMPtr, + pub mStyle: root::nsCOMPtr, /** * The .dataset attribute. * @see nsGenericHTMLElement::GetDataset @@ -3255,7 +4873,7 @@ pub mod root { * SMIL Overridde style rules (for SMIL animation of CSS properties) * @see nsIContent::GetSMILOverrideStyle */ - pub mSMILOverrideStyle: root::nsCOMPtr, + pub mSMILOverrideStyle: root::nsCOMPtr, /** * Holds any SMIL override style declaration for this element. */ @@ -3294,7 +4912,7 @@ pub mod root { /** * XBL binding installed on the lement. */ - pub mXBLInsertionParent: root::nsCOMPtr, + pub mXBLInsertionParent: root::nsCOMPtr, /** * Web components custom element data. */ @@ -3507,7 +5125,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGAnimationElement([u8; 0]); + pub struct SVGAnimationElement { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct DOMRect { @@ -3533,7 +5153,7 @@ pub mod root { pub _base_1: root::nsWrapperCache, pub mRefCnt: root::nsCycleCollectingAutoRefCnt, pub mArray: root::nsTArray>, - pub mParent: root::nsCOMPtr, + pub mParent: root::nsCOMPtr, } pub type DOMRectList_HasThreadSafeRefCnt = root::mozilla::FalseType; @@ -3615,7 +5235,7 @@ pub mod root { pub _base: root::nsISupports, pub _base_1: root::nsWrapperCache, pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub mOwner: root::nsCOMPtr, + pub mOwner: root::nsCOMPtr, pub mTime: root::DOMHighResTimeStamp, pub mRootBounds: root::RefPtr, pub mBoundingClientRect: root::RefPtr, @@ -3695,8 +5315,8 @@ pub mod root { #[repr(C)] #[derive(Debug, Copy)] pub struct OwningDoubleOrDoubleSequence_Value { - pub mDouble: root::__BindgenUnionField>, - pub mDoubleSequence: root::__BindgenUnionField>, + pub mDouble: root::__BindgenUnionField, + pub mDoubleSequence: root::__BindgenUnionField, pub bindgen_union_field: u64, } #[test] @@ -3800,17 +5420,26 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AnimationFilter([u8; 0]); + pub struct AnimationFilter { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct UnrestrictedDoubleOrKeyframeAnimationOptions([u8; 0]); + pub struct ElementOrCSSPseudoElement { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct UnrestrictedDoubleOrKeyframeAnimationOptions { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct DestinationInsertionPointList { pub _base: root::nsINodeList, pub mRefCnt: root::nsCycleCollectingAutoRefCnt, pub mParent: root::RefPtr, - pub mDestinationPoints: root::nsCOMArray, + pub mDestinationPoints: root::nsCOMArray, } pub type DestinationInsertionPointList_HasThreadSafeRefCnt = root::mozilla::FalseType; @@ -3878,7 +5507,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Grid([u8; 0]); + pub struct Grid { + _unused: [u8; 0], + } /** * CSSValue - a DOM object representing values in DOM computed style. */ @@ -3898,93 +5529,2567 @@ pub mod root { "Alignment of " , stringify ! ( CSSValue ) )); } } - pub type CSSPseudoClassTypeBase = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct CSSVariableResolver { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct CSSVariableValues { + /** + * Map of variable names to IDs. Variable IDs are indexes into + * mVariables. + */ + pub mVariableIDs: [u64; 5usize], + /** + * Array of variables, indexed by variable ID. + */ + pub mVariables: root::nsTArray, + } + #[repr(C)] + #[derive(Debug)] + pub struct CSSVariableValues_Variable { + pub mVariableName: ::nsstring::nsStringRepr, + pub mValue: ::nsstring::nsStringRepr, + pub mFirstToken: root::nsCSSTokenSerializationType, + pub mLastToken: root::nsCSSTokenSerializationType, + } + #[test] + fn bindgen_test_layout_CSSVariableValues_Variable() { + assert_eq!(::std::mem::size_of::() , + 40usize , concat ! ( + "Size of: " , stringify ! ( CSSVariableValues_Variable + ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + CSSVariableValues_Variable ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues_Variable ) ) . + mVariableName as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues_Variable ) , "::" , stringify ! ( + mVariableName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues_Variable ) ) . + mValue as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues_Variable ) , "::" , stringify ! ( + mValue ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues_Variable ) ) . + mFirstToken as * const _ as usize } , 32usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues_Variable ) , "::" , stringify ! ( + mFirstToken ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues_Variable ) ) . + mLastToken as * const _ as usize } , 36usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues_Variable ) , "::" , stringify ! ( + mLastToken ) )); + } + #[test] + fn bindgen_test_layout_CSSVariableValues() { + assert_eq!(::std::mem::size_of::() , 48usize , + concat ! ( + "Size of: " , stringify ! ( CSSVariableValues ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( CSSVariableValues ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues ) ) . + mVariableIDs as * const _ as usize } , 0usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues ) , "::" , stringify ! ( + mVariableIDs ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CSSVariableValues ) ) . + mVariables as * const _ as usize } , 40usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CSSVariableValues ) , "::" , stringify ! ( mVariables + ) )); + } #[repr(u8)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CSSPseudoClassType { - empty = 0, - mozOnlyWhitespace = 1, - mozEmptyExceptChildrenWithLocalname = 2, - lang = 3, - root = 4, - any = 5, - firstChild = 6, - firstNode = 7, - lastChild = 8, - lastNode = 9, - onlyChild = 10, - firstOfType = 11, - lastOfType = 12, - onlyOfType = 13, - nthChild = 14, - nthLastChild = 15, - nthOfType = 16, - nthLastOfType = 17, - mozIsHTML = 18, - unresolved = 19, - mozNativeAnonymous = 20, - mozSystemMetric = 21, - mozLocaleDir = 22, - mozLWTheme = 23, - mozLWThemeBrightText = 24, - mozLWThemeDarkText = 25, - mozWindowInactive = 26, - mozTableBorderNonzero = 27, - mozBrowserFrame = 28, - scope = 29, - negation = 30, - dir = 31, - link = 32, - mozAnyLink = 33, - anyLink = 34, - visited = 35, - active = 36, - checked = 37, - disabled = 38, - enabled = 39, - focus = 40, - focusWithin = 41, - hover = 42, - mozDragOver = 43, - target = 44, - indeterminate = 45, - mozDevtoolsHighlighted = 46, - mozStyleeditorTransitioning = 47, - fullscreen = 48, - mozFullScreen = 49, - mozFocusRing = 50, - mozBroken = 51, - mozLoading = 52, - mozUserDisabled = 53, - mozSuppressed = 54, - mozHandlerClickToPlay = 55, - mozHandlerVulnerableUpdatable = 56, - mozHandlerVulnerableNoUpdate = 57, - mozHandlerDisabled = 58, - mozHandlerBlocked = 59, - mozHandlerCrashed = 60, - mozMathIncrementScriptLevel = 61, - 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 enum SheetType { + Agent = 0, + User = 1, + PresHint = 2, + Doc = 3, + ScopedDoc = 4, + StyleAttr = 5, + Override = 6, + Animation = 7, + Transition = 8, + Count = 9, + Unknown = 255, + } + /** + * StaticAutoPtr and StaticRefPtr are like nsAutoPtr and nsRefPtr, except they + * are suitable for use as global variables. + * + * In particular, a global instance of Static{Auto,Ref}Ptr doesn't cause the + * compiler to emit a static initializer (in release builds, anyway). + * + * In order to accomplish this, Static{Auto,Ref}Ptr must have a trivial + * constructor and destructor. As a consequence, it cannot initialize its raw + * pointer to 0 on construction, and it cannot delete/release its raw pointer + * upon destruction. + * + * Since the compiler guarantees that all global variables are initialized to + * 0, these trivial constructors are safe. Since we rely on this, the clang + * plugin, run as part of our "static analysis" builds, makes it a compile-time + * error to use Static{Auto,Ref}Ptr as anything except a global variable. + * + * Static{Auto,Ref}Ptr have a limited interface as compared to ns{Auto,Ref}Ptr; + * this is intentional, since their range of acceptable uses is smaller. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct StaticAutoPtr { + pub mRawPtr: *mut T, + } + /** + * This struct represents a combined color from a numeric color and + * the current foreground color (currentcolor keyword). + * Conceptually, the formula is "color * (1 - p) + currentcolor * p" + * where p is mForegroundRatio. See mozilla::LinearBlendColors for + * the actual algorithm. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleComplexColor { + pub mColor: root::nscolor, + pub mForegroundRatio: u8, + pub mIsAuto: bool, + } + #[test] + fn bindgen_test_layout_StyleComplexColor() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( StyleComplexColor ) )); + assert_eq! (::std::mem::align_of::() , 4usize , + concat ! ( + "Alignment of " , stringify ! ( StyleComplexColor ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleComplexColor ) ) . mColor as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleComplexColor ) , "::" , stringify ! ( mColor ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleComplexColor ) ) . + mForegroundRatio as * const _ as usize } , 4usize , + concat ! ( + "Alignment of field: " , stringify ! ( + StyleComplexColor ) , "::" , stringify ! ( + mForegroundRatio ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleComplexColor ) ) . mIsAuto + as * const _ as usize } , 5usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleComplexColor ) , "::" , stringify ! ( mIsAuto ) + )); + } + impl Clone for StyleComplexColor { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum Side { + eSideTop = 0, + eSideRight = 1, + eSideBottom = 2, + eSideLeft = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum HalfCorner { + eCornerTopLeftX = 0, + eCornerTopLeftY = 1, + eCornerTopRightX = 2, + eCornerTopRightY = 3, + eCornerBottomRightX = 4, + eCornerBottomRightY = 5, + eCornerBottomLeftX = 6, + eCornerBottomLeftY = 7, + } + pub const FontFamilyType_eFamily_generic_first: + root::mozilla::FontFamilyType = + FontFamilyType::eFamily_serif; + pub const FontFamilyType_eFamily_generic_last: + root::mozilla::FontFamilyType = + FontFamilyType::eFamily_fantasy; + pub const FontFamilyType_eFamily_generic_count: + root::mozilla::FontFamilyType = + FontFamilyType::eFamily_monospace; + #[repr(u32)] + /** + * type of font family name, either a name (e.g. Helvetica) or a + * generic (e.g. serif, sans-serif), with the ability to distinguish + * between unquoted and quoted names for serializaiton + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum FontFamilyType { + eFamily_none = 0, + eFamily_named = 1, + eFamily_named_quoted = 2, + eFamily_serif = 3, + eFamily_sans_serif = 4, + eFamily_monospace = 5, + eFamily_cursive = 6, + eFamily_fantasy = 7, + eFamily_moz_variable = 8, + eFamily_moz_fixed = 9, + } + /** + * font family name, a string for the name if not a generic and + * a font type indicated named family or which generic family + */ + #[repr(C)] + #[derive(Debug)] + pub struct FontFamilyName { + pub mType: root::mozilla::FontFamilyType, + pub mName: ::nsstring::nsStringRepr, + } + #[test] + fn bindgen_test_layout_FontFamilyName() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( "Size of: " , stringify ! ( FontFamilyName ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( FontFamilyName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyName ) ) . mType as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( FontFamilyName + ) , "::" , stringify ! ( mType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyName ) ) . mName as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( FontFamilyName + ) , "::" , stringify ! ( mName ) )); + } + /** + * font family list, array of font families and a default font type. + * font family names are either named strings or generics. the default + * font type is used to preserve the variable font fallback behavior + */ + #[repr(C)] + #[derive(Debug)] + pub struct FontFamilyList { + pub mFontlist: root::nsTArray, + pub mDefaultFontType: root::mozilla::FontFamilyType, + } + #[test] + fn bindgen_test_layout_FontFamilyList() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( "Size of: " , stringify ! ( FontFamilyList ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( FontFamilyList ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyList ) ) . mFontlist as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( FontFamilyList + ) , "::" , stringify ! ( mFontlist ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FontFamilyList ) ) . + mDefaultFontType as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( FontFamilyList + ) , "::" , stringify ! ( mDefaultFontType ) )); + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBasicShapeType { + Polygon = 0, + Circle = 1, + Ellipse = 2, + Inset = 3, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxAlign { + Stretch = 0, + Start = 1, + Center = 2, + Baseline = 3, + End = 4, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxDecorationBreak { Slice = 0, Clone = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxDirection { Normal = 0, Reverse = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxOrient { Horizontal = 0, Vertical = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxPack { Start = 0, Center = 1, End = 2, Justify = 3, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBoxSizing { Content = 0, Border = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleClear { + None = 0, + Left = 1, + Right = 2, + InlineStart = 3, + InlineEnd = 4, + Both = 5, + Line = 8, + Max = 13, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleGeometryBox { + ContentBox = 0, + PaddingBox = 1, + BorderBox = 2, + MarginBox = 3, + FillBox = 4, + StrokeBox = 5, + ViewBox = 6, + NoClip = 7, + Text = 8, + NoBox = 9, + MozAlmostPadding = 127, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleFillRule { Nonzero = 0, Evenodd = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleFloat { + None = 0, + Left = 1, + Right = 2, + InlineStart = 3, + InlineEnd = 4, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleFloatEdge { ContentBox = 0, MarginBox = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleHyphens { None = 0, Manual = 1, Auto = 2, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleShapeRadius { ClosestSide = 0, FarthestSide = 1, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleShapeSourceType { + None = 0, + URL = 1, + Shape = 2, + Box = 3, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleTextJustify { + None = 0, + Auto = 1, + InterWord = 2, + InterCharacter = 3, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleUserFocus { + None = 0, + Ignore = 1, + Normal = 2, + SelectAll = 3, + SelectBefore = 4, + SelectAfter = 5, + SelectSame = 6, + SelectMenu = 7, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleUserSelect { + None = 0, + Text = 1, + Element = 2, + Elements = 3, + All = 4, + Toggle = 5, + TriState = 6, + Auto = 7, + MozAll = 8, + MozText = 9, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleUserInput { + None = 0, + Enabled = 1, + Disabled = 2, + Auto = 3, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleUserModify { + ReadOnly = 0, + ReadWrite = 1, + WriteOnly = 2, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleWindowDragging { Default = 0, Drag = 1, NoDrag = 2, } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleOrient { + Inline = 0, + Block = 1, + Horizontal = 2, + Vertical = 3, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleDisplay { + None = 0, + Block = 1, + FlowRoot = 2, + Inline = 3, + InlineBlock = 4, + ListItem = 5, + Table = 6, + InlineTable = 7, + TableRowGroup = 8, + TableColumn = 9, + TableColumnGroup = 10, + TableHeaderGroup = 11, + TableFooterGroup = 12, + TableRow = 13, + TableCell = 14, + TableCaption = 15, + Flex = 16, + InlineFlex = 17, + Grid = 18, + InlineGrid = 19, + Ruby = 20, + RubyBase = 21, + RubyBaseContainer = 22, + RubyText = 23, + RubyTextContainer = 24, + Contents = 25, + WebkitBox = 26, + WebkitInlineBox = 27, + MozBox = 28, + MozInlineBox = 29, + MozGrid = 30, + MozInlineGrid = 31, + MozGridGroup = 32, + MozGridLine = 33, + MozStack = 34, + MozInlineStack = 35, + MozDeck = 36, + MozGroupbox = 37, + MozPopup = 38, + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleGridTrackBreadth { MaxContent = 1, MinContent = 2, } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WritingMode { + _unused: [u8; 0], + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum LogicalSide { + eLogicalSideBStart = 0, + eLogicalSideBEnd = 1, + eLogicalSideIStart = 2, + eLogicalSideIEnd = 3, + } + /** + * Additional data used in conjunction with an nsRestyleHint to control the + * restyle process. + */ + #[repr(C)] + #[derive(Debug)] + pub struct RestyleHintData { + pub mSelectorsForDescendants: root::nsTArray<*mut root::nsCSSSelector>, + } + #[test] + fn bindgen_test_layout_RestyleHintData() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( RestyleHintData ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( RestyleHintData ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const RestyleHintData ) ) . + mSelectorsForDescendants as * const _ as usize } , + 0usize , concat ! ( + "Alignment of field: " , stringify ! ( RestyleHintData + ) , "::" , stringify ! ( mSelectorsForDescendants ) + )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WeakPtr { + } + pub type WeakPtr_WeakReference = u8; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct SupportsWeakPtr { + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WidgetEvent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WidgetGUIEvent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WidgetInputEvent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WidgetPointerEvent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventFlags { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ShortcutKeyCandidate { + _unused: [u8; 0], + } + pub const FlushType_Frames: root::mozilla::FlushType = + FlushType::Style; + #[repr(u8)] + /** + * This is the enum used by nsIDocument::FlushPendingNotifications to + * decide what to flush. + * + * Please note that if you change these values, you should sync it with the + * flushTypeNames array inside PresShell::FlushPendingNotifications. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum FlushType { + None = 0, + Content = 1, + ContentAndNotify = 2, + Style = 3, + InterruptibleLayout = 4, + Layout = 5, + Display = 6, + Count = 7, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ChangesToFlush { + pub mFlushType: root::mozilla::FlushType, + pub mFlushAnimations: bool, + } + #[test] + fn bindgen_test_layout_ChangesToFlush() { + assert_eq!(::std::mem::size_of::() , 2usize , + concat ! ( "Size of: " , stringify ! ( ChangesToFlush ) + )); + assert_eq! (::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( ChangesToFlush ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ChangesToFlush ) ) . mFlushType + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( ChangesToFlush + ) , "::" , stringify ! ( mFlushType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ChangesToFlush ) ) . + mFlushAnimations as * const _ as usize } , 1usize , + concat ! ( + "Alignment of field: " , stringify ! ( ChangesToFlush + ) , "::" , stringify ! ( mFlushAnimations ) )); + } + impl Clone for ChangesToFlush { + fn clone(&self) -> Self { *self } + } + /** + * EventStates is the class used to represent the event states of nsIContent + * instances. These states are calculated by IntrinsicState() and + * ContentStatesChanged() has to be called when one of them changes thus + * informing the layout/style engine of the change. + * Event states are associated with pseudo-classes. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct EventStates { + pub mStates: root::mozilla::EventStates_InternalType, + } + pub type EventStates_InternalType = u64; + pub type EventStates_ServoType = u64; + #[test] + fn bindgen_test_layout_EventStates() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( EventStates ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( EventStates ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const EventStates ) ) . mStates as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( EventStates ) , + "::" , stringify ! ( mStates ) )); + } + impl Clone for EventStates { + fn clone(&self) -> Self { *self } + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum TraversalRootBehavior { + Normal = 0, + UnstyledChildrenOnly = 1, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum TraversalRestyleBehavior { Normal = 0, ForReconstruct = 1, } + pub const UpdateAnimationsTasks_CSSAnimations: + root::mozilla::UpdateAnimationsTasks = + 1; + pub const UpdateAnimationsTasks_CSSTransitions: + root::mozilla::UpdateAnimationsTasks = + 2; + pub const UpdateAnimationsTasks_EffectProperties: + root::mozilla::UpdateAnimationsTasks = + 4; + pub const UpdateAnimationsTasks_CascadeResults: + root::mozilla::UpdateAnimationsTasks = + 8; + pub type UpdateAnimationsTasks = u8; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum LengthParsingMode { Default = 0, SVG = 1, } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum InheritTarget { + Text = 0, + FirstLetterContinuation = 1, + PlaceholderFrame = 2, + } + #[repr(u8)] + /** + * Enumeration that represents one of the two supported style system backends. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleBackendType { None = 0, Gecko = 1, Servo = 2, } + pub type TimeStampValue = u64; + /** + * Instances of this class represent moments in time, or a special + * "null" moment. We do not use the non-monotonic system clock or + * local time, since they can be reset, causing apparent backward + * travel in time, which can confuse algorithms. Instead we measure + * elapsed time according to the system. This time can never go + * backwards (i.e. it never wraps around, at least not in less than + * five million years of system elapsed time). It might not advance + * while the system is sleeping. If TimeStamp::SetNow() is not called + * at all for hours or days, we might not notice the passage of some + * of that time. + * + * We deliberately do not expose a way to convert TimeStamps to some + * particular unit. All you can do is compute a difference between two + * TimeStamps to get a TimeDuration. You can also add a TimeDuration + * to a TimeStamp to get a new TimeStamp. You can't do something + * meaningless like add two TimeStamps. + * + * Internally this is implemented as either a wrapper around + * - high-resolution, monotonic, system clocks if they exist on this + * platform + * - PRIntervalTime otherwise. We detect wraparounds of + * PRIntervalTime and work around them. + * + * This class is similar to C++11's time_point, however it is + * explicitly nullable and provides an IsNull() method. time_point + * is initialized to the clock's epoch and provides a + * time_since_epoch() method that functions similiarly. i.e. + * t.IsNull() is equivalent to t.time_since_epoch() == decltype(t)::duration::zero(); + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct TimeStamp { + /** + * When built with PRIntervalTime, a value of 0 means this instance + * is "null". Otherwise, the low 32 bits represent a PRIntervalTime, + * and the high 32 bits represent a counter of the number of + * rollovers of PRIntervalTime that we've seen. This counter starts + * at 1 to avoid a real time colliding with the "null" value. + * + * PR_INTERVAL_MAX is set at 100,000 ticks per second. So the minimum + * time to wrap around is about 2^64/100000 seconds, i.e. about + * 5,849,424 years. + * + * When using a system clock, a value is system dependent. + */ + pub mValue: root::mozilla::TimeStampValue, + } + #[test] + fn bindgen_test_layout_TimeStamp() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( TimeStamp ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( TimeStamp ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const TimeStamp ) ) . mValue as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( TimeStamp ) , + "::" , stringify ! ( mValue ) )); + } + impl Clone for TimeStamp { + fn clone(&self) -> Self { *self } + } + /** + * Instances of this class represent the length of an interval of time. + * Negative durations are allowed, meaning the end is before the start. + * + * Internally the duration is stored as a int64_t in units of + * PR_TicksPerSecond() when building with NSPR interval timers, or a + * system-dependent unit when building with system clocks. The + * system-dependent unit must be constant, otherwise the semantics of + * this class would be broken. + * + * The ValueCalculator template parameter determines how arithmetic + * operations are performed on the integer count of ticks (mValue). + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct BaseTimeDuration { + pub mValue: i64, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct BaseTimeDuration__SomethingVeryRandomHere { + pub _address: u8, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ErrorResult { + pub _bindgen_opaque_blob: [u64; 2usize], + } + pub type ErrorResult_BaseErrorResult = + root::mozilla::binding_danger::TErrorResult; + #[test] + fn bindgen_test_layout_ErrorResult() { + assert_eq!(::std::mem::size_of::() , 16usize , concat + ! ( "Size of: " , stringify ! ( ErrorResult ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( ErrorResult ) )); + } + impl Clone for ErrorResult { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct OOMReporter { + pub _base: root::mozilla::dom::binding_detail::FastErrorResult, + } + #[test] + fn bindgen_test_layout_OOMReporter() { + assert_eq!(::std::mem::size_of::() , 16usize , concat + ! ( "Size of: " , stringify ! ( OOMReporter ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( OOMReporter ) )); + } + pub mod binding_danger { + #[allow(unused_imports)] + use self::super::super::super::root; + /** + * Templated implementation class for various ErrorResult-like things. The + * instantiations differ only in terms of their cleanup policies (used in the + * destructor), which they can specify via the template argument. Note that + * this means it's safe to reinterpret_cast between the instantiations unless + * you plan to invoke the destructor through such a cast pointer. + * + * A cleanup policy consists of two booleans: whether to assert that we've been + * reported or suppressed, and whether to then go ahead and suppress the + * exception. + */ + #[repr(C)] + #[derive(Debug)] + pub struct TErrorResult { + pub mResult: root::nsresult, + pub __bindgen_anon_1: root::mozilla::binding_danger::TErrorResult__bindgen_ty_1, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct TErrorResult_Message { + pub _address: u8, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct TErrorResult_DOMExceptionInfo { + pub _address: u8, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct TErrorResult__bindgen_ty_1 { + pub mMessage: root::__BindgenUnionField<*mut root::mozilla::binding_danger::TErrorResult_Message>, + pub mJSException: root::__BindgenUnionField, + pub mDOMExceptionInfo: root::__BindgenUnionField<*mut root::mozilla::binding_danger::TErrorResult_DOMExceptionInfo>, + pub bindgen_union_field: u64, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct JustAssertCleanupPolicy { + pub _address: u8, + } + pub const JustAssertCleanupPolicy_assertHandled: bool = true; + pub const JustAssertCleanupPolicy_suppress: bool = false; + #[test] + fn bindgen_test_layout_JustAssertCleanupPolicy() { + assert_eq!(::std::mem::size_of::() , + 1usize , concat ! ( + "Size of: " , stringify ! ( JustAssertCleanupPolicy + ) )); + assert_eq! (::std::mem::align_of::() + , 1usize , concat ! ( + "Alignment of " , stringify ! ( + JustAssertCleanupPolicy ) )); + } + impl Clone for JustAssertCleanupPolicy { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct AssertAndSuppressCleanupPolicy { + pub _address: u8, + } + pub const AssertAndSuppressCleanupPolicy_assertHandled: bool = + true; + pub const AssertAndSuppressCleanupPolicy_suppress: bool = true; + #[test] + fn bindgen_test_layout_AssertAndSuppressCleanupPolicy() { + assert_eq!(::std::mem::size_of::() + , 1usize , concat ! ( + "Size of: " , stringify ! ( + AssertAndSuppressCleanupPolicy ) )); + assert_eq! (::std::mem::align_of::() + , 1usize , concat ! ( + "Alignment of " , stringify ! ( + AssertAndSuppressCleanupPolicy ) )); + } + impl Clone for AssertAndSuppressCleanupPolicy { + fn clone(&self) -> Self { *self } + } + } + /** + * Superclass for data common to CSSStyleSheet and ServoStyleSheet. + */ + #[repr(C)] + #[derive(Debug)] + pub struct StyleSheet { + pub _base: root::nsIDOMCSSStyleSheet, + pub _base_1: root::nsICSSLoaderObserver, + pub _base_2: root::nsWrapperCache, + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub mParent: *mut root::mozilla::StyleSheet, + pub mTitle: ::nsstring::nsStringRepr, + pub mDocument: *mut root::nsIDocument, + pub mOwningNode: *mut root::nsINode, + pub mMedia: root::RefPtr, + pub mNext: root::RefPtr, + pub mParsingMode: root::mozilla::css::SheetParsingMode, + pub mType: root::mozilla::StyleBackendType, + pub mDisabled: bool, + pub mDocumentAssociationMode: root::mozilla::StyleSheet_DocumentAssociationMode, + pub mInner: *mut root::mozilla::StyleSheetInfo, + } + pub type StyleSheet_HasThreadSafeRefCnt = root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleSheet_cycleCollection { + pub _base: root::nsXPCOMCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_StyleSheet_cycleCollection() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( StyleSheet_cycleCollection + ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + StyleSheet_cycleCollection ) )); + } + impl Clone for StyleSheet_cycleCollection { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum StyleSheet_DocumentAssociationMode { + OwnedByDocument = 0, + NotOwnedByDocument = 1, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleSheet_ChildSheetListBuilder { + pub sheetSlot: *mut root::RefPtr, + pub parent: *mut root::mozilla::StyleSheet, + } + #[test] + fn bindgen_test_layout_StyleSheet_ChildSheetListBuilder() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + StyleSheet_ChildSheetListBuilder ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + StyleSheet_ChildSheetListBuilder ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const StyleSheet_ChildSheetListBuilder ) ) + . sheetSlot as * const _ as usize } , 0usize , concat + ! ( + "Alignment of field: " , stringify ! ( + StyleSheet_ChildSheetListBuilder ) , "::" , stringify + ! ( sheetSlot ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const StyleSheet_ChildSheetListBuilder ) ) + . parent as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleSheet_ChildSheetListBuilder ) , "::" , stringify + ! ( parent ) )); + } + impl Clone for StyleSheet_ChildSheetListBuilder { + fn clone(&self) -> Self { *self } + } + extern "C" { + #[link_name = "_ZN7mozilla10StyleSheet21_cycleCollectorGlobalE"] + pub static mut StyleSheet__cycleCollectorGlobal: + root::mozilla::StyleSheet_cycleCollection; + } + #[test] + fn bindgen_test_layout_StyleSheet() { + assert_eq!(::std::mem::size_of::() , 128usize , concat + ! ( "Size of: " , stringify ! ( StyleSheet ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( StyleSheet ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct OriginAttributes { + pub _base: root::mozilla::dom::OriginAttributesDictionary, + } + pub const OriginAttributes_STRIP_FIRST_PARTY_DOMAIN: + root::mozilla::OriginAttributes__bindgen_ty_1 = + OriginAttributes__bindgen_ty_1::STRIP_FIRST_PARTY_DOMAIN; + pub const OriginAttributes_STRIP_USER_CONTEXT_ID: + root::mozilla::OriginAttributes__bindgen_ty_1 = + OriginAttributes__bindgen_ty_1::STRIP_USER_CONTEXT_ID; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum OriginAttributes__bindgen_ty_1 { + STRIP_FIRST_PARTY_DOMAIN = 1, + STRIP_USER_CONTEXT_ID = 2, + } + extern "C" { + #[link_name = + "_ZN7mozilla16OriginAttributes20sFirstPartyIsolationE"] + pub static mut OriginAttributes_sFirstPartyIsolation: bool; + } + extern "C" { + #[link_name = + "_ZN7mozilla16OriginAttributes23sRestrictedOpenerAccessE"] + pub static mut OriginAttributes_sRestrictedOpenerAccess: bool; + } + #[test] + fn bindgen_test_layout_OriginAttributes() { + assert_eq!(::std::mem::size_of::() , 40usize , + concat ! ( + "Size of: " , stringify ! ( OriginAttributes ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( OriginAttributes ) )); + } + pub mod net { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum ReferrerPolicy { + RP_No_Referrer = 2, + RP_Origin = 3, + RP_No_Referrer_When_Downgrade = 1, + RP_Origin_When_Crossorigin = 4, + RP_Unsafe_URL = 5, + RP_Same_Origin = 6, + RP_Strict_Origin = 7, + RP_Strict_Origin_When_Cross_Origin = 8, + RP_Unset = 0, + } + } + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CORSMode { + CORS_NONE = 0, + CORS_ANONYMOUS = 1, + CORS_USE_CREDENTIALS = 2, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ServoStyleSheet { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct StyleSheetInfo { + _unused: [u8; 0], + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CSSEnabledState { + eForAllContent = 0, + eInUASheets = 1, + eInChrome = 2, + eIgnoreEnabledState = 255, + } + pub type CSSPseudoElementTypeBase = u8; + pub const CSSPseudoElementType_InheritingAnonBox: + root::mozilla::CSSPseudoElementType = + CSSPseudoElementType::Count; + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CSSPseudoElementType { + after = 0, + before = 1, + backdrop = 2, + cue = 3, + firstLetter = 4, + firstLine = 5, + mozSelection = 6, + mozFocusInner = 7, + mozFocusOuter = 8, + mozListBullet = 9, + mozListNumber = 10, + mozMathAnonymous = 11, + mozNumberWrapper = 12, + mozNumberText = 13, + mozNumberSpinBox = 14, + mozNumberSpinUp = 15, + mozNumberSpinDown = 16, + mozProgressBar = 17, + mozRangeTrack = 18, + mozRangeProgress = 19, + mozRangeThumb = 20, + mozMeterBar = 21, + mozPlaceholder = 22, + placeholder = 23, + mozColorSwatch = 24, + Count = 25, + NonInheritingAnonBox = 26, + XULTree = 27, + NotPseudo = 28, + MAX = 29, + } + /** + * Smart pointer class that can hold a pointer to either an nsStyleSet + * or a ServoStyleSet. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleSetHandle { + pub mPtr: root::mozilla::StyleSetHandle_Ptr, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleSetHandle_Ptr { + pub mValue: usize, + } + #[test] + fn bindgen_test_layout_StyleSetHandle_Ptr() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( StyleSetHandle_Ptr ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( StyleSetHandle_Ptr ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleSetHandle_Ptr ) ) . mValue + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleSetHandle_Ptr ) , "::" , stringify ! ( mValue ) + )); + } + impl Clone for StyleSetHandle_Ptr { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_StyleSetHandle() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( "Size of: " , stringify ! ( StyleSetHandle ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StyleSetHandle ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleSetHandle ) ) . mPtr as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleSetHandle + ) , "::" , stringify ! ( mPtr ) )); + } + impl Clone for StyleSetHandle { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventChainVisitor { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventChainPostVisitor { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventChainPreVisitor { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventListenerManager { + _unused: [u8; 0], + } + #[test] + fn __bindgen_test_layout_StaticRefPtr_instantiation_114865() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::StaticRefPtr + ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! + ( + root::mozilla::StaticRefPtr + ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct URLExtraData { + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + pub mBaseURI: root::nsCOMPtr, + pub mReferrer: root::nsCOMPtr, + pub mPrincipal: root::nsCOMPtr, + } + pub type URLExtraData_HasThreadSafeRefCnt = root::mozilla::TrueType; + extern "C" { + #[link_name = "_ZN7mozilla12URLExtraData6sDummyE"] + pub static mut URLExtraData_sDummy: + root::mozilla::StaticRefPtr; + } + #[test] + fn bindgen_test_layout_URLExtraData() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( "Size of: " , stringify ! ( URLExtraData ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( URLExtraData ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLExtraData ) ) . mRefCnt as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( URLExtraData ) + , "::" , stringify ! ( mRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLExtraData ) ) . mBaseURI as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( URLExtraData ) + , "::" , stringify ! ( mBaseURI ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLExtraData ) ) . mReferrer as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( URLExtraData ) + , "::" , stringify ! ( mReferrer ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const URLExtraData ) ) . mPrincipal as + * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( URLExtraData ) + , "::" , stringify ! ( mPrincipal ) )); + } + pub mod widget { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct IMEState { + _unused: [u8; 0], + } + } + pub type RawSelectionType = ::std::os::raw::c_short; + #[repr(i16)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum SelectionType { + eInvalid = -1, + eNone = 0, + eNormal = 1, + eSpellCheck = 2, + eIMERawClause = 4, + eIMESelectedRawClause = 8, + eIMEConvertedClause = 16, + eIMESelectedClause = 32, + eAccessibility = 64, + eFind = 128, + eURLSecondary = 256, + eURLStrikeout = 512, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct CSSPixel { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_CSSPixel() { + assert_eq!(::std::mem::size_of::() , 1usize , concat ! ( + "Size of: " , stringify ! ( CSSPixel ) )); + assert_eq! (::std::mem::align_of::() , 1usize , concat ! + ( "Alignment of " , stringify ! ( CSSPixel ) )); + } + impl Clone for CSSPixel { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct LayoutDevicePixel { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_LayoutDevicePixel() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of: " , stringify ! ( LayoutDevicePixel ) )); + assert_eq! (::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( LayoutDevicePixel ) + )); + } + impl Clone for LayoutDevicePixel { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct LayerPixel { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_LayerPixel() { + assert_eq!(::std::mem::size_of::() , 1usize , concat ! + ( "Size of: " , stringify ! ( LayerPixel ) )); + assert_eq! (::std::mem::align_of::() , 1usize , concat + ! ( "Alignment of " , stringify ! ( LayerPixel ) )); + } + impl Clone for LayerPixel { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ScreenPixel { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_ScreenPixel() { + assert_eq!(::std::mem::size_of::() , 1usize , concat + ! ( "Size of: " , stringify ! ( ScreenPixel ) )); + assert_eq! (::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( ScreenPixel ) )); + } + impl Clone for ScreenPixel { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ParentLayerPixel { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_ParentLayerPixel() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of: " , stringify ! ( ParentLayerPixel ) )); + assert_eq! (::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of " , stringify ! ( ParentLayerPixel ) )); + } + impl Clone for ParentLayerPixel { + fn clone(&self) -> Self { *self } + } + pub type CSSPoint = [u32; 2usize]; + pub type CSSIntPoint = [u32; 2usize]; + pub type CSSSize = [u32; 2usize]; + pub type CSSRect = [u32; 4usize]; + pub type LayoutDeviceIntPoint = [u32; 2usize]; + pub type LayoutDeviceIntSize = [u32; 2usize]; + pub type LayoutDeviceIntRect = [u32; 4usize]; + pub type ScreenIntSize = u8; + pub type ScreenMargin = [u32; 4usize]; + pub type ParentLayerRect = [u32; 4usize]; + pub type ParentLayerIntRect = [u32; 4usize]; + pub type CSSToLayoutDeviceScale = u32; + pub type CSSToParentLayerScale2D = [u32; 2usize]; + pub type LayoutDeviceToLayerScale2D = [u32; 2usize]; + pub type ScreenToLayerScale2D = [u32; 2usize]; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AccessibleCaretEventHub { + _unused: [u8; 0], + } + pub mod a11y { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct DocAccessible { + _unused: [u8; 0], + } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct FramePropertyDescriptorUntyped { + pub mDestructor: root::mozilla::FramePropertyDescriptorUntyped_UntypedDestructor, + pub mDestructorWithFrame: root::mozilla::FramePropertyDescriptorUntyped_UntypedDestructorWithFrame, + } + /** + * mDestructor will be called if it's non-null. + */ + pub type FramePropertyDescriptorUntyped_UntypedDestructor = + ::std::option::Option; + /** + * mDestructorWithFrame will be called if it's non-null and mDestructor + * is null. WARNING: The frame passed to mDestructorWithFrame may + * be a dangling frame pointer, if this is being called during + * presshell teardown. Do not use it except to compare against + * other frame pointers. No frame will have been allocated with + * the same address yet. + */ + pub type FramePropertyDescriptorUntyped_UntypedDestructorWithFrame = + ::std::option::Option; + #[test] + fn bindgen_test_layout_FramePropertyDescriptorUntyped() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + FramePropertyDescriptorUntyped ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + FramePropertyDescriptorUntyped ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyDescriptorUntyped ) + ) . mDestructor as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + FramePropertyDescriptorUntyped ) , "::" , stringify ! + ( mDestructor ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyDescriptorUntyped ) + ) . mDestructorWithFrame as * const _ as usize } , + 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + FramePropertyDescriptorUntyped ) , "::" , stringify ! + ( mDestructorWithFrame ) )); + } + impl Clone for FramePropertyDescriptorUntyped { + fn clone(&self) -> Self { *self } + } + /** + * A pointer to a FramePropertyDescriptor serves as a unique property ID. + * The FramePropertyDescriptor stores metadata about the property. + * Currently the only metadata is a destructor function. The destructor + * function is called on property values when they are overwritten or + * deleted. + * + * To use this class, declare a global (i.e., file, class or function-scope + * static member) FramePropertyDescriptor and pass its address as + * aProperty in the FramePropertyTable methods. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct FramePropertyDescriptor { + pub _base: root::mozilla::FramePropertyDescriptorUntyped, + } + pub type FramePropertyDescriptor_Destructor = + ::std::option::Option; + pub type FramePropertyDescriptor_DestructorWithFrame = + ::std::option::Option; + /** + * The FramePropertyTable is optimized for storing 0 or 1 properties on + * a given frame. Storing very large numbers of properties on a single + * frame will not be efficient. + * + * Property values are passed as void* but do not actually have to be + * valid pointers. You can use NS_INT32_TO_PTR/NS_PTR_TO_INT32 to + * store int32_t values. Null/zero values can be stored and retrieved. + * Of course, the destructor function (if any) must handle such values + * correctly. + */ + #[repr(C)] + #[derive(Debug)] + pub struct FramePropertyTable { + pub mEntries: [u64; 5usize], + pub mLastFrame: *const root::nsIFrame, + pub mLastEntry: *mut root::mozilla::FramePropertyTable_Entry, + } + pub type FramePropertyTable_Descriptor = + *const root::mozilla::FramePropertyDescriptor; + pub type FramePropertyTable_UntypedDescriptor = + *const root::mozilla::FramePropertyDescriptorUntyped; + pub type FramePropertyTable_PropertyType = + root::mozilla::detail::FramePropertyTypeHelper; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct FramePropertyTable_ReinterpretHelper { + pub _address: u8, + } + /** + * Stores a property descriptor/value pair. It can also be used to + * store an nsTArray of PropertyValues. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct FramePropertyTable_PropertyValue { + pub mProperty: root::mozilla::FramePropertyTable_UntypedDescriptor, + pub mValue: *mut ::std::os::raw::c_void, + } + #[test] + fn bindgen_test_layout_FramePropertyTable_PropertyValue() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + FramePropertyTable_PropertyValue ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + FramePropertyTable_PropertyValue ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const FramePropertyTable_PropertyValue ) ) + . mProperty as * const _ as usize } , 0usize , concat + ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable_PropertyValue ) , "::" , stringify + ! ( mProperty ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const FramePropertyTable_PropertyValue ) ) + . mValue as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable_PropertyValue ) , "::" , stringify + ! ( mValue ) )); + } + impl Clone for FramePropertyTable_PropertyValue { + fn clone(&self) -> Self { *self } + } + /** + * Used with an array of PropertyValues to allow lookups that compare + * only on the FramePropertyDescriptor. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct FramePropertyTable_PropertyComparator { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_FramePropertyTable_PropertyComparator() { + assert_eq!(::std::mem::size_of::() + , 1usize , concat ! ( + "Size of: " , stringify ! ( + FramePropertyTable_PropertyComparator ) )); + assert_eq! (::std::mem::align_of::() + , 1usize , concat ! ( + "Alignment of " , stringify ! ( + FramePropertyTable_PropertyComparator ) )); + } + impl Clone for FramePropertyTable_PropertyComparator { + fn clone(&self) -> Self { *self } + } + /** + * Our hashtable entry. The key is an nsIFrame*, the value is a + * PropertyValue representing one or more property/value pairs. + */ + #[repr(C)] + #[derive(Debug)] + pub struct FramePropertyTable_Entry { + pub _base: root::nsPtrHashKey, + pub mProp: root::mozilla::FramePropertyTable_PropertyValue, + } + #[test] + fn bindgen_test_layout_FramePropertyTable_Entry() { + assert_eq!(::std::mem::size_of::() , + 32usize , concat ! ( + "Size of: " , stringify ! ( FramePropertyTable_Entry ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + FramePropertyTable_Entry ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyTable_Entry ) ) . + mProp as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable_Entry ) , "::" , stringify ! ( + mProp ) )); + } + #[test] + fn bindgen_test_layout_FramePropertyTable() { + assert_eq!(::std::mem::size_of::() , 56usize , + concat ! ( + "Size of: " , stringify ! ( FramePropertyTable ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( FramePropertyTable ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyTable ) ) . mEntries + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable ) , "::" , stringify ! ( mEntries ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyTable ) ) . + mLastFrame as * const _ as usize } , 40usize , concat + ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable ) , "::" , stringify ! ( mLastFrame + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const FramePropertyTable ) ) . + mLastEntry as * const _ as usize } , 48usize , concat + ! ( + "Alignment of field: " , stringify ! ( + FramePropertyTable ) , "::" , stringify ! ( mLastEntry + ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct Runnable { + pub _base: root::nsIRunnable, + pub _base_1: root::nsINamed, + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + pub mName: *const ::std::os::raw::c_char, + } + pub type Runnable_HasThreadSafeRefCnt = root::mozilla::TrueType; + #[test] + fn bindgen_test_layout_Runnable() { + assert_eq!(::std::mem::size_of::() , 32usize , concat ! + ( "Size of: " , stringify ! ( Runnable ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( Runnable ) )); + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum TaskCategory { + UI = 0, + Network = 1, + Timer = 2, + Worker = 3, + IdleCallback = 4, + RefreshDriver = 5, + GarbageCollection = 6, + Other = 7, + Count = 8, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AbstractThread { + _unused: [u8; 0], + } + #[repr(i16)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum UseCounter { + eUseCounter_UNKNOWN = -1, + eUseCounter_SVGSVGElement_getElementById = 0, + eUseCounter_SVGSVGElement_currentScale_getter = 1, + eUseCounter_SVGSVGElement_currentScale_setter = 2, + eUseCounter_property_Fill = 3, + eUseCounter_property_FillOpacity = 4, + eUseCounter_PushManager_subscribe = 5, + eUseCounter_PushSubscription_unsubscribe = 6, + eUseCounter_Window_sidebar_getter = 7, + eUseCounter_Window_sidebar_setter = 8, + eUseCounter_External_addSearchEngine = 9, + eUseCounter_OfflineResourceList_swapCache = 10, + eUseCounter_OfflineResourceList_update = 11, + eUseCounter_OfflineResourceList_status_getter = 12, + eUseCounter_OfflineResourceList_status_setter = 13, + eUseCounter_OfflineResourceList_onchecking_getter = 14, + eUseCounter_OfflineResourceList_onchecking_setter = 15, + eUseCounter_OfflineResourceList_onerror_getter = 16, + eUseCounter_OfflineResourceList_onerror_setter = 17, + eUseCounter_OfflineResourceList_onnoupdate_getter = 18, + eUseCounter_OfflineResourceList_onnoupdate_setter = 19, + eUseCounter_OfflineResourceList_ondownloading_getter = 20, + eUseCounter_OfflineResourceList_ondownloading_setter = 21, + eUseCounter_OfflineResourceList_onprogress_getter = 22, + eUseCounter_OfflineResourceList_onprogress_setter = 23, + eUseCounter_OfflineResourceList_onupdateready_getter = 24, + eUseCounter_OfflineResourceList_onupdateready_setter = 25, + eUseCounter_OfflineResourceList_oncached_getter = 26, + eUseCounter_OfflineResourceList_oncached_setter = 27, + eUseCounter_OfflineResourceList_onobsolete_getter = 28, + eUseCounter_OfflineResourceList_onobsolete_setter = 29, + eUseCounter_IDBDatabase_createMutableFile = 30, + eUseCounter_IDBDatabase_mozCreateFileHandle = 31, + eUseCounter_IDBMutableFile_open = 32, + eUseCounter_IDBMutableFile_getFile = 33, + eUseCounter_DataTransfer_addElement = 34, + eUseCounter_DataTransfer_mozItemCount_getter = 35, + eUseCounter_DataTransfer_mozItemCount_setter = 36, + eUseCounter_DataTransfer_mozCursor_getter = 37, + eUseCounter_DataTransfer_mozCursor_setter = 38, + eUseCounter_DataTransfer_mozTypesAt = 39, + eUseCounter_DataTransfer_mozClearDataAt = 40, + eUseCounter_DataTransfer_mozSetDataAt = 41, + eUseCounter_DataTransfer_mozGetDataAt = 42, + eUseCounter_DataTransfer_mozUserCancelled_getter = 43, + eUseCounter_DataTransfer_mozUserCancelled_setter = 44, + eUseCounter_DataTransfer_mozSourceNode_getter = 45, + eUseCounter_DataTransfer_mozSourceNode_setter = 46, + eUseCounter_GetAttributeNode = 47, + eUseCounter_SetAttributeNode = 48, + eUseCounter_GetAttributeNodeNS = 49, + eUseCounter_SetAttributeNodeNS = 50, + eUseCounter_RemoveAttributeNode = 51, + eUseCounter_CreateAttribute = 52, + eUseCounter_CreateAttributeNS = 53, + eUseCounter_NodeValue = 54, + eUseCounter_TextContent = 55, + eUseCounter_EnablePrivilege = 56, + eUseCounter_DOMExceptionCode = 57, + eUseCounter_NoExposedProps = 58, + eUseCounter_MutationEvent = 59, + eUseCounter_Components = 60, + eUseCounter_PrefixedVisibilityAPI = 61, + eUseCounter_NodeIteratorDetach = 62, + eUseCounter_LenientThis = 63, + eUseCounter_GetPreventDefault = 64, + eUseCounter_GetSetUserData = 65, + eUseCounter_MozGetAsFile = 66, + eUseCounter_UseOfCaptureEvents = 67, + eUseCounter_UseOfReleaseEvents = 68, + eUseCounter_UseOfDOM3LoadMethod = 69, + eUseCounter_ChromeUseOfDOM3LoadMethod = 70, + eUseCounter_ShowModalDialog = 71, + eUseCounter_Window_Content = 72, + eUseCounter_SyncXMLHttpRequest = 73, + eUseCounter_Window_Controllers = 74, + eUseCounter_ImportXULIntoContent = 75, + eUseCounter_PannerNodeDoppler = 76, + eUseCounter_NavigatorGetUserMedia = 77, + eUseCounter_WebrtcDeprecatedPrefix = 78, + eUseCounter_RTCPeerConnectionGetStreams = 79, + eUseCounter_AppCache = 80, + eUseCounter_PrefixedImageSmoothingEnabled = 81, + eUseCounter_PrefixedFullscreenAPI = 82, + eUseCounter_LenientSetter = 83, + eUseCounter_FileLastModifiedDate = 84, + eUseCounter_ImageBitmapRenderingContext_TransferImageBitmap = 85, + eUseCounter_URLCreateObjectURL_MediaStream = 86, + eUseCounter_XMLBaseAttribute = 87, + eUseCounter_XMLBaseAttributeForStyleAttr = 88, + eUseCounter_Count = 89, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct PendingAnimationTracker { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct ScrollbarStyles { + pub mHorizontal: u8, + pub mVertical: u8, + pub mScrollBehavior: u8, + pub mScrollSnapTypeX: u8, + pub mScrollSnapTypeY: u8, + pub mScrollSnapPointsX: root::nsStyleCoord, + pub mScrollSnapPointsY: root::nsStyleCoord, + pub mScrollSnapDestinationX: root::nsStyleCoord_CalcValue, + pub mScrollSnapDestinationY: root::nsStyleCoord_CalcValue, + } + #[test] + fn bindgen_test_layout_ScrollbarStyles() { + assert_eq!(::std::mem::size_of::() , 64usize , + concat ! ( + "Size of: " , stringify ! ( ScrollbarStyles ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( ScrollbarStyles ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . mHorizontal + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mHorizontal ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . mVertical + as * const _ as usize } , 1usize , concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mVertical ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollBehavior as * const _ as usize } , 2usize , + concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollBehavior ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapTypeX as * const _ as usize } , 3usize , + concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapTypeX ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapTypeY as * const _ as usize } , 4usize , + concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapTypeY ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapPointsX as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapPointsX ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapPointsY as * const _ as usize } , 24usize , + concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapPointsY ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapDestinationX as * const _ as usize } , + 40usize , concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapDestinationX ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ScrollbarStyles ) ) . + mScrollSnapDestinationY as * const _ as usize } , + 52usize , concat ! ( + "Alignment of field: " , stringify ! ( ScrollbarStyles + ) , "::" , stringify ! ( mScrollSnapDestinationY ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct LangGroupFontPrefs { + pub mLangGroup: root::nsCOMPtr, + pub mMinimumFontSize: root::nscoord, + pub mDefaultVariableFont: root::nsFont, + pub mDefaultFixedFont: root::nsFont, + pub mDefaultSerifFont: root::nsFont, + pub mDefaultSansSerifFont: root::nsFont, + pub mDefaultMonospaceFont: root::nsFont, + pub mDefaultCursiveFont: root::nsFont, + pub mDefaultFantasyFont: root::nsFont, + pub mNext: root::nsAutoPtr, + } + #[test] + fn bindgen_test_layout_LangGroupFontPrefs() { + assert_eq!(::std::mem::size_of::() , 640usize + , concat ! ( + "Size of: " , stringify ! ( LangGroupFontPrefs ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( LangGroupFontPrefs ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mLangGroup as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( mLangGroup + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mMinimumFontSize as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mMinimumFontSize ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultVariableFont as * const _ as usize } , 16usize + , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultVariableFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultFixedFont as * const _ as usize } , 104usize , + concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultFixedFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultSerifFont as * const _ as usize } , 192usize , + concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultSerifFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultSansSerifFont as * const _ as usize } , + 280usize , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultSansSerifFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultMonospaceFont as * const _ as usize } , + 368usize , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultMonospaceFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultCursiveFont as * const _ as usize } , 456usize + , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultCursiveFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . + mDefaultFantasyFont as * const _ as usize } , 544usize + , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( + mDefaultFantasyFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const LangGroupFontPrefs ) ) . mNext as + * const _ as usize } , 632usize , concat ! ( + "Alignment of field: " , stringify ! ( + LangGroupFontPrefs ) , "::" , stringify ! ( mNext ) + )); + } + /** + * Some functionality that has historically lived on nsPresContext does not + * actually need to be per-document. This singleton class serves as a host + * for that functionality. We delegate to it from nsPresContext where + * appropriate, and use it standalone in some cases as well. + */ + #[repr(C)] + #[derive(Debug)] + pub struct StaticPresData { + pub mLangService: root::nsCOMPtr, + pub mBorderWidthTable: [root::nscoord; 3usize], + pub mStaticLangGroupFontPrefs: root::mozilla::LangGroupFontPrefs, + } + #[test] + fn bindgen_test_layout_StaticPresData() { + assert_eq!(::std::mem::size_of::() , 664usize , + concat ! ( "Size of: " , stringify ! ( StaticPresData ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StaticPresData ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StaticPresData ) ) . mLangService + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( StaticPresData + ) , "::" , stringify ! ( mLangService ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StaticPresData ) ) . + mBorderWidthTable as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( StaticPresData + ) , "::" , stringify ! ( mBorderWidthTable ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StaticPresData ) ) . + mStaticLangGroupFontPrefs as * const _ as usize } , + 24usize , concat ! ( + "Alignment of field: " , stringify ! ( StaticPresData + ) , "::" , stringify ! ( mStaticLangGroupFontPrefs ) + )); + } + #[repr(C)] + pub struct EffectCompositor { + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub mPresContext: *mut root::nsPresContext, + pub mElementsToRestyle: [u64; 10usize], + pub mRuleProcessors: [u64; 2usize], + } + pub type EffectCompositor_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct EffectCompositor_cycleCollection { + pub _base: root::nsCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_EffectCompositor_cycleCollection() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + EffectCompositor_cycleCollection ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + EffectCompositor_cycleCollection ) )); + } + impl Clone for EffectCompositor_cycleCollection { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum EffectCompositor_CascadeLevel { + Animations = 0, + Transitions = 1, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum EffectCompositor_RestyleType { + Throttled = 0, + Standard = 1, + Layer = 2, + } + #[repr(C)] + #[derive(Debug)] + pub struct EffectCompositor_AnimationStyleRuleProcessor { + pub _base: root::nsIStyleRuleProcessor, + pub mRefCnt: root::nsAutoRefCnt, + pub mCompositor: *mut root::mozilla::EffectCompositor, + pub mCascadeLevel: root::mozilla::EffectCompositor_CascadeLevel, + } + pub type EffectCompositor_AnimationStyleRuleProcessor_HasThreadSafeRefCnt + = root::mozilla::FalseType; + #[test] + fn bindgen_test_layout_EffectCompositor_AnimationStyleRuleProcessor() { + assert_eq!(::std::mem::size_of::() + , 32usize , concat ! ( + "Size of: " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const + EffectCompositor_AnimationStyleRuleProcessor ) ) . + mRefCnt as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) , "::" + , stringify ! ( mRefCnt ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const + EffectCompositor_AnimationStyleRuleProcessor ) ) . + mCompositor as * const _ as usize } , 16usize , concat + ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) , "::" + , stringify ! ( mCompositor ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const + EffectCompositor_AnimationStyleRuleProcessor ) ) . + mCascadeLevel as * const _ as usize } , 24usize , + concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor_AnimationStyleRuleProcessor ) , "::" + , stringify ! ( mCascadeLevel ) )); + } + extern "C" { + #[link_name = + "_ZN7mozilla16EffectCompositor21_cycleCollectorGlobalE"] + pub static mut EffectCompositor__cycleCollectorGlobal: + root::mozilla::EffectCompositor_cycleCollection; + } + pub const EffectCompositor_kCascadeLevelCount: usize = 2; + #[test] + fn bindgen_test_layout_EffectCompositor() { + assert_eq!(::std::mem::size_of::() , 112usize , + concat ! ( + "Size of: " , stringify ! ( EffectCompositor ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( EffectCompositor ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const EffectCompositor ) ) . mRefCnt as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor ) , "::" , stringify ! ( mRefCnt ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const EffectCompositor ) ) . + mPresContext as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor ) , "::" , stringify ! ( mPresContext + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const EffectCompositor ) ) . + mElementsToRestyle as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor ) , "::" , stringify ! ( + mElementsToRestyle ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const EffectCompositor ) ) . + mRuleProcessors as * const _ as usize } , 96usize , + concat ! ( + "Alignment of field: " , stringify ! ( + EffectCompositor ) , "::" , stringify ! ( + mRuleProcessors ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct EventStateManager { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug)] + pub struct CounterStyleManager { + pub mRefCnt: root::nsAutoRefCnt, + pub mPresContext: *mut root::nsPresContext, + pub mCacheTable: [u64; 5usize], + } + pub type CounterStyleManager_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[test] + fn bindgen_test_layout_CounterStyleManager() { + assert_eq!(::std::mem::size_of::() , 56usize + , concat ! ( + "Size of: " , stringify ! ( CounterStyleManager ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( CounterStyleManager ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const CounterStyleManager ) ) . mRefCnt + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + CounterStyleManager ) , "::" , stringify ! ( mRefCnt ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const CounterStyleManager ) ) . + mPresContext as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CounterStyleManager ) , "::" , stringify ! ( + mPresContext ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CounterStyleManager ) ) . + mCacheTable as * const _ as usize } , 16usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CounterStyleManager ) , "::" , stringify ! ( + mCacheTable ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct RestyleManager { + _unused: [u8; 0], + } + /** + * BlockingResourceBase + * Base class of resources that might block clients trying to acquire them. + * Does debugging and deadlock detection in DEBUG builds. + **/ + #[repr(C)] + #[derive(Debug)] + pub struct BlockingResourceBase { + pub _address: u8, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum BlockingResourceBase_BlockingResourceType { + eMutex = 0, + eReentrantMonitor = 1, + eCondVar = 2, + } + extern "C" { + #[link_name = + "_ZN7mozilla20BlockingResourceBase17kResourceTypeNameE"] + pub static mut BlockingResourceBase_kResourceTypeName: + [*const ::std::os::raw::c_char; 0usize]; + } + #[test] + fn bindgen_test_layout_BlockingResourceBase() { + assert_eq!(::std::mem::size_of::() , 1usize + , concat ! ( + "Size of: " , stringify ! ( BlockingResourceBase ) )); + assert_eq! (::std::mem::align_of::() , + 1usize , concat ! ( + "Alignment of " , stringify ! ( BlockingResourceBase ) + )); + } + /** + * OffTheBooksMutex is identical to Mutex, except that OffTheBooksMutex doesn't + * include leak checking. Sometimes you want to intentionally "leak" a mutex + * until shutdown; in these cases, OffTheBooksMutex is for you. + */ + #[repr(C)] + #[derive(Debug)] + pub struct OffTheBooksMutex { + pub _base: root::mozilla::detail::MutexImpl, + } + #[test] + fn bindgen_test_layout_OffTheBooksMutex() { + assert_eq!(::std::mem::size_of::() , 40usize , + concat ! ( + "Size of: " , stringify ! ( OffTheBooksMutex ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( OffTheBooksMutex ) )); + } + /** + * Mutex + * When possible, use MutexAutoLock/MutexAutoUnlock to lock/unlock this + * mutex within a scope, instead of calling Lock/Unlock directly. + */ + #[repr(C)] + #[derive(Debug)] + pub struct Mutex { + pub _base: root::mozilla::OffTheBooksMutex, + } + #[test] + fn bindgen_test_layout_Mutex() { + assert_eq!(::std::mem::size_of::() , 40usize , concat ! ( + "Size of: " , stringify ! ( Mutex ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( Mutex ) )); + } + pub mod image { + #[allow(unused_imports)] + use self::super::super::super::root; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ImageURL { + _unused: [u8; 0], + } + /** + * An ImageLib cache entry key. + * + * We key the cache on the initial URI (before any redirects), with some + * canonicalization applied. See ComputeHash() for the details. + * Controlled documents do not share their cache entries with + * non-controlled documents, or other controlled documents. + */ + #[repr(C)] + #[derive(Debug)] + pub struct ImageCacheKey { + pub mURI: root::RefPtr, + pub mBlobSerial: [u64; 2usize], + pub mOriginAttributes: root::mozilla::OriginAttributes, + pub mControlledDocument: *mut ::std::os::raw::c_void, + pub mHash: u32, + pub mIsChrome: bool, + } + #[test] + fn bindgen_test_layout_ImageCacheKey() { + assert_eq!(::std::mem::size_of::() , 80usize , + concat ! ( + "Size of: " , stringify ! ( ImageCacheKey ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( ImageCacheKey ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . mURI as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( mURI ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . + mBlobSerial as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( mBlobSerial + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . + mOriginAttributes as * const _ as usize } , + 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( + mOriginAttributes ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . + mControlledDocument as * const _ as usize } , + 64usize , concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( + mControlledDocument ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . mHash as + * const _ as usize } , 72usize , concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( mHash ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ImageCacheKey ) ) . mIsChrome + as * const _ as usize } , 76usize , concat ! ( + "Alignment of field: " , stringify ! ( + ImageCacheKey ) , "::" , stringify ! ( mIsChrome ) + )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Image { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ProgressTracker { + _unused: [u8; 0], + } + #[repr(C)] + pub struct IProgressObserver__bindgen_vtable(::std::os::raw::c_void); + /** + * An interface for observing changes to image state, as reported by + * ProgressTracker. + * + * This is the ImageLib-internal version of imgINotificationObserver, + * essentially, with implementation details that code outside of ImageLib + * shouldn't see. + * + * XXX(seth): It's preferable to avoid adding anything to this interface if + * possible. In the long term, it would be ideal to get to a place where we can + * just use the imgINotificationObserver interface internally as well. + */ + #[repr(C)] + #[derive(Debug)] + pub struct IProgressObserver { + pub vtable_: *const IProgressObserver__bindgen_vtable, + pub _base: u64, + } + #[test] + fn bindgen_test_layout_IProgressObserver() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( IProgressObserver ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( IProgressObserver + ) )); + } + } + pub type CounterValue = i32; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct NegativeType { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct PadType { + _unused: [u8; 0], + } + #[repr(C)] + pub struct CounterStyle__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug, Copy)] + pub struct CounterStyle { + pub vtable_: *const CounterStyle__bindgen_vtable, + pub mStyle: i32, + } + #[test] + fn bindgen_test_layout_CounterStyle() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( "Size of: " , stringify ! ( CounterStyle ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( CounterStyle ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CounterStyle ) ) . mStyle as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( CounterStyle ) + , "::" , stringify ! ( mStyle ) )); + } + impl Clone for CounterStyle { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct Position { + pub mXPosition: root::mozilla::Position_Coord, + pub mYPosition: root::mozilla::Position_Coord, + } + pub type Position_Coord = root::nsStyleCoord_CalcValue; + #[test] + fn bindgen_test_layout_Position() { + assert_eq!(::std::mem::size_of::() , 24usize , concat ! + ( "Size of: " , stringify ! ( Position ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat ! + ( "Alignment of " , stringify ! ( Position ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Position ) ) . mXPosition as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( Position ) , + "::" , stringify ! ( mXPosition ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const Position ) ) . mYPosition as * + const _ as usize } , 12usize , concat ! ( + "Alignment of field: " , stringify ! ( Position ) , + "::" , stringify ! ( mYPosition ) )); + } + impl Clone for Position { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct StyleTransition { + pub mTimingFunction: root::nsTimingFunction, + pub mDuration: f32, + pub mDelay: f32, + pub mProperty: root::nsCSSPropertyID, + pub mUnknownProperty: root::nsCOMPtr, + } + #[test] + fn bindgen_test_layout_StyleTransition() { + assert_eq!(::std::mem::size_of::() , 40usize , + concat ! ( + "Size of: " , stringify ! ( StyleTransition ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StyleTransition ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleTransition ) ) . + mTimingFunction as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( StyleTransition + ) , "::" , stringify ! ( mTimingFunction ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleTransition ) ) . mDuration + as * const _ as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleTransition + ) , "::" , stringify ! ( mDuration ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleTransition ) ) . mDelay as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleTransition + ) , "::" , stringify ! ( mDelay ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleTransition ) ) . mProperty + as * const _ as usize } , 28usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleTransition + ) , "::" , stringify ! ( mProperty ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleTransition ) ) . + mUnknownProperty as * const _ as usize } , 32usize , + concat ! ( + "Alignment of field: " , stringify ! ( StyleTransition + ) , "::" , stringify ! ( mUnknownProperty ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct StyleAnimation { + pub mTimingFunction: root::nsTimingFunction, + pub mDuration: f32, + pub mDelay: f32, + pub mName: ::nsstring::nsStringRepr, + pub mDirection: root::mozilla::dom::PlaybackDirection, + pub mFillMode: root::mozilla::dom::FillMode, + pub mPlayState: u8, + pub mIterationCount: f32, + } + #[test] + fn bindgen_test_layout_StyleAnimation() { + assert_eq!(::std::mem::size_of::() , 56usize , + concat ! ( "Size of: " , stringify ! ( StyleAnimation ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StyleAnimation ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . + mTimingFunction as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mTimingFunction ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mDuration as + * const _ as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mDuration ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mDelay as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mDelay ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mName as * + const _ as usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mDirection + as * const _ as usize } , 48usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mDirection ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mFillMode as + * const _ as usize } , 49usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mFillMode ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . mPlayState + as * const _ as usize } , 50usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mPlayState ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleAnimation ) ) . + mIterationCount as * const _ as usize } , 52usize , + concat ! ( + "Alignment of field: " , stringify ! ( StyleAnimation + ) , "::" , stringify ! ( mIterationCount ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct StyleBasicShape { + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + pub mType: root::mozilla::StyleBasicShapeType, + pub mFillRule: root::mozilla::StyleFillRule, + pub mCoordinates: root::nsTArray, + pub mPosition: root::mozilla::Position, + pub mRadius: root::nsStyleCorners, + } + pub type StyleBasicShape_HasThreadSafeRefCnt = + root::mozilla::TrueType; + #[test] + fn bindgen_test_layout_StyleBasicShape() { + assert_eq!(::std::mem::size_of::() , 120usize , + concat ! ( + "Size of: " , stringify ! ( StyleBasicShape ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StyleBasicShape ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . mRefCnt as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . mType as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . mFillRule + as * const _ as usize } , 9usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mFillRule ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . + mCoordinates as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mCoordinates ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . mPosition + as * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mPosition ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleBasicShape ) ) . mRadius as + * const _ as usize } , 48usize , concat ! ( + "Alignment of field: " , stringify ! ( StyleBasicShape + ) , "::" , stringify ! ( mRadius ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct StyleShapeSource { + pub __bindgen_anon_1: root::mozilla::StyleShapeSource__bindgen_ty_1, + pub mType: root::mozilla::StyleShapeSourceType, + pub mReferenceBox: root::mozilla::StyleGeometryBox, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct StyleShapeSource__bindgen_ty_1 { + pub mBasicShape: root::__BindgenUnionField<*mut root::mozilla::StyleBasicShape>, + pub mURL: root::__BindgenUnionField<*mut root::mozilla::css::URLValue>, + pub bindgen_union_field: u64, + } + #[test] + fn bindgen_test_layout_StyleShapeSource__bindgen_ty_1() { + assert_eq!(::std::mem::size_of::() + , 8usize , concat ! ( + "Size of: " , stringify ! ( + StyleShapeSource__bindgen_ty_1 ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + StyleShapeSource__bindgen_ty_1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleShapeSource__bindgen_ty_1 ) + ) . mBasicShape as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + StyleShapeSource__bindgen_ty_1 ) , "::" , stringify ! + ( mBasicShape ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleShapeSource__bindgen_ty_1 ) + ) . mURL as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleShapeSource__bindgen_ty_1 ) , "::" , stringify ! + ( mURL ) )); + } + impl Clone for StyleShapeSource__bindgen_ty_1 { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_StyleShapeSource() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( + "Size of: " , stringify ! ( StyleShapeSource ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( StyleShapeSource ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleShapeSource ) ) . mType as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + StyleShapeSource ) , "::" , stringify ! ( mType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const StyleShapeSource ) ) . + mReferenceBox as * const _ as usize } , 9usize , + concat ! ( + "Alignment of field: " , stringify ! ( + StyleShapeSource ) , "::" , stringify ! ( + mReferenceBox ) )); } pub const SERVO_PREF_ENABLED_align_content: bool = false; pub const SERVO_PREF_ENABLED_align_items: bool = false; @@ -4362,3409 +8467,6 @@ pub mod root { pub const SERVO_PREF_ENABLED_overflow_wrap: bool = false; pub const SERVO_PREF_ENABLED_writing_mode: bool = false; pub const SERVO_PREF_ENABLED_z_index: bool = false; - pub type MallocSizeOf = - ::std::option::Option ::std::os::raw::c_ulong>; - #[repr(C)] - #[derive(Debug)] - pub struct OwningNonNull { - pub mPtr: root::RefPtr, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct StaticRefPtr { - pub mRawPtr: *mut T, - } - #[repr(C)] - #[derive(Debug)] - pub struct LinkedListElement { - pub mNext: *mut root::mozilla::LinkedListElement, - pub mPrev: *mut root::mozilla::LinkedListElement, - pub mIsSentinel: bool, - } - pub type LinkedListElement_Traits = - root::mozilla::detail::LinkedListElementTraits; - pub type LinkedListElement_RawType = - root::mozilla::LinkedListElement_Traits; - pub type LinkedListElement_ConstRawType = - root::mozilla::LinkedListElement_Traits; - pub type LinkedListElement_ClientType = - root::mozilla::LinkedListElement_Traits; - pub type LinkedListElement_ConstClientType = - root::mozilla::LinkedListElement_Traits; - pub const LinkedListElement_NodeKind_Sentinel: - root::mozilla::LinkedListElement_NodeKind = - LinkedListElement_NodeKind::Normal; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum LinkedListElement_NodeKind { Normal = 0, } - #[repr(C)] - #[derive(Debug)] - pub struct LinkedList { - pub sentinel: root::mozilla::LinkedListElement, - } - pub type LinkedList_Traits = - root::mozilla::detail::LinkedListElementTraits; - pub type LinkedList_RawType = root::mozilla::LinkedList_Traits; - pub type LinkedList_ConstRawType = - root::mozilla::LinkedList_Traits; - pub type LinkedList_ClientType = - root::mozilla::LinkedList_Traits; - pub type LinkedList_ConstClientType = - root::mozilla::LinkedList_Traits; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct LinkedList_Iterator { - pub mCurrent: root::mozilla::LinkedList_RawType, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ReverseIterator { - pub mCurrent: IteratorT, - } - /** - * Pair is the logical concatenation of an instance of A with an instance B. - * Space is conserved when possible. Neither A nor B may be a final class. - * - * It's typically clearer to have individual A and B member fields. Except if - * you want the space-conserving qualities of Pair, you're probably better off - * not using this! - * - * No guarantees are provided about the memory layout of A and B, the order of - * initialization or destruction of A and B, and so on. (This is approximately - * required to optimize space usage.) The first/second names are merely - * conceptual! - */ - #[repr(C)] - pub struct Pair { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData
, - pub _phantom_1: ::std::marker::PhantomData, - } - pub type Pair_Base = [u8; 0usize]; - /** - * A default deletion policy using plain old operator delete. - * - * Note that this type can be specialized, but authors should beware of the risk - * that the specialization may at some point cease to match (either because it - * gets moved to a different compilation unit or the signature changes). If the - * non-specialized (|delete|-based) version compiles for that type but does the - * wrong thing, bad things could happen. - * - * This is a non-issue for types which are always incomplete (i.e. opaque handle - * types), since |delete|-ing such a type will always trigger a compilation - * error. - */ - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DefaultDelete { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - pub type TimeStampValue = u64; - /** - * Instances of this class represent moments in time, or a special - * "null" moment. We do not use the non-monotonic system clock or - * local time, since they can be reset, causing apparent backward - * travel in time, which can confuse algorithms. Instead we measure - * elapsed time according to the system. This time can never go - * backwards (i.e. it never wraps around, at least not in less than - * five million years of system elapsed time). It might not advance - * while the system is sleeping. If TimeStamp::SetNow() is not called - * at all for hours or days, we might not notice the passage of some - * of that time. - * - * We deliberately do not expose a way to convert TimeStamps to some - * particular unit. All you can do is compute a difference between two - * TimeStamps to get a TimeDuration. You can also add a TimeDuration - * to a TimeStamp to get a new TimeStamp. You can't do something - * meaningless like add two TimeStamps. - * - * Internally this is implemented as either a wrapper around - * - high-resolution, monotonic, system clocks if they exist on this - * platform - * - PRIntervalTime otherwise. We detect wraparounds of - * PRIntervalTime and work around them. - * - * This class is similar to C++11's time_point, however it is - * explicitly nullable and provides an IsNull() method. time_point - * is initialized to the clock's epoch and provides a - * time_since_epoch() method that functions similiarly. i.e. - * t.IsNull() is equivalent to t.time_since_epoch() == decltype(t)::duration::zero(); - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct TimeStamp { - /** - * When built with PRIntervalTime, a value of 0 means this instance - * is "null". Otherwise, the low 32 bits represent a PRIntervalTime, - * and the high 32 bits represent a counter of the number of - * rollovers of PRIntervalTime that we've seen. This counter starts - * at 1 to avoid a real time colliding with the "null" value. - * - * PR_INTERVAL_MAX is set at 100,000 ticks per second. So the minimum - * time to wrap around is about 2^64/100000 seconds, i.e. about - * 5,849,424 years. - * - * When using a system clock, a value is system dependent. - */ - pub mValue: root::mozilla::TimeStampValue, - } - #[test] - fn bindgen_test_layout_TimeStamp() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( TimeStamp ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( TimeStamp ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const TimeStamp ) ) . mValue as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( TimeStamp ) , - "::" , stringify ! ( mValue ) )); - } - impl Clone for TimeStamp { - fn clone(&self) -> Self { *self } - } - /** - * Instances of this class represent the length of an interval of time. - * Negative durations are allowed, meaning the end is before the start. - * - * Internally the duration is stored as a int64_t in units of - * PR_TicksPerSecond() when building with NSPR interval timers, or a - * system-dependent unit when building with system clocks. The - * system-dependent unit must be constant, otherwise the semantics of - * this class would be broken. - * - * The ValueCalculator template parameter determines how arithmetic - * operations are performed on the integer count of ticks (mValue). - */ - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct BaseTimeDuration { - pub mValue: i64, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct BaseTimeDuration__SomethingVeryRandomHere { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct MallocAllocPolicy { - pub _address: u8, - } - #[test] - fn bindgen_test_layout_MallocAllocPolicy() { - assert_eq!(::std::mem::size_of::() , 1usize , - concat ! ( - "Size of: " , stringify ! ( MallocAllocPolicy ) )); - assert_eq! (::std::mem::align_of::() , 1usize , - concat ! ( - "Alignment of " , stringify ! ( MallocAllocPolicy ) - )); - } - impl Clone for MallocAllocPolicy { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct ThreadSafeAutoRefCnt { - pub mValue: u64, - } - pub const ThreadSafeAutoRefCnt_isThreadSafe: bool = true; - #[test] - fn bindgen_test_layout_ThreadSafeAutoRefCnt() { - assert_eq!(::std::mem::size_of::() , 8usize - , concat ! ( - "Size of: " , stringify ! ( ThreadSafeAutoRefCnt ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( ThreadSafeAutoRefCnt ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const ThreadSafeAutoRefCnt ) ) . mValue - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - ThreadSafeAutoRefCnt ) , "::" , stringify ! ( mValue ) - )); - } - pub mod gfx { - #[allow(unused_imports)] - use self::super::super::super::root; - pub type IntRegion = [u64; 3usize]; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Color { - pub _bindgen_opaque_blob: [u32; 4usize], - } - #[test] - fn bindgen_test_layout_Color() { - assert_eq!(::std::mem::size_of::() , 16usize , concat ! - ( "Size of: " , stringify ! ( Color ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat - ! ( "Alignment of " , stringify ! ( Color ) )); - } - impl Clone for Color { - fn clone(&self) -> Self { *self } - } - pub type IntPoint = [u32; 2usize]; - pub type IntMargin = [u32; 4usize]; - 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::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( FontVariation ) )); - assert_eq! (::std::mem::align_of::() , 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)] - #[derive(Debug, Copy, Clone)] - pub struct DrawTarget([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Path([u8; 0]); - } - pub mod layers { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct LayerManager([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ContainerLayer([u8; 0]); - /** - * The viewport and displayport metrics for the painted frame at the - * time of a layer-tree transaction. These metrics are especially - * useful for shadow layers, because the metrics values are updated - * atomically with new pixels. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct FrameMetrics { - pub mScrollId: root::mozilla::layers::FrameMetrics_ViewID, - pub mPresShellResolution: f32, - pub mCompositionBounds: root::mozilla::ParentLayerRect, - pub mDisplayPort: root::mozilla::CSSRect, - pub mCriticalDisplayPort: root::mozilla::CSSRect, - pub mScrollableRect: root::mozilla::CSSRect, - pub mCumulativeResolution: root::mozilla::LayoutDeviceToLayerScale2D, - pub mDevPixelsPerCSSPixel: root::mozilla::CSSToLayoutDeviceScale, - pub mScrollOffset: root::mozilla::CSSPoint, - pub mZoom: root::mozilla::CSSToParentLayerScale2D, - pub mScrollGeneration: u32, - pub mSmoothScrollOffset: root::mozilla::CSSPoint, - pub mRootCompositionSize: root::mozilla::CSSSize, - pub mDisplayPortMargins: root::mozilla::ScreenMargin, - pub mPresShellId: u32, - pub mViewport: root::mozilla::CSSRect, - pub mExtraResolution: root::mozilla::ScreenToLayerScale2D, - pub mPaintRequestTime: root::mozilla::TimeStamp, - pub mScrollUpdateType: root::mozilla::layers::FrameMetrics_ScrollOffsetUpdateType, - pub _bitfield_1: u8, - pub __bindgen_padding_0: [u16; 3usize], - } - pub type FrameMetrics_ViewID = u64; - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum FrameMetrics_ScrollOffsetUpdateType { - eNone = 0, - eMainThread = 1, - ePending = 2, - eUserAction = 3, - eRestore = 4, - eSentinel = 5, - } - extern "C" { - #[link_name = - "_ZN7mozilla6layers12FrameMetrics14NULL_SCROLL_IDE"] - pub static FrameMetrics_NULL_SCROLL_ID: - root::mozilla::layers::FrameMetrics_ViewID; - } - pub const FrameMetrics_START_SCROLL_ID: - root::mozilla::layers::FrameMetrics_ViewID = - 2; - #[test] - fn bindgen_test_layout_FrameMetrics() { - assert_eq!(::std::mem::size_of::() , 184usize , - concat ! ( - "Size of: " , stringify ! ( FrameMetrics ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( FrameMetrics ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . mScrollId - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( mScrollId ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mPresShellResolution as * const _ as usize } , - 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mPresShellResolution ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mCompositionBounds as * const _ as usize } , - 12usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mCompositionBounds ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mDisplayPort as * const _ as usize } , 28usize , - concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( mDisplayPort - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mCriticalDisplayPort as * const _ as usize } , - 44usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mCriticalDisplayPort ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mScrollableRect as * const _ as usize } , 60usize - , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mScrollableRect ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mCumulativeResolution as * const _ as usize } , - 76usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mCumulativeResolution ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mDevPixelsPerCSSPixel as * const _ as usize } , - 84usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mDevPixelsPerCSSPixel ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mScrollOffset as * const _ as usize } , 88usize , - concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mScrollOffset ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . mZoom as * - const _ as usize } , 96usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( mZoom ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mScrollGeneration as * const _ as usize } , - 104usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mScrollGeneration ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mSmoothScrollOffset as * const _ as usize } , - 108usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mSmoothScrollOffset ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mRootCompositionSize as * const _ as usize } , - 116usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mRootCompositionSize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mDisplayPortMargins as * const _ as usize } , - 124usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mDisplayPortMargins ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mPresShellId as * const _ as usize } , 140usize , - concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( mPresShellId - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . mViewport - as * const _ as usize } , 144usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( mViewport ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mExtraResolution as * const _ as usize } , - 160usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mExtraResolution ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mPaintRequestTime as * const _ as usize } , - 168usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mPaintRequestTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FrameMetrics ) ) . - mScrollUpdateType as * const _ as usize } , - 176usize , concat ! ( - "Alignment of field: " , stringify ! ( - FrameMetrics ) , "::" , stringify ! ( - mScrollUpdateType ) )); - } - impl Clone for FrameMetrics { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct ScrollSnapInfo { - pub mScrollSnapTypeX: u8, - pub mScrollSnapTypeY: u8, - pub mScrollSnapIntervalX: [u32; 2usize], - pub mScrollSnapIntervalY: [u32; 2usize], - pub mScrollSnapDestination: root::nsPoint, - pub mScrollSnapCoordinates: root::nsTArray, - } - #[test] - fn bindgen_test_layout_ScrollSnapInfo() { - assert_eq!(::std::mem::size_of::() , 40usize , - concat ! ( - "Size of: " , stringify ! ( ScrollSnapInfo ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( ScrollSnapInfo ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapTypeX as * const _ as usize } , 0usize - , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapTypeX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapTypeY as * const _ as usize } , 1usize - , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapTypeY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapIntervalX as * const _ as usize } , - 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapIntervalX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapIntervalY as * const _ as usize } , - 12usize , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapIntervalY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapDestination as * const _ as usize } , - 20usize , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapDestination ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollSnapInfo ) ) . - mScrollSnapCoordinates as * const _ as usize } , - 32usize , concat ! ( - "Alignment of field: " , stringify ! ( - ScrollSnapInfo ) , "::" , stringify ! ( - mScrollSnapCoordinates ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Layer([u8; 0]); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ErrorResult { - pub _bindgen_opaque_blob: [u64; 2usize], - } - pub type ErrorResult_BaseErrorResult = - root::mozilla::binding_danger::TErrorResult; - #[test] - fn bindgen_test_layout_ErrorResult() { - assert_eq!(::std::mem::size_of::() , 16usize , concat - ! ( "Size of: " , stringify ! ( ErrorResult ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( ErrorResult ) )); - } - impl Clone for ErrorResult { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct OOMReporter { - pub _base: root::mozilla::dom::binding_detail::FastErrorResult, - } - #[test] - fn bindgen_test_layout_OOMReporter() { - assert_eq!(::std::mem::size_of::() , 16usize , concat - ! ( "Size of: " , stringify ! ( OOMReporter ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( OOMReporter ) )); - } - pub mod binding_danger { - #[allow(unused_imports)] - use self::super::super::super::root; - /** - * Templated implementation class for various ErrorResult-like things. The - * instantiations differ only in terms of their cleanup policies (used in the - * destructor), which they can specify via the template argument. Note that - * this means it's safe to reinterpret_cast between the instantiations unless - * you plan to invoke the destructor through such a cast pointer. - * - * A cleanup policy consists of two booleans: whether to assert that we've been - * reported or suppressed, and whether to then go ahead and suppress the - * exception. - */ - #[repr(C)] - #[derive(Debug)] - pub struct TErrorResult { - pub mResult: root::nsresult, - pub __bindgen_anon_1: root::mozilla::binding_danger::TErrorResult__bindgen_ty_1, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct TErrorResult_Message { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct TErrorResult_DOMExceptionInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct TErrorResult__bindgen_ty_1 { - pub mMessage: root::__BindgenUnionField<*mut root::mozilla::binding_danger::TErrorResult_Message>, - pub mJSException: root::__BindgenUnionField, - pub mDOMExceptionInfo: root::__BindgenUnionField<*mut root::mozilla::binding_danger::TErrorResult_DOMExceptionInfo>, - pub bindgen_union_field: u64, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct JustAssertCleanupPolicy { - pub _address: u8, - } - pub const JustAssertCleanupPolicy_assertHandled: bool = true; - pub const JustAssertCleanupPolicy_suppress: bool = false; - #[test] - fn bindgen_test_layout_JustAssertCleanupPolicy() { - assert_eq!(::std::mem::size_of::() , - 1usize , concat ! ( - "Size of: " , stringify ! ( JustAssertCleanupPolicy - ) )); - assert_eq! (::std::mem::align_of::() - , 1usize , concat ! ( - "Alignment of " , stringify ! ( - JustAssertCleanupPolicy ) )); - } - impl Clone for JustAssertCleanupPolicy { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct AssertAndSuppressCleanupPolicy { - pub _address: u8, - } - pub const AssertAndSuppressCleanupPolicy_assertHandled: bool = - true; - pub const AssertAndSuppressCleanupPolicy_suppress: bool = true; - #[test] - fn bindgen_test_layout_AssertAndSuppressCleanupPolicy() { - assert_eq!(::std::mem::size_of::() - , 1usize , concat ! ( - "Size of: " , stringify ! ( - AssertAndSuppressCleanupPolicy ) )); - assert_eq! (::std::mem::align_of::() - , 1usize , concat ! ( - "Alignment of " , stringify ! ( - AssertAndSuppressCleanupPolicy ) )); - } - impl Clone for AssertAndSuppressCleanupPolicy { - fn clone(&self) -> Self { *self } - } - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum TaskCategory { - UI = 0, - Network = 1, - Timer = 2, - Worker = 3, - IdleCallback = 4, - RefreshDriver = 5, - GarbageCollection = 6, - Other = 7, - Count = 8, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct AbstractThread([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct OriginAttributes { - pub _base: root::mozilla::dom::OriginAttributesDictionary, - } - pub const OriginAttributes_STRIP_FIRST_PARTY_DOMAIN: - root::mozilla::OriginAttributes__bindgen_ty_1 = - OriginAttributes__bindgen_ty_1::STRIP_FIRST_PARTY_DOMAIN; - pub const OriginAttributes_STRIP_USER_CONTEXT_ID: - root::mozilla::OriginAttributes__bindgen_ty_1 = - OriginAttributes__bindgen_ty_1::STRIP_USER_CONTEXT_ID; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum OriginAttributes__bindgen_ty_1 { - STRIP_FIRST_PARTY_DOMAIN = 1, - STRIP_USER_CONTEXT_ID = 2, - } - extern "C" { - #[link_name = - "_ZN7mozilla16OriginAttributes20sFirstPartyIsolationE"] - pub static mut OriginAttributes_sFirstPartyIsolation: bool; - } - extern "C" { - #[link_name = - "_ZN7mozilla16OriginAttributes23sRestrictedOpenerAccessE"] - pub static mut OriginAttributes_sRestrictedOpenerAccess: bool; - } - #[test] - fn bindgen_test_layout_OriginAttributes() { - assert_eq!(::std::mem::size_of::() , 40usize , - concat ! ( - "Size of: " , stringify ! ( OriginAttributes ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( OriginAttributes ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WidgetEvent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WidgetGUIEvent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WidgetInputEvent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WidgetPointerEvent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventFlags([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ShortcutKeyCandidate([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct Runnable { - pub _base: root::nsIRunnable, - pub _base_1: root::nsINamed, - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - pub mName: *const ::std::os::raw::c_char, - } - pub type Runnable_HasThreadSafeRefCnt = root::mozilla::TrueType; - #[test] - fn bindgen_test_layout_Runnable() { - assert_eq!(::std::mem::size_of::() , 32usize , concat ! - ( "Size of: " , stringify ! ( Runnable ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( Runnable ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventChainVisitor([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventChainPostVisitor([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventChainPreVisitor([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventListenerManager([u8; 0]); - pub const FlushType_Frames: root::mozilla::FlushType = - FlushType::Style; - #[repr(u8)] - /** - * This is the enum used by nsIDocument::FlushPendingNotifications to - * decide what to flush. - * - * Please note that if you change these values, you should sync it with the - * flushTypeNames array inside PresShell::FlushPendingNotifications. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum FlushType { - None = 0, - Content = 1, - ContentAndNotify = 2, - Style = 3, - InterruptibleLayout = 4, - Layout = 5, - Display = 6, - Count = 7, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ChangesToFlush { - pub mFlushType: root::mozilla::FlushType, - pub mFlushAnimations: bool, - } - #[test] - fn bindgen_test_layout_ChangesToFlush() { - assert_eq!(::std::mem::size_of::() , 2usize , - concat ! ( "Size of: " , stringify ! ( ChangesToFlush ) - )); - assert_eq! (::std::mem::align_of::() , 1usize , - concat ! ( - "Alignment of " , stringify ! ( ChangesToFlush ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ChangesToFlush ) ) . mFlushType - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( ChangesToFlush - ) , "::" , stringify ! ( mFlushType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ChangesToFlush ) ) . - mFlushAnimations as * const _ as usize } , 1usize , - concat ! ( - "Alignment of field: " , stringify ! ( ChangesToFlush - ) , "::" , stringify ! ( mFlushAnimations ) )); - } - impl Clone for ChangesToFlush { - fn clone(&self) -> Self { *self } - } - /** - * EventStates is the class used to represent the event states of nsIContent - * instances. These states are calculated by IntrinsicState() and - * ContentStatesChanged() has to be called when one of them changes thus - * informing the layout/style engine of the change. - * Event states are associated with pseudo-classes. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct EventStates { - pub mStates: root::mozilla::EventStates_InternalType, - } - pub type EventStates_InternalType = u64; - pub type EventStates_ServoType = u64; - #[test] - fn bindgen_test_layout_EventStates() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( EventStates ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( EventStates ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const EventStates ) ) . mStates as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( EventStates ) , - "::" , stringify ! ( mStates ) )); - } - impl Clone for EventStates { - fn clone(&self) -> Self { *self } - } - pub mod css { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(u32)] - /** - * Enum defining the mode in which a sheet is to be parsed. This is - * usually, but not always, the same as the cascade level at which the - * sheet will apply (see nsStyleSet.h). Most of the Loader APIs only - * support loading of author sheets. - * - * Author sheets are the normal case: styles embedded in or linked - * from HTML pages. They are also the most restricted. - * - * User sheets can do anything author sheets can do, and also get - * access to a few CSS extensions that are not yet suitable for - * exposure on the public Web, but are very useful for expressing - * user style overrides, such as @-moz-document rules. - * - * XXX: eUserSheetFeatures was added in bug 1035091, but some patches in - * that bug never landed to use this enum value. Currently, all the features - * in user sheet are also available in author sheet. - * - * Agent sheets have access to all author- and user-sheet features - * plus more extensions that are necessary for internal use but, - * again, not yet suitable for exposure on the public Web. Some of - * these are outright unsafe to expose; in particular, incorrect - * styling of anonymous box pseudo-elements can violate layout - * invariants. - * - * Agent sheets that do not use any unsafe rules could use - * eSafeAgentSheetFeatures when creating the sheet. This enum value allows - * Servo backend to recognize the sheets as the agent level, but Gecko - * backend will parse it under _author_ level. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum SheetParsingMode { - eAuthorSheetFeatures = 0, - eUserSheetFeatures = 1, - eAgentSheetFeatures = 2, - eSafeAgentSheetFeatures = 3, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct GroupRule([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ImportRule([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct Rule { - pub _base: root::nsIDOMCSSRule, - pub _base_1: root::nsWrapperCache, - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub mSheet: *mut root::mozilla::StyleSheet, - pub mParentRule: *mut root::mozilla::css::GroupRule, - pub mLineNumber: u32, - pub mColumnNumber: u32, - } - pub type Rule_HasThreadSafeRefCnt = root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Rule_cycleCollection { - pub _base: root::nsXPCOMCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_Rule_cycleCollection() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( Rule_cycleCollection ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - Rule_cycleCollection ) )); - } - impl Clone for Rule_cycleCollection { - fn clone(&self) -> Self { *self } - } - pub const Rule_UNKNOWN_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::UNKNOWN_RULE; - pub const Rule_CHARSET_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::CHARSET_RULE; - pub const Rule_IMPORT_RULE: root::mozilla::css::Rule__bindgen_ty_1 - = - Rule__bindgen_ty_1::IMPORT_RULE; - pub const Rule_NAMESPACE_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::NAMESPACE_RULE; - pub const Rule_STYLE_RULE: root::mozilla::css::Rule__bindgen_ty_1 - = - Rule__bindgen_ty_1::STYLE_RULE; - pub const Rule_MEDIA_RULE: root::mozilla::css::Rule__bindgen_ty_1 - = - Rule__bindgen_ty_1::MEDIA_RULE; - pub const Rule_FONT_FACE_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::FONT_FACE_RULE; - pub const Rule_PAGE_RULE: root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::PAGE_RULE; - pub const Rule_KEYFRAME_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::KEYFRAME_RULE; - pub const Rule_KEYFRAMES_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::KEYFRAMES_RULE; - pub const Rule_DOCUMENT_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::DOCUMENT_RULE; - pub const Rule_SUPPORTS_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::SUPPORTS_RULE; - pub const Rule_FONT_FEATURE_VALUES_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::FONT_FEATURE_VALUES_RULE; - pub const Rule_COUNTER_STYLE_RULE: - root::mozilla::css::Rule__bindgen_ty_1 = - Rule__bindgen_ty_1::COUNTER_STYLE_RULE; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum Rule__bindgen_ty_1 { - UNKNOWN_RULE = 0, - CHARSET_RULE = 1, - IMPORT_RULE = 2, - NAMESPACE_RULE = 3, - STYLE_RULE = 4, - MEDIA_RULE = 5, - FONT_FACE_RULE = 6, - PAGE_RULE = 7, - KEYFRAME_RULE = 8, - KEYFRAMES_RULE = 9, - DOCUMENT_RULE = 10, - SUPPORTS_RULE = 11, - FONT_FEATURE_VALUES_RULE = 12, - COUNTER_STYLE_RULE = 13, - } - extern "C" { - #[link_name = "_ZN7mozilla3css4Rule21_cycleCollectorGlobalE"] - pub static mut Rule__cycleCollectorGlobal: - root::mozilla::css::Rule_cycleCollection; - } - #[test] - fn bindgen_test_layout_Rule() { - assert_eq!(::std::mem::size_of::() , 64usize , concat ! - ( "Size of: " , stringify ! ( Rule ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( Rule ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Loader([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ImageLoader([u8; 0]); - #[repr(C)] - pub struct URLValueData__bindgen_vtable { - } - #[repr(C)] - #[derive(Debug)] - pub struct URLValueData { - pub vtable_: *const URLValueData__bindgen_vtable, - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - pub mURI: root::nsMainThreadPtrHandle, - pub mString: ::nsstring::nsStringRepr, - pub mExtraData: root::RefPtr, - pub mURIResolved: bool, - pub mIsLocalRef: [u8; 2usize], - pub mMightHaveRef: [u8; 2usize], - } - pub type URLValueData_HasThreadSafeRefCnt = - root::mozilla::TrueType; - #[test] - fn bindgen_test_layout_URLValueData() { - assert_eq!(::std::mem::size_of::() , 56usize , - concat ! ( - "Size of: " , stringify ! ( URLValueData ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( URLValueData ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . mRefCnt as - * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mRefCnt ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . mURI as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mURI ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . mString as - * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mString ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . mExtraData - as * const _ as usize } , 40usize , concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mExtraData ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . - mURIResolved as * const _ as usize } , 48usize , - concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mURIResolved - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . - mIsLocalRef as * const _ as usize } , 49usize , - concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( mIsLocalRef - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLValueData ) ) . - mMightHaveRef as * const _ as usize } , 51usize , - concat ! ( - "Alignment of field: " , stringify ! ( - URLValueData ) , "::" , stringify ! ( - mMightHaveRef ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct URLValue { - pub _base: root::mozilla::css::URLValueData, - } - #[test] - fn bindgen_test_layout_URLValue() { - assert_eq!(::std::mem::size_of::() , 56usize , - concat ! ( "Size of: " , stringify ! ( URLValue ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( URLValue ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct ImageValue { - pub _base: root::mozilla::css::URLValueData, - pub mRequests: [u64; 5usize], - } - #[test] - fn bindgen_test_layout_ImageValue() { - assert_eq!(::std::mem::size_of::() , 96usize , - concat ! ( "Size of: " , stringify ! ( ImageValue ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( ImageValue ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageValue ) ) . mRequests as - * const _ as usize } , 56usize , concat ! ( - "Alignment of field: " , stringify ! ( ImageValue - ) , "::" , stringify ! ( mRequests ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct GridNamedArea { - pub mName: ::nsstring::nsStringRepr, - pub mColumnStart: u32, - pub mColumnEnd: u32, - pub mRowStart: u32, - pub mRowEnd: u32, - } - #[test] - fn bindgen_test_layout_GridNamedArea() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( - "Size of: " , stringify ! ( GridNamedArea ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( GridNamedArea ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridNamedArea ) ) . mName as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - GridNamedArea ) , "::" , stringify ! ( mName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridNamedArea ) ) . - mColumnStart as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GridNamedArea ) , "::" , stringify ! ( - mColumnStart ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridNamedArea ) ) . - mColumnEnd as * const _ as usize } , 20usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GridNamedArea ) , "::" , stringify ! ( mColumnEnd - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridNamedArea ) ) . mRowStart - as * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - GridNamedArea ) , "::" , stringify ! ( mRowStart ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridNamedArea ) ) . mRowEnd - as * const _ as usize } , 28usize , concat ! ( - "Alignment of field: " , stringify ! ( - GridNamedArea ) , "::" , stringify ! ( mRowEnd ) - )); - } - #[repr(C)] - #[derive(Debug)] - pub struct GridTemplateAreasValue { - pub mNamedAreas: root::nsTArray, - pub mTemplates: root::nsTArray<::nsstring::nsStringRepr>, - pub mNColumns: u32, - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - } - pub type GridTemplateAreasValue_HasThreadSafeRefCnt = - root::mozilla::TrueType; - #[test] - fn bindgen_test_layout_GridTemplateAreasValue() { - assert_eq!(::std::mem::size_of::() , - 32usize , concat ! ( - "Size of: " , stringify ! ( GridTemplateAreasValue - ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - GridTemplateAreasValue ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridTemplateAreasValue ) ) . - mNamedAreas as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GridTemplateAreasValue ) , "::" , stringify ! ( - mNamedAreas ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridTemplateAreasValue ) ) . - mTemplates as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GridTemplateAreasValue ) , "::" , stringify ! ( - mTemplates ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridTemplateAreasValue ) ) . - mNColumns as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - GridTemplateAreasValue ) , "::" , stringify ! ( - mNColumns ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const GridTemplateAreasValue ) ) . - mRefCnt as * const _ as usize } , 24usize , concat - ! ( - "Alignment of field: " , stringify ! ( - GridTemplateAreasValue ) , "::" , stringify ! ( - mRefCnt ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct FontFamilyListRefCnt { - pub _base: root::mozilla::FontFamilyList, - pub mRefCnt: root::nsAutoRefCnt, - } - pub type FontFamilyListRefCnt_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[test] - fn bindgen_test_layout_FontFamilyListRefCnt() { - assert_eq!(::std::mem::size_of::() , - 24usize , concat ! ( - "Size of: " , stringify ! ( FontFamilyListRefCnt ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - FontFamilyListRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyListRefCnt ) ) . - mRefCnt as * const _ as usize } , 16usize , concat - ! ( - "Alignment of field: " , stringify ! ( - FontFamilyListRefCnt ) , "::" , stringify ! ( - mRefCnt ) )); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct RGBAColorData { - pub mR: f32, - pub mG: f32, - pub mB: f32, - pub mA: f32, - } - #[test] - fn bindgen_test_layout_RGBAColorData() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( - "Size of: " , stringify ! ( RGBAColorData ) )); - assert_eq! (::std::mem::align_of::() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( RGBAColorData ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const RGBAColorData ) ) . mR as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - RGBAColorData ) , "::" , stringify ! ( mR ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const RGBAColorData ) ) . mG as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - RGBAColorData ) , "::" , stringify ! ( mG ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const RGBAColorData ) ) . mB as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - RGBAColorData ) , "::" , stringify ! ( mB ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const RGBAColorData ) ) . mA as * - const _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( - RGBAColorData ) , "::" , stringify ! ( mA ) )); - } - impl Clone for RGBAColorData { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ComplexColorData { - pub mColor: root::mozilla::css::RGBAColorData, - pub mForegroundRatio: f32, - } - #[test] - fn bindgen_test_layout_ComplexColorData() { - assert_eq!(::std::mem::size_of::() , 20usize - , concat ! ( - "Size of: " , stringify ! ( ComplexColorData ) )); - assert_eq! (::std::mem::align_of::() , - 4usize , concat ! ( - "Alignment of " , stringify ! ( ComplexColorData ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComplexColorData ) ) . mColor - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - ComplexColorData ) , "::" , stringify ! ( mColor ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComplexColorData ) ) . - mForegroundRatio as * const _ as usize } , 16usize - , concat ! ( - "Alignment of field: " , stringify ! ( - ComplexColorData ) , "::" , stringify ! ( - mForegroundRatio ) )); - } - impl Clone for ComplexColorData { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct ComplexColorValue { - pub _base: root::mozilla::css::ComplexColorData, - pub mRefCnt: root::nsAutoRefCnt, - } - pub type ComplexColorValue_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[test] - fn bindgen_test_layout_ComplexColorValue() { - assert_eq!(::std::mem::size_of::() , - 32usize , concat ! ( - "Size of: " , stringify ! ( ComplexColorValue ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( ComplexColorValue - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComplexColorValue ) ) . - mRefCnt as * const _ as usize } , 24usize , concat - ! ( - "Alignment of field: " , stringify ! ( - ComplexColorValue ) , "::" , stringify ! ( mRefCnt - ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DocumentRule([u8; 0]); - } - /** - * Superclass for data common to CSSStyleSheet and ServoStyleSheet. - */ - #[repr(C)] - #[derive(Debug)] - pub struct StyleSheet { - pub _base: root::nsIDOMCSSStyleSheet, - pub _base_1: root::nsICSSLoaderObserver, - pub _base_2: root::nsWrapperCache, - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub mParent: *mut root::mozilla::StyleSheet, - pub mTitle: ::nsstring::nsStringRepr, - pub mDocument: *mut root::nsIDocument, - pub mOwningNode: *mut root::nsINode, - pub mMedia: root::RefPtr, - pub mNext: root::RefPtr, - pub mParsingMode: root::mozilla::css::SheetParsingMode, - pub mType: root::mozilla::StyleBackendType, - pub mDisabled: bool, - pub mDocumentAssociationMode: root::mozilla::StyleSheet_DocumentAssociationMode, - pub mInner: *mut root::mozilla::StyleSheetInfo, - } - pub type StyleSheet_HasThreadSafeRefCnt = root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleSheet_cycleCollection { - pub _base: root::nsXPCOMCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_StyleSheet_cycleCollection() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( StyleSheet_cycleCollection - ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - StyleSheet_cycleCollection ) )); - } - impl Clone for StyleSheet_cycleCollection { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleSheet_DocumentAssociationMode { - OwnedByDocument = 0, - NotOwnedByDocument = 1, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleSheet_ChildSheetListBuilder { - pub sheetSlot: *mut root::RefPtr, - pub parent: *mut root::mozilla::StyleSheet, - } - #[test] - fn bindgen_test_layout_StyleSheet_ChildSheetListBuilder() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - StyleSheet_ChildSheetListBuilder ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - StyleSheet_ChildSheetListBuilder ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const StyleSheet_ChildSheetListBuilder ) ) - . sheetSlot as * const _ as usize } , 0usize , concat - ! ( - "Alignment of field: " , stringify ! ( - StyleSheet_ChildSheetListBuilder ) , "::" , stringify - ! ( sheetSlot ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const StyleSheet_ChildSheetListBuilder ) ) - . parent as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleSheet_ChildSheetListBuilder ) , "::" , stringify - ! ( parent ) )); - } - impl Clone for StyleSheet_ChildSheetListBuilder { - fn clone(&self) -> Self { *self } - } - extern "C" { - #[link_name = "_ZN7mozilla10StyleSheet21_cycleCollectorGlobalE"] - pub static mut StyleSheet__cycleCollectorGlobal: - root::mozilla::StyleSheet_cycleCollection; - } - #[test] - fn bindgen_test_layout_StyleSheet() { - assert_eq!(::std::mem::size_of::() , 128usize , concat - ! ( "Size of: " , stringify ! ( StyleSheet ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( StyleSheet ) )); - } - pub mod net { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum ReferrerPolicy { - RP_No_Referrer = 2, - RP_Origin = 3, - RP_No_Referrer_When_Downgrade = 1, - RP_Origin_When_Crossorigin = 4, - RP_Unsafe_URL = 5, - RP_Same_Origin = 6, - RP_Strict_Origin = 7, - RP_Strict_Origin_When_Cross_Origin = 8, - RP_Unset = 0, - } - } - #[repr(u8)] - /** - * Enumeration that represents one of the two supported style system backends. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBackendType { None = 0, Gecko = 1, Servo = 2, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CORSMode { - CORS_NONE = 0, - CORS_ANONYMOUS = 1, - CORS_USE_CREDENTIALS = 2, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ServoStyleSheet([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct StyleSheetInfo([u8; 0]); - #[repr(i16)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum UseCounter { - eUseCounter_UNKNOWN = -1, - eUseCounter_SVGSVGElement_getElementById = 0, - eUseCounter_SVGSVGElement_currentScale_getter = 1, - eUseCounter_SVGSVGElement_currentScale_setter = 2, - eUseCounter_property_Fill = 3, - eUseCounter_property_FillOpacity = 4, - eUseCounter_PushManager_subscribe = 5, - eUseCounter_PushSubscription_unsubscribe = 6, - eUseCounter_Window_sidebar_getter = 7, - eUseCounter_Window_sidebar_setter = 8, - eUseCounter_External_addSearchEngine = 9, - eUseCounter_OfflineResourceList_swapCache = 10, - eUseCounter_OfflineResourceList_update = 11, - eUseCounter_OfflineResourceList_status_getter = 12, - eUseCounter_OfflineResourceList_status_setter = 13, - eUseCounter_OfflineResourceList_onchecking_getter = 14, - eUseCounter_OfflineResourceList_onchecking_setter = 15, - eUseCounter_OfflineResourceList_onerror_getter = 16, - eUseCounter_OfflineResourceList_onerror_setter = 17, - eUseCounter_OfflineResourceList_onnoupdate_getter = 18, - eUseCounter_OfflineResourceList_onnoupdate_setter = 19, - eUseCounter_OfflineResourceList_ondownloading_getter = 20, - eUseCounter_OfflineResourceList_ondownloading_setter = 21, - eUseCounter_OfflineResourceList_onprogress_getter = 22, - eUseCounter_OfflineResourceList_onprogress_setter = 23, - eUseCounter_OfflineResourceList_onupdateready_getter = 24, - eUseCounter_OfflineResourceList_onupdateready_setter = 25, - eUseCounter_OfflineResourceList_oncached_getter = 26, - eUseCounter_OfflineResourceList_oncached_setter = 27, - eUseCounter_OfflineResourceList_onobsolete_getter = 28, - eUseCounter_OfflineResourceList_onobsolete_setter = 29, - eUseCounter_IDBDatabase_createMutableFile = 30, - eUseCounter_IDBDatabase_mozCreateFileHandle = 31, - eUseCounter_IDBMutableFile_open = 32, - eUseCounter_IDBMutableFile_getFile = 33, - eUseCounter_DataTransfer_addElement = 34, - eUseCounter_DataTransfer_mozItemCount_getter = 35, - eUseCounter_DataTransfer_mozItemCount_setter = 36, - eUseCounter_DataTransfer_mozCursor_getter = 37, - eUseCounter_DataTransfer_mozCursor_setter = 38, - eUseCounter_DataTransfer_mozTypesAt = 39, - eUseCounter_DataTransfer_mozClearDataAt = 40, - eUseCounter_DataTransfer_mozSetDataAt = 41, - eUseCounter_DataTransfer_mozGetDataAt = 42, - eUseCounter_DataTransfer_mozUserCancelled_getter = 43, - eUseCounter_DataTransfer_mozUserCancelled_setter = 44, - eUseCounter_DataTransfer_mozSourceNode_getter = 45, - eUseCounter_DataTransfer_mozSourceNode_setter = 46, - eUseCounter_GetAttributeNode = 47, - eUseCounter_SetAttributeNode = 48, - eUseCounter_GetAttributeNodeNS = 49, - eUseCounter_SetAttributeNodeNS = 50, - eUseCounter_RemoveAttributeNode = 51, - eUseCounter_CreateAttribute = 52, - eUseCounter_CreateAttributeNS = 53, - eUseCounter_NodeValue = 54, - eUseCounter_TextContent = 55, - eUseCounter_EnablePrivilege = 56, - eUseCounter_DOMExceptionCode = 57, - eUseCounter_NoExposedProps = 58, - eUseCounter_MutationEvent = 59, - eUseCounter_Components = 60, - eUseCounter_PrefixedVisibilityAPI = 61, - eUseCounter_NodeIteratorDetach = 62, - eUseCounter_LenientThis = 63, - eUseCounter_GetPreventDefault = 64, - eUseCounter_GetSetUserData = 65, - eUseCounter_MozGetAsFile = 66, - eUseCounter_UseOfCaptureEvents = 67, - eUseCounter_UseOfReleaseEvents = 68, - eUseCounter_UseOfDOM3LoadMethod = 69, - eUseCounter_ChromeUseOfDOM3LoadMethod = 70, - eUseCounter_ShowModalDialog = 71, - eUseCounter_Window_Content = 72, - eUseCounter_SyncXMLHttpRequest = 73, - eUseCounter_Window_Controllers = 74, - eUseCounter_ImportXULIntoContent = 75, - eUseCounter_PannerNodeDoppler = 76, - eUseCounter_NavigatorGetUserMedia = 77, - eUseCounter_WebrtcDeprecatedPrefix = 78, - eUseCounter_RTCPeerConnectionGetStreams = 79, - eUseCounter_AppCache = 80, - eUseCounter_PrefixedImageSmoothingEnabled = 81, - eUseCounter_PrefixedFullscreenAPI = 82, - eUseCounter_LenientSetter = 83, - eUseCounter_FileLastModifiedDate = 84, - eUseCounter_ImageBitmapRenderingContext_TransferImageBitmap = 85, - eUseCounter_URLCreateObjectURL_MediaStream = 86, - eUseCounter_XMLBaseAttribute = 87, - eUseCounter_XMLBaseAttributeForStyleAttr = 88, - eUseCounter_Count = 89, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum Side { - eSideTop = 0, - eSideRight = 1, - eSideBottom = 2, - eSideLeft = 3, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum HalfCorner { - eCornerTopLeftX = 0, - eCornerTopLeftY = 1, - eCornerTopRightX = 2, - eCornerTopRightY = 3, - eCornerBottomRightX = 4, - eCornerBottomRightY = 5, - eCornerBottomLeftX = 6, - eCornerBottomLeftY = 7, - } - pub type CSSPoint = [u32; 2usize]; - pub type CSSIntPoint = [u32; 2usize]; - pub type CSSSize = [u32; 2usize]; - pub type CSSRect = [u32; 4usize]; - pub type LayoutDeviceIntPoint = [u32; 2usize]; - pub type LayoutDeviceIntSize = [u32; 2usize]; - pub type LayoutDeviceIntRect = [u32; 4usize]; - pub type ScreenIntSize = (); - pub type ScreenMargin = [u32; 4usize]; - pub type ParentLayerRect = [u32; 4usize]; - pub type CSSToLayoutDeviceScale = u32; - pub type CSSToParentLayerScale2D = [u32; 2usize]; - pub type LayoutDeviceToLayerScale2D = [u32; 2usize]; - pub type ScreenToLayerScale2D = [u32; 2usize]; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct PendingAnimationTracker([u8; 0]); - /** - * Smart pointer class that can hold a pointer to either an nsStyleSet - * or a ServoStyleSet. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleSetHandle { - pub mPtr: root::mozilla::StyleSetHandle_Ptr, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleSetHandle_Ptr { - pub mValue: usize, - } - #[test] - fn bindgen_test_layout_StyleSetHandle_Ptr() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( StyleSetHandle_Ptr ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( StyleSetHandle_Ptr ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleSetHandle_Ptr ) ) . mValue - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleSetHandle_Ptr ) , "::" , stringify ! ( mValue ) - )); - } - impl Clone for StyleSetHandle_Ptr { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_StyleSetHandle() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( "Size of: " , stringify ! ( StyleSetHandle ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StyleSetHandle ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleSetHandle ) ) . mPtr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleSetHandle - ) , "::" , stringify ! ( mPtr ) )); - } - impl Clone for StyleSetHandle { - fn clone(&self) -> Self { *self } - } - #[test] - fn __bindgen_test_layout_template_3() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::StaticRefPtr - ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! - ( - root::mozilla::StaticRefPtr - ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct URLExtraData { - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - pub mBaseURI: root::nsCOMPtr, - pub mReferrer: root::nsCOMPtr, - pub mPrincipal: root::nsCOMPtr, - } - pub type URLExtraData_HasThreadSafeRefCnt = root::mozilla::TrueType; - extern "C" { - #[link_name = "_ZN7mozilla12URLExtraData6sDummyE"] - pub static mut URLExtraData_sDummy: - root::mozilla::StaticRefPtr; - } - #[test] - fn bindgen_test_layout_URLExtraData() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( "Size of: " , stringify ! ( URLExtraData ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( URLExtraData ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLExtraData ) ) . mRefCnt as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( URLExtraData ) - , "::" , stringify ! ( mRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLExtraData ) ) . mBaseURI as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( URLExtraData ) - , "::" , stringify ! ( mBaseURI ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLExtraData ) ) . mReferrer as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( URLExtraData ) - , "::" , stringify ! ( mReferrer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const URLExtraData ) ) . mPrincipal as - * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( URLExtraData ) - , "::" , stringify ! ( mPrincipal ) )); - } - pub mod dmd { - #[allow(unused_imports)] - use self::super::super::super::root; - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct JSONWriteFunc([u8; 0]); - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum ArenaObjectID { - eArenaObjectID_DummyBeforeFirstObjectID = 536870911, - eArenaObjectID_nsLineBox = 536870912, - eArenaObjectID_nsRuleNode = 536870913, - eArenaObjectID_nsStyleContext = 536870914, - eArenaObjectID_nsInheritedStyleData = 536870915, - eArenaObjectID_nsResetStyleData = 536870916, - eArenaObjectID_nsConditionalResetStyleData = 536870917, - eArenaObjectID_nsConditionalResetStyleDataEntry = 536870918, - eArenaObjectID_nsFrameList = 536870919, - eArenaObjectID_CustomCounterStyle = 536870920, - eArenaObjectID_DependentBuiltinCounterStyle = 536870921, - eArenaObjectID_nsStyleFont = 536870922, - eArenaObjectID_nsStyleColor = 536870923, - eArenaObjectID_nsStyleList = 536870924, - eArenaObjectID_nsStyleText = 536870925, - eArenaObjectID_nsStyleVisibility = 536870926, - eArenaObjectID_nsStyleUserInterface = 536870927, - eArenaObjectID_nsStyleTableBorder = 536870928, - eArenaObjectID_nsStyleSVG = 536870929, - eArenaObjectID_nsStyleVariables = 536870930, - eArenaObjectID_nsStyleBackground = 536870931, - eArenaObjectID_nsStylePosition = 536870932, - eArenaObjectID_nsStyleTextReset = 536870933, - eArenaObjectID_nsStyleDisplay = 536870934, - eArenaObjectID_nsStyleContent = 536870935, - eArenaObjectID_nsStyleUIReset = 536870936, - eArenaObjectID_nsStyleTable = 536870937, - eArenaObjectID_nsStyleMargin = 536870938, - eArenaObjectID_nsStylePadding = 536870939, - eArenaObjectID_nsStyleBorder = 536870940, - eArenaObjectID_nsStyleOutline = 536870941, - eArenaObjectID_nsStyleXUL = 536870942, - eArenaObjectID_nsStyleSVGReset = 536870943, - eArenaObjectID_nsStyleColumn = 536870944, - eArenaObjectID_nsStyleEffects = 536870945, - eArenaObjectID_NON_OBJECT_MARKER = 1073741824, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct CSSVariableResolver([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct CSSVariableValues { - /** - * Map of variable names to IDs. Variable IDs are indexes into - * mVariables. - */ - pub mVariableIDs: [u64; 5usize], - /** - * Array of variables, indexed by variable ID. - */ - pub mVariables: root::nsTArray, - } - #[repr(C)] - #[derive(Debug)] - pub struct CSSVariableValues_Variable { - pub mVariableName: ::nsstring::nsStringRepr, - pub mValue: ::nsstring::nsStringRepr, - pub mFirstToken: root::nsCSSTokenSerializationType, - pub mLastToken: root::nsCSSTokenSerializationType, - } - #[test] - fn bindgen_test_layout_CSSVariableValues_Variable() { - assert_eq!(::std::mem::size_of::() , - 40usize , concat ! ( - "Size of: " , stringify ! ( CSSVariableValues_Variable - ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - CSSVariableValues_Variable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues_Variable ) ) . - mVariableName as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues_Variable ) , "::" , stringify ! ( - mVariableName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues_Variable ) ) . - mValue as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues_Variable ) , "::" , stringify ! ( - mValue ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues_Variable ) ) . - mFirstToken as * const _ as usize } , 32usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues_Variable ) , "::" , stringify ! ( - mFirstToken ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues_Variable ) ) . - mLastToken as * const _ as usize } , 36usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues_Variable ) , "::" , stringify ! ( - mLastToken ) )); - } - #[test] - fn bindgen_test_layout_CSSVariableValues() { - assert_eq!(::std::mem::size_of::() , 48usize , - concat ! ( - "Size of: " , stringify ! ( CSSVariableValues ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( CSSVariableValues ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues ) ) . - mVariableIDs as * const _ as usize } , 0usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues ) , "::" , stringify ! ( - mVariableIDs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CSSVariableValues ) ) . - mVariables as * const _ as usize } , 40usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CSSVariableValues ) , "::" , stringify ! ( mVariables - ) )); - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum SheetType { - Agent = 0, - User = 1, - PresHint = 2, - Doc = 3, - ScopedDoc = 4, - StyleAttr = 5, - Override = 6, - Animation = 7, - Transition = 8, - Count = 9, - Unknown = 255, - } - /** - * This struct represents a combined color from a numeric color and - * the current foreground color (currentcolor keyword). - * Conceptually, the formula is "color * (1 - p) + currentcolor * p" - * where p is mForegroundRatio. See mozilla::LinearBlendColors for - * the actual algorithm. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleComplexColor { - pub mColor: root::nscolor, - pub mForegroundRatio: u8, - pub mIsAuto: bool, - } - #[test] - fn bindgen_test_layout_StyleComplexColor() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( StyleComplexColor ) )); - assert_eq! (::std::mem::align_of::() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( StyleComplexColor ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleComplexColor ) ) . mColor as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleComplexColor ) , "::" , stringify ! ( mColor ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleComplexColor ) ) . - mForegroundRatio as * const _ as usize } , 4usize , - concat ! ( - "Alignment of field: " , stringify ! ( - StyleComplexColor ) , "::" , stringify ! ( - mForegroundRatio ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleComplexColor ) ) . mIsAuto - as * const _ as usize } , 5usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleComplexColor ) , "::" , stringify ! ( mIsAuto ) - )); - } - impl Clone for StyleComplexColor { - fn clone(&self) -> Self { *self } - } - pub const FontFamilyType_eFamily_generic_first: - root::mozilla::FontFamilyType = - FontFamilyType::eFamily_serif; - pub const FontFamilyType_eFamily_generic_last: - root::mozilla::FontFamilyType = - FontFamilyType::eFamily_fantasy; - pub const FontFamilyType_eFamily_generic_count: - root::mozilla::FontFamilyType = - FontFamilyType::eFamily_monospace; - #[repr(u32)] - /** - * type of font family name, either a name (e.g. Helvetica) or a - * generic (e.g. serif, sans-serif), with the ability to distinguish - * between unquoted and quoted names for serializaiton - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum FontFamilyType { - eFamily_none = 0, - eFamily_named = 1, - eFamily_named_quoted = 2, - eFamily_serif = 3, - eFamily_sans_serif = 4, - eFamily_monospace = 5, - eFamily_cursive = 6, - eFamily_fantasy = 7, - eFamily_moz_variable = 8, - eFamily_moz_fixed = 9, - } - /** - * font family name, a string for the name if not a generic and - * a font type indicated named family or which generic family - */ - #[repr(C)] - #[derive(Debug)] - pub struct FontFamilyName { - pub mType: root::mozilla::FontFamilyType, - pub mName: ::nsstring::nsStringRepr, - } - #[test] - fn bindgen_test_layout_FontFamilyName() { - assert_eq!(::std::mem::size_of::() , 24usize , - concat ! ( "Size of: " , stringify ! ( FontFamilyName ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( FontFamilyName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyName ) ) . mType as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( FontFamilyName - ) , "::" , stringify ! ( mType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyName ) ) . mName as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( FontFamilyName - ) , "::" , stringify ! ( mName ) )); - } - /** - * font family list, array of font families and a default font type. - * font family names are either named strings or generics. the default - * font type is used to preserve the variable font fallback behavior - */ - #[repr(C)] - #[derive(Debug)] - pub struct FontFamilyList { - pub mFontlist: root::nsTArray, - pub mDefaultFontType: root::mozilla::FontFamilyType, - } - #[test] - fn bindgen_test_layout_FontFamilyList() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( "Size of: " , stringify ! ( FontFamilyList ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( FontFamilyList ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyList ) ) . mFontlist as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( FontFamilyList - ) , "::" , stringify ! ( mFontlist ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FontFamilyList ) ) . - mDefaultFontType as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( FontFamilyList - ) , "::" , stringify ! ( mDefaultFontType ) )); - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBasicShapeType { - Polygon = 0, - Circle = 1, - Ellipse = 2, - Inset = 3, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxAlign { - Stretch = 0, - Start = 1, - Center = 2, - Baseline = 3, - End = 4, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxDecorationBreak { Slice = 0, Clone = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxDirection { Normal = 0, Reverse = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxOrient { Horizontal = 0, Vertical = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxPack { Start = 0, Center = 1, End = 2, Justify = 3, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleBoxSizing { Content = 0, Border = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleClear { - None = 0, - Left = 1, - Right = 2, - InlineStart = 3, - InlineEnd = 4, - Both = 5, - Line = 8, - Max = 13, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleGeometryBox { - ContentBox = 0, - PaddingBox = 1, - BorderBox = 2, - MarginBox = 3, - FillBox = 4, - StrokeBox = 5, - ViewBox = 6, - NoClip = 7, - Text = 8, - NoBox = 9, - MozAlmostPadding = 127, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleFillRule { Nonzero = 0, Evenodd = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleFloat { - None = 0, - Left = 1, - Right = 2, - InlineStart = 3, - InlineEnd = 4, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleFloatEdge { ContentBox = 0, MarginBox = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleHyphens { None = 0, Manual = 1, Auto = 2, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleShapeRadius { ClosestSide = 0, FarthestSide = 1, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleShapeSourceType { - None = 0, - URL = 1, - Shape = 2, - Box = 3, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleTextJustify { - None = 0, - Auto = 1, - InterWord = 2, - InterCharacter = 3, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleUserFocus { - None = 0, - Ignore = 1, - Normal = 2, - SelectAll = 3, - SelectBefore = 4, - SelectAfter = 5, - SelectSame = 6, - SelectMenu = 7, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleUserSelect { - None = 0, - Text = 1, - Element = 2, - Elements = 3, - All = 4, - Toggle = 5, - TriState = 6, - Auto = 7, - MozAll = 8, - MozText = 9, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleUserInput { - None = 0, - Enabled = 1, - Disabled = 2, - Auto = 3, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleUserModify { - ReadOnly = 0, - ReadWrite = 1, - WriteOnly = 2, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleWindowDragging { Default = 0, Drag = 1, NoDrag = 2, } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleOrient { - Inline = 0, - Block = 1, - Horizontal = 2, - Vertical = 3, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleDisplay { - None = 0, - Block = 1, - FlowRoot = 2, - Inline = 3, - InlineBlock = 4, - ListItem = 5, - Table = 6, - InlineTable = 7, - TableRowGroup = 8, - TableColumn = 9, - TableColumnGroup = 10, - TableHeaderGroup = 11, - TableFooterGroup = 12, - TableRow = 13, - TableCell = 14, - TableCaption = 15, - Flex = 16, - InlineFlex = 17, - Grid = 18, - InlineGrid = 19, - Ruby = 20, - RubyBase = 21, - RubyBaseContainer = 22, - RubyText = 23, - RubyTextContainer = 24, - Contents = 25, - WebkitBox = 26, - WebkitInlineBox = 27, - MozBox = 28, - MozInlineBox = 29, - MozGrid = 30, - MozInlineGrid = 31, - MozGridGroup = 32, - MozGridLine = 33, - MozStack = 34, - MozInlineStack = 35, - MozDeck = 36, - MozGroupbox = 37, - MozPopup = 38, - } - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum StyleGridTrackBreadth { MaxContent = 1, MinContent = 2, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct WritingMode([u8; 0]); - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum LogicalSide { - eLogicalSideBStart = 0, - eLogicalSideBEnd = 1, - eLogicalSideIStart = 2, - eLogicalSideIEnd = 3, - } - /** - * Additional data used in conjunction with an nsRestyleHint to control the - * restyle process. - */ - #[repr(C)] - #[derive(Debug)] - pub struct RestyleHintData { - pub mSelectorsForDescendants: root::nsTArray<*mut root::nsCSSSelector>, - } - #[test] - fn bindgen_test_layout_RestyleHintData() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( RestyleHintData ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( RestyleHintData ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const RestyleHintData ) ) . - mSelectorsForDescendants as * const _ as usize } , - 0usize , concat ! ( - "Alignment of field: " , stringify ! ( RestyleHintData - ) , "::" , stringify ! ( mSelectorsForDescendants ) - )); - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum TraversalRootBehavior { - Normal = 0, - UnstyledChildrenOnly = 1, - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum TraversalRestyleBehavior { Normal = 0, ForReconstruct = 1, } - pub const UpdateAnimationsTasks_CSSAnimations: - root::mozilla::UpdateAnimationsTasks = - 1; - pub const UpdateAnimationsTasks_CSSTransitions: - root::mozilla::UpdateAnimationsTasks = - 2; - pub const UpdateAnimationsTasks_EffectProperties: - root::mozilla::UpdateAnimationsTasks = - 4; - pub const UpdateAnimationsTasks_CascadeResults: - root::mozilla::UpdateAnimationsTasks = - 8; - pub type UpdateAnimationsTasks = u8; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum LengthParsingMode { Default = 0, SVG = 1, } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum InheritTarget { - Text = 0, - FirstLetterContinuation = 1, - PlaceholderFrame = 2, - } - pub type CSSPseudoElementTypeBase = u8; - pub const CSSPseudoElementType_InheritingAnonBox: - root::mozilla::CSSPseudoElementType = - CSSPseudoElementType::Count; - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CSSPseudoElementType { - after = 0, - before = 1, - backdrop = 2, - cue = 3, - firstLetter = 4, - firstLine = 5, - mozSelection = 6, - mozFocusInner = 7, - mozFocusOuter = 8, - mozListBullet = 9, - mozListNumber = 10, - mozMathAnonymous = 11, - mozNumberWrapper = 12, - mozNumberText = 13, - mozNumberSpinBox = 14, - mozNumberSpinUp = 15, - mozNumberSpinDown = 16, - mozProgressBar = 17, - mozRangeTrack = 18, - mozRangeProgress = 19, - mozRangeThumb = 20, - mozMeterBar = 21, - mozPlaceholder = 22, - placeholder = 23, - mozColorSwatch = 24, - Count = 25, - NonInheritingAnonBox = 26, - XULTree = 27, - NotPseudo = 28, - MAX = 29, - } - pub mod widget { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct IMEState([u8; 0]); - } - pub type RawSelectionType = ::std::os::raw::c_short; - #[repr(i16)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum SelectionType { - eInvalid = -1, - eNone = 0, - eNormal = 1, - eSpellCheck = 2, - eIMERawClause = 4, - eIMESelectedRawClause = 8, - eIMEConvertedClause = 16, - eIMESelectedClause = 32, - eAccessibility = 64, - eFind = 128, - eURLSecondary = 256, - eURLStrikeout = 512, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct AccessibleCaretEventHub([u8; 0]); - pub mod a11y { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DocAccessible([u8; 0]); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct FramePropertyDescriptorUntyped { - pub mDestructor: root::mozilla::FramePropertyDescriptorUntyped_UntypedDestructor, - pub mDestructorWithFrame: root::mozilla::FramePropertyDescriptorUntyped_UntypedDestructorWithFrame, - } - /** - * mDestructor will be called if it's non-null. - */ - pub type FramePropertyDescriptorUntyped_UntypedDestructor = - ::std::option::Option; - /** - * mDestructorWithFrame will be called if it's non-null and mDestructor - * is null. WARNING: The frame passed to mDestructorWithFrame may - * be a dangling frame pointer, if this is being called during - * presshell teardown. Do not use it except to compare against - * other frame pointers. No frame will have been allocated with - * the same address yet. - */ - pub type FramePropertyDescriptorUntyped_UntypedDestructorWithFrame = - ::std::option::Option; - #[test] - fn bindgen_test_layout_FramePropertyDescriptorUntyped() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - FramePropertyDescriptorUntyped ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - FramePropertyDescriptorUntyped ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyDescriptorUntyped ) - ) . mDestructor as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - FramePropertyDescriptorUntyped ) , "::" , stringify ! - ( mDestructor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyDescriptorUntyped ) - ) . mDestructorWithFrame as * const _ as usize } , - 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - FramePropertyDescriptorUntyped ) , "::" , stringify ! - ( mDestructorWithFrame ) )); - } - impl Clone for FramePropertyDescriptorUntyped { - fn clone(&self) -> Self { *self } - } - /** - * The FramePropertyTable is optimized for storing 0 or 1 properties on - * a given frame. Storing very large numbers of properties on a single - * frame will not be efficient. - * - * Property values are passed as void* but do not actually have to be - * valid pointers. You can use NS_INT32_TO_PTR/NS_PTR_TO_INT32 to - * store int32_t values. Null/zero values can be stored and retrieved. - * Of course, the destructor function (if any) must handle such values - * correctly. - */ - #[repr(C)] - #[derive(Debug)] - pub struct FramePropertyTable { - pub mEntries: [u64; 5usize], - pub mLastFrame: *const root::nsIFrame, - pub mLastEntry: *mut root::mozilla::FramePropertyTable_Entry, - } - pub type FramePropertyTable_UntypedDescriptor = - *const root::mozilla::FramePropertyDescriptorUntyped; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct FramePropertyTable_ReinterpretHelper { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - /** - * Stores a property descriptor/value pair. It can also be used to - * store an nsTArray of PropertyValues. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct FramePropertyTable_PropertyValue { - pub mProperty: root::mozilla::FramePropertyTable_UntypedDescriptor, - pub mValue: *mut ::std::os::raw::c_void, - } - #[test] - fn bindgen_test_layout_FramePropertyTable_PropertyValue() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - FramePropertyTable_PropertyValue ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - FramePropertyTable_PropertyValue ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const FramePropertyTable_PropertyValue ) ) - . mProperty as * const _ as usize } , 0usize , concat - ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable_PropertyValue ) , "::" , stringify - ! ( mProperty ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const FramePropertyTable_PropertyValue ) ) - . mValue as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable_PropertyValue ) , "::" , stringify - ! ( mValue ) )); - } - impl Clone for FramePropertyTable_PropertyValue { - fn clone(&self) -> Self { *self } - } - /** - * Used with an array of PropertyValues to allow lookups that compare - * only on the FramePropertyDescriptor. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct FramePropertyTable_PropertyComparator { - pub _address: u8, - } - #[test] - fn bindgen_test_layout_FramePropertyTable_PropertyComparator() { - assert_eq!(::std::mem::size_of::() - , 1usize , concat ! ( - "Size of: " , stringify ! ( - FramePropertyTable_PropertyComparator ) )); - assert_eq! (::std::mem::align_of::() - , 1usize , concat ! ( - "Alignment of " , stringify ! ( - FramePropertyTable_PropertyComparator ) )); - } - impl Clone for FramePropertyTable_PropertyComparator { - fn clone(&self) -> Self { *self } - } - /** - * Our hashtable entry. The key is an nsIFrame*, the value is a - * PropertyValue representing one or more property/value pairs. - */ - #[repr(C)] - #[derive(Debug)] - pub struct FramePropertyTable_Entry { - pub _base: root::nsPtrHashKey, - pub mProp: root::mozilla::FramePropertyTable_PropertyValue, - } - #[test] - fn bindgen_test_layout_FramePropertyTable_Entry() { - assert_eq!(::std::mem::size_of::() , - 32usize , concat ! ( - "Size of: " , stringify ! ( FramePropertyTable_Entry ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - FramePropertyTable_Entry ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyTable_Entry ) ) . - mProp as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable_Entry ) , "::" , stringify ! ( - mProp ) )); - } - #[test] - fn bindgen_test_layout_FramePropertyTable() { - assert_eq!(::std::mem::size_of::() , 56usize , - concat ! ( - "Size of: " , stringify ! ( FramePropertyTable ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( FramePropertyTable ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyTable ) ) . mEntries - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable ) , "::" , stringify ! ( mEntries ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyTable ) ) . - mLastFrame as * const _ as usize } , 40usize , concat - ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable ) , "::" , stringify ! ( mLastFrame - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const FramePropertyTable ) ) . - mLastEntry as * const _ as usize } , 48usize , concat - ! ( - "Alignment of field: " , stringify ! ( - FramePropertyTable ) , "::" , stringify ! ( mLastEntry - ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct ScrollbarStyles { - pub mHorizontal: u8, - pub mVertical: u8, - pub mScrollBehavior: u8, - pub mScrollSnapTypeX: u8, - pub mScrollSnapTypeY: u8, - pub mScrollSnapPointsX: root::nsStyleCoord, - pub mScrollSnapPointsY: root::nsStyleCoord, - pub mScrollSnapDestinationX: root::nsStyleCoord_CalcValue, - pub mScrollSnapDestinationY: root::nsStyleCoord_CalcValue, - } - #[test] - fn bindgen_test_layout_ScrollbarStyles() { - assert_eq!(::std::mem::size_of::() , 64usize , - concat ! ( - "Size of: " , stringify ! ( ScrollbarStyles ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( ScrollbarStyles ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . mHorizontal - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mHorizontal ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . mVertical - as * const _ as usize } , 1usize , concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mVertical ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollBehavior as * const _ as usize } , 2usize , - concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollBehavior ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapTypeX as * const _ as usize } , 3usize , - concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapTypeX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapTypeY as * const _ as usize } , 4usize , - concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapTypeY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapPointsX as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapPointsX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapPointsY as * const _ as usize } , 24usize , - concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapPointsY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapDestinationX as * const _ as usize } , - 40usize , concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapDestinationX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ScrollbarStyles ) ) . - mScrollSnapDestinationY as * const _ as usize } , - 52usize , concat ! ( - "Alignment of field: " , stringify ! ( ScrollbarStyles - ) , "::" , stringify ! ( mScrollSnapDestinationY ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct LangGroupFontPrefs { - pub mLangGroup: root::nsCOMPtr, - pub mMinimumFontSize: root::nscoord, - pub mDefaultVariableFont: root::nsFont, - pub mDefaultFixedFont: root::nsFont, - pub mDefaultSerifFont: root::nsFont, - pub mDefaultSansSerifFont: root::nsFont, - pub mDefaultMonospaceFont: root::nsFont, - pub mDefaultCursiveFont: root::nsFont, - pub mDefaultFantasyFont: root::nsFont, - pub mNext: root::nsAutoPtr, - } - #[test] - fn bindgen_test_layout_LangGroupFontPrefs() { - assert_eq!(::std::mem::size_of::() , 640usize - , concat ! ( - "Size of: " , stringify ! ( LangGroupFontPrefs ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( LangGroupFontPrefs ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mLangGroup as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( mLangGroup - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mMinimumFontSize as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mMinimumFontSize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultVariableFont as * const _ as usize } , 16usize - , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultVariableFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultFixedFont as * const _ as usize } , 104usize , - concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultFixedFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultSerifFont as * const _ as usize } , 192usize , - concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultSerifFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultSansSerifFont as * const _ as usize } , - 280usize , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultSansSerifFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultMonospaceFont as * const _ as usize } , - 368usize , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultMonospaceFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultCursiveFont as * const _ as usize } , 456usize - , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultCursiveFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . - mDefaultFantasyFont as * const _ as usize } , 544usize - , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( - mDefaultFantasyFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const LangGroupFontPrefs ) ) . mNext as - * const _ as usize } , 632usize , concat ! ( - "Alignment of field: " , stringify ! ( - LangGroupFontPrefs ) , "::" , stringify ! ( mNext ) - )); - } - /** - * Some functionality that has historically lived on nsPresContext does not - * actually need to be per-document. This singleton class serves as a host - * for that functionality. We delegate to it from nsPresContext where - * appropriate, and use it standalone in some cases as well. - */ - #[repr(C)] - #[derive(Debug)] - pub struct StaticPresData { - pub mLangService: root::nsCOMPtr, - pub mBorderWidthTable: [root::nscoord; 3usize], - pub mStaticLangGroupFontPrefs: root::mozilla::LangGroupFontPrefs, - } - #[test] - fn bindgen_test_layout_StaticPresData() { - assert_eq!(::std::mem::size_of::() , 664usize , - concat ! ( "Size of: " , stringify ! ( StaticPresData ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StaticPresData ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StaticPresData ) ) . mLangService - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( StaticPresData - ) , "::" , stringify ! ( mLangService ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StaticPresData ) ) . - mBorderWidthTable as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( StaticPresData - ) , "::" , stringify ! ( mBorderWidthTable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StaticPresData ) ) . - mStaticLangGroupFontPrefs as * const _ as usize } , - 24usize , concat ! ( - "Alignment of field: " , stringify ! ( StaticPresData - ) , "::" , stringify ! ( mStaticLangGroupFontPrefs ) - )); - } - #[repr(C)] - #[derive(Debug)] - pub struct EffectCompositor { - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub mPresContext: *mut root::nsPresContext, - pub mElementsToRestyle: [u64; 10usize], - pub mRuleProcessors: [u64; 2usize], - } - pub type EffectCompositor_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct EffectCompositor_cycleCollection { - pub _base: root::nsCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_EffectCompositor_cycleCollection() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - EffectCompositor_cycleCollection ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - EffectCompositor_cycleCollection ) )); - } - impl Clone for EffectCompositor_cycleCollection { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum EffectCompositor_CascadeLevel { - Animations = 0, - Transitions = 1, - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum EffectCompositor_RestyleType { - Throttled = 0, - Standard = 1, - Layer = 2, - } - #[repr(C)] - #[derive(Debug)] - pub struct EffectCompositor_AnimationStyleRuleProcessor { - pub _base: root::nsIStyleRuleProcessor, - pub mRefCnt: root::nsAutoRefCnt, - pub mCompositor: *mut root::mozilla::EffectCompositor, - pub mCascadeLevel: root::mozilla::EffectCompositor_CascadeLevel, - } - pub type EffectCompositor_AnimationStyleRuleProcessor_HasThreadSafeRefCnt - = root::mozilla::FalseType; - #[test] - fn bindgen_test_layout_EffectCompositor_AnimationStyleRuleProcessor() { - assert_eq!(::std::mem::size_of::() - , 32usize , concat ! ( - "Size of: " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const - EffectCompositor_AnimationStyleRuleProcessor ) ) . - mRefCnt as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) , "::" - , stringify ! ( mRefCnt ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const - EffectCompositor_AnimationStyleRuleProcessor ) ) . - mCompositor as * const _ as usize } , 16usize , concat - ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) , "::" - , stringify ! ( mCompositor ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const - EffectCompositor_AnimationStyleRuleProcessor ) ) . - mCascadeLevel as * const _ as usize } , 24usize , - concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor_AnimationStyleRuleProcessor ) , "::" - , stringify ! ( mCascadeLevel ) )); - } - extern "C" { - #[link_name = - "_ZN7mozilla16EffectCompositor21_cycleCollectorGlobalE"] - pub static mut EffectCompositor__cycleCollectorGlobal: - root::mozilla::EffectCompositor_cycleCollection; - } - pub const EffectCompositor_kCascadeLevelCount: usize = 2; - #[test] - fn bindgen_test_layout_EffectCompositor() { - assert_eq!(::std::mem::size_of::() , 112usize , - concat ! ( - "Size of: " , stringify ! ( EffectCompositor ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( EffectCompositor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const EffectCompositor ) ) . mRefCnt as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor ) , "::" , stringify ! ( mRefCnt ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const EffectCompositor ) ) . - mPresContext as * const _ as usize } , 8usize , concat - ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor ) , "::" , stringify ! ( mPresContext - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const EffectCompositor ) ) . - mElementsToRestyle as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor ) , "::" , stringify ! ( - mElementsToRestyle ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const EffectCompositor ) ) . - mRuleProcessors as * const _ as usize } , 96usize , - concat ! ( - "Alignment of field: " , stringify ! ( - EffectCompositor ) , "::" , stringify ! ( - mRuleProcessors ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct EventStateManager([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct CounterStyleManager { - pub mRefCnt: root::nsAutoRefCnt, - pub mPresContext: *mut root::nsPresContext, - pub mCacheTable: [u64; 5usize], - } - pub type CounterStyleManager_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[test] - fn bindgen_test_layout_CounterStyleManager() { - assert_eq!(::std::mem::size_of::() , 56usize - , concat ! ( - "Size of: " , stringify ! ( CounterStyleManager ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( CounterStyleManager ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const CounterStyleManager ) ) . mRefCnt - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - CounterStyleManager ) , "::" , stringify ! ( mRefCnt ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const CounterStyleManager ) ) . - mPresContext as * const _ as usize } , 8usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CounterStyleManager ) , "::" , stringify ! ( - mPresContext ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CounterStyleManager ) ) . - mCacheTable as * const _ as usize } , 16usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CounterStyleManager ) , "::" , stringify ! ( - mCacheTable ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct RestyleManager([u8; 0]); - /** - * BlockingResourceBase - * Base class of resources that might block clients trying to acquire them. - * Does debugging and deadlock detection in DEBUG builds. - **/ - #[repr(C)] - #[derive(Debug)] - pub struct BlockingResourceBase { - pub _address: u8, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum BlockingResourceBase_BlockingResourceType { - eMutex = 0, - eReentrantMonitor = 1, - eCondVar = 2, - } - extern "C" { - #[link_name = - "_ZN7mozilla20BlockingResourceBase17kResourceTypeNameE"] - pub static mut BlockingResourceBase_kResourceTypeName: - [*const ::std::os::raw::c_char; 0usize]; - } - #[test] - fn bindgen_test_layout_BlockingResourceBase() { - assert_eq!(::std::mem::size_of::() , 1usize - , concat ! ( - "Size of: " , stringify ! ( BlockingResourceBase ) )); - assert_eq! (::std::mem::align_of::() , - 1usize , concat ! ( - "Alignment of " , stringify ! ( BlockingResourceBase ) - )); - } - /** - * OffTheBooksMutex is identical to Mutex, except that OffTheBooksMutex doesn't - * include leak checking. Sometimes you want to intentionally "leak" a mutex - * until shutdown; in these cases, OffTheBooksMutex is for you. - */ - #[repr(C)] - #[derive(Debug)] - pub struct OffTheBooksMutex { - pub _base: root::mozilla::detail::MutexImpl, - } - #[test] - fn bindgen_test_layout_OffTheBooksMutex() { - assert_eq!(::std::mem::size_of::() , 40usize , - concat ! ( - "Size of: " , stringify ! ( OffTheBooksMutex ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( OffTheBooksMutex ) )); - } - /** - * Mutex - * When possible, use MutexAutoLock/MutexAutoUnlock to lock/unlock this - * mutex within a scope, instead of calling Lock/Unlock directly. - */ - #[repr(C)] - #[derive(Debug)] - pub struct Mutex { - pub _base: root::mozilla::OffTheBooksMutex, - } - #[test] - fn bindgen_test_layout_Mutex() { - assert_eq!(::std::mem::size_of::() , 40usize , concat ! ( - "Size of: " , stringify ! ( Mutex ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( Mutex ) )); - } - pub mod image { - #[allow(unused_imports)] - use self::super::super::super::root; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ImageURL([u8; 0]); - /** - * An ImageLib cache entry key. - * - * We key the cache on the initial URI (before any redirects), with some - * canonicalization applied. See ComputeHash() for the details. - * Controlled documents do not share their cache entries with - * non-controlled documents, or other controlled documents. - */ - #[repr(C)] - #[derive(Debug)] - pub struct ImageCacheKey { - pub mURI: root::RefPtr, - pub mBlobSerial: [u64; 2usize], - pub mOriginAttributes: root::mozilla::OriginAttributes, - pub mControlledDocument: *mut ::std::os::raw::c_void, - pub mHash: u32, - pub mIsChrome: bool, - } - #[test] - fn bindgen_test_layout_ImageCacheKey() { - assert_eq!(::std::mem::size_of::() , 80usize , - concat ! ( - "Size of: " , stringify ! ( ImageCacheKey ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( ImageCacheKey ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . mURI as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( mURI ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . - mBlobSerial as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( mBlobSerial - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . - mOriginAttributes as * const _ as usize } , - 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( - mOriginAttributes ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . - mControlledDocument as * const _ as usize } , - 64usize , concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( - mControlledDocument ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . mHash as - * const _ as usize } , 72usize , concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( mHash ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ImageCacheKey ) ) . mIsChrome - as * const _ as usize } , 76usize , concat ! ( - "Alignment of field: " , stringify ! ( - ImageCacheKey ) , "::" , stringify ! ( mIsChrome ) - )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct Image([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ProgressTracker([u8; 0]); - #[repr(C)] - pub struct IProgressObserver__bindgen_vtable { - } - /** - * An interface for observing changes to image state, as reported by - * ProgressTracker. - * - * This is the ImageLib-internal version of imgINotificationObserver, - * essentially, with implementation details that code outside of ImageLib - * shouldn't see. - * - * XXX(seth): It's preferable to avoid adding anything to this interface if - * possible. In the long term, it would be ideal to get to a place where we can - * just use the imgINotificationObserver interface internally as well. - */ - #[repr(C)] - #[derive(Debug)] - pub struct IProgressObserver { - pub vtable_: *const IProgressObserver__bindgen_vtable, - pub _base: u64, - } - #[test] - fn bindgen_test_layout_IProgressObserver() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( IProgressObserver ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( IProgressObserver - ) )); - } - } - pub type CounterValue = i32; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct NegativeType([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct PadType([u8; 0]); - #[repr(C)] - pub struct CounterStyle__bindgen_vtable { - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct CounterStyle { - pub vtable_: *const CounterStyle__bindgen_vtable, - pub mStyle: i32, - } - #[test] - fn bindgen_test_layout_CounterStyle() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( "Size of: " , stringify ! ( CounterStyle ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( CounterStyle ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CounterStyle ) ) . mStyle as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( CounterStyle ) - , "::" , stringify ! ( mStyle ) )); - } - impl Clone for CounterStyle { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct Position { - pub mXPosition: root::mozilla::Position_Coord, - pub mYPosition: root::mozilla::Position_Coord, - } - pub type Position_Coord = root::nsStyleCoord_CalcValue; - #[test] - fn bindgen_test_layout_Position() { - assert_eq!(::std::mem::size_of::() , 24usize , concat ! - ( "Size of: " , stringify ! ( Position ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat ! - ( "Alignment of " , stringify ! ( Position ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Position ) ) . mXPosition as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( Position ) , - "::" , stringify ! ( mXPosition ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const Position ) ) . mYPosition as * - const _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( Position ) , - "::" , stringify ! ( mYPosition ) )); - } - impl Clone for Position { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct StyleTransition { - pub mTimingFunction: root::nsTimingFunction, - pub mDuration: f32, - pub mDelay: f32, - pub mProperty: root::nsCSSPropertyID, - pub mUnknownProperty: root::nsCOMPtr, - } - #[test] - fn bindgen_test_layout_StyleTransition() { - assert_eq!(::std::mem::size_of::() , 40usize , - concat ! ( - "Size of: " , stringify ! ( StyleTransition ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StyleTransition ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleTransition ) ) . - mTimingFunction as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( StyleTransition - ) , "::" , stringify ! ( mTimingFunction ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleTransition ) ) . mDuration - as * const _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleTransition - ) , "::" , stringify ! ( mDuration ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleTransition ) ) . mDelay as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleTransition - ) , "::" , stringify ! ( mDelay ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleTransition ) ) . mProperty - as * const _ as usize } , 28usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleTransition - ) , "::" , stringify ! ( mProperty ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleTransition ) ) . - mUnknownProperty as * const _ as usize } , 32usize , - concat ! ( - "Alignment of field: " , stringify ! ( StyleTransition - ) , "::" , stringify ! ( mUnknownProperty ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct StyleAnimation { - pub mTimingFunction: root::nsTimingFunction, - pub mDuration: f32, - pub mDelay: f32, - pub mName: ::nsstring::nsStringRepr, - pub mDirection: root::mozilla::dom::PlaybackDirection, - pub mFillMode: root::mozilla::dom::FillMode, - pub mPlayState: u8, - pub mIterationCount: f32, - } - #[test] - fn bindgen_test_layout_StyleAnimation() { - assert_eq!(::std::mem::size_of::() , 56usize , - concat ! ( "Size of: " , stringify ! ( StyleAnimation ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StyleAnimation ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . - mTimingFunction as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mTimingFunction ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mDuration as - * const _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mDuration ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mDelay as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mDelay ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mName as * - const _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mDirection - as * const _ as usize } , 48usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mDirection ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mFillMode as - * const _ as usize } , 49usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mFillMode ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . mPlayState - as * const _ as usize } , 50usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mPlayState ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleAnimation ) ) . - mIterationCount as * const _ as usize } , 52usize , - concat ! ( - "Alignment of field: " , stringify ! ( StyleAnimation - ) , "::" , stringify ! ( mIterationCount ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct StyleBasicShape { - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - pub mType: root::mozilla::StyleBasicShapeType, - pub mFillRule: root::mozilla::StyleFillRule, - pub mCoordinates: root::nsTArray, - pub mPosition: root::mozilla::Position, - pub mRadius: root::nsStyleCorners, - } - pub type StyleBasicShape_HasThreadSafeRefCnt = - root::mozilla::TrueType; - #[test] - fn bindgen_test_layout_StyleBasicShape() { - assert_eq!(::std::mem::size_of::() , 120usize , - concat ! ( - "Size of: " , stringify ! ( StyleBasicShape ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StyleBasicShape ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . mRefCnt as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . mType as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . mFillRule - as * const _ as usize } , 9usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mFillRule ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . - mCoordinates as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mCoordinates ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . mPosition - as * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mPosition ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleBasicShape ) ) . mRadius as - * const _ as usize } , 48usize , concat ! ( - "Alignment of field: " , stringify ! ( StyleBasicShape - ) , "::" , stringify ! ( mRadius ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct StyleShapeSource { - pub __bindgen_anon_1: root::mozilla::StyleShapeSource__bindgen_ty_1, - pub mType: root::mozilla::StyleShapeSourceType, - pub mReferenceBox: root::mozilla::StyleGeometryBox, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct StyleShapeSource__bindgen_ty_1 { - pub mBasicShape: root::__BindgenUnionField<*mut root::mozilla::StyleBasicShape>, - pub mURL: root::__BindgenUnionField<*mut root::mozilla::css::URLValue>, - pub bindgen_union_field: u64, - } - #[test] - fn bindgen_test_layout_StyleShapeSource__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::() - , 8usize , concat ! ( - "Size of: " , stringify ! ( - StyleShapeSource__bindgen_ty_1 ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - StyleShapeSource__bindgen_ty_1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleShapeSource__bindgen_ty_1 ) - ) . mBasicShape as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - StyleShapeSource__bindgen_ty_1 ) , "::" , stringify ! - ( mBasicShape ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleShapeSource__bindgen_ty_1 ) - ) . mURL as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleShapeSource__bindgen_ty_1 ) , "::" , stringify ! - ( mURL ) )); - } - impl Clone for StyleShapeSource__bindgen_ty_1 { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_StyleShapeSource() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( - "Size of: " , stringify ! ( StyleShapeSource ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( StyleShapeSource ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleShapeSource ) ) . mType as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - StyleShapeSource ) , "::" , stringify ! ( mType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const StyleShapeSource ) ) . - mReferenceBox as * const _ as usize } , 9usize , - concat ! ( - "Alignment of field: " , stringify ! ( - StyleShapeSource ) , "::" , stringify ! ( - mReferenceBox ) )); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ComputedTimingFunction { - pub mType: root::nsTimingFunction_Type, - pub mTimingFunction: root::nsSMILKeySpline, - pub mStepsOrFrames: u32, - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum ComputedTimingFunction_BeforeFlag { Unset = 0, Set = 1, } - #[test] - fn bindgen_test_layout_ComputedTimingFunction() { - assert_eq!(::std::mem::size_of::() , - 136usize , concat ! ( - "Size of: " , stringify ! ( ComputedTimingFunction ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( ComputedTimingFunction - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComputedTimingFunction ) ) . - mType as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - ComputedTimingFunction ) , "::" , stringify ! ( mType - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComputedTimingFunction ) ) . - mTimingFunction as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - ComputedTimingFunction ) , "::" , stringify ! ( - mTimingFunction ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ComputedTimingFunction ) ) . - mStepsOrFrames as * const _ as usize } , 128usize , - concat ! ( - "Alignment of field: " , stringify ! ( - ComputedTimingFunction ) , "::" , stringify ! ( - mStepsOrFrames ) )); - } - impl Clone for ComputedTimingFunction { - fn clone(&self) -> Self { *self } - } /** * This class holds all non-tree-structural state of an element that might be * used for selector matching eventually. @@ -8083,18 +8785,18 @@ pub mod root { PropertyStyleAnimationValuePair ) , "::" , stringify ! ( mValue ) )); } + pub type ComputedKeyframeValues = + root::nsTArray; #[test] - fn __bindgen_test_layout_template_4() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( + fn __bindgen_test_layout_DefaultDelete_instantiation_152576() { + assert_eq!(::std::mem::size_of::() , + 1usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) - )); - assert_eq!(::std::mem::align_of::>() + root::mozilla::DefaultDelete ) )); + assert_eq!(::std::mem::align_of::() , 1usize , concat ! ( "Alignment of template specialization: " , stringify ! - ( root::mozilla::DefaultDelete - ) )); + ( root::mozilla::DefaultDelete ) )); } /** * Utility class to handle animated style values @@ -8335,6 +9037,50 @@ pub mod root { "Alignment of field: " , stringify ! ( AnimationValue ) , "::" , stringify ! ( mServo ) )); } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ComputedTimingFunction { + pub mType: root::nsTimingFunction_Type, + pub mTimingFunction: root::nsSMILKeySpline, + pub mStepsOrFrames: u32, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum ComputedTimingFunction_BeforeFlag { Unset = 0, Set = 1, } + #[test] + fn bindgen_test_layout_ComputedTimingFunction() { + assert_eq!(::std::mem::size_of::() , + 136usize , concat ! ( + "Size of: " , stringify ! ( ComputedTimingFunction ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( ComputedTimingFunction + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComputedTimingFunction ) ) . + mType as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + ComputedTimingFunction ) , "::" , stringify ! ( mType + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComputedTimingFunction ) ) . + mTimingFunction as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ComputedTimingFunction ) , "::" , stringify ! ( + mTimingFunction ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ComputedTimingFunction ) ) . + mStepsOrFrames as * const _ as usize } , 128usize , + concat ! ( + "Alignment of field: " , stringify ! ( + ComputedTimingFunction ) , "::" , stringify ! ( + mStepsOrFrames ) )); + } + impl Clone for ComputedTimingFunction { + fn clone(&self) -> Self { *self } + } /** * A ValueCalculator class that performs additional checks before performing * arithmetic operations such that if either operand is Forever (or the @@ -8377,8 +9123,7 @@ pub mod root { * time duration to be used in arithmetic operations (and not just value * comparisons). */ - pub type StickyTimeDuration = - root::mozilla::BaseTimeDuration; + pub type StickyTimeDuration = root::mozilla::BaseTimeDuration; /** * A property-value pair specified on a keyframe. */ @@ -8420,28 +9165,44 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGLengthList([u8; 0]); + pub struct SVGLengthList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGNumberList([u8; 0]); + pub struct SVGNumberList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGPathData([u8; 0]); + pub struct SVGPathData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGPointList([u8; 0]); + pub struct SVGPointList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGAnimatedPreserveAspectRatio([u8; 0]); + pub struct SVGAnimatedPreserveAspectRatio { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGStringList([u8; 0]); + pub struct SVGStringList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct SVGTransformList([u8; 0]); + pub struct SVGTransformList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct DeclarationBlock([u8; 0]); + pub struct DeclarationBlock { + _unused: [u8; 0], + } /** * A structure representing a single attribute name and value. * @@ -8485,6 +9246,39 @@ pub mod root { Attributes = 2, All = 3, } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct NonOwningAnimationTarget { + pub mElement: *mut root::mozilla::dom::Element, + pub mPseudoType: root::mozilla::CSSPseudoElementType, + } + #[test] + fn bindgen_test_layout_NonOwningAnimationTarget() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( NonOwningAnimationTarget ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + NonOwningAnimationTarget ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NonOwningAnimationTarget ) ) . + mElement as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + NonOwningAnimationTarget ) , "::" , stringify ! ( + mElement ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const NonOwningAnimationTarget ) ) . + mPseudoType as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + NonOwningAnimationTarget ) , "::" , stringify ! ( + mPseudoType ) )); + } + impl Clone for NonOwningAnimationTarget { + fn clone(&self) -> Self { *self } + } #[repr(u8)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] pub enum Directionality { @@ -8569,7 +9363,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ContainerLayerParameters([u8; 0]); + pub struct ContainerLayerParameters { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct LookAndFeel { @@ -8853,11 +9649,145 @@ pub mod root { fn clone(&self) -> Self { *self } } #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct RestyleTracker([u8; 0]); + #[derive(Debug)] + pub struct PseudoElementHashEntry { + pub _base: root::PLDHashEntryHdr, + pub mElement: root::RefPtr, + pub mPseudoType: root::mozilla::CSSPseudoElementType, + } + pub type PseudoElementHashEntry_KeyType = + root::mozilla::NonOwningAnimationTarget; + pub type PseudoElementHashEntry_KeyTypePointer = + *const root::mozilla::NonOwningAnimationTarget; + pub const PseudoElementHashEntry_ALLOW_MEMMOVE: + root::mozilla::PseudoElementHashEntry__bindgen_ty_1 = + PseudoElementHashEntry__bindgen_ty_1::ALLOW_MEMMOVE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum PseudoElementHashEntry__bindgen_ty_1 { ALLOW_MEMMOVE = 1, } + #[test] + fn bindgen_test_layout_PseudoElementHashEntry() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( PseudoElementHashEntry ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( PseudoElementHashEntry + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PseudoElementHashEntry ) ) . + mElement as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + PseudoElementHashEntry ) , "::" , stringify ! ( + mElement ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PseudoElementHashEntry ) ) . + mPseudoType as * const _ as usize } , 16usize , concat + ! ( + "Alignment of field: " , stringify ! ( + PseudoElementHashEntry ) , "::" , stringify ! ( + mPseudoType ) )); + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AnimationPerformanceWarning([u8; 0]); + pub struct RestyleTracker { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AnimationPerformanceWarning { + _unused: [u8; 0], + } + pub type CSSPseudoClassTypeBase = u8; + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CSSPseudoClassType { + empty = 0, + mozOnlyWhitespace = 1, + mozEmptyExceptChildrenWithLocalname = 2, + lang = 3, + root = 4, + any = 5, + firstChild = 6, + firstNode = 7, + lastChild = 8, + lastNode = 9, + onlyChild = 10, + firstOfType = 11, + lastOfType = 12, + onlyOfType = 13, + nthChild = 14, + nthLastChild = 15, + nthOfType = 16, + nthLastOfType = 17, + mozIsHTML = 18, + unresolved = 19, + mozNativeAnonymous = 20, + mozSystemMetric = 21, + mozLocaleDir = 22, + mozLWTheme = 23, + mozLWThemeBrightText = 24, + mozLWThemeDarkText = 25, + mozWindowInactive = 26, + mozTableBorderNonzero = 27, + mozBrowserFrame = 28, + scope = 29, + negation = 30, + dir = 31, + link = 32, + mozAnyLink = 33, + anyLink = 34, + visited = 35, + active = 36, + checked = 37, + disabled = 38, + enabled = 39, + focus = 40, + focusWithin = 41, + hover = 42, + mozDragOver = 43, + target = 44, + indeterminate = 45, + mozDevtoolsHighlighted = 46, + mozStyleeditorTransitioning = 47, + fullscreen = 48, + mozFullScreen = 49, + mozFocusRing = 50, + mozBroken = 51, + mozLoading = 52, + mozUserDisabled = 53, + mozSuppressed = 54, + mozHandlerClickToPlay = 55, + mozHandlerVulnerableUpdatable = 56, + mozHandlerVulnerableNoUpdate = 57, + mozHandlerDisabled = 58, + mozHandlerBlocked = 59, + mozHandlerCrashed = 60, + mozMathIncrementScriptLevel = 61, + mozAutofill = 62, + mozAutofillPreview = 63, + required = 64, + optional = 65, + valid = 66, + invalid = 67, + inRange = 68, + outOfRange = 69, + defaultPseudo = 70, + placeholderShown = 71, + mozReadOnly = 72, + mozReadWrite = 73, + mozSubmitInvalid = 74, + mozUIInvalid = 75, + mozUIValid = 76, + mozMeterOptimum = 77, + mozMeterSubOptimum = 78, + mozMeterSubSubOptimum = 79, + mozPlaceholder = 80, + Count = 81, + NotPseudo = 82, + MAX = 83, + } #[repr(C)] #[derive(Debug)] pub struct CSSFontFaceDescriptors { @@ -8954,9 +9884,8 @@ pub mod root { */ #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct UniquePtr { + pub struct UniquePtr { pub mPtr: *mut T, - pub _phantom_1: ::std::marker::PhantomData, } } pub type va_list = root::__builtin_va_list; @@ -9516,6 +10445,204 @@ pub mod root { NS_OK_NO_NAME_CLAUSE_HANDLED = 7864354, } pub type nsrefcnt = root::MozRefCountType; + #[repr(C)] + pub struct nsQueryFrame__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsQueryFrame { + pub vtable_: *const nsQueryFrame__bindgen_vtable, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsQueryFrame_FrameIID { + BRFrame_id = 0, + DetailsFrame_id = 1, + nsAutoRepeatBoxFrame_id = 2, + nsBCTableCellFrame_id = 3, + nsBackdropFrame_id = 4, + nsBlockFrame_id = 5, + nsBox_id = 6, + nsBoxFrame_id = 7, + nsBulletFrame_id = 8, + nsButtonBoxFrame_id = 9, + nsCanvasFrame_id = 10, + nsColorControlFrame_id = 11, + nsColumnSetFrame_id = 12, + nsComboboxControlFrame_id = 13, + nsComboboxDisplayFrame_id = 14, + nsContainerFrame_id = 15, + nsContinuingTextFrame_id = 16, + nsDateTimeControlFrame_id = 17, + nsDeckFrame_id = 18, + nsDocElementBoxFrame_id = 19, + nsFieldSetFrame_id = 20, + nsFileControlFrame_id = 21, + nsFirstLetterFrame_id = 22, + nsFirstLineFrame_id = 23, + nsFlexContainerFrame_id = 24, + nsFormControlFrame_id = 25, + nsFrame_id = 26, + nsGfxButtonControlFrame_id = 27, + nsGfxCheckboxControlFrame_id = 28, + nsGfxRadioControlFrame_id = 29, + nsGridContainerFrame_id = 30, + nsGridRowGroupFrame_id = 31, + nsGridRowLeafFrame_id = 32, + nsGroupBoxFrame_id = 33, + nsHTMLButtonControlFrame_id = 34, + nsHTMLCanvasFrame_id = 35, + nsHTMLFramesetBlankFrame_id = 36, + nsHTMLFramesetBorderFrame_id = 37, + nsHTMLFramesetFrame_id = 38, + nsHTMLScrollFrame_id = 39, + nsIAnonymousContentCreator_id = 40, + nsIComboboxControlFrame_id = 41, + nsIFormControlFrame_id = 42, + nsIFrame_id = 43, + nsIFrameFrame_id = 44, + nsIListControlFrame_id = 45, + nsIMathMLFrame_id = 46, + nsIMenuFrame_id = 47, + nsIObjectFrame_id = 48, + nsIPageSequenceFrame_id = 49, + nsIPercentBSizeObserver_id = 50, + nsIRootBox_id = 51, + nsSVGDisplayableFrame_id = 52, + nsISVGSVGFrame_id = 53, + nsIScrollableFrame_id = 54, + nsIScrollbarMediator_id = 55, + nsISelectControlFrame_id = 56, + nsIStatefulFrame_id = 57, + nsITableCellLayout_id = 58, + nsITableLayout_id = 59, + nsITextControlFrame_id = 60, + nsITreeBoxObject_id = 61, + nsImageBoxFrame_id = 62, + nsImageControlFrame_id = 63, + nsImageFrame_id = 64, + nsInlineFrame_id = 65, + nsLeafBoxFrame_id = 66, + nsLeafFrame_id = 67, + nsLegendFrame_id = 68, + nsListBoxBodyFrame_id = 69, + nsListControlFrame_id = 70, + nsListItemFrame_id = 71, + nsMathMLContainerFrame_id = 72, + nsMathMLFrame_id = 73, + nsMathMLmactionFrame_id = 74, + nsMathMLmathBlockFrame_id = 75, + nsMathMLmathInlineFrame_id = 76, + nsMathMLmencloseFrame_id = 77, + nsMathMLmfencedFrame_id = 78, + nsMathMLmfracFrame_id = 79, + nsMathMLmmultiscriptsFrame_id = 80, + nsMathMLmoFrame_id = 81, + nsMathMLmoverFrame_id = 82, + nsMathMLmpaddedFrame_id = 83, + nsMathMLmrootFrame_id = 84, + nsMathMLmrowFrame_id = 85, + nsMathMLmspaceFrame_id = 86, + nsMathMLmsqrtFrame_id = 87, + nsMathMLmstyleFrame_id = 88, + nsMathMLmtableFrame_id = 89, + nsMathMLmtableWrapperFrame_id = 90, + nsMathMLmtdFrame_id = 91, + nsMathMLmtdInnerFrame_id = 92, + nsMathMLmtrFrame_id = 93, + nsMathMLmunderFrame_id = 94, + nsMathMLmunderoverFrame_id = 95, + nsMathMLsemanticsFrame_id = 96, + nsMathMLTokenFrame_id = 97, + nsMenuBarFrame_id = 98, + nsMenuFrame_id = 99, + nsMenuPopupFrame_id = 100, + nsMeterFrame_id = 101, + nsNumberControlFrame_id = 102, + nsPluginFrame_id = 103, + nsPageBreakFrame_id = 104, + nsPageContentFrame_id = 105, + nsPageFrame_id = 106, + nsPlaceholderFrame_id = 107, + nsPopupSetFrame_id = 108, + nsProgressFrame_id = 109, + nsProgressMeterFrame_id = 110, + nsRangeFrame_id = 111, + nsResizerFrame_id = 112, + nsRootBoxFrame_id = 113, + nsRubyBaseContainerFrame_id = 114, + nsRubyBaseFrame_id = 115, + nsRubyContentFrame_id = 116, + nsRubyFrame_id = 117, + nsRubyTextContainerFrame_id = 118, + nsRubyTextFrame_id = 119, + nsScrollbarButtonFrame_id = 120, + nsScrollbarFrame_id = 121, + nsSelectsAreaFrame_id = 122, + nsSimplePageSequenceFrame_id = 123, + nsSliderFrame_id = 124, + nsSplittableFrame_id = 125, + nsSplitterFrame_id = 126, + nsStackFrame_id = 127, + nsSubDocumentFrame_id = 128, + nsSVGAFrame_id = 129, + nsSVGClipPathFrame_id = 130, + nsSVGContainerFrame_id = 131, + nsSVGDisplayContainerFrame_id = 132, + SVGFEContainerFrame_id = 133, + SVGFEImageFrame_id = 134, + SVGFELeafFrame_id = 135, + SVGFEUnstyledLeafFrame_id = 136, + nsSVGFilterFrame_id = 137, + nsSVGForeignObjectFrame_id = 138, + nsSVGGenericContainerFrame_id = 139, + nsSVGGFrame_id = 140, + nsSVGGradientFrame_id = 141, + nsSVGImageFrame_id = 142, + nsSVGInnerSVGFrame_id = 143, + nsSVGLinearGradientFrame_id = 144, + nsSVGMarkerFrame_id = 145, + nsSVGMarkerAnonChildFrame_id = 146, + nsSVGMaskFrame_id = 147, + nsSVGOuterSVGFrame_id = 148, + nsSVGOuterSVGAnonChildFrame_id = 149, + nsSVGPaintServerFrame_id = 150, + SVGGeometryFrame_id = 151, + nsSVGPatternFrame_id = 152, + nsSVGRadialGradientFrame_id = 153, + nsSVGStopFrame_id = 154, + nsSVGSwitchFrame_id = 155, + SVGTextFrame_id = 156, + nsSVGUseFrame_id = 157, + SVGViewFrame_id = 158, + nsTableCellFrame_id = 159, + nsTableColFrame_id = 160, + nsTableColGroupFrame_id = 161, + nsTableFrame_id = 162, + nsTableWrapperFrame_id = 163, + nsTableRowFrame_id = 164, + nsTableRowGroupFrame_id = 165, + nsTextBoxFrame_id = 166, + nsTextControlFrame_id = 167, + nsTextFrame_id = 168, + nsTitleBarFrame_id = 169, + nsTreeBodyFrame_id = 170, + nsTreeColFrame_id = 171, + nsVideoFrame_id = 172, + nsXULLabelFrame_id = 173, + nsXULScrollFrame_id = 174, + ViewportFrame_id = 175, + NON_FRAME_MARKER = 536870912, + } + #[test] + fn bindgen_test_layout_nsQueryFrame() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsQueryFrame ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsQueryFrame ) )); + } + impl Clone for nsQueryFrame { + fn clone(&self) -> Self { *self } + } /** * double-byte (char16_t) string types */ @@ -9616,8 +10743,7 @@ pub mod root { "Alignment of " , stringify ! ( nsDependentSubstring ) )); } #[repr(C)] - pub struct nsStringComparator__bindgen_vtable { - } + pub struct nsStringComparator__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug, Copy)] pub struct nsStringComparator { @@ -9738,24 +10864,7 @@ pub mod root { "Alignment of " , stringify ! ( nsCString ) )); } #[repr(C)] - #[derive(Debug)] - pub struct nsDependentCSubstring { - pub _base: root::nsACString, - } - pub type nsDependentCSubstring_self_type = root::nsDependentCSubstring; - #[test] - fn bindgen_test_layout_nsDependentCSubstring() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( - "Size of: " , stringify ! ( nsDependentCSubstring ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsDependentCSubstring ) - )); - } - #[repr(C)] - pub struct nsCStringComparator__bindgen_vtable { - } + pub struct nsCStringComparator__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug, Copy)] pub struct nsCStringComparator { @@ -9778,45 +10887,612 @@ pub mod root { * typedefs for backwards compatibility */ pub type nsSubstring = root::nsAString; + pub type nsAFlatString = ::nsstring::nsStringRepr; pub type nsAFlatCString = root::nsCString; + #[repr(C)] + pub struct nsISupports__bindgen_vtable(::std::os::raw::c_void); + /** + * Basic component object model interface. Objects which implement + * this interface support runtime interface discovery (QueryInterface) + * and a reference counted memory model (AddRef/Release). This is + * modelled after the win32 IUnknown API. + */ #[repr(C)] #[derive(Debug, Copy)] - pub struct nsIAtom { - pub _base: root::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 u16, + pub struct nsISupports { + pub vtable_: *const nsISupports__bindgen_vtable, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIAtom_COMTypeInfo { + pub struct nsISupports_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] - fn bindgen_test_layout_nsIAtom() { - assert_eq!(::std::mem::size_of::() , 24usize , concat ! ( - "Size of: " , stringify ! ( nsIAtom ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIAtom ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsIAtom ) ) . mHash as * const _ as - usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( nsIAtom ) , "::" , - stringify ! ( mHash ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsIAtom ) ) . mString as * const _ as - usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsIAtom ) , "::" , - stringify ! ( mString ) )); + fn bindgen_test_layout_nsISupports() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsISupports ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsISupports ) )); } - impl Clone for nsIAtom { + impl Clone for nsISupports { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + pub struct nsCycleCollectionParticipant__bindgen_vtable(::std::os::raw::c_void); + /** + * Participant implementation classes + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsCycleCollectionParticipant { + pub vtable_: *const nsCycleCollectionParticipant__bindgen_vtable, + pub mMightSkip: bool, + pub mTraverseShouldTrace: bool, + } + #[test] + fn bindgen_test_layout_nsCycleCollectionParticipant() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( nsCycleCollectionParticipant ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsCycleCollectionParticipant ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsCycleCollectionParticipant ) ) . + mMightSkip as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsCycleCollectionParticipant ) , "::" , stringify ! ( + mMightSkip ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsCycleCollectionParticipant ) ) . + mTraverseShouldTrace as * const _ as usize } , 9usize , + concat ! ( + "Alignment of field: " , stringify ! ( + nsCycleCollectionParticipant ) , "::" , stringify ! ( + mTraverseShouldTrace ) )); + } + impl Clone for nsCycleCollectionParticipant { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsCycleCollectingAutoRefCnt { + pub mRefCntAndFlags: usize, + } + #[test] + fn bindgen_test_layout_nsCycleCollectingAutoRefCnt() { + assert_eq!(::std::mem::size_of::() , + 8usize , concat ! ( + "Size of: " , stringify ! ( nsCycleCollectingAutoRefCnt ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsCycleCollectingAutoRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsCycleCollectingAutoRefCnt ) ) . + mRefCntAndFlags as * const _ as usize } , 0usize , concat + ! ( + "Alignment of field: " , stringify ! ( + nsCycleCollectingAutoRefCnt ) , "::" , stringify ! ( + mRefCntAndFlags ) )); + } + impl Clone for nsCycleCollectingAutoRefCnt { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsCharTraits { + pub _address: u8, + } + #[test] + fn __bindgen_test_layout_nsCharTraits_instantiation_50148() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsCharTraits ) )); + assert_eq!(::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCharTraits ) )); + } + #[test] + fn __bindgen_test_layout_nsCharTraits_instantiation_50152() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsCharTraits ) )); + assert_eq!(::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCharTraits ) )); + } + /** + * @see nsTAString + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsReadingIterator { + pub mStart: *mut CharT, + pub mEnd: *mut CharT, + pub mPosition: *mut CharT, + } + pub type nsReadingIterator_self_type = + root::nsReadingIterator; + pub type nsReadingIterator_difference_type = isize; + pub type nsReadingIterator_size_type = usize; + pub type nsReadingIterator_value_type = CharT; + pub type nsReadingIterator_pointer = *mut CharT; + pub type nsReadingIterator_reference = u8; + /** + * @see nsTAString + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsWritingIterator { + pub mStart: *mut CharT, + pub mEnd: *mut CharT, + pub mPosition: *mut CharT, + } + pub type nsWritingIterator_self_type = + root::nsWritingIterator; + pub type nsWritingIterator_difference_type = isize; + pub type nsWritingIterator_size_type = usize; + pub type nsWritingIterator_value_type = CharT; + pub type nsWritingIterator_pointer = *mut CharT; + pub type nsWritingIterator_reference = u8; + #[repr(C)] + pub struct nsSubstringSplitter { + pub mStr: *const root::nsAString, + pub mArray: u64, + pub mArraySize: root::nsSubstringSplitter_size_type, + pub mDelim: root::nsSubstringSplitter_char_type, + } + pub type nsSubstringSplitter_size_type = + root::mozilla::detail::nsStringRepr_size_type; + pub type nsSubstringSplitter_char_type = + root::mozilla::detail::nsStringRepr_char_type; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsSubstringSplitter_nsTSubstringSplit_Iter { + pub mObj: *const root::nsSubstringSplitter, + pub mPos: root::nsSubstringSplitter_size_type, + } + #[test] + fn bindgen_test_layout_nsSubstringSplitter_nsTSubstringSplit_Iter() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsSubstringSplitter_nsTSubstringSplit_Iter ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsSubstringSplitter_nsTSubstringSplit_Iter ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const nsSubstringSplitter_nsTSubstringSplit_Iter ) + ) . mObj as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsSubstringSplitter_nsTSubstringSplit_Iter ) , "::" , + stringify ! ( mObj ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const nsSubstringSplitter_nsTSubstringSplit_Iter ) + ) . mPos as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsSubstringSplitter_nsTSubstringSplit_Iter ) , "::" , + stringify ! ( mPos ) )); + } + impl Clone for nsSubstringSplitter_nsTSubstringSplit_Iter { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_nsSubstringSplitter() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( + "Size of: " , stringify ! ( nsSubstringSplitter ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsSubstringSplitter ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSubstringSplitter ) ) . mStr as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSubstringSplitter + ) , "::" , stringify ! ( mStr ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSubstringSplitter ) ) . mArray as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSubstringSplitter + ) , "::" , stringify ! ( mArray ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSubstringSplitter ) ) . mArraySize + as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSubstringSplitter + ) , "::" , stringify ! ( mArraySize ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSubstringSplitter ) ) . mDelim as * + const _ as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSubstringSplitter + ) , "::" , stringify ! ( mDelim ) )); + } + #[repr(C)] + pub struct nsCSubstringSplitter { + pub mStr: *const root::nsACString, + pub mArray: u64, + pub mArraySize: root::nsCSubstringSplitter_size_type, + pub mDelim: root::nsCSubstringSplitter_char_type, + } + pub type nsCSubstringSplitter_size_type = + root::mozilla::detail::nsCStringRepr_size_type; + pub type nsCSubstringSplitter_char_type = + root::mozilla::detail::nsCStringRepr_char_type; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsCSubstringSplitter_nsTSubstringSplit_Iter { + pub mObj: *const root::nsCSubstringSplitter, + pub mPos: root::nsCSubstringSplitter_size_type, + } + #[test] + fn bindgen_test_layout_nsCSubstringSplitter_nsTSubstringSplit_Iter() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsCSubstringSplitter_nsTSubstringSplit_Iter ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsCSubstringSplitter_nsTSubstringSplit_Iter ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const nsCSubstringSplitter_nsTSubstringSplit_Iter ) + ) . mObj as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsCSubstringSplitter_nsTSubstringSplit_Iter ) , "::" , + stringify ! ( mObj ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const nsCSubstringSplitter_nsTSubstringSplit_Iter ) + ) . mPos as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsCSubstringSplitter_nsTSubstringSplit_Iter ) , "::" , + stringify ! ( mPos ) )); + } + impl Clone for nsCSubstringSplitter_nsTSubstringSplit_Iter { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_nsCSubstringSplitter() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( + "Size of: " , stringify ! ( nsCSubstringSplitter ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsCSubstringSplitter ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsCSubstringSplitter ) ) . mStr as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsCSubstringSplitter ) , "::" , stringify ! ( mStr ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsCSubstringSplitter ) ) . mArray as + * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsCSubstringSplitter ) , "::" , stringify ! ( mArray ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsCSubstringSplitter ) ) . mArraySize + as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsCSubstringSplitter ) , "::" , stringify ! ( mArraySize ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsCSubstringSplitter ) ) . mDelim as + * const _ as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsCSubstringSplitter ) , "::" , stringify ! ( mDelim ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct nsFixedString { + pub _base: ::nsstring::nsStringRepr, + pub mFixedCapacity: root::mozilla::detail::nsStringRepr_size_type, + pub mFixedBuf: *mut root::mozilla::detail::nsStringRepr_char_type, + } + pub type nsFixedString_self_type = root::nsFixedString; + pub type nsFixedString_fixed_string_type = root::nsFixedString; + #[test] + fn bindgen_test_layout_nsFixedString() { + assert_eq!(::std::mem::size_of::() , 32usize , concat ! + ( "Size of: " , stringify ! ( nsFixedString ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsFixedString ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFixedString ) ) . mFixedCapacity as + * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFixedString ) , + "::" , stringify ! ( mFixedCapacity ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFixedString ) ) . mFixedBuf as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFixedString ) , + "::" , stringify ! ( mFixedBuf ) )); + } + pub type PRUint32 = ::std::os::raw::c_uint; + pub type PRIntn = ::std::os::raw::c_int; + pub type PRUintn = ::std::os::raw::c_uint; + /************************************************************************ +** TYPES: PRSize +** DESCRIPTION: +** A type for representing the size of objects. +************************************************************************/ + pub type PRSize = usize; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct PLHashEntry { + pub next: *mut root::PLHashEntry, + pub keyHash: root::PLHashNumber, + pub key: *const ::std::os::raw::c_void, + pub value: *mut ::std::os::raw::c_void, + } + #[test] + fn bindgen_test_layout_PLHashEntry() { + assert_eq!(::std::mem::size_of::() , 32usize , concat ! ( + "Size of: " , stringify ! ( PLHashEntry ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( PLHashEntry ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashEntry ) ) . next as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashEntry ) , + "::" , stringify ! ( next ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashEntry ) ) . keyHash as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashEntry ) , + "::" , stringify ! ( keyHash ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashEntry ) ) . key as * const _ as + usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashEntry ) , + "::" , stringify ! ( key ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashEntry ) ) . value as * const _ + as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashEntry ) , + "::" , stringify ! ( value ) )); + } + impl Clone for PLHashEntry { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct PLHashTable { + pub buckets: *mut *mut root::PLHashEntry, + pub nentries: root::PRUint32, + pub shift: root::PRUint32, + pub keyHash: root::PLHashFunction, + pub keyCompare: root::PLHashComparator, + pub valueCompare: root::PLHashComparator, + pub allocOps: *const root::PLHashAllocOps, + pub allocPriv: *mut ::std::os::raw::c_void, + } + #[test] + fn bindgen_test_layout_PLHashTable() { + assert_eq!(::std::mem::size_of::() , 56usize , concat ! ( + "Size of: " , stringify ! ( PLHashTable ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( PLHashTable ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashTable ) ) . buckets as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashTable ) , + "::" , stringify ! ( buckets ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashTable ) ) . nentries as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashTable ) , + "::" , stringify ! ( nentries ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashTable ) ) . shift as * const _ + as usize } , 12usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashTable ) , + "::" , stringify ! ( shift ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashTable ) ) . keyHash as * const + _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashTable ) , + "::" , stringify ! ( keyHash ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashTable ) ) . keyCompare as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashTable ) , + "::" , stringify ! ( keyCompare ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashTable ) ) . valueCompare as * + const _ as usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashTable ) , + "::" , stringify ! ( valueCompare ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashTable ) ) . allocOps as * const + _ as usize } , 40usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashTable ) , + "::" , stringify ! ( allocOps ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashTable ) ) . allocPriv as * + const _ as usize } , 48usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashTable ) , + "::" , stringify ! ( allocPriv ) )); + } + impl Clone for PLHashTable { + fn clone(&self) -> Self { *self } + } + pub type PLHashNumber = root::PRUint32; + pub type PLHashFunction = + ::std::option::Option root::PLHashNumber>; + pub type PLHashComparator = + ::std::option::Option root::PRIntn>; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct PLHashAllocOps { + pub allocTable: ::std::option::Option + *mut ::std::os::raw::c_void>, + pub freeTable: ::std::option::Option, + pub allocEntry: ::std::option::Option *mut root::PLHashEntry>, + pub freeEntry: ::std::option::Option, + } + #[test] + fn bindgen_test_layout_PLHashAllocOps() { + assert_eq!(::std::mem::size_of::() , 32usize , concat + ! ( "Size of: " , stringify ! ( PLHashAllocOps ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( PLHashAllocOps ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashAllocOps ) ) . allocTable as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashAllocOps ) , + "::" , stringify ! ( allocTable ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashAllocOps ) ) . freeTable as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashAllocOps ) , + "::" , stringify ! ( freeTable ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashAllocOps ) ) . allocEntry as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashAllocOps ) , + "::" , stringify ! ( allocEntry ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const PLHashAllocOps ) ) . freeEntry as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( PLHashAllocOps ) , + "::" , stringify ! ( freeEntry ) )); + } + impl Clone for PLHashAllocOps { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsCSSTokenSerializationType { + eCSSTokenSerialization_Nothing = 0, + eCSSTokenSerialization_Whitespace = 1, + eCSSTokenSerialization_AtKeyword_or_Hash = 2, + eCSSTokenSerialization_Number = 3, + eCSSTokenSerialization_Dimension = 4, + eCSSTokenSerialization_Percentage = 5, + eCSSTokenSerialization_URange = 6, + eCSSTokenSerialization_URL_or_BadURL = 7, + eCSSTokenSerialization_Function = 8, + eCSSTokenSerialization_Ident = 9, + eCSSTokenSerialization_CDC = 10, + eCSSTokenSerialization_DashMatch = 11, + eCSSTokenSerialization_ContainsMatch = 12, + eCSSTokenSerialization_Symbol_Hash = 13, + eCSSTokenSerialization_Symbol_At = 14, + eCSSTokenSerialization_Symbol_Dot_or_Plus = 15, + eCSSTokenSerialization_Symbol_Minus = 16, + eCSSTokenSerialization_Symbol_OpenParen = 17, + eCSSTokenSerialization_Symbol_Question = 18, + eCSSTokenSerialization_Symbol_Assorted = 19, + eCSSTokenSerialization_Symbol_Equals = 20, + eCSSTokenSerialization_Symbol_Bar = 21, + eCSSTokenSerialization_Symbol_Slash = 22, + eCSSTokenSerialization_Symbol_Asterisk = 23, + eCSSTokenSerialization_Other = 24, + } + /** + * A "unique identifier". This is modeled after OSF DCE UUIDs. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsID { + pub m0: u32, + pub m1: u16, + pub m2: u16, + pub m3: [u8; 8usize], + } + #[test] + fn bindgen_test_layout_nsID() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! ( + "Size of: " , stringify ! ( nsID ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat ! ( + "Alignment of " , stringify ! ( nsID ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsID ) ) . m0 as * const _ as usize } + , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsID ) , "::" , + stringify ! ( m0 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsID ) ) . m1 as * const _ as usize } + , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( nsID ) , "::" , + stringify ! ( m1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsID ) ) . m2 as * const _ as usize } + , 6usize , concat ! ( + "Alignment of field: " , stringify ! ( nsID ) , "::" , + stringify ! ( m2 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsID ) ) . m3 as * const _ as usize } + , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsID ) , "::" , + stringify ! ( m3 ) )); + } + impl Clone for nsID { + fn clone(&self) -> Self { *self } + } + pub type nsCID = root::nsID; + /** + * An "interface id" which can be used to uniquely identify a given + * interface. + */ + pub type nsIID = root::nsID; + pub type PRTime = i64; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsAutoRefCnt { + pub mValue: root::nsrefcnt, + } + pub const nsAutoRefCnt_isThreadSafe: bool = false; + #[test] + fn bindgen_test_layout_nsAutoRefCnt() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsAutoRefCnt ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsAutoRefCnt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsAutoRefCnt ) ) . mValue as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsAutoRefCnt ) , + "::" , stringify ! ( mValue ) )); + } + impl Clone for nsAutoRefCnt { fn clone(&self) -> Self { *self } } /** @@ -9844,8 +11520,7 @@ pub mod root { pub type already_AddRefed_MatchNullptr = ::std::option::Option; #[repr(C)] - pub struct nsCOMPtr_helper__bindgen_vtable { - } + pub struct nsCOMPtr_helper__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug, Copy)] pub struct nsCOMPtr_helper { @@ -9870,22 +11545,16 @@ pub mod root { pub type RefPtr_element_type = T; #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RefPtr_Proxy { - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - pub _phantom_2: ::std::marker::PhantomData, + pub struct RefPtr_Proxy { } - pub type RefPtr_Proxy_member_function = [u8; 0usize]; + pub type RefPtr_Proxy_member_function = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RefPtr_ConstRemovingRefPtrTraits { + pub struct RefPtr_ConstRemovingRefPtrTraits { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[repr(C)] - pub struct nsCycleCollectionTraversalCallback__bindgen_vtable { - } + pub struct nsCycleCollectionTraversalCallback__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug, Copy)] pub struct nsCycleCollectionTraversalCallback { @@ -9926,7 +11595,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct JSContext([u8; 0]); + pub struct JSContext { + _unused: [u8; 0], + } pub mod JS { #[allow(unused_imports)] use self::super::super::root; @@ -9999,6 +11670,46 @@ pub mod root { impl Clone for Value_layout__bindgen_ty_1 { fn clone(&self) -> Self { *self } } + impl Value_layout__bindgen_ty_1 { + #[inline] + pub fn payload47(&self) -> u64 { + let mask = 140737488355327usize as u64; + let field_val: u64 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u64) } + } + #[inline] + pub fn set_payload47(&mut self, val: u64) { + let mask = 140737488355327usize as u64; + let val = val as u64 as u64; + let mut field_val: u64 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn tag(&self) -> root::JSValueTag { + let mask = 18446603336221196288usize as u64; + let field_val: u64 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 47usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_tag(&mut self, val: root::JSValueTag) { + let mask = 18446603336221196288usize as u64; + let val = val as u32 as u64; + let mut field_val: u64 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 47usize) & mask; + self._bitfield_1 = + unsafe { ::std::mem::transmute(field_val) }; + } + } #[repr(C)] #[derive(Debug, Copy)] pub struct Value_layout__bindgen_ty_2 { @@ -10172,30 +11883,24 @@ pub mod root { pub ptr: *mut T, } pub type MutableHandle_ElementType = T; + /** + * Local variable of type T whose value is always rooted. This is typically + * used for local variables, or for non-rooted values being passed to a + * function that requires a handle, e.g. Foo(Root(cx, x)). + * + * If you want to add additional methods to Rooted for a specific + * specialization, define a RootedBase specialization containing them. + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct Rooted { + } + pub type Rooted_ElementType = T; + pub type HandleObject = root::JS::Handle<*mut root::JSObject>; pub type HandleValue = root::JS::Handle; pub type MutableHandleValue = root::JS::MutableHandle; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct DeletePolicy { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct FreePolicy { - pub _address: u8, - } - #[test] - fn bindgen_test_layout_FreePolicy() { - assert_eq!(::std::mem::size_of::() , 1usize , concat ! - ( "Size of: " , stringify ! ( FreePolicy ) )); - assert_eq! (::std::mem::align_of::() , 1usize , concat - ! ( "Alignment of " , stringify ! ( FreePolicy ) )); - } - impl Clone for FreePolicy { - fn clone(&self) -> Self { *self } - } + pub type RootedObject = [u64; 3usize]; /** * A GC pointer, tagged with the trace kind. * @@ -10223,11 +11928,35 @@ pub mod root { impl Clone for GCCellPtr { fn clone(&self) -> Self { *self } } + /** + * The Heap class is a heap-stored reference to a JS GC thing. All members of + * heap classes that refer to GC things should use Heap (or possibly + * TenuredHeap, described below). + * + * Heap is an abstraction that hides some of the complexity required to + * maintain GC invariants for the contained reference. It uses operator + * overloading to provide a normal pointer interface, but notifies the GC every + * time the value it contains is updated. This is necessary for generational GC, + * which keeps track of all pointers into the nursery. + * + * Heap instances must be traced when their containing object is traced to + * keep the pointed-to GC thing alive. + * + * Heap objects should only be used on the heap. GC references stored on the + * C/C++ stack must use Rooted/Handle/MutableHandle instead. + * + * Type T must be a public GC pointer type. + */ + #[repr(C)] + #[derive(Debug)] + pub struct Heap { + pub ptr: T, + } + pub type Heap_ElementType = T; pub mod dbg { #[allow(unused_imports)] use self::super::super::super::root; #[repr(C)] - #[derive(Debug)] pub struct GarbageCollectionEvent { pub majorGCNumber_: u64, pub reason: *const ::std::os::raw::c_char, @@ -10271,8 +12000,7 @@ pub mod root { fn clone(&self) -> Self { *self } } pub type GarbageCollectionEvent_Ptr = - root::mozilla::UniquePtr>; + root::mozilla::UniquePtr; #[test] fn bindgen_test_layout_GarbageCollectionEvent() { assert_eq!(::std::mem::size_of::() , @@ -10312,33 +12040,40 @@ pub mod root { GarbageCollectionEvent ) , "::" , stringify ! ( collections ) )); } + #[repr(C)] + pub struct AutoEntryMonitor__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug)] + pub struct AutoEntryMonitor { + pub vtable_: *const AutoEntryMonitor__bindgen_vtable, + pub cx_: *mut root::JSContext, + pub savedMonitor_: *mut root::JS::dbg::AutoEntryMonitor, + } + #[test] + fn bindgen_test_layout_AutoEntryMonitor() { + assert_eq!(::std::mem::size_of::() , 24usize + , concat ! ( + "Size of: " , stringify ! ( AutoEntryMonitor ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( AutoEntryMonitor ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoEntryMonitor ) ) . cx_ as + * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryMonitor ) , "::" , stringify ! ( cx_ ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoEntryMonitor ) ) . + savedMonitor_ as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + AutoEntryMonitor ) , "::" , stringify ! ( + savedMonitor_ ) )); + } } /** - * The Heap class is a heap-stored reference to a JS GC thing. All members of - * heap classes that refer to GC things should use Heap (or possibly - * TenuredHeap, described below). - * - * Heap is an abstraction that hides some of the complexity required to - * maintain GC invariants for the contained reference. It uses operator - * overloading to provide a normal pointer interface, but notifies the GC every - * time the value it contains is updated. This is necessary for generational GC, - * which keeps track of all pointers into the nursery. - * - * Heap instances must be traced when their containing object is traced to - * keep the pointed-to GC thing alive. - * - * Heap objects should only be used on the heap. GC references stored on the - * C/C++ stack must use Rooted/Handle/MutableHandle instead. - * - * Type T must be a public GC pointer type. - */ - #[repr(C)] - #[derive(Debug)] - pub struct Heap { - pub ptr: T, - } - pub type Heap_ElementType = T; - /** * The TenuredHeap class is similar to the Heap class above in that it * encapsulates the GC concerns of an on-heap reference to a JS object. However, * it has two important differences: @@ -10369,9 +12104,8 @@ pub mod root { */ #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct TenuredHeap { + pub struct TenuredHeap { pub bits: usize, - pub _phantom_0: ::std::marker::PhantomData, } pub type TenuredHeap_ElementType = T; pub const TenuredHeap_maskBits: root::JS::TenuredHeap__bindgen_ty_1 = @@ -10404,19 +12138,123 @@ pub mod root { impl Clone for ConstUTF8CharsZ { fn clone(&self) -> Self { *self } } + /** + * This class can be used to store a pointer to the youngest frame of a saved + * stack in the specified JSContext. This reference will be picked up by any new + * calls performed until the class is destroyed, with the specified asyncCause, + * that must not be empty. + * + * Any stack capture initiated during these new calls will go through the async + * stack instead of the current stack. + * + * Capturing the stack before a new call is performed will not be affected. + * + * The provided chain of SavedFrame objects can live in any compartment, + * although it will be copied to the compartment where the stack is captured. + * + * See also `js/src/doc/SavedFrame/SavedFrame.md` for documentation on async + * stack frames. + */ + #[repr(C)] + #[derive(Debug)] + pub struct AutoSetAsyncStackForNewCalls { + pub cx: *mut root::JSContext, + pub oldAsyncStack: root::JS::RootedObject, + pub oldAsyncCause: *const ::std::os::raw::c_char, + pub oldAsyncCallIsExplicit: bool, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum AutoSetAsyncStackForNewCalls_AsyncCallKind { + IMPLICIT = 0, + EXPLICIT = 1, + } + #[test] + fn bindgen_test_layout_AutoSetAsyncStackForNewCalls() { + assert_eq!(::std::mem::size_of::() , + 48usize , concat ! ( + "Size of: " , stringify ! ( + AutoSetAsyncStackForNewCalls ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + AutoSetAsyncStackForNewCalls ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoSetAsyncStackForNewCalls ) ) + . cx as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoSetAsyncStackForNewCalls ) , "::" , stringify ! ( + cx ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoSetAsyncStackForNewCalls ) ) + . oldAsyncStack as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + AutoSetAsyncStackForNewCalls ) , "::" , stringify ! ( + oldAsyncStack ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoSetAsyncStackForNewCalls ) ) + . oldAsyncCause as * const _ as usize } , 32usize , + concat ! ( + "Alignment of field: " , stringify ! ( + AutoSetAsyncStackForNewCalls ) , "::" , stringify ! ( + oldAsyncCause ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoSetAsyncStackForNewCalls ) ) + . oldAsyncCallIsExplicit as * const _ as usize } , + 40usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoSetAsyncStackForNewCalls ) , "::" , stringify ! ( + oldAsyncCallIsExplicit ) )); + } + pub type WarningReporter = + ::std::option::Option; + #[repr(C)] + #[derive(Debug)] + pub struct AutoHideScriptedCaller { + pub mContext: *mut root::JSContext, + } + #[test] + fn bindgen_test_layout_AutoHideScriptedCaller() { + assert_eq!(::std::mem::size_of::() , + 8usize , concat ! ( + "Size of: " , stringify ! ( AutoHideScriptedCaller ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( AutoHideScriptedCaller + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const AutoHideScriptedCaller ) ) . + mContext as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + AutoHideScriptedCaller ) , "::" , stringify ! ( + mContext ) )); + } } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct JSFunction([u8; 0]); + pub struct JSFunction { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct JSObject([u8; 0]); + pub struct JSObject { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct JSScript([u8; 0]); + pub struct JSScript { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct JSString([u8; 0]); + pub struct JSString { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct jsid { @@ -10449,7 +12287,9 @@ pub mod root { use self::super::super::super::root; #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct Statistics([u8; 0]); + pub struct Statistics { + _unused: [u8; 0], + } } #[repr(C)] #[derive(Debug, Copy)] @@ -10471,42 +12311,31 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct WrappedPtrOperations { + pub struct WrappedPtrOperations { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct MutableWrappedPtrOperations { + pub struct MutableWrappedPtrOperations { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct HandleBase { + pub struct HandleBase { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct MutableHandleBase { + pub struct MutableHandleBase { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct HeapBase { + pub struct HeapBase { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[repr(C)] - pub struct SourceHook__bindgen_vtable { - } + pub struct SourceHook__bindgen_vtable(::std::os::raw::c_void); /** * A class of objects that return source code on demand. * @@ -10533,10 +12362,104 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct JSCompartment([u8; 0]); + pub struct JSCompartment { + _unused: [u8; 0], + } + /** + * Describes a single error or warning that occurs in the execution of script. + */ + #[repr(C)] + pub struct JSErrorReport { + pub _base: root::JSErrorBase, + pub linebuf_: *const u16, + pub linebufLength_: usize, + pub tokenOffset_: usize, + pub notes: root::mozilla::UniquePtr, + pub flags: ::std::os::raw::c_uint, + pub exnType: i16, + pub _bitfield_1: u8, + pub __bindgen_padding_0: u8, + } + #[test] + fn bindgen_test_layout_JSErrorReport() { + assert_eq!(::std::mem::size_of::() , 72usize , concat ! + ( "Size of: " , stringify ! ( JSErrorReport ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( JSErrorReport ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . linebuf_ as * + const _ as usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( linebuf_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . linebufLength_ as + * const _ as usize } , 40usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( linebufLength_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . tokenOffset_ as * + const _ as usize } , 48usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( tokenOffset_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . notes as * const + _ as usize } , 56usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( notes ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . flags as * const + _ as usize } , 64usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( flags ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorReport ) ) . exnType as * + const _ as usize } , 68usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorReport ) , + "::" , stringify ! ( exnType ) )); + } + impl JSErrorReport { + #[inline] + pub fn isMuted(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_isMuted(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn ownsLinebuf_(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_ownsLinebuf_(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct JSRuntime([u8; 0]); + pub struct JSRuntime { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct JSTracer { @@ -10583,725 +12506,6 @@ pub mod root { impl Clone for JSTracer { fn clone(&self) -> Self { *self } } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum WeakMapTraceKind { - DoNotTraceWeakMaps = 0, - ExpandWeakMaps = 1, - TraceWeakMapValues = 2, - TraceWeakMapKeysValues = 3, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum JSValueTag { - JSVAL_TAG_MAX_DOUBLE = 131056, - JSVAL_TAG_INT32 = 131057, - JSVAL_TAG_UNDEFINED = 131058, - JSVAL_TAG_NULL = 131059, - JSVAL_TAG_BOOLEAN = 131060, - JSVAL_TAG_MAGIC = 131061, - JSVAL_TAG_STRING = 131062, - JSVAL_TAG_SYMBOL = 131063, - JSVAL_TAG_PRIVATE_GCTHING = 131064, - JSVAL_TAG_OBJECT = 131068, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum JSWhyMagic { - JS_ELEMENTS_HOLE = 0, - JS_NO_ITER_VALUE = 1, - JS_GENERATOR_CLOSING = 2, - JS_NO_CONSTANT = 3, - JS_THIS_POISON = 4, - JS_ARG_POISON = 5, - JS_SERIALIZE_NO_NODE = 6, - JS_LAZY_ARGUMENTS = 7, - JS_OPTIMIZED_ARGUMENTS = 8, - JS_IS_CONSTRUCTING = 9, - JS_BLOCK_NEEDS_CLONE = 10, - JS_HASH_KEY_EMPTY = 11, - JS_ION_ERROR = 12, - JS_ION_BAILOUT = 13, - JS_OPTIMIZED_OUT = 14, - JS_UNINITIALIZED_LEXICAL = 15, - JS_GENERIC_MAGIC = 16, - JS_WHY_MAGIC_COUNT = 17, - } - #[repr(C)] - pub struct nsISupports__bindgen_vtable { - } - /** - * Basic component object model interface. Objects which implement - * this interface support runtime interface discovery (QueryInterface) - * and a reference counted memory model (AddRef/Release). This is - * modelled after the win32 IUnknown API. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsISupports { - pub vtable_: *const nsISupports__bindgen_vtable, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsISupports_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsISupports() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsISupports ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsISupports ) )); - } - impl Clone for nsISupports { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - pub struct nsCycleCollectionParticipant__bindgen_vtable { - } - /** - * Participant implementation classes - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsCycleCollectionParticipant { - pub vtable_: *const nsCycleCollectionParticipant__bindgen_vtable, - pub mMightSkip: bool, - pub mTraverseShouldTrace: bool, - } - #[test] - fn bindgen_test_layout_nsCycleCollectionParticipant() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( nsCycleCollectionParticipant ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsCycleCollectionParticipant ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsCycleCollectionParticipant ) ) . - mMightSkip as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsCycleCollectionParticipant ) , "::" , stringify ! ( - mMightSkip ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsCycleCollectionParticipant ) ) . - mTraverseShouldTrace as * const _ as usize } , 9usize , - concat ! ( - "Alignment of field: " , stringify ! ( - nsCycleCollectionParticipant ) , "::" , stringify ! ( - mTraverseShouldTrace ) )); - } - impl Clone for nsCycleCollectionParticipant { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsCycleCollectingAutoRefCnt { - pub mRefCntAndFlags: usize, - } - #[test] - fn bindgen_test_layout_nsCycleCollectingAutoRefCnt() { - assert_eq!(::std::mem::size_of::() , - 8usize , concat ! ( - "Size of: " , stringify ! ( nsCycleCollectingAutoRefCnt ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsCycleCollectingAutoRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsCycleCollectingAutoRefCnt ) ) . - mRefCntAndFlags as * const _ as usize } , 0usize , concat - ! ( - "Alignment of field: " , stringify ! ( - nsCycleCollectingAutoRefCnt ) , "::" , stringify ! ( - mRefCntAndFlags ) )); - } - impl Clone for nsCycleCollectingAutoRefCnt { - fn clone(&self) -> Self { *self } - } - /** - * @see nsTAString - */ - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsReadingIterator { - pub mStart: *mut CharT, - pub mEnd: *mut CharT, - pub mPosition: *mut CharT, - } - pub type nsReadingIterator_self_type = - root::nsReadingIterator; - pub type nsReadingIterator_difference_type = isize; - pub type nsReadingIterator_size_type = usize; - pub type nsReadingIterator_value_type = CharT; - pub type nsReadingIterator_pointer = *mut CharT; - pub type nsReadingIterator_reference = [u8; 0usize]; - /** - * @see nsTAString - */ - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsWritingIterator { - pub mStart: *mut CharT, - pub mEnd: *mut CharT, - pub mPosition: *mut CharT, - } - pub type nsWritingIterator_self_type = - root::nsWritingIterator; - pub type nsWritingIterator_difference_type = isize; - pub type nsWritingIterator_size_type = usize; - pub type nsWritingIterator_value_type = CharT; - pub type nsWritingIterator_pointer = *mut CharT; - pub type nsWritingIterator_reference = [u8; 0usize]; - #[repr(C)] - #[derive(Debug)] - pub struct nsSubstringSplitter { - pub mStr: *const root::nsAString, - pub mArray: root::mozilla::UniquePtr<[root::nsDependentSubstring; 0usize], - root::mozilla::DefaultDelete<[root::nsDependentSubstring; 0usize]>>, - pub mArraySize: root::nsSubstringSplitter_size_type, - pub mDelim: root::nsSubstringSplitter_char_type, - } - pub type nsSubstringSplitter_size_type = - root::mozilla::detail::nsStringRepr_size_type; - pub type nsSubstringSplitter_char_type = - root::mozilla::detail::nsStringRepr_char_type; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsSubstringSplitter_nsTSubstringSplit_Iter { - pub mObj: *const root::nsSubstringSplitter, - pub mPos: root::nsSubstringSplitter_size_type, - } - #[test] - fn bindgen_test_layout_nsSubstringSplitter_nsTSubstringSplit_Iter() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - nsSubstringSplitter_nsTSubstringSplit_Iter ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsSubstringSplitter_nsTSubstringSplit_Iter ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const nsSubstringSplitter_nsTSubstringSplit_Iter ) - ) . mObj as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsSubstringSplitter_nsTSubstringSplit_Iter ) , "::" , - stringify ! ( mObj ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const nsSubstringSplitter_nsTSubstringSplit_Iter ) - ) . mPos as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsSubstringSplitter_nsTSubstringSplit_Iter ) , "::" , - stringify ! ( mPos ) )); - } - impl Clone for nsSubstringSplitter_nsTSubstringSplit_Iter { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_nsSubstringSplitter() { - assert_eq!(::std::mem::size_of::() , 24usize , - concat ! ( - "Size of: " , stringify ! ( nsSubstringSplitter ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsSubstringSplitter ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSubstringSplitter ) ) . mStr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSubstringSplitter - ) , "::" , stringify ! ( mStr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSubstringSplitter ) ) . mArray as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSubstringSplitter - ) , "::" , stringify ! ( mArray ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSubstringSplitter ) ) . mArraySize - as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSubstringSplitter - ) , "::" , stringify ! ( mArraySize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSubstringSplitter ) ) . mDelim as * - const _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSubstringSplitter - ) , "::" , stringify ! ( mDelim ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct nsCSubstringSplitter { - pub mStr: *const root::nsACString, - pub mArray: root::mozilla::UniquePtr<[root::nsDependentCSubstring; 0usize], - root::mozilla::DefaultDelete<[root::nsDependentCSubstring; 0usize]>>, - pub mArraySize: root::nsCSubstringSplitter_size_type, - pub mDelim: root::nsCSubstringSplitter_char_type, - } - pub type nsCSubstringSplitter_size_type = - root::mozilla::detail::nsCStringRepr_size_type; - pub type nsCSubstringSplitter_char_type = - root::mozilla::detail::nsCStringRepr_char_type; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsCSubstringSplitter_nsTSubstringSplit_Iter { - pub mObj: *const root::nsCSubstringSplitter, - pub mPos: root::nsCSubstringSplitter_size_type, - } - #[test] - fn bindgen_test_layout_nsCSubstringSplitter_nsTSubstringSplit_Iter() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - nsCSubstringSplitter_nsTSubstringSplit_Iter ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsCSubstringSplitter_nsTSubstringSplit_Iter ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const nsCSubstringSplitter_nsTSubstringSplit_Iter ) - ) . mObj as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsCSubstringSplitter_nsTSubstringSplit_Iter ) , "::" , - stringify ! ( mObj ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const nsCSubstringSplitter_nsTSubstringSplit_Iter ) - ) . mPos as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsCSubstringSplitter_nsTSubstringSplit_Iter ) , "::" , - stringify ! ( mPos ) )); - } - impl Clone for nsCSubstringSplitter_nsTSubstringSplit_Iter { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_nsCSubstringSplitter() { - assert_eq!(::std::mem::size_of::() , 24usize , - concat ! ( - "Size of: " , stringify ! ( nsCSubstringSplitter ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsCSubstringSplitter ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsCSubstringSplitter ) ) . mStr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsCSubstringSplitter ) , "::" , stringify ! ( mStr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsCSubstringSplitter ) ) . mArray as - * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsCSubstringSplitter ) , "::" , stringify ! ( mArray ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsCSubstringSplitter ) ) . mArraySize - as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsCSubstringSplitter ) , "::" , stringify ! ( mArraySize ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsCSubstringSplitter ) ) . mDelim as - * const _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsCSubstringSplitter ) , "::" , stringify ! ( mDelim ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct nsFixedString { - pub _base: ::nsstring::nsStringRepr, - pub mFixedCapacity: root::mozilla::detail::nsStringRepr_size_type, - pub mFixedBuf: *mut root::mozilla::detail::nsStringRepr_char_type, - } - pub type nsFixedString_self_type = root::nsFixedString; - pub type nsFixedString_fixed_string_type = root::nsFixedString; - #[test] - fn bindgen_test_layout_nsFixedString() { - assert_eq!(::std::mem::size_of::() , 32usize , concat ! - ( "Size of: " , stringify ! ( nsFixedString ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsFixedString ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFixedString ) ) . mFixedCapacity as - * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFixedString ) , - "::" , stringify ! ( mFixedCapacity ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFixedString ) ) . mFixedBuf as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFixedString ) , - "::" , stringify ! ( mFixedBuf ) )); - } - pub type PRUint32 = ::std::os::raw::c_uint; - pub type PRUintn = ::std::os::raw::c_uint; - /************************************************************************ -** TYPES: PRSize -** DESCRIPTION: -** A type for representing the size of objects. -************************************************************************/ - pub type PRSize = usize; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct PLHashEntry { - pub next: *mut root::PLHashEntry, - pub keyHash: root::PLHashNumber, - pub key: *const ::std::os::raw::c_void, - pub value: *mut ::std::os::raw::c_void, - } - #[test] - fn bindgen_test_layout_PLHashEntry() { - assert_eq!(::std::mem::size_of::() , 32usize , concat ! ( - "Size of: " , stringify ! ( PLHashEntry ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( PLHashEntry ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashEntry ) ) . next as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashEntry ) , - "::" , stringify ! ( next ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashEntry ) ) . keyHash as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashEntry ) , - "::" , stringify ! ( keyHash ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashEntry ) ) . key as * const _ as - usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashEntry ) , - "::" , stringify ! ( key ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashEntry ) ) . value as * const _ - as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashEntry ) , - "::" , stringify ! ( value ) )); - } - impl Clone for PLHashEntry { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct PLHashTable { - pub buckets: *mut *mut root::PLHashEntry, - pub nentries: root::PRUint32, - pub shift: root::PRUint32, - pub keyHash: root::PLHashFunction, - pub keyCompare: root::PLHashComparator, - pub valueCompare: root::PLHashComparator, - pub allocOps: *const root::PLHashAllocOps, - pub allocPriv: *mut ::std::os::raw::c_void, - } - #[test] - fn bindgen_test_layout_PLHashTable() { - assert_eq!(::std::mem::size_of::() , 56usize , concat ! ( - "Size of: " , stringify ! ( PLHashTable ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( PLHashTable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashTable ) ) . buckets as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashTable ) , - "::" , stringify ! ( buckets ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashTable ) ) . nentries as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashTable ) , - "::" , stringify ! ( nentries ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashTable ) ) . shift as * const _ - as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashTable ) , - "::" , stringify ! ( shift ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashTable ) ) . keyHash as * const - _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashTable ) , - "::" , stringify ! ( keyHash ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashTable ) ) . keyCompare as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashTable ) , - "::" , stringify ! ( keyCompare ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashTable ) ) . valueCompare as * - const _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashTable ) , - "::" , stringify ! ( valueCompare ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashTable ) ) . allocOps as * const - _ as usize } , 40usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashTable ) , - "::" , stringify ! ( allocOps ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashTable ) ) . allocPriv as * - const _ as usize } , 48usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashTable ) , - "::" , stringify ! ( allocPriv ) )); - } - impl Clone for PLHashTable { - fn clone(&self) -> Self { *self } - } - pub type PLHashNumber = root::PRUint32; - pub type PLHashFunction = - ::std::option::Option ::std::os::raw::c_uint>; - pub type PLHashComparator = - ::std::option::Option ::std::os::raw::c_int>; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct PLHashAllocOps { - pub allocTable: ::std::option::Option - *mut ::std::os::raw::c_void>, - pub freeTable: ::std::option::Option, - pub allocEntry: ::std::option::Option *mut root::PLHashEntry>, - pub freeEntry: ::std::option::Option, - } - #[test] - fn bindgen_test_layout_PLHashAllocOps() { - assert_eq!(::std::mem::size_of::() , 32usize , concat - ! ( "Size of: " , stringify ! ( PLHashAllocOps ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( PLHashAllocOps ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashAllocOps ) ) . allocTable as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashAllocOps ) , - "::" , stringify ! ( allocTable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashAllocOps ) ) . freeTable as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashAllocOps ) , - "::" , stringify ! ( freeTable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashAllocOps ) ) . allocEntry as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashAllocOps ) , - "::" , stringify ! ( allocEntry ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const PLHashAllocOps ) ) . freeEntry as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( PLHashAllocOps ) , - "::" , stringify ! ( freeEntry ) )); - } - impl Clone for PLHashAllocOps { - fn clone(&self) -> Self { *self } - } - pub type PRTime = i64; - /** - * A "unique identifier". This is modeled after OSF DCE UUIDs. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsID { - pub m0: u32, - pub m1: u16, - pub m2: u16, - pub m3: [u8; 8usize], - } - #[test] - fn bindgen_test_layout_nsID() { - assert_eq!(::std::mem::size_of::() , 16usize , concat ! ( - "Size of: " , stringify ! ( nsID ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat ! ( - "Alignment of " , stringify ! ( nsID ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsID ) ) . m0 as * const _ as usize } - , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsID ) , "::" , - stringify ! ( m0 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsID ) ) . m1 as * const _ as usize } - , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( nsID ) , "::" , - stringify ! ( m1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsID ) ) . m2 as * const _ as usize } - , 6usize , concat ! ( - "Alignment of field: " , stringify ! ( nsID ) , "::" , - stringify ! ( m2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsID ) ) . m3 as * const _ as usize } - , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsID ) , "::" , - stringify ! ( m3 ) )); - } - impl Clone for nsID { - fn clone(&self) -> Self { *self } - } - pub type nsCID = root::nsID; - /** - * An "interface id" which can be used to uniquely identify a given - * interface. - */ - pub type nsIID = root::nsID; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsAutoRefCnt { - pub mValue: root::nsrefcnt, - } - pub const nsAutoRefCnt_isThreadSafe: bool = false; - #[test] - fn bindgen_test_layout_nsAutoRefCnt() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsAutoRefCnt ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsAutoRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsAutoRefCnt ) ) . mValue as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsAutoRefCnt ) , - "::" , stringify ! ( mValue ) )); - } - impl Clone for nsAutoRefCnt { - fn clone(&self) -> Self { *self } - } - pub type nsIntRegion = root::mozilla::gfx::IntRegion; - #[repr(C)] - #[derive(Debug)] - pub struct nsRegion { - pub mImpl: root::pixman_region32_t, - } - pub type nsRegion_RectType = root::nsRect; - pub type nsRegion_PointType = root::nsPoint; - pub type nsRegion_MarginType = root::nsMargin; - /** - * VisitEdges is a weird kind of function that we use for padding - * out surfaces to prevent texture filtering artifacts. - * It calls the visitFn callback for each of the exterior edges of - * the regions. The top and bottom edges will be expanded 1 pixel - * to the left and right if there's an outside corner. The order - * the edges are visited is not guaranteed. - * - * visitFn has a side parameter that can be TOP,BOTTOM,LEFT,RIGHT - * and specifies which kind of edge is being visited. x1, y1, x2, y2 - * are the coordinates of the line. (x1 == x2) || (y1 == y2) - */ - pub type nsRegion_visitFn = - ::std::option::Option; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsRegion_RectIterator { - pub mCurrent: ::std::os::raw::c_int, - pub mLimit: ::std::os::raw::c_int, - pub mTmp: root::nsRect, - pub mBoxes: *mut root::pixman_box32_t, - } - #[test] - fn bindgen_test_layout_nsRegion_RectIterator() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( - "Size of: " , stringify ! ( nsRegion_RectIterator ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsRegion_RectIterator ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsRegion_RectIterator ) ) . mCurrent - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsRegion_RectIterator ) , "::" , stringify ! ( mCurrent ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsRegion_RectIterator ) ) . mLimit as - * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsRegion_RectIterator ) , "::" , stringify ! ( mLimit ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsRegion_RectIterator ) ) . mTmp as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsRegion_RectIterator ) , "::" , stringify ! ( mTmp ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsRegion_RectIterator ) ) . mBoxes as - * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsRegion_RectIterator ) , "::" , stringify ! ( mBoxes ) - )); - } - impl Clone for nsRegion_RectIterator { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_nsRegion() { - assert_eq!(::std::mem::size_of::() , 24usize , concat ! ( - "Size of: " , stringify ! ( nsRegion ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsRegion ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsRegion ) ) . mImpl as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsRegion ) , "::" , - stringify ! ( mImpl ) )); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsTArrayHeader { - pub mLength: u32, - pub _bitfield_1: u32, - } - extern "C" { - #[link_name = "_ZN14nsTArrayHeader9sEmptyHdrE"] - pub static mut nsTArrayHeader_sEmptyHdr: root::nsTArrayHeader; - } - #[test] - fn bindgen_test_layout_nsTArrayHeader() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsTArrayHeader ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat - ! ( "Alignment of " , stringify ! ( nsTArrayHeader ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsTArrayHeader ) ) . mLength as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsTArrayHeader ) , - "::" , stringify ! ( mLength ) )); - } - impl Clone for nsTArrayHeader { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct nsCOMPtr { - pub _base: root::nsCOMPtr_base, - pub _phantom_0: ::std::marker::PhantomData, - } - pub type nsCOMPtr_element_type = T; #[repr(C)] #[derive(Debug, Copy)] pub struct nsQueryInterface { @@ -11493,16 +12697,22 @@ pub mod root { "Alignment of field: " , stringify ! ( nsCOMPtr_base ) , "::" , stringify ! ( mRawPtr ) )); } + #[repr(C)] + #[derive(Debug)] + pub struct nsCOMPtr { + pub _base: root::nsCOMPtr_base, + } + pub type nsCOMPtr_element_type = T; #[test] - fn __bindgen_test_layout_template_5() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( + fn __bindgen_test_layout_nsCOMPtr_instantiation_63576() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( + root::nsCOMPtr ) )); + assert_eq!(::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); + root::nsCOMPtr ) )); } #[repr(C)] #[derive(Debug)] @@ -11517,2180 +12727,9 @@ pub mod root { pub type nsAutoPtr_element_type = T; #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsAutoPtr_Proxy { - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - pub _phantom_2: ::std::marker::PhantomData, - } - pub type nsAutoPtr_Proxy_member_function = [u8; 0usize]; - /** - * 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)] - #[derive(Debug)] - pub struct nsStringBuffer { - pub mRefCount: u32, - pub mStorageSize: u32, - } - #[test] - fn bindgen_test_layout_nsStringBuffer() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsStringBuffer ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat - ! ( "Alignment of " , stringify ! ( nsStringBuffer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStringBuffer ) ) . mRefCount as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStringBuffer ) , - "::" , stringify ! ( mRefCount ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStringBuffer ) ) . mStorageSize as - * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStringBuffer ) , - "::" , stringify ! ( mStorageSize ) )); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIPrincipal { - pub _base: root::nsISerializable, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIPrincipal_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIPrincipal_APP_STATUS_NOT_INSTALLED: - root::nsIPrincipal__bindgen_ty_1 = - nsIPrincipal__bindgen_ty_1::APP_STATUS_NOT_INSTALLED; - pub const nsIPrincipal_APP_STATUS_INSTALLED: - root::nsIPrincipal__bindgen_ty_1 = - nsIPrincipal__bindgen_ty_1::APP_STATUS_INSTALLED; - pub const nsIPrincipal_APP_STATUS_PRIVILEGED: - root::nsIPrincipal__bindgen_ty_1 = - nsIPrincipal__bindgen_ty_1::APP_STATUS_PRIVILEGED; - pub const nsIPrincipal_APP_STATUS_CERTIFIED: - root::nsIPrincipal__bindgen_ty_1 = - nsIPrincipal__bindgen_ty_1::APP_STATUS_CERTIFIED; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIPrincipal__bindgen_ty_1 { - APP_STATUS_NOT_INSTALLED = 0, - APP_STATUS_INSTALLED = 1, - APP_STATUS_PRIVILEGED = 2, - APP_STATUS_CERTIFIED = 3, - } - #[test] - fn bindgen_test_layout_nsIPrincipal() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIPrincipal ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsIPrincipal ) )); - } - impl Clone for nsIPrincipal { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - pub struct nsWrapperCache__bindgen_vtable { - } - /** - * Class to store the wrapper for an object. This can only be used with objects - * that only have one non-security wrapper at a time (for an XPCWrappedNative - * this is usually ensured by setting an explicit parent in the PreCreate hook - * for the class). - * - * An instance of nsWrapperCache can be gotten from an object that implements - * a wrapper cache by calling QueryInterface on it. Note that this breaks XPCOM - * rules a bit (this object doesn't derive from nsISupports). - * - * The cache can store objects other than wrappers. We allow wrappers to use a - * separate JSObject to store their state (mostly expandos). If the wrapper is - * collected and we want to preserve this state we actually store the state - * object in the cache. - * - * The cache can store 2 types of objects: - * - * If WRAPPER_IS_NOT_DOM_BINDING is set (IsDOMBinding() returns false): - * - the JSObject of an XPCWrappedNative wrapper - * - * If WRAPPER_IS_NOT_DOM_BINDING is not set (IsDOMBinding() returns true): - * - a DOM binding object (regular JS object or proxy) - * - * The finalizer for the wrapper clears the cache. - * - * A compacting GC can move the wrapper object. Pointers to moved objects are - * usually found and updated by tracing the heap, however non-preserved wrappers - * are weak references and are not traced, so another approach is - * necessary. Instead a class hook (objectMovedOp) is provided that is called - * when an object is moved and is responsible for ensuring pointers are - * updated. It does this by calling UpdateWrapper() on the wrapper - * cache. SetWrapper() asserts that the hook is implemented for any wrapper set. - * - * A number of the methods are implemented in nsWrapperCacheInlines.h because we - * have to include some JS headers that don't play nicely with the rest of the - * codebase. Include nsWrapperCacheInlines.h if you need to call those methods. - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsWrapperCache { - pub vtable_: *const nsWrapperCache__bindgen_vtable, - pub mWrapper: *mut root::JSObject, - pub mFlags: root::nsWrapperCache_FlagsType, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsWrapperCache_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub type nsWrapperCache_FlagsType = u32; - pub const nsWrapperCache_WRAPPER_BIT_PRESERVED: - root::nsWrapperCache__bindgen_ty_1 = - nsWrapperCache__bindgen_ty_1::WRAPPER_BIT_PRESERVED; - #[repr(u32)] - /** - * If this bit is set then we're preserving the wrapper, which in effect ties - * the lifetime of the JS object stored in the cache to the lifetime of the - * native object. We rely on the cycle collector to break the cycle that this - * causes between the native object and the JS object, so it is important that - * any native object that supports preserving of its wrapper - * traces/traverses/unlinks the cached JS object (see - * NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER and - * NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER). - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsWrapperCache__bindgen_ty_1 { WRAPPER_BIT_PRESERVED = 1, } - pub const nsWrapperCache_WRAPPER_IS_NOT_DOM_BINDING: - root::nsWrapperCache__bindgen_ty_2 = - nsWrapperCache__bindgen_ty_2::WRAPPER_IS_NOT_DOM_BINDING; - #[repr(u32)] - /** - * If this bit is set then the wrapper for the native object is not a DOM - * binding. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsWrapperCache__bindgen_ty_2 { WRAPPER_IS_NOT_DOM_BINDING = 2, } - pub const nsWrapperCache_kWrapperFlagsMask: - root::nsWrapperCache__bindgen_ty_3 = - nsWrapperCache__bindgen_ty_3::kWrapperFlagsMask; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsWrapperCache__bindgen_ty_3 { kWrapperFlagsMask = 3, } - #[test] - fn bindgen_test_layout_nsWrapperCache() { - assert_eq!(::std::mem::size_of::() , 24usize , concat - ! ( "Size of: " , stringify ! ( nsWrapperCache ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsWrapperCache ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsWrapperCache ) ) . mWrapper as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsWrapperCache ) , - "::" , stringify ! ( mWrapper ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsWrapperCache ) ) . mFlags as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsWrapperCache ) , - "::" , stringify ! ( mFlags ) )); - } - #[repr(C)] - pub struct TraceCallbacks__bindgen_vtable { - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct TraceCallbacks { - pub vtable_: *const TraceCallbacks__bindgen_vtable, - } - #[test] - fn bindgen_test_layout_TraceCallbacks() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( TraceCallbacks ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( TraceCallbacks ) )); - } - impl Clone for TraceCallbacks { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsScriptObjectTracer { - pub _base: root::nsCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_nsScriptObjectTracer() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( - "Size of: " , stringify ! ( nsScriptObjectTracer ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsScriptObjectTracer ) )); - } - impl Clone for nsScriptObjectTracer { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsXPCOMCycleCollectionParticipant { - pub _base: root::nsScriptObjectTracer, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsXPCOMCycleCollectionParticipant_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsXPCOMCycleCollectionParticipant() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - nsXPCOMCycleCollectionParticipant ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsXPCOMCycleCollectionParticipant ) )); - } - impl Clone for nsXPCOMCycleCollectionParticipant { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct JSErrorFormatString { - /** The error message name in ASCII. */ - pub name: *const ::std::os::raw::c_char, - /** The error format string in ASCII. */ - pub format: *const ::std::os::raw::c_char, - /** The number of arguments to expand in the formatted error message. */ - pub argCount: u16, - /** One of the JSExnType constants above. */ - pub exnType: i16, - } - #[test] - fn bindgen_test_layout_JSErrorFormatString() { - assert_eq!(::std::mem::size_of::() , 24usize , - concat ! ( - "Size of: " , stringify ! ( JSErrorFormatString ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( JSErrorFormatString ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorFormatString ) ) . name as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorFormatString - ) , "::" , stringify ! ( name ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorFormatString ) ) . format as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorFormatString - ) , "::" , stringify ! ( format ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorFormatString ) ) . argCount as - * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorFormatString - ) , "::" , stringify ! ( argCount ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorFormatString ) ) . exnType as - * const _ as usize } , 18usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorFormatString - ) , "::" , stringify ! ( exnType ) )); - } - impl Clone for JSErrorFormatString { - fn clone(&self) -> Self { *self } - } - pub type JSErrorCallback = - ::std::option::Option *const root::JSErrorFormatString>; - /** - * Base class that implements parts shared by JSErrorReport and - * JSErrorNotes::Note. - */ - #[repr(C)] - #[derive(Debug)] - pub struct JSErrorBase { - pub message_: root::JS::ConstUTF8CharsZ, - pub filename: *const ::std::os::raw::c_char, - pub lineno: ::std::os::raw::c_uint, - pub column: ::std::os::raw::c_uint, - pub errorNumber: ::std::os::raw::c_uint, - pub _bitfield_1: u8, - pub __bindgen_padding_0: [u8; 3usize], - } - #[test] - fn bindgen_test_layout_JSErrorBase() { - assert_eq!(::std::mem::size_of::() , 32usize , concat ! ( - "Size of: " , stringify ! ( JSErrorBase ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( JSErrorBase ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorBase ) ) . message_ as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorBase ) , - "::" , stringify ! ( message_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorBase ) ) . filename as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorBase ) , - "::" , stringify ! ( filename ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorBase ) ) . lineno as * const _ - as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorBase ) , - "::" , stringify ! ( lineno ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorBase ) ) . column as * const _ - as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorBase ) , - "::" , stringify ! ( column ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorBase ) ) . errorNumber as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorBase ) , - "::" , stringify ! ( errorNumber ) )); - } - /** - * Notes associated with JSErrorReport. - */ - #[repr(C)] - #[derive(Debug)] - pub struct JSErrorNotes { - pub notes_: [u64; 4usize], - } - #[repr(C)] - #[derive(Debug)] - pub struct JSErrorNotes_Note { - pub _base: root::JSErrorBase, - } - #[test] - fn bindgen_test_layout_JSErrorNotes_Note() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( "Size of: " , stringify ! ( JSErrorNotes_Note ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( JSErrorNotes_Note ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct JSErrorNotes_iterator { - pub note_: *mut root::mozilla::UniquePtr>, - } - #[test] - fn bindgen_test_layout_JSErrorNotes_iterator() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( JSErrorNotes_iterator ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( JSErrorNotes_iterator ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorNotes_iterator ) ) . note_ as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - JSErrorNotes_iterator ) , "::" , stringify ! ( note_ ) )); - } - #[test] - fn bindgen_test_layout_JSErrorNotes() { - assert_eq!(::std::mem::size_of::() , 32usize , concat ! - ( "Size of: " , stringify ! ( JSErrorNotes ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( JSErrorNotes ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const JSErrorNotes ) ) . notes_ as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( JSErrorNotes ) , - "::" , stringify ! ( notes_ ) )); - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIEventTarget { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIEventTarget_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIEventTarget_DISPATCH_NORMAL: - root::nsIEventTarget__bindgen_ty_1 = - nsIEventTarget__bindgen_ty_1::DISPATCH_NORMAL; - pub const nsIEventTarget_DISPATCH_SYNC: root::nsIEventTarget__bindgen_ty_1 - = - nsIEventTarget__bindgen_ty_1::DISPATCH_SYNC; - pub const nsIEventTarget_DISPATCH_AT_END: - root::nsIEventTarget__bindgen_ty_1 = - nsIEventTarget__bindgen_ty_1::DISPATCH_AT_END; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIEventTarget__bindgen_ty_1 { - DISPATCH_NORMAL = 0, - DISPATCH_SYNC = 1, - DISPATCH_AT_END = 2, - } - #[test] - fn bindgen_test_layout_nsIEventTarget() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsIEventTarget ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsIEventTarget ) )); - } - impl Clone for nsIEventTarget { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIRunnable { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIRunnable_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIRunnable() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIRunnable ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsIRunnable ) )); - } - impl Clone for nsIRunnable { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct nsIGlobalObject { - pub _base: root::nsISupports, - pub _base_1: root::mozilla::dom::DispatcherTrait, - pub mHostObjectURIs: root::nsTArray, - pub mIsDying: bool, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIGlobalObject_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIGlobalObject() { - assert_eq!(::std::mem::size_of::() , 32usize , concat - ! ( "Size of: " , stringify ! ( nsIGlobalObject ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIGlobalObject ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIObjectInputStream([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIObjectOutputStream([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsISerializable { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsISerializable_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsISerializable() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsISerializable ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsISerializable ) )); - } - impl Clone for nsISerializable { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIURI { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIURI_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIURI() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIURI ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIURI ) )); - } - impl Clone for nsIURI { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIContentSecurityPolicy([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMDocument([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct nsPIDOMWindowInner { - pub _base: [u64; 28usize], - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsPIDOMWindowInner_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsPIDOMWindowInner() { - assert_eq!(::std::mem::size_of::() , 224usize , - concat ! ( "Size of: " , stringify ! ( nsPIDOMWindowInner ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsPIDOMWindowInner ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsGlobalWindow([u8; 0]); - /** - * It is used by the application to initialize a runtime and run scripts. - * A script runtime would implement this interface. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIScriptContext { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIScriptContext_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIScriptContext() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsIScriptContext ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIScriptContext ) )); - } - impl Clone for nsIScriptContext { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct nsIDocument { - pub _base: root::nsINode, - pub _base_1: root::mozilla::dom::DispatcherTrait, - pub mDeprecationWarnedAbout: u64, - pub mDocWarningWarnedAbout: u64, - pub mSelectorCache: root::nsAutoPtr, - pub mReferrer: root::nsCString, - pub mLastModified: ::nsstring::nsStringRepr, - pub mDocumentURI: root::nsCOMPtr, - pub mOriginalURI: root::nsCOMPtr, - pub mChromeXHRDocURI: root::nsCOMPtr, - pub mDocumentBaseURI: root::nsCOMPtr, - pub mChromeXHRDocBaseURI: root::nsCOMPtr, - pub mCachedURLData: root::RefPtr, - pub mDocumentLoadGroup: root::nsWeakPtr, - pub mReferrerPolicySet: bool, - pub mReferrerPolicy: root::nsIDocument_ReferrerPolicyEnum, - pub mBlockAllMixedContent: bool, - pub mBlockAllMixedContentPreloads: bool, - pub mUpgradeInsecureRequests: bool, - pub mUpgradeInsecurePreloads: bool, - pub mHSTSPrimingURIList: [u64; 5usize], - pub mDocumentContainer: u64, - pub mCharacterSet: root::nsCString, - pub mCharacterSetSource: i32, - pub mParentDocument: *mut root::nsIDocument, - pub mCachedRootElement: *mut root::mozilla::dom::Element, - pub mNodeInfoManager: *mut root::nsNodeInfoManager, - pub mCSSLoader: root::RefPtr, - pub mStyleImageLoader: root::RefPtr, - pub mAttrStyleSheet: root::RefPtr, - pub mStyleAttrStyleSheet: root::RefPtr, - pub mImageTracker: root::RefPtr, - pub mActivityObservers: root::nsAutoPtr<()>, - pub mLinksToUpdate: [u64; 3usize], - pub mAnimationController: root::RefPtr, - pub mPropertyTable: root::nsPropertyTable, - pub mExtraPropertyTables: root::nsTArray>, - pub mChildrenCollection: root::nsCOMPtr, - pub mFontFaceSet: root::RefPtr, - pub mLastFocusTime: root::mozilla::TimeStamp, - pub _bitfield_1: u8, - pub _bitfield_2: u8, - pub _bitfield_3: u8, - pub _bitfield_4: u8, - pub _bitfield_5: u8, - pub _bitfield_6: u8, - pub mCompatMode: root::nsCompatibility, - pub mReadyState: root::nsIDocument_ReadyState, - pub mStyleBackendType: root::mozilla::StyleBackendType, - pub mVisibilityState: root::mozilla::dom::VisibilityState, - pub mType: root::nsIDocument_Type, - pub mDefaultElementType: u8, - pub mAllowXULXBL: root::nsIDocument_Tri, - pub mScriptGlobalObject: root::nsCOMPtr, - pub mOriginalDocument: root::nsCOMPtr, - pub mBidiOptions: u32, - pub mSandboxFlags: u32, - pub mContentLanguage: root::nsCString, - pub mChannel: root::nsCOMPtr, - pub mContentType: root::nsCString, - pub mId: ::nsstring::nsStringRepr, - pub mSecurityInfo: root::nsCOMPtr, - pub mFailedChannel: root::nsCOMPtr, - pub mPartID: u32, - pub mMarkedCCGeneration: u32, - pub mPresShell: *mut root::nsIPresShell, - pub mSubtreeModifiedTargets: root::nsCOMArray, - pub mSubtreeModifiedDepth: u32, - pub mDisplayDocument: root::nsCOMPtr, - pub mEventsSuppressed: u32, - /** - * The number number of external scripts (ones with the src attribute) that - * have this document as their owner and that are being evaluated right now. - */ - pub mExternalScriptsBeingEvaluated: u32, - /** - * The current frame request callback handle - */ - pub mFrameRequestCallbackCounter: i32, - pub mStaticCloneCount: u32, - pub mBlockedTrackingNodes: root::nsTArray>, - pub mWindow: *mut root::nsPIDOMWindowInner, - pub mCachedEncoder: root::nsCOMPtr, - pub mFrameRequestCallbacks: root::nsTArray, - pub mBFCacheEntry: *mut root::nsIBFCacheEntry, - pub mBaseTarget: ::nsstring::nsStringRepr, - pub mStateObjectContainer: root::nsCOMPtr, - pub mStateObjectCached: root::nsCOMPtr, - pub mInSyncOperationCount: u32, - pub mXPathEvaluator: root::RefPtr, - pub mAnonymousContents: root::nsTArray>, - pub mBlockDOMContentLoaded: u32, - pub mDOMMediaQueryLists: root::mozilla::LinkedList, - pub mUseCounters: [u64; 2usize], - pub mChildDocumentUseCounters: [u64; 2usize], - pub mNotifiedPageForUseCounter: [u64; 2usize], - pub mUserHasInteracted: bool, - pub mPageUnloadingEventTimeStamp: root::mozilla::TimeStamp, - pub mDocGroup: root::RefPtr, - pub mTrackingScripts: [u64; 5usize], - } - pub type nsIDocument_GlobalObject = root::mozilla::dom::GlobalObject; - pub use self::super::root::mozilla::net::ReferrerPolicy as - nsIDocument_ReferrerPolicyEnum; - pub type nsIDocument_Element = root::mozilla::dom::Element; - pub type nsIDocument_FullscreenRequest = - root::mozilla::dom::FullscreenRequest; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDocument_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[repr(C)] - #[derive(Debug)] - pub struct nsIDocument_PageUnloadingEventTimeStamp { - pub mDocument: root::nsCOMPtr, - pub mSet: bool, - } - #[test] - fn bindgen_test_layout_nsIDocument_PageUnloadingEventTimeStamp() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - nsIDocument_PageUnloadingEventTimeStamp ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsIDocument_PageUnloadingEventTimeStamp ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const nsIDocument_PageUnloadingEventTimeStamp ) - ) . mDocument as * const _ as usize } , 0usize , concat ! - ( - "Alignment of field: " , stringify ! ( - nsIDocument_PageUnloadingEventTimeStamp ) , "::" , - stringify ! ( mDocument ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const nsIDocument_PageUnloadingEventTimeStamp ) - ) . mSet as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsIDocument_PageUnloadingEventTimeStamp ) , "::" , - stringify ! ( mSet ) )); - } - /** - * This gets fired when the element that an id refers to changes. - * This fires at difficult times. It is generally not safe to do anything - * which could modify the DOM in any way. Use - * nsContentUtils::AddScriptRunner. - * @return true to keep the callback in the callback set, false - * to remove it. - */ - pub type nsIDocument_IDTargetObserver = - ::std::option::Option bool>; - #[repr(C)] - #[derive(Debug)] - pub struct nsIDocument_SelectorCacheKey { - pub mKey: ::nsstring::nsStringRepr, - pub mState: root::nsExpirationState, - } - #[test] - fn bindgen_test_layout_nsIDocument_SelectorCacheKey() { - assert_eq!(::std::mem::size_of::() , - 24usize , concat ! ( - "Size of: " , stringify ! ( nsIDocument_SelectorCacheKey ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsIDocument_SelectorCacheKey ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsIDocument_SelectorCacheKey ) ) . - mKey as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsIDocument_SelectorCacheKey ) , "::" , stringify ! ( mKey - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsIDocument_SelectorCacheKey ) ) . - mState as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsIDocument_SelectorCacheKey ) , "::" , stringify ! ( - mState ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDocument_SelectorCacheKeyDeleter([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDocument_SelectorCache { - pub _bindgen_opaque_blob: [u64; 17usize], - } - #[test] - fn bindgen_test_layout_nsIDocument_SelectorCache() { - assert_eq!(::std::mem::size_of::() , - 136usize , concat ! ( - "Size of: " , stringify ! ( nsIDocument_SelectorCache ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIDocument_SelectorCache - ) )); - } - impl Clone for nsIDocument_SelectorCache { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_additionalSheetType { - eAgentSheet = 0, - eUserSheet = 1, - eAuthorSheet = 2, - AdditionalSheetTypeCount = 3, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_ReadyState { - READYSTATE_UNINITIALIZED = 0, - READYSTATE_LOADING = 1, - READYSTATE_INTERACTIVE = 3, - READYSTATE_COMPLETE = 4, - } - /** - * Enumerate all subdocuments. - * The enumerator callback should return true to continue enumerating, or - * false to stop. This will never get passed a null aDocument. - */ - pub type nsIDocument_nsSubDocEnumFunc = - ::std::option::Option bool>; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_ElementsFromPointFlags { - IGNORE_ROOT_SCROLL_FRAME = 1, - FLUSH_LAYOUT = 2, - IS_ELEMENT_FROM_POINT = 4, - } - /** - * A class that represents an external resource load that has begun but - * doesn't have a document yet. Observers can be registered on this object, - * and will be notified after the document is created. Observers registered - * after the document has been created will NOT be notified. When observers - * are notified, the subject will be the newly-created document, the topic - * will be "external-resource-document-created", and the data will be null. - * If document creation fails for some reason, observers will still be - * notified, with a null document pointer. - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsIDocument_ExternalResourceLoad { - pub _base: root::nsISupports, - pub mObservers: [u64; 10usize], - } - #[test] - fn bindgen_test_layout_nsIDocument_ExternalResourceLoad() { - assert_eq!(::std::mem::size_of::() , - 88usize , concat ! ( - "Size of: " , stringify ! ( - nsIDocument_ExternalResourceLoad ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsIDocument_ExternalResourceLoad ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsIDocument_ExternalResourceLoad ) ) - . mObservers as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsIDocument_ExternalResourceLoad ) , "::" , stringify ! ( - mObservers ) )); - } - pub type nsIDocument_ActivityObserverEnumerator = - ::std::option::Option; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_DocumentTheme { - Doc_Theme_Uninitialized = 0, - Doc_Theme_None = 1, - Doc_Theme_Neutral = 2, - Doc_Theme_Dark = 3, - Doc_Theme_Bright = 4, - } - pub type nsIDocument_FrameRequestCallbackList = - root::nsTArray>; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_DeprecatedOperations { - eGetAttributeNode = 0, - eSetAttributeNode = 1, - eGetAttributeNodeNS = 2, - eSetAttributeNodeNS = 3, - eRemoveAttributeNode = 4, - eCreateAttribute = 5, - eCreateAttributeNS = 6, - eNodeValue = 7, - eTextContent = 8, - eEnablePrivilege = 9, - eDOMExceptionCode = 10, - eNoExposedProps = 11, - eMutationEvent = 12, - eComponents = 13, - ePrefixedVisibilityAPI = 14, - eNodeIteratorDetach = 15, - eLenientThis = 16, - eGetPreventDefault = 17, - eGetSetUserData = 18, - eMozGetAsFile = 19, - eUseOfCaptureEvents = 20, - eUseOfReleaseEvents = 21, - eUseOfDOM3LoadMethod = 22, - eChromeUseOfDOM3LoadMethod = 23, - eShowModalDialog = 24, - eWindow_Content = 25, - eSyncXMLHttpRequest = 26, - eWindow_Controllers = 27, - eImportXULIntoContent = 28, - ePannerNodeDoppler = 29, - eNavigatorGetUserMedia = 30, - eWebrtcDeprecatedPrefix = 31, - eRTCPeerConnectionGetStreams = 32, - eAppCache = 33, - ePrefixedImageSmoothingEnabled = 34, - ePrefixedFullscreenAPI = 35, - eLenientSetter = 36, - eFileLastModifiedDate = 37, - eImageBitmapRenderingContext_TransferImageBitmap = 38, - eURLCreateObjectURL_MediaStream = 39, - eXMLBaseAttribute = 40, - eXMLBaseAttributeForStyleAttr = 41, - eDeprecatedOperationCount = 42, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_DocumentWarnings { - eIgnoringWillChangeOverBudget = 0, - ePreventDefaultFromPassiveListener = 1, - eSVGReferenceLoop = 2, - eSVGReferenceChainLengthExceeded = 3, - eDocumentWarningCount = 4, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_ElementCallbackType { - eCreated = 0, - eAttached = 1, - eDetached = 2, - eAttributeChanged = 3, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_Type { - eUnknown = 0, - eHTML = 1, - eXHTML = 2, - eGenericXML = 3, - eSVG = 4, - eXUL = 5, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDocument_Tri { eTriUnset = 0, eTriFalse = 1, eTriTrue = 2, } - #[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::() , 872usize , concat ! - ( "Size of: " , stringify ! ( nsIDocument ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsIDocument ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDocShell([u8; 0]); - /** - * The global object which keeps a script context for each supported script - * language. This often used to store per-window global state. - * This is a heavyweight interface implemented only by DOM globals, and - * it might go away some time in the future. - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsIScriptGlobalObject { - pub _base: root::nsIGlobalObject, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIScriptGlobalObject_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIScriptGlobalObject() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( - "Size of: " , stringify ! ( nsIScriptGlobalObject ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIScriptGlobalObject ) - )); - } - #[repr(u32)] - /** - * Return status for event processors. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsEventStatus { - nsEventStatus_eIgnore = 0, - nsEventStatus_eConsumeNoDefault = 1, - nsEventStatus_eConsumeDoDefault = 2, - nsEventStatus_eSentinel = 3, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIObserver { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIObserver_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIObserver() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIObserver ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsIObserver ) )); - } - impl Clone for nsIObserver { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIVariant { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIVariant_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIVariant() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIVariant ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIVariant ) )); - } - impl Clone for nsIVariant { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsISimpleEnumerator([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsINamed { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsINamed_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsINamed() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsINamed ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsINamed ) )); - } - impl Clone for nsINamed { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct nsRevocableEventPtr { - pub mEvent: root::RefPtr, - } - pub type DOMHighResTimeStamp = f64; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMAttr { - pub _base: root::nsIDOMNode, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMAttr_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMAttr() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIDOMAttr ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIDOMAttr ) )); - } - impl Clone for nsIDOMAttr { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMElement { - pub _base: root::nsIDOMNode, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMElement_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMElement() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsIDOMElement ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsIDOMElement ) )); - } - impl Clone for nsIDOMElement { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMNode { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMNode_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIDOMNode_ELEMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::ELEMENT_NODE; - pub const nsIDOMNode_ATTRIBUTE_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::ATTRIBUTE_NODE; - pub const nsIDOMNode_TEXT_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::TEXT_NODE; - pub const nsIDOMNode_CDATA_SECTION_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::CDATA_SECTION_NODE; - pub const nsIDOMNode_ENTITY_REFERENCE_NODE: root::nsIDOMNode__bindgen_ty_1 - = - nsIDOMNode__bindgen_ty_1::ENTITY_REFERENCE_NODE; - pub const nsIDOMNode_ENTITY_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::ENTITY_NODE; - pub const nsIDOMNode_PROCESSING_INSTRUCTION_NODE: - root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::PROCESSING_INSTRUCTION_NODE; - pub const nsIDOMNode_COMMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::COMMENT_NODE; - pub const nsIDOMNode_DOCUMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::DOCUMENT_NODE; - pub const nsIDOMNode_DOCUMENT_TYPE_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::DOCUMENT_TYPE_NODE; - pub const nsIDOMNode_DOCUMENT_FRAGMENT_NODE: - root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::DOCUMENT_FRAGMENT_NODE; - pub const nsIDOMNode_NOTATION_NODE: root::nsIDOMNode__bindgen_ty_1 = - nsIDOMNode__bindgen_ty_1::NOTATION_NODE; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDOMNode__bindgen_ty_1 { - ELEMENT_NODE = 1, - ATTRIBUTE_NODE = 2, - TEXT_NODE = 3, - CDATA_SECTION_NODE = 4, - ENTITY_REFERENCE_NODE = 5, - ENTITY_NODE = 6, - PROCESSING_INSTRUCTION_NODE = 7, - COMMENT_NODE = 8, - DOCUMENT_NODE = 9, - DOCUMENT_TYPE_NODE = 10, - DOCUMENT_FRAGMENT_NODE = 11, - NOTATION_NODE = 12, - } - pub const nsIDOMNode_DOCUMENT_POSITION_DISCONNECTED: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_DISCONNECTED; - pub const nsIDOMNode_DOCUMENT_POSITION_PRECEDING: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_PRECEDING; - pub const nsIDOMNode_DOCUMENT_POSITION_FOLLOWING: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_FOLLOWING; - pub const nsIDOMNode_DOCUMENT_POSITION_CONTAINS: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_CONTAINS; - pub const nsIDOMNode_DOCUMENT_POSITION_CONTAINED_BY: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_CONTAINED_BY; - pub const nsIDOMNode_DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: - root::nsIDOMNode__bindgen_ty_2 = - nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDOMNode__bindgen_ty_2 { - DOCUMENT_POSITION_DISCONNECTED = 1, - DOCUMENT_POSITION_PRECEDING = 2, - DOCUMENT_POSITION_FOLLOWING = 4, - DOCUMENT_POSITION_CONTAINS = 8, - DOCUMENT_POSITION_CONTAINED_BY = 16, - DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 32, - } - #[test] - fn bindgen_test_layout_nsIDOMNode() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIDOMNode ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIDOMNode ) )); - } - impl Clone for nsIDOMNode { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMNodeList { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMNodeList_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMNodeList() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsIDOMNodeList ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsIDOMNodeList ) )); - } - impl Clone for nsIDOMNodeList { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMClientRect { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMClientRect_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMClientRect() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsIDOMClientRect ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMClientRect ) )); - } - impl Clone for nsIDOMClientRect { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMClientRectList { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMClientRectList_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMClientRectList() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( nsIDOMClientRectList ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMClientRectList ) )); - } - impl Clone for nsIDOMClientRectList { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMStyleSheet { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMStyleSheet_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMStyleSheet() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsIDOMStyleSheet ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMStyleSheet ) )); - } - impl Clone for nsIDOMStyleSheet { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMMediaList { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMMediaList_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMMediaList() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsIDOMMediaList ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMMediaList ) )); - } - impl Clone for nsIDOMMediaList { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMEvent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMEventTarget { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMEventTarget_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMEventTarget() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( "Size of: " , stringify ! ( nsIDOMEventTarget ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMEventTarget ) )); - } - impl Clone for nsIDOMEventTarget { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMEventListener([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMHTMLCollection { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMHTMLCollection_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMHTMLCollection() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( nsIDOMHTMLCollection ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMHTMLCollection ) )); - } - impl Clone for nsIDOMHTMLCollection { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMCSSValue { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMCSSValue_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIDOMCSSValue_CSS_INHERIT: root::nsIDOMCSSValue__bindgen_ty_1 = - nsIDOMCSSValue__bindgen_ty_1::CSS_INHERIT; - pub const nsIDOMCSSValue_CSS_PRIMITIVE_VALUE: - root::nsIDOMCSSValue__bindgen_ty_1 = - nsIDOMCSSValue__bindgen_ty_1::CSS_PRIMITIVE_VALUE; - pub const nsIDOMCSSValue_CSS_VALUE_LIST: - root::nsIDOMCSSValue__bindgen_ty_1 = - nsIDOMCSSValue__bindgen_ty_1::CSS_VALUE_LIST; - pub const nsIDOMCSSValue_CSS_CUSTOM: root::nsIDOMCSSValue__bindgen_ty_1 = - nsIDOMCSSValue__bindgen_ty_1::CSS_CUSTOM; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDOMCSSValue__bindgen_ty_1 { - CSS_INHERIT = 0, - CSS_PRIMITIVE_VALUE = 1, - CSS_VALUE_LIST = 2, - CSS_CUSTOM = 3, - } - #[test] - fn bindgen_test_layout_nsIDOMCSSValue() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsIDOMCSSValue ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsIDOMCSSValue ) )); - } - impl Clone for nsIDOMCSSValue { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMCSSRule { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMCSSRule_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIDOMCSSRule_UNKNOWN_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::UNKNOWN_RULE; - pub const nsIDOMCSSRule_STYLE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::STYLE_RULE; - pub const nsIDOMCSSRule_CHARSET_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::CHARSET_RULE; - pub const nsIDOMCSSRule_IMPORT_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::IMPORT_RULE; - pub const nsIDOMCSSRule_MEDIA_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::MEDIA_RULE; - pub const nsIDOMCSSRule_FONT_FACE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 - = - nsIDOMCSSRule__bindgen_ty_1::FONT_FACE_RULE; - pub const nsIDOMCSSRule_PAGE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::PAGE_RULE; - pub const nsIDOMCSSRule_KEYFRAMES_RULE: root::nsIDOMCSSRule__bindgen_ty_1 - = - nsIDOMCSSRule__bindgen_ty_1::KEYFRAMES_RULE; - pub const nsIDOMCSSRule_KEYFRAME_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::KEYFRAME_RULE; - pub const nsIDOMCSSRule_MOZ_KEYFRAMES_RULE: - root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::KEYFRAMES_RULE; - pub const nsIDOMCSSRule_MOZ_KEYFRAME_RULE: - root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::KEYFRAME_RULE; - pub const nsIDOMCSSRule_NAMESPACE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 - = - nsIDOMCSSRule__bindgen_ty_1::NAMESPACE_RULE; - pub const nsIDOMCSSRule_COUNTER_STYLE_RULE: - root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::COUNTER_STYLE_RULE; - pub const nsIDOMCSSRule_SUPPORTS_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::SUPPORTS_RULE; - pub const nsIDOMCSSRule_FONT_FEATURE_VALUES_RULE: - root::nsIDOMCSSRule__bindgen_ty_1 = - nsIDOMCSSRule__bindgen_ty_1::FONT_FEATURE_VALUES_RULE; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIDOMCSSRule__bindgen_ty_1 { - UNKNOWN_RULE = 0, - STYLE_RULE = 1, - CHARSET_RULE = 2, - IMPORT_RULE = 3, - MEDIA_RULE = 4, - FONT_FACE_RULE = 5, - PAGE_RULE = 6, - KEYFRAMES_RULE = 7, - KEYFRAME_RULE = 8, - NAMESPACE_RULE = 10, - COUNTER_STYLE_RULE = 11, - SUPPORTS_RULE = 12, - FONT_FEATURE_VALUES_RULE = 14, - } - #[test] - fn bindgen_test_layout_nsIDOMCSSRule() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( nsIDOMCSSRule ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsIDOMCSSRule ) )); - } - impl Clone for nsIDOMCSSRule { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMCSSRuleList([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMCSSStyleSheet { - pub _base: root::nsIDOMStyleSheet, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMCSSStyleSheet_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMCSSStyleSheet() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( nsIDOMCSSStyleSheet ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDOMCSSStyleSheet ) )); - } - impl Clone for nsIDOMCSSStyleSheet { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDOMCSSStyleDeclaration { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMCSSStyleDeclaration_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDOMCSSStyleDeclaration() { - assert_eq!(::std::mem::size_of::() , 8usize - , concat ! ( - "Size of: " , stringify ! ( nsIDOMCSSStyleDeclaration ) )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIDOMCSSStyleDeclaration - ) )); - } - impl Clone for nsIDOMCSSStyleDeclaration { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIControllers([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsISelection([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct nsPresContext { - pub _base: root::nsIObserver, - pub _base_1: u64, - pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub mType: root::nsPresContext_nsPresContextType, - pub mShell: *mut root::nsIPresShell, - pub mDocument: root::nsCOMPtr, - pub mDeviceContext: root::RefPtr, - pub mEventManager: root::RefPtr, - pub mRefreshDriver: root::RefPtr, - pub mEffectCompositor: root::RefPtr, - pub mTransitionManager: root::RefPtr, - pub mAnimationManager: root::RefPtr, - pub mRestyleManager: root::RefPtr, - pub mCounterStyleManager: root::RefPtr, - pub mMedium: *mut root::nsIAtom, - pub mMediaEmulated: root::nsCOMPtr, - pub mLinkHandler: *mut root::nsILinkHandler, - pub mLanguage: root::nsCOMPtr, - pub mInflationDisabledForShrinkWrap: bool, - pub mContainer: u64, - pub mBaseMinFontSize: i32, - pub mSystemFontScale: f32, - pub mTextZoom: f32, - pub mEffectiveTextZoom: f32, - pub mFullZoom: f32, - pub mOverrideDPPX: f32, - pub mLastFontInflationScreenSize: root::gfxSize, - pub mCurAppUnitsPerDevPixel: i32, - pub mAutoQualityMinFontSizePixelsPref: i32, - pub mTheme: root::nsCOMPtr, - pub mLangService: root::nsCOMPtr, - pub mPrintSettings: root::nsCOMPtr, - pub mPrefChangedTimer: root::nsCOMPtr, - pub mBidiEngine: root::mozilla::UniquePtr>, - pub mPropertyTable: root::nsPresContext_FramePropertyTable, - pub mTransactions: [u64; 10usize], - pub mTextPerf: root::nsAutoPtr, - pub mMissingFonts: root::nsAutoPtr, - pub mVisibleArea: root::nsRect, - pub mPageSize: root::nsSize, - pub mPageScale: f32, - pub mPPScale: f32, - pub mDefaultColor: root::nscolor, - pub mBackgroundColor: root::nscolor, - pub mLinkColor: root::nscolor, - pub mActiveLinkColor: root::nscolor, - pub mVisitedLinkColor: root::nscolor, - pub mFocusBackgroundColor: root::nscolor, - pub mFocusTextColor: root::nscolor, - pub mBodyTextColor: root::nscolor, - pub mViewportStyleScrollbar: root::nsPresContext_ScrollbarStyles, - pub mFocusRingWidth: u8, - pub mExistThrottledUpdates: bool, - pub mImageAnimationMode: u16, - pub mImageAnimationModePref: u16, - pub mLangGroupFontPrefs: root::nsPresContext_LangGroupFontPrefs, - pub mBorderWidthTable: [root::nscoord; 3usize], - pub mInterruptChecksToSkip: u32, - pub mElementsRestyled: u64, - pub mFramesConstructed: u64, - pub mFramesReflowed: u64, - pub mReflowStartTime: root::mozilla::TimeStamp, - pub mFirstNonBlankPaintTime: root::mozilla::TimeStamp, - pub mFirstClickTime: root::mozilla::TimeStamp, - pub mFirstKeyTime: root::mozilla::TimeStamp, - pub mFirstMouseMoveTime: root::mozilla::TimeStamp, - pub mFirstScrollTime: root::mozilla::TimeStamp, - pub mInteractionTimeEnabled: bool, - pub mLastStyleUpdateForAllAnimations: root::mozilla::TimeStamp, - pub mTelemetryScrollLastY: root::nscoord, - pub mTelemetryScrollMaxY: root::nscoord, - pub mTelemetryScrollTotalY: root::nscoord, - pub _bitfield_1: [u8; 4usize], - pub _bitfield_2: [u8; 2usize], - pub __bindgen_padding_0: [u16; 3usize], - } - pub type nsPresContext_FramePropertyTable = - root::mozilla::FramePropertyTable; - pub type nsPresContext_LangGroupFontPrefs = - root::mozilla::LangGroupFontPrefs; - pub type nsPresContext_ScrollbarStyles = root::mozilla::ScrollbarStyles; - pub type nsPresContext_StaticPresData = root::mozilla::StaticPresData; - pub type nsPresContext_HasThreadSafeRefCnt = root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsPresContext_cycleCollection { - pub _base: root::nsXPCOMCycleCollectionParticipant, - } - #[test] - fn bindgen_test_layout_nsPresContext_cycleCollection() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( nsPresContext_cycleCollection ) - )); - assert_eq! (::std::mem::align_of::() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsPresContext_cycleCollection ) )); - } - impl Clone for nsPresContext_cycleCollection { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsPresContext_nsPresContextType { - eContext_Galley = 0, - eContext_PrintPreview = 1, - eContext_Print = 2, - eContext_PageLayout = 3, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsPresContext_InteractionType { - eClickInteraction = 0, - eKeyInteraction = 1, - eMouseMoveInteraction = 2, - eScrollInteraction = 3, - } - /** - * A class that can be used to temporarily disable reflow interruption. - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsPresContext_InterruptPreventer { - pub mCtx: *mut root::nsPresContext, - pub mInterruptsEnabled: bool, - pub mHasPendingInterrupt: bool, - } - #[test] - fn bindgen_test_layout_nsPresContext_InterruptPreventer() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( - nsPresContext_InterruptPreventer ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsPresContext_InterruptPreventer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) - . mCtx as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsPresContext_InterruptPreventer ) , "::" , stringify ! ( - mCtx ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) - . mInterruptsEnabled as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - nsPresContext_InterruptPreventer ) , "::" , stringify ! ( - mInterruptsEnabled ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) - . mHasPendingInterrupt as * const _ as usize } , 9usize , - concat ! ( - "Alignment of field: " , stringify ! ( - nsPresContext_InterruptPreventer ) , "::" , stringify ! ( - mHasPendingInterrupt ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct nsPresContext_TransactionInvalidations { - pub mTransactionId: u64, - pub mInvalidations: root::nsTArray, - } - #[test] - fn bindgen_test_layout_nsPresContext_TransactionInvalidations() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - nsPresContext_TransactionInvalidations ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - nsPresContext_TransactionInvalidations ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const nsPresContext_TransactionInvalidations ) - ) . mTransactionId as * const _ as usize } , 0usize , - concat ! ( - "Alignment of field: " , stringify ! ( - nsPresContext_TransactionInvalidations ) , "::" , - stringify ! ( mTransactionId ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const nsPresContext_TransactionInvalidations ) - ) . mInvalidations as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - nsPresContext_TransactionInvalidations ) , "::" , - stringify ! ( mInvalidations ) )); - } - extern "C" { - #[link_name = "_ZN13nsPresContext21_cycleCollectorGlobalE"] - pub static mut nsPresContext__cycleCollectorGlobal: - root::nsPresContext_cycleCollection; - } - #[test] - fn bindgen_test_layout_nsPresContext() { - assert_eq!(::std::mem::size_of::() , 1304usize , concat - ! ( "Size of: " , stringify ! ( nsPresContext ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsPresContext ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mRefCnt as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mRefCnt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mType as * const - _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mShell as * const - _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mShell ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mDocument as * - const _ as usize } , 40usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mDocument ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mDeviceContext as - * const _ as usize } , 48usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mDeviceContext ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mEventManager as - * const _ as usize } , 56usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mEventManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mRefreshDriver as - * const _ as usize } , 64usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mRefreshDriver ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mEffectCompositor - as * const _ as usize } , 72usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mEffectCompositor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mTransitionManager as * const _ as usize } , 80usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTransitionManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mAnimationManager - as * const _ as usize } , 88usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mAnimationManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mRestyleManager - as * const _ as usize } , 96usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mRestyleManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mCounterStyleManager as * const _ as usize } , 104usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mCounterStyleManager ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mMedium as * - const _ as usize } , 112usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mMedium ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mMediaEmulated as - * const _ as usize } , 120usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mMediaEmulated ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mLinkHandler as * - const _ as usize } , 128usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLinkHandler ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mLanguage as * - const _ as usize } , 136usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLanguage ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mInflationDisabledForShrinkWrap as * const _ as usize } , - 144usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mInflationDisabledForShrinkWrap ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mContainer as * - const _ as usize } , 152usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mContainer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mBaseMinFontSize - as * const _ as usize } , 160usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mBaseMinFontSize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mSystemFontScale - as * const _ as usize } , 164usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mSystemFontScale ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mTextZoom as * - const _ as usize } , 168usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTextZoom ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mEffectiveTextZoom as * const _ as usize } , 172usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mEffectiveTextZoom ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFullZoom as * - const _ as usize } , 176usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFullZoom ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mOverrideDPPX as - * const _ as usize } , 180usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mOverrideDPPX ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mLastFontInflationScreenSize as * const _ as usize } , - 184usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLastFontInflationScreenSize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mCurAppUnitsPerDevPixel as * const _ as usize } , 200usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mCurAppUnitsPerDevPixel ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mAutoQualityMinFontSizePixelsPref as * const _ as usize } - , 204usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mAutoQualityMinFontSizePixelsPref ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mTheme as * const - _ as usize } , 208usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTheme ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mLangService as * - const _ as usize } , 216usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLangService ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPrintSettings as - * const _ as usize } , 224usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPrintSettings ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPrefChangedTimer - as * const _ as usize } , 232usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPrefChangedTimer ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mBidiEngine as * - const _ as usize } , 240usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mBidiEngine ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPropertyTable as - * const _ as usize } , 248usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPropertyTable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mTransactions as - * const _ as usize } , 304usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTransactions ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mTextPerf as * - const _ as usize } , 384usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTextPerf ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mMissingFonts as - * const _ as usize } , 392usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mMissingFonts ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mVisibleArea as * - const _ as usize } , 400usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mVisibleArea ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPageSize as * - const _ as usize } , 416usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPageSize ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPageScale as * - const _ as usize } , 424usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPageScale ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mPPScale as * - const _ as usize } , 428usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mPPScale ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mDefaultColor as - * const _ as usize } , 432usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mDefaultColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mBackgroundColor - as * const _ as usize } , 436usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mBackgroundColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mLinkColor as * - const _ as usize } , 440usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLinkColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mActiveLinkColor - as * const _ as usize } , 444usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mActiveLinkColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mVisitedLinkColor - as * const _ as usize } , 448usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mVisitedLinkColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mFocusBackgroundColor as * const _ as usize } , 452usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFocusBackgroundColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFocusTextColor - as * const _ as usize } , 456usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFocusTextColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mBodyTextColor as - * const _ as usize } , 460usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mBodyTextColor ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mViewportStyleScrollbar as * const _ as usize } , 464usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mViewportStyleScrollbar ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFocusRingWidth - as * const _ as usize } , 528usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFocusRingWidth ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mExistThrottledUpdates as * const _ as usize } , 529usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mExistThrottledUpdates ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mImageAnimationMode as * const _ as usize } , 530usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mImageAnimationMode ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mImageAnimationModePref as * const _ as usize } , 532usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mImageAnimationModePref ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mLangGroupFontPrefs as * const _ as usize } , 536usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLangGroupFontPrefs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mBorderWidthTable - as * const _ as usize } , 1176usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mBorderWidthTable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mInterruptChecksToSkip as * const _ as usize } , 1188usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mInterruptChecksToSkip ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mElementsRestyled - as * const _ as usize } , 1192usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mElementsRestyled ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mFramesConstructed as * const _ as usize } , 1200usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFramesConstructed ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFramesReflowed - as * const _ as usize } , 1208usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFramesReflowed ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mReflowStartTime - as * const _ as usize } , 1216usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mReflowStartTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mFirstNonBlankPaintTime as * const _ as usize } , - 1224usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFirstNonBlankPaintTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFirstClickTime - as * const _ as usize } , 1232usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFirstClickTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFirstKeyTime as - * const _ as usize } , 1240usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFirstKeyTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mFirstMouseMoveTime as * const _ as usize } , 1248usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFirstMouseMoveTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . mFirstScrollTime - as * const _ as usize } , 1256usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mFirstScrollTime ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mInteractionTimeEnabled as * const _ as usize } , - 1264usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mInteractionTimeEnabled ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mLastStyleUpdateForAllAnimations as * const _ as usize } , - 1272usize , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mLastStyleUpdateForAllAnimations ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mTelemetryScrollLastY as * const _ as usize } , 1280usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTelemetryScrollLastY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mTelemetryScrollMaxY as * const _ as usize } , 1284usize , - concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTelemetryScrollMaxY ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsPresContext ) ) . - mTelemetryScrollTotalY as * const _ as usize } , 1288usize - , concat ! ( - "Alignment of field: " , stringify ! ( nsPresContext ) , - "::" , stringify ! ( mTelemetryScrollTotalY ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct nsPIDOMWindowOuter { - pub _base: [u64; 28usize], - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsPIDOMWindowOuter_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsPIDOMWindowOuter() { - assert_eq!(::std::mem::size_of::() , 224usize , - concat ! ( "Size of: " , stringify ! ( nsPIDOMWindowOuter ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsPIDOMWindowOuter ) )); + pub struct nsAutoPtr_Proxy { } + pub type nsAutoPtr_Proxy_member_function = u8; pub type PLDHashNumber = u32; #[repr(C)] #[derive(Debug)] @@ -13910,7 +12949,7 @@ pub mod root { pub type PLDHashHashKey = ::std::option::Option ::std::os::raw::c_uint>; + -> root::PLDHashNumber>; pub type PLDHashMatchEntry = ::std::option::Option { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsIContent_eAllChildren: root::nsIContent__bindgen_ty_1 = - nsIContent__bindgen_ty_1::eAllChildren; - pub const nsIContent_eAllButXBL: root::nsIContent__bindgen_ty_1 = - nsIContent__bindgen_ty_1::eAllButXBL; - pub const nsIContent_eSkipPlaceholderContent: - root::nsIContent__bindgen_ty_1 = - nsIContent__bindgen_ty_1::eSkipPlaceholderContent; - pub const nsIContent_eSkipDocumentLevelNativeAnonymousContent: - root::nsIContent__bindgen_ty_1 = - nsIContent__bindgen_ty_1::eSkipDocumentLevelNativeAnonymousContent; + pub type nsStringHashKey_KeyType = *const root::nsAString; + pub type nsStringHashKey_KeyTypePointer = *const root::nsAString; + pub const nsStringHashKey_ALLOW_MEMMOVE: + root::nsStringHashKey__bindgen_ty_1 = + nsStringHashKey__bindgen_ty_1::ALLOW_MEMMOVE; #[repr(u32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIContent__bindgen_ty_1 { - eAllChildren = 0, - eAllButXBL = 1, - eSkipPlaceholderContent = 2, - eSkipDocumentLevelNativeAnonymousContent = 4, - } - pub const nsIContent_ATTR_MISSING: root::nsIContent__bindgen_ty_2 = - nsIContent__bindgen_ty_2::ATTR_MISSING; - pub const nsIContent_ATTR_VALUE_NO_MATCH: root::nsIContent__bindgen_ty_2 = - nsIContent__bindgen_ty_2::ATTR_VALUE_NO_MATCH; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIContent__bindgen_ty_2 { - ATTR_MISSING = -1, - ATTR_VALUE_NO_MATCH = -2, + pub enum nsStringHashKey__bindgen_ty_1 { ALLOW_MEMMOVE = 1, } + #[test] + fn bindgen_test_layout_nsStringHashKey() { + assert_eq!(::std::mem::size_of::() , 24usize , concat + ! ( "Size of: " , stringify ! ( nsStringHashKey ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsStringHashKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStringHashKey ) ) . mStr as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStringHashKey ) , + "::" , stringify ! ( mStr ) )); } /** - * Check whether this content node's given attribute has one of a given - * list of values. If there is a match, we return the index in the list - * of the first matching value. If there was no attribute at all, then - * we return ATTR_MISSING. If there was an attribute but it didn't - * match, we return ATTR_VALUE_NO_MATCH. A non-negative result always - * indicates a match. - * - * @param aNameSpaceID The namespace ID of the attribute. Must not - * be kNameSpaceID_Unknown. - * @param aName The name atom of the attribute. Must not be null. - * @param aValues a nullptr-terminated array of pointers to atom values to test - * against. - * @param aCaseSensitive Whether to do a case-sensitive compare on the values. - * @return ATTR_MISSING, ATTR_VALUE_NO_MATCH or the non-negative index - * indicating the first value of aValues that matched - */ - pub type nsIContent_AttrValuesArray = *const *const root::nsIAtom; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIContent_FlattenedParentType { - eNotForStyle = 0, - eForStyle = 1, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsIContent_ETabFocusType { - eTabFocus_textControlsMask = 1, - eTabFocus_formElementsMask = 2, - eTabFocus_linksMask = 4, - eTabFocus_any = 7, - } - extern "C" { - #[link_name = "_ZN10nsIContent14sTabFocusModelE"] - pub static mut nsIContent_sTabFocusModel: i32; - } - extern "C" { - #[link_name = "_ZN10nsIContent26sTabFocusModelAppliesToXULE"] - pub static mut nsIContent_sTabFocusModelAppliesToXUL: bool; - } - #[test] - fn bindgen_test_layout_nsIContent() { - assert_eq!(::std::mem::size_of::() , 96usize , concat ! ( - "Size of: " , stringify ! ( nsIContent ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIContent ) )); - } + * hashkey wrapper using nsACString KeyType + * + * @see nsTHashtable::EntryType for specification + */ #[repr(C)] #[derive(Debug)] - pub struct nsICSSDeclaration { - pub _base: root::nsIDOMCSSStyleDeclaration, - pub _base_1: root::nsWrapperCache, + pub struct nsCStringHashKey { + pub _base: root::PLDHashEntryHdr, + pub mStr: root::nsCString, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsICSSDeclaration_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsICSSDeclaration() { - assert_eq!(::std::mem::size_of::() , 32usize , - concat ! ( "Size of: " , stringify ! ( nsICSSDeclaration ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsICSSDeclaration ) )); - } - pub type SuspendTypes = u32; + pub type nsCStringHashKey_KeyType = *const root::nsACString; + pub type nsCStringHashKey_KeyTypePointer = *const root::nsACString; + pub const nsCStringHashKey_ALLOW_MEMMOVE: + root::nsCStringHashKey__bindgen_ty_1 = + nsCStringHashKey__bindgen_ty_1::ALLOW_MEMMOVE; #[repr(u32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum UIStateChangeType { - UIStateChangeType_NoChange = 0, - UIStateChangeType_Set = 1, - UIStateChangeType_Clear = 2, - UIStateChangeType_Invalid = 3, + pub enum nsCStringHashKey__bindgen_ty_1 { ALLOW_MEMMOVE = 1, } + #[test] + fn bindgen_test_layout_nsCStringHashKey() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( "Size of: " , stringify ! ( nsCStringHashKey ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsCStringHashKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsCStringHashKey ) ) . mStr as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsCStringHashKey ) + , "::" , stringify ! ( mStr ) )); + } + /** + * hashkey wrapper using refcounted * KeyType + * + * @see nsTHashtable::EntryType for specification + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsRefPtrHashKey { + pub _base: root::PLDHashEntryHdr, + pub mKey: root::RefPtr, + } + pub type nsRefPtrHashKey_KeyType = *mut T; + pub type nsRefPtrHashKey_KeyTypePointer = *mut T; + pub const nsRefPtrHashKey_ALLOW_MEMMOVE: + root::nsRefPtrHashKey__bindgen_ty_1 = + nsRefPtrHashKey__bindgen_ty_1::ALLOW_MEMMOVE; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsRefPtrHashKey__bindgen_ty_1 { ALLOW_MEMMOVE = 0, } + /** + * a base class for templated hashtables. + * + * Clients will rarely need to use this class directly. Check the derived + * classes first, to see if they will meet your needs. + * + * @param EntryType the templated entry-type class that is managed by the + * hashtable. EntryType must extend the following declaration, + * and must not declare any virtual functions or derive from classes + * with virtual functions. Any vtable pointer would break the + * PLDHashTable code. + *
   class EntryType : public PLDHashEntryHdr
+ *   {
+ *   public: or friend nsTHashtable;
+ *     // KeyType is what we use when Get()ing or Put()ing this entry
+ *     // this should either be a simple datatype (uint32_t, nsISupports*) or
+ *     // a const reference (const nsAString&)
+ *     typedef something KeyType;
+ *     // KeyTypePointer is the pointer-version of KeyType, because
+ *     // PLDHashTable.h requires keys to cast to const void*
+ *     typedef const something* KeyTypePointer;
+ *
+ *     EntryType(KeyTypePointer aKey);
+ *
+ *     // A copy or C++11 Move constructor must be defined, even if
+ *     // AllowMemMove() == true, otherwise you will cause link errors.
+ *     EntryType(const EntryType& aEnt);  // Either this...
+ *     EntryType(EntryType&& aEnt);       // ...or this
+ *
+ *     // the destructor must be defined... or you will cause link errors!
+ *     ~EntryType();
+ *
+ *     // KeyEquals(): does this entry match this key?
+ *     bool KeyEquals(KeyTypePointer aKey) const;
+ *
+ *     // KeyToPointer(): Convert KeyType to KeyTypePointer
+ *     static KeyTypePointer KeyToPointer(KeyType aKey);
+ *
+ *     // HashKey(): calculate the hash number
+ *     static PLDHashNumber HashKey(KeyTypePointer aKey);
+ *
+ *     // ALLOW_MEMMOVE can we move this class with memmove(), or do we have
+ *     // to use the copy constructor?
+ *     enum { ALLOW_MEMMOVE = true/false };
+ *   }
+ * + * @see nsInterfaceHashtable + * @see nsDataHashtable + * @see nsClassHashtable + * @author "Benjamin Smedberg " + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsTHashtable { + } + pub type nsTHashtable_fallible_t = root::mozilla::fallible_t; + /** + * KeyType is typedef'ed for ease of use. + */ + pub type nsTHashtable_KeyType = [u8; 0usize]; + /** + * KeyTypePointer is typedef'ed for ease of use. + */ + pub type nsTHashtable_KeyTypePointer = [u8; 0usize]; + #[repr(C)] + #[derive(Debug)] + pub struct nsTHashtable_Iterator { + pub _base: root::PLDHashTable_Iterator, + } + pub type nsTHashtable_Iterator_Base = root::PLDHashTable_Iterator; + /** + * templated hashtable for simple data types + * This class manages simple data types that do not need construction or + * destruction. + * + * @param KeyClass a wrapper-class for the hashtable key, see nsHashKeys.h + * for a complete specification. + * @param DataType the datatype stored in the hashtable, + * for example, uint32_t or nsCOMPtr. If UserDataType is not the same, + * DataType must implicitly cast to UserDataType + * @param UserDataType the user sees, for example uint32_t or nsISupports* + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsBaseHashtable { + pub _base: u8, + } + pub type nsBaseHashtable_fallible_t = root::mozilla::fallible_t; + pub type nsBaseHashtable_KeyType = [u8; 0usize]; + pub type nsBaseHashtable_EntryType = + root::nsBaseHashtableET; + #[repr(C)] + #[derive(Debug)] + pub struct nsBaseHashtable_Iterator { + pub _base: root::PLDHashTable_Iterator, + } + pub type nsBaseHashtable_Iterator_Base = root::PLDHashTable_Iterator; + /** + * the private nsTHashtable::EntryType class used by nsBaseHashtable + * @see nsTHashtable for the specification of this class + * @see nsBaseHashtable for template parameters + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsBaseHashtableET { + pub _base: KeyClass, + pub mData: DataType, + } + pub type nsBaseHashtableET_KeyType = [u8; 0usize]; + pub type nsBaseHashtableET_KeyTypePointer = [u8; 0usize]; + /** + * templated hashtable class maps keys to simple datatypes. + * See nsBaseHashtable for complete declaration + * @param KeyClass a wrapper-class for the hashtable key, see nsHashKeys.h + * for a complete specification. + * @param DataType the simple datatype being wrapped + * @see nsInterfaceHashtable, nsClassHashtable + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsDataHashtable { + } + pub type nsDataHashtable_BaseClass = root::nsBaseHashtable; + pub type nsIntRegion = root::mozilla::gfx::IntRegion; + #[repr(C)] + #[derive(Debug)] + pub struct nsRegion { + pub mImpl: root::pixman_region32_t, + } + pub type nsRegion_RectType = root::nsRect; + pub type nsRegion_PointType = root::nsPoint; + pub type nsRegion_MarginType = root::nsMargin; + /** + * VisitEdges is a weird kind of function that we use for padding + * out surfaces to prevent texture filtering artifacts. + * It calls the visitFn callback for each of the exterior edges of + * the regions. The top and bottom edges will be expanded 1 pixel + * to the left and right if there's an outside corner. The order + * the edges are visited is not guaranteed. + * + * visitFn has a side parameter that can be TOP,BOTTOM,LEFT,RIGHT + * and specifies which kind of edge is being visited. x1, y1, x2, y2 + * are the coordinates of the line. (x1 == x2) || (y1 == y2) + */ + pub type nsRegion_visitFn = + ::std::option::Option; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsRegion_RectIterator { + pub mCurrent: ::std::os::raw::c_int, + pub mLimit: ::std::os::raw::c_int, + pub mTmp: root::nsRect, + pub mBoxes: *mut root::pixman_box32_t, + } + #[test] + fn bindgen_test_layout_nsRegion_RectIterator() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( + "Size of: " , stringify ! ( nsRegion_RectIterator ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsRegion_RectIterator ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsRegion_RectIterator ) ) . mCurrent + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsRegion_RectIterator ) , "::" , stringify ! ( mCurrent ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsRegion_RectIterator ) ) . mLimit as + * const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsRegion_RectIterator ) , "::" , stringify ! ( mLimit ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsRegion_RectIterator ) ) . mTmp as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsRegion_RectIterator ) , "::" , stringify ! ( mTmp ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsRegion_RectIterator ) ) . mBoxes as + * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsRegion_RectIterator ) , "::" , stringify ! ( mBoxes ) + )); + } + impl Clone for nsRegion_RectIterator { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_nsRegion() { + assert_eq!(::std::mem::size_of::() , 24usize , concat ! ( + "Size of: " , stringify ! ( nsRegion ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsRegion ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsRegion ) ) . mImpl as * const _ as + usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsRegion ) , "::" , + stringify ! ( mImpl ) )); } #[repr(C)] #[derive(Debug, Copy)] - pub struct nsIWeakReference { - pub _base: root::nsISupports, + pub struct nsTArrayHeader { + pub mLength: u32, + pub _bitfield_1: u32, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIWeakReference_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, + extern "C" { + #[link_name = "_ZN14nsTArrayHeader9sEmptyHdrE"] + pub static mut nsTArrayHeader_sEmptyHdr: root::nsTArrayHeader; } #[test] - fn bindgen_test_layout_nsIWeakReference() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsIWeakReference ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIWeakReference ) )); + fn bindgen_test_layout_nsTArrayHeader() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsTArrayHeader ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat + ! ( "Alignment of " , stringify ! ( nsTArrayHeader ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsTArrayHeader ) ) . mLength as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsTArrayHeader ) , + "::" , stringify ! ( mLength ) )); } - impl Clone for nsIWeakReference { + impl Clone for nsTArrayHeader { fn clone(&self) -> Self { *self } } - pub type nsWeakPtr = root::nsCOMPtr; - pub mod xpc { - #[allow(unused_imports)] - use self::super::super::root; - #[repr(C)] - #[derive(Debug)] - pub struct ErrorBase { - pub mErrorMsg: ::nsstring::nsStringRepr, - pub mFileName: ::nsstring::nsStringRepr, - pub mLineNumber: u32, - pub mColumn: u32, + impl nsTArrayHeader { + #[inline] + pub fn mCapacity(&self) -> u32 { + let mask = 2147483647usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u32) } } - #[test] - fn bindgen_test_layout_ErrorBase() { - assert_eq!(::std::mem::size_of::() , 40usize , concat ! - ( "Size of: " , stringify ! ( ErrorBase ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( ErrorBase ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ErrorBase ) ) . mErrorMsg as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( ErrorBase ) , - "::" , stringify ! ( mErrorMsg ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ErrorBase ) ) . mFileName as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( ErrorBase ) , - "::" , stringify ! ( mFileName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ErrorBase ) ) . mLineNumber as * - const _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( ErrorBase ) , - "::" , stringify ! ( mLineNumber ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const ErrorBase ) ) . mColumn as * - const _ as usize } , 36usize , concat ! ( - "Alignment of field: " , stringify ! ( ErrorBase ) , - "::" , stringify ! ( mColumn ) )); + #[inline] + pub fn set_mCapacity(&mut self, val: u32) { + let mask = 2147483647usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; } - #[repr(C)] - #[derive(Debug)] - pub struct ErrorNote { - pub _base: root::xpc::ErrorBase, + #[inline] + pub fn mIsAutoArray(&self) -> u32 { + let mask = 2147483648usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 31usize; + unsafe { ::std::mem::transmute(val as u32) } } - #[test] - fn bindgen_test_layout_ErrorNote() { - assert_eq!(::std::mem::size_of::() , 40usize , concat ! - ( "Size of: " , stringify ! ( ErrorNote ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( ErrorNote ) )); + #[inline] + pub fn set_mIsAutoArray(&mut self, val: u32) { + let mask = 2147483648usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 31usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; } } + pub type nscoord = i32; + pub type nscolor = u32; + pub type nsIntPoint = root::mozilla::gfx::IntPoint; + pub type nsIntMargin = root::mozilla::gfx::IntMargin; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct gfxFontFeature { + pub mTag: u32, + pub mValue: u32, + } + #[test] + fn bindgen_test_layout_gfxFontFeature() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( gfxFontFeature ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat + ! ( "Alignment of " , stringify ! ( gfxFontFeature ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeature ) ) . mTag as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( gfxFontFeature ) , + "::" , stringify ! ( mTag ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeature ) ) . mValue as * + const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( gfxFontFeature ) , + "::" , stringify ! ( mValue ) )); + } + impl Clone for gfxFontFeature { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct gfxAlternateValue { + pub alternate: u32, + pub value: ::nsstring::nsStringRepr, + } + #[test] + fn bindgen_test_layout_gfxAlternateValue() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( "Size of: " , stringify ! ( gfxAlternateValue ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( gfxAlternateValue ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxAlternateValue ) ) . alternate as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( gfxAlternateValue ) + , "::" , stringify ! ( alternate ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxAlternateValue ) ) . value as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( gfxAlternateValue ) + , "::" , stringify ! ( value ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct gfxFontFeatureValueSet { + pub mRefCnt: root::nsAutoRefCnt, + pub mFontFeatureValues: [u64; 5usize], + } + pub type gfxFontFeatureValueSet_HasThreadSafeRefCnt = + root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug)] + pub struct gfxFontFeatureValueSet_ValueList { + pub name: ::nsstring::nsStringRepr, + pub featureSelectors: root::nsTArray, + } + #[test] + fn bindgen_test_layout_gfxFontFeatureValueSet_ValueList() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( + gfxFontFeatureValueSet_ValueList ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + gfxFontFeatureValueSet_ValueList ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeatureValueSet_ValueList ) ) + . name as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_ValueList ) , "::" , stringify ! ( + name ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeatureValueSet_ValueList ) ) + . featureSelectors as * const _ as usize } , 16usize , + concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_ValueList ) , "::" , stringify ! ( + featureSelectors ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct gfxFontFeatureValueSet_FeatureValues { + pub alternate: u32, + pub valuelist: root::nsTArray, + } + #[test] + fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValues() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValues ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + gfxFontFeatureValueSet_FeatureValues ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const gfxFontFeatureValueSet_FeatureValues ) ) + . alternate as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValues ) , "::" , stringify + ! ( alternate ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const gfxFontFeatureValueSet_FeatureValues ) ) + . valuelist as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValues ) , "::" , stringify + ! ( valuelist ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct gfxFontFeatureValueSet_FeatureValueHashKey { + pub mFamily: ::nsstring::nsStringRepr, + pub mPropVal: u32, + pub mName: ::nsstring::nsStringRepr, + } + #[test] + fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValueHashKey() { + assert_eq!(::std::mem::size_of::() + , 40usize , concat ! ( + "Size of: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashKey ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashKey ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) + ) . mFamily as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , + stringify ! ( mFamily ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) + ) . mPropVal as * const _ as usize } , 16usize , concat ! + ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , + stringify ! ( mPropVal ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) + ) . mName as * const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , + stringify ! ( mName ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct gfxFontFeatureValueSet_FeatureValueHashEntry { + pub _base: root::PLDHashEntryHdr, + pub mKey: root::gfxFontFeatureValueSet_FeatureValueHashKey, + pub mValues: root::nsTArray, + } + pub type gfxFontFeatureValueSet_FeatureValueHashEntry_KeyType = + *const root::gfxFontFeatureValueSet_FeatureValueHashKey; + pub type gfxFontFeatureValueSet_FeatureValueHashEntry_KeyTypePointer = + *const root::gfxFontFeatureValueSet_FeatureValueHashKey; + pub const gfxFontFeatureValueSet_FeatureValueHashEntry_ALLOW_MEMMOVE: + root::gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1 + = + gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1::ALLOW_MEMMOVE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1 { + ALLOW_MEMMOVE = 1, + } + #[test] + fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValueHashEntry() { + assert_eq!(::std::mem::size_of::() + , 56usize , concat ! ( + "Size of: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashEntry ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashEntry ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const gfxFontFeatureValueSet_FeatureValueHashEntry + ) ) . mKey as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashEntry ) , "::" , + stringify ! ( mKey ) )); + assert_eq! (unsafe { + & ( + * ( + 0 as * const gfxFontFeatureValueSet_FeatureValueHashEntry + ) ) . mValues as * const _ as usize } , 48usize , concat ! + ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet_FeatureValueHashEntry ) , "::" , + stringify ! ( mValues ) )); + } + #[test] + fn bindgen_test_layout_gfxFontFeatureValueSet() { + assert_eq!(::std::mem::size_of::() , 48usize , + concat ! ( + "Size of: " , stringify ! ( gfxFontFeatureValueSet ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( gfxFontFeatureValueSet ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeatureValueSet ) ) . mRefCnt + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet ) , "::" , stringify ! ( mRefCnt ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const gfxFontFeatureValueSet ) ) . + mFontFeatureValues as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + gfxFontFeatureValueSet ) , "::" , stringify ! ( + mFontFeatureValues ) )); + } + pub type gfxFontVariation = root::mozilla::gfx::FontVariation; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct gfxFontStyle { + _unused: [u8; 0], + } + pub const kGenericFont_NONE: u8 = 0; + pub const kGenericFont_moz_variable: u8 = 0; + pub const kGenericFont_moz_fixed: u8 = 1; + pub const kGenericFont_serif: u8 = 2; + pub const kGenericFont_sans_serif: u8 = 4; + pub const kGenericFont_monospace: u8 = 8; + pub const kGenericFont_cursive: u8 = 16; + pub const kGenericFont_fantasy: u8 = 32; + #[repr(C)] + #[derive(Debug)] + pub struct nsFont { + pub fontlist: root::mozilla::FontFamilyList, + pub style: u8, + pub systemFont: bool, + pub variantCaps: u8, + pub variantNumeric: u8, + pub variantPosition: u8, + pub variantWidth: u8, + pub variantLigatures: u16, + pub variantEastAsian: u16, + pub variantAlternates: u16, + pub smoothing: u8, + pub weight: u16, + pub stretch: i16, + pub kerning: u8, + pub synthesis: u8, + pub size: root::nscoord, + pub sizeAdjust: f32, + pub alternateValues: root::nsTArray, + pub featureValueLookup: root::RefPtr, + pub fontFeatureSettings: root::nsTArray, + pub fontVariationSettings: root::nsTArray, + pub languageOverride: u32, + } + #[test] + fn bindgen_test_layout_nsFont() { + assert_eq!(::std::mem::size_of::() , 88usize , concat ! ( + "Size of: " , stringify ! ( nsFont ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . fontlist as * const _ as + usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( fontlist ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . style as * const _ as + usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( style ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . systemFont as * const _ + as usize } , 17usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( systemFont ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantCaps as * const _ + as usize } , 18usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantCaps ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantNumeric as * + const _ as usize } , 19usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantNumeric ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantPosition as * + const _ as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantPosition ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantWidth as * const + _ as usize } , 21usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantWidth ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantLigatures as * + const _ as usize } , 22usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantLigatures ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantEastAsian as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantEastAsian ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . variantAlternates as * + const _ as usize } , 26usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( variantAlternates ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . smoothing as * const _ + as usize } , 28usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( smoothing ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . weight as * const _ as + usize } , 30usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( weight ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . stretch as * const _ as + usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( stretch ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . kerning as * const _ as + usize } , 34usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( kerning ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . synthesis as * const _ + as usize } , 35usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( synthesis ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . size as * const _ as + usize } , 36usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( size ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . sizeAdjust as * const _ + as usize } , 40usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( sizeAdjust ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . alternateValues as * + const _ as usize } , 48usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( alternateValues ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . featureValueLookup as * + const _ as usize } , 56usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( featureValueLookup ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . fontFeatureSettings as * + const _ as usize } , 64usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( fontFeatureSettings ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . fontVariationSettings as + * const _ as usize } , 72usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( fontVariationSettings ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFont ) ) . languageOverride as * + const _ as usize } , 80usize , concat ! ( + "Alignment of field: " , stringify ! ( nsFont ) , "::" , + stringify ! ( languageOverride ) )); + } + /** + * An array of objects, similar to AutoTArray but which is memmovable. It + * always has length >= 1. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsStyleAutoArray { + pub mFirstElement: T, + pub mOtherElements: root::nsTArray, + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsStyleAutoArray_WithSingleInitialElement { + WITH_SINGLE_INITIAL_ELEMENT = 0, + } + /** + * Currently needs to be 'double' for Cairo compatibility. Could + * become 'float', perhaps, in some configurations. + */ + pub type gfxFloat = f64; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct gfxSize { + pub _bindgen_opaque_blob: [u64; 2usize], + } + pub type gfxSize_Super = [u64; 2usize]; + #[test] + fn bindgen_test_layout_gfxSize() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! ( + "Size of: " , stringify ! ( gfxSize ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( gfxSize ) )); + } + impl Clone for gfxSize { + fn clone(&self) -> Self { *self } + } + pub type nsIntRect = root::mozilla::gfx::IntRect; + pub const nsStyleUnit_eStyleUnit_MAX: root::nsStyleUnit = + nsStyleUnit::eStyleUnit_Calc; + #[repr(u8)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + 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(Debug, Copy)] + pub struct nsStyleUnion { + pub mInt: root::__BindgenUnionField, + pub mFloat: root::__BindgenUnionField, + pub mPointer: root::__BindgenUnionField<*mut ::std::os::raw::c_void>, + pub bindgen_union_field: u64, + } + #[test] + fn bindgen_test_layout_nsStyleUnion() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsStyleUnion ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsStyleUnion ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleUnion ) ) . mInt as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleUnion ) , + "::" , stringify ! ( mInt ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleUnion ) ) . mFloat as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleUnion ) , + "::" , stringify ! ( mFloat ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleUnion ) ) . mPointer as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleUnion ) , + "::" , stringify ! ( mPointer ) )); + } + impl Clone for nsStyleUnion { + fn clone(&self) -> Self { *self } + } + /** + * 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)] + #[derive(Debug)] + pub struct nsStyleCoord { + mUnit: root::nsStyleUnit, + mValue: root::nsStyleUnion, + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsStyleCoord_CalcValue { + pub mLength: root::nscoord, + pub mPercent: f32, + pub mHasPercent: bool, + } + #[test] + fn bindgen_test_layout_nsStyleCoord_CalcValue() { + assert_eq!(::std::mem::size_of::() , 12usize , + concat ! ( + "Size of: " , stringify ! ( nsStyleCoord_CalcValue ) )); + assert_eq! (::std::mem::align_of::() , 4usize + , concat ! ( + "Alignment of " , stringify ! ( nsStyleCoord_CalcValue ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . mLength + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsStyleCoord_CalcValue ) , "::" , stringify ! ( mLength ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . mPercent + as * const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsStyleCoord_CalcValue ) , "::" , stringify ! ( mPercent ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . + mHasPercent as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsStyleCoord_CalcValue ) , "::" , stringify ! ( + mHasPercent ) )); + } + impl Clone for nsStyleCoord_CalcValue { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsStyleCoord_Calc { + pub _base: root::nsStyleCoord_CalcValue, + pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, + } + pub type nsStyleCoord_Calc_HasThreadSafeRefCnt = root::mozilla::TrueType; + #[test] + fn bindgen_test_layout_nsStyleCoord_Calc() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( "Size of: " , stringify ! ( nsStyleCoord_Calc ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsStyleCoord_Calc ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord_Calc ) ) . mRefCnt as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleCoord_Calc ) + , "::" , stringify ! ( mRefCnt ) )); + } #[repr(u32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsCompatibility { - eCompatibility_FullStandards = 1, - eCompatibility_AlmostStandards = 2, - eCompatibility_NavQuirks = 3, + pub enum nsStyleCoord_CoordConstructorType { CoordConstructor = 0, } + #[test] + fn bindgen_test_layout_nsStyleCoord() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! + ( "Size of: " , stringify ! ( nsStyleCoord ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsStyleCoord ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord ) ) . mUnit as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleCoord ) , + "::" , stringify ! ( mUnit ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCoord ) ) . mValue as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleCoord ) , + "::" , stringify ! ( mValue ) )); + } + impl nsStyleCoord { + #[inline] + pub unsafe fn get_mUnit(&self) -> &root::nsStyleUnit { &self.mUnit } + #[inline] + pub unsafe fn get_mUnit_mut(&mut self) -> &mut root::nsStyleUnit { + &mut self.mUnit + } + #[inline] + pub unsafe fn get_mValue(&self) -> &root::nsStyleUnion { + &self.mValue + } + #[inline] + pub unsafe fn get_mValue_mut(&mut self) -> &mut root::nsStyleUnion { + &mut self.mValue + } + } + /** + * 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)] + #[derive(Debug)] + pub struct nsStyleSides { + mUnits: [root::nsStyleUnit; 4usize], + mValues: [root::nsStyleUnion; 4usize], + } + #[test] + fn bindgen_test_layout_nsStyleSides() { + assert_eq!(::std::mem::size_of::() , 40usize , concat ! + ( "Size of: " , stringify ! ( nsStyleSides ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsStyleSides ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleSides ) ) . mUnits as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleSides ) , + "::" , stringify ! ( mUnits ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleSides ) ) . mValues as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleSides ) , + "::" , stringify ! ( mValues ) )); + } + impl nsStyleSides { + #[inline] + pub unsafe fn get_mUnits(&self) -> &[root::nsStyleUnit; 4usize] { + &self.mUnits + } + #[inline] + pub unsafe fn get_mUnits_mut(&mut self) + -> &mut [root::nsStyleUnit; 4usize] { + &mut self.mUnits + } + #[inline] + pub unsafe fn get_mValues(&self) -> &[root::nsStyleUnion; 4usize] { + &self.mValues + } + #[inline] + pub unsafe fn get_mValues_mut(&mut self) + -> &mut [root::nsStyleUnion; 4usize] { + &mut self.mValues + } + } + /** + * Class that represents a set of top-left/top-right/bottom-right/bottom-left + * 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)] + #[derive(Debug)] + pub struct nsStyleCorners { + mUnits: [root::nsStyleUnit; 8usize], + mValues: [root::nsStyleUnion; 8usize], + } + #[test] + fn bindgen_test_layout_nsStyleCorners() { + assert_eq!(::std::mem::size_of::() , 72usize , concat + ! ( "Size of: " , stringify ! ( nsStyleCorners ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsStyleCorners ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCorners ) ) . mUnits as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleCorners ) , + "::" , stringify ! ( mUnits ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStyleCorners ) ) . mValues as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStyleCorners ) , + "::" , stringify ! ( mValues ) )); + } + impl nsStyleCorners { + #[inline] + pub unsafe fn get_mUnits(&self) -> &[root::nsStyleUnit; 8usize] { + &self.mUnits + } + #[inline] + pub unsafe fn get_mUnits_mut(&mut self) + -> &mut [root::nsStyleUnit; 8usize] { + &mut self.mUnits + } + #[inline] + pub unsafe fn get_mValues(&self) -> &[root::nsStyleUnion; 8usize] { + &self.mValues + } + #[inline] + pub unsafe fn get_mValues_mut(&mut self) + -> &mut [root::nsStyleUnion; 8usize] { + &mut self.mValues + } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsCSSSelector { + _unused: [u8; 0], + } + pub const nsChangeHint_nsChangeHint_Empty: root::nsChangeHint = + nsChangeHint(0); + pub const nsChangeHint_nsChangeHint_RepaintFrame: root::nsChangeHint = + nsChangeHint(1); + pub const nsChangeHint_nsChangeHint_NeedReflow: root::nsChangeHint = + nsChangeHint(2); + pub const nsChangeHint_nsChangeHint_ClearAncestorIntrinsics: + root::nsChangeHint = + nsChangeHint(4); + pub const nsChangeHint_nsChangeHint_ClearDescendantIntrinsics: + root::nsChangeHint = + nsChangeHint(8); + pub const nsChangeHint_nsChangeHint_NeedDirtyReflow: root::nsChangeHint = + nsChangeHint(16); + pub const nsChangeHint_nsChangeHint_SyncFrameView: root::nsChangeHint = + nsChangeHint(32); + pub const nsChangeHint_nsChangeHint_UpdateCursor: root::nsChangeHint = + nsChangeHint(64); + pub const nsChangeHint_nsChangeHint_UpdateEffects: root::nsChangeHint = + nsChangeHint(128); + pub const nsChangeHint_nsChangeHint_UpdateOpacityLayer: root::nsChangeHint + = + nsChangeHint(256); + pub const nsChangeHint_nsChangeHint_UpdateTransformLayer: + root::nsChangeHint = + nsChangeHint(512); + pub const nsChangeHint_nsChangeHint_ReconstructFrame: root::nsChangeHint = + nsChangeHint(1024); + pub const nsChangeHint_nsChangeHint_UpdateOverflow: root::nsChangeHint = + nsChangeHint(2048); + pub const nsChangeHint_nsChangeHint_UpdateSubtreeOverflow: + root::nsChangeHint = + nsChangeHint(4096); + pub const nsChangeHint_nsChangeHint_UpdatePostTransformOverflow: + root::nsChangeHint = + nsChangeHint(8192); + pub const nsChangeHint_nsChangeHint_UpdateParentOverflow: + root::nsChangeHint = + nsChangeHint(16384); + pub const nsChangeHint_nsChangeHint_ChildrenOnlyTransform: + root::nsChangeHint = + nsChangeHint(32768); + pub const nsChangeHint_nsChangeHint_RecomputePosition: root::nsChangeHint + = + nsChangeHint(65536); + pub const nsChangeHint_nsChangeHint_UpdateContainingBlock: + root::nsChangeHint = + nsChangeHint(131072); + pub const nsChangeHint_nsChangeHint_BorderStyleNoneChange: + root::nsChangeHint = + nsChangeHint(262144); + pub const nsChangeHint_nsChangeHint_UpdateTextPath: root::nsChangeHint = + nsChangeHint(524288); + pub const nsChangeHint_nsChangeHint_SchedulePaint: root::nsChangeHint = + nsChangeHint(1048576); + pub const nsChangeHint_nsChangeHint_NeutralChange: root::nsChangeHint = + nsChangeHint(2097152); + pub const nsChangeHint_nsChangeHint_InvalidateRenderingObservers: + root::nsChangeHint = + nsChangeHint(4194304); + pub const nsChangeHint_nsChangeHint_ReflowChangesSizeOrPosition: + root::nsChangeHint = + nsChangeHint(8388608); + pub const nsChangeHint_nsChangeHint_UpdateComputedBSize: + root::nsChangeHint = + nsChangeHint(16777216); + pub const nsChangeHint_nsChangeHint_UpdateUsesOpacity: root::nsChangeHint + = + nsChangeHint(33554432); + pub const nsChangeHint_nsChangeHint_UpdateBackgroundPosition: + root::nsChangeHint = + nsChangeHint(67108864); + pub const nsChangeHint_nsChangeHint_AddOrRemoveTransform: + root::nsChangeHint = + nsChangeHint(134217728); + pub const nsChangeHint_nsChangeHint_AllHints: root::nsChangeHint = + nsChangeHint(268435455); + impl ::std::ops::BitOr for root::nsChangeHint { + type + Output + = + Self; + #[inline] + fn bitor(self, other: Self) -> Self { nsChangeHint(self.0 | other.0) } + } + #[repr(C)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub struct nsChangeHint(pub u32); + pub const nsRestyleHint_eRestyle_Self: root::nsRestyleHint = + nsRestyleHint(1); + pub const nsRestyleHint_eRestyle_SomeDescendants: root::nsRestyleHint = + nsRestyleHint(2); + pub const nsRestyleHint_eRestyle_Subtree: root::nsRestyleHint = + nsRestyleHint(4); + pub const nsRestyleHint_eRestyle_LaterSiblings: root::nsRestyleHint = + nsRestyleHint(8); + pub const nsRestyleHint_eRestyle_CSSTransitions: root::nsRestyleHint = + nsRestyleHint(16); + pub const nsRestyleHint_eRestyle_CSSAnimations: root::nsRestyleHint = + nsRestyleHint(32); + pub const nsRestyleHint_eRestyle_StyleAttribute: root::nsRestyleHint = + nsRestyleHint(64); + pub const nsRestyleHint_eRestyle_StyleAttribute_Animations: + root::nsRestyleHint = + nsRestyleHint(128); + pub const nsRestyleHint_eRestyle_Force: root::nsRestyleHint = + nsRestyleHint(256); + pub const nsRestyleHint_eRestyle_ForceDescendants: root::nsRestyleHint = + nsRestyleHint(512); + pub const nsRestyleHint_eRestyle_AllHintsWithAnimations: + root::nsRestyleHint = + nsRestyleHint(176); + impl ::std::ops::BitOr for root::nsRestyleHint { + type + Output + = + Self; + #[inline] + fn bitor(self, other: Self) -> Self { + nsRestyleHint(self.0 | other.0) + } + } + #[repr(C)] + /** + * |nsRestyleHint| is a bitfield for the result of + * |HasStateDependentStyle| and |HasAttributeDependentStyle|. When no + * restyling is necessary, use |nsRestyleHint(0)|. + * + * Without eRestyle_Force or eRestyle_ForceDescendants, the restyling process + * can stop processing at a frame when it detects no style changes and it is + * known that the styles of the subtree beneath it will not change, leaving + * the old style context on the frame. eRestyle_Force can be used to skip this + * optimization on a frame, and to force its new style context to be used. + * + * Similarly, eRestyle_ForceDescendants will cause the frame and all of its + * descendants to be traversed and for the new style contexts that are created + * to be set on the frames. + * + * NOTE: When adding new restyle hints, please also add them to + * RestyleManager::RestyleHintToString. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub struct nsRestyleHint(pub u32); + #[repr(u32)] + /** + * Return status for event processors. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsEventStatus { + nsEventStatus_eIgnore = 0, + nsEventStatus_eConsumeNoDefault = 1, + nsEventStatus_eConsumeDoDefault = 2, + nsEventStatus_eSentinel = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum WeakMapTraceKind { + DoNotTraceWeakMaps = 0, + ExpandWeakMaps = 1, + TraceWeakMapValues = 2, + TraceWeakMapKeysValues = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum JSValueTag { + JSVAL_TAG_MAX_DOUBLE = 131056, + JSVAL_TAG_INT32 = 131057, + JSVAL_TAG_UNDEFINED = 131058, + JSVAL_TAG_NULL = 131059, + JSVAL_TAG_BOOLEAN = 131060, + JSVAL_TAG_MAGIC = 131061, + JSVAL_TAG_STRING = 131062, + JSVAL_TAG_SYMBOL = 131063, + JSVAL_TAG_PRIVATE_GCTHING = 131064, + JSVAL_TAG_OBJECT = 131068, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum JSWhyMagic { + JS_ELEMENTS_HOLE = 0, + JS_NO_ITER_VALUE = 1, + JS_GENERATOR_CLOSING = 2, + JS_NO_CONSTANT = 3, + JS_THIS_POISON = 4, + JS_ARG_POISON = 5, + JS_SERIALIZE_NO_NODE = 6, + JS_LAZY_ARGUMENTS = 7, + JS_OPTIMIZED_ARGUMENTS = 8, + JS_IS_CONSTRUCTING = 9, + JS_BLOCK_NEEDS_CLONE = 10, + JS_HASH_KEY_EMPTY = 11, + JS_ION_ERROR = 12, + JS_ION_BAILOUT = 13, + JS_OPTIMIZED_OUT = 14, + JS_UNINITIALIZED_LEXICAL = 15, + JS_GENERIC_MAGIC = 16, + JS_WHY_MAGIC_COUNT = 17, + } + /** + * 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)] + #[derive(Debug)] + pub struct nsStringBuffer { + pub mRefCount: u32, + pub mStorageSize: u32, + } + #[test] + fn bindgen_test_layout_nsStringBuffer() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsStringBuffer ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat + ! ( "Alignment of " , stringify ! ( nsStringBuffer ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStringBuffer ) ) . mRefCount as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStringBuffer ) , + "::" , stringify ! ( mRefCount ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsStringBuffer ) ) . mStorageSize as + * const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( nsStringBuffer ) , + "::" , stringify ! ( mStorageSize ) )); + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIAtom { + pub _base: root::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 u16, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIAtom_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIAtom() { + assert_eq!(::std::mem::size_of::() , 24usize , concat ! ( + "Size of: " , stringify ! ( nsIAtom ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIAtom ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsIAtom ) ) . mHash as * const _ as + usize } , 12usize , concat ! ( + "Alignment of field: " , stringify ! ( nsIAtom ) , "::" , + stringify ! ( mHash ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsIAtom ) ) . mString as * const _ as + usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsIAtom ) , "::" , + stringify ! ( mString ) )); + } + impl Clone for nsIAtom { + fn clone(&self) -> Self { *self } + } + impl nsIAtom { + #[inline] + pub fn mLength(&self) -> u32 { + let mask = 2147483647usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mLength(&mut self, val: u32) { + let mask = 2147483647usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsStatic(&self) -> u32 { + let mask = 2147483648usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 31usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsStatic(&mut self, val: u32) { + let mask = 2147483648usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 31usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIPrincipal { + pub _base: root::nsISerializable, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIPrincipal_COMTypeInfo { + pub _address: u8, + } + pub const nsIPrincipal_APP_STATUS_NOT_INSTALLED: + root::nsIPrincipal__bindgen_ty_1 = + nsIPrincipal__bindgen_ty_1::APP_STATUS_NOT_INSTALLED; + pub const nsIPrincipal_APP_STATUS_INSTALLED: + root::nsIPrincipal__bindgen_ty_1 = + nsIPrincipal__bindgen_ty_1::APP_STATUS_INSTALLED; + pub const nsIPrincipal_APP_STATUS_PRIVILEGED: + root::nsIPrincipal__bindgen_ty_1 = + nsIPrincipal__bindgen_ty_1::APP_STATUS_PRIVILEGED; + pub const nsIPrincipal_APP_STATUS_CERTIFIED: + root::nsIPrincipal__bindgen_ty_1 = + nsIPrincipal__bindgen_ty_1::APP_STATUS_CERTIFIED; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIPrincipal__bindgen_ty_1 { + APP_STATUS_NOT_INSTALLED = 0, + APP_STATUS_INSTALLED = 1, + APP_STATUS_PRIVILEGED = 2, + APP_STATUS_CERTIFIED = 3, + } + #[test] + fn bindgen_test_layout_nsIPrincipal() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIPrincipal ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsIPrincipal ) )); + } + impl Clone for nsIPrincipal { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + pub struct nsWrapperCache__bindgen_vtable(::std::os::raw::c_void); + /** + * Class to store the wrapper for an object. This can only be used with objects + * that only have one non-security wrapper at a time (for an XPCWrappedNative + * this is usually ensured by setting an explicit parent in the PreCreate hook + * for the class). + * + * An instance of nsWrapperCache can be gotten from an object that implements + * a wrapper cache by calling QueryInterface on it. Note that this breaks XPCOM + * rules a bit (this object doesn't derive from nsISupports). + * + * The cache can store objects other than wrappers. We allow wrappers to use a + * separate JSObject to store their state (mostly expandos). If the wrapper is + * collected and we want to preserve this state we actually store the state + * object in the cache. + * + * The cache can store 2 types of objects: + * + * If WRAPPER_IS_NOT_DOM_BINDING is set (IsDOMBinding() returns false): + * - the JSObject of an XPCWrappedNative wrapper + * + * If WRAPPER_IS_NOT_DOM_BINDING is not set (IsDOMBinding() returns true): + * - a DOM binding object (regular JS object or proxy) + * + * The finalizer for the wrapper clears the cache. + * + * A compacting GC can move the wrapper object. Pointers to moved objects are + * usually found and updated by tracing the heap, however non-preserved wrappers + * are weak references and are not traced, so another approach is + * necessary. Instead a class hook (objectMovedOp) is provided that is called + * when an object is moved and is responsible for ensuring pointers are + * updated. It does this by calling UpdateWrapper() on the wrapper + * cache. SetWrapper() asserts that the hook is implemented for any wrapper set. + * + * A number of the methods are implemented in nsWrapperCacheInlines.h because we + * have to include some JS headers that don't play nicely with the rest of the + * codebase. Include nsWrapperCacheInlines.h if you need to call those methods. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsWrapperCache { + pub vtable_: *const nsWrapperCache__bindgen_vtable, + pub mWrapper: *mut root::JSObject, + pub mFlags: root::nsWrapperCache_FlagsType, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsWrapperCache_COMTypeInfo { + pub _address: u8, + } + pub type nsWrapperCache_FlagsType = u32; + pub const nsWrapperCache_WRAPPER_BIT_PRESERVED: + root::nsWrapperCache__bindgen_ty_1 = + nsWrapperCache__bindgen_ty_1::WRAPPER_BIT_PRESERVED; + #[repr(u32)] + /** + * If this bit is set then we're preserving the wrapper, which in effect ties + * the lifetime of the JS object stored in the cache to the lifetime of the + * native object. We rely on the cycle collector to break the cycle that this + * causes between the native object and the JS object, so it is important that + * any native object that supports preserving of its wrapper + * traces/traverses/unlinks the cached JS object (see + * NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER and + * NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER). + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsWrapperCache__bindgen_ty_1 { WRAPPER_BIT_PRESERVED = 1, } + pub const nsWrapperCache_WRAPPER_IS_NOT_DOM_BINDING: + root::nsWrapperCache__bindgen_ty_2 = + nsWrapperCache__bindgen_ty_2::WRAPPER_IS_NOT_DOM_BINDING; + #[repr(u32)] + /** + * If this bit is set then the wrapper for the native object is not a DOM + * binding. + */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsWrapperCache__bindgen_ty_2 { WRAPPER_IS_NOT_DOM_BINDING = 2, } + pub const nsWrapperCache_kWrapperFlagsMask: + root::nsWrapperCache__bindgen_ty_3 = + nsWrapperCache__bindgen_ty_3::kWrapperFlagsMask; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsWrapperCache__bindgen_ty_3 { kWrapperFlagsMask = 3, } + #[test] + fn bindgen_test_layout_nsWrapperCache() { + assert_eq!(::std::mem::size_of::() , 24usize , concat + ! ( "Size of: " , stringify ! ( nsWrapperCache ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsWrapperCache ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsWrapperCache ) ) . mWrapper as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsWrapperCache ) , + "::" , stringify ! ( mWrapper ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsWrapperCache ) ) . mFlags as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsWrapperCache ) , + "::" , stringify ! ( mFlags ) )); } #[repr(C)] #[derive(Debug, Copy)] @@ -14164,10 +14500,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsILoadGroup_COMTypeInfo { + pub struct nsILoadGroup_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsILoadGroup() { @@ -14187,10 +14521,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIRequest_COMTypeInfo { + pub struct nsIRequest_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsIRequest_LOAD_REQUESTMASK: root::nsIRequest__bindgen_ty_1 = nsIRequest__bindgen_ty_1::LOAD_REQUESTMASK; @@ -14249,7 +14581,123 @@ pub mod root { impl Clone for nsIRequest { fn clone(&self) -> Self { *self } } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIURI { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIURI_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIURI() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIURI ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIURI ) )); + } + impl Clone for nsIURI { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMNode { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMNode_COMTypeInfo { + pub _address: u8, + } + pub const nsIDOMNode_ELEMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::ELEMENT_NODE; + pub const nsIDOMNode_ATTRIBUTE_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::ATTRIBUTE_NODE; + pub const nsIDOMNode_TEXT_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::TEXT_NODE; + pub const nsIDOMNode_CDATA_SECTION_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::CDATA_SECTION_NODE; + pub const nsIDOMNode_ENTITY_REFERENCE_NODE: root::nsIDOMNode__bindgen_ty_1 + = + nsIDOMNode__bindgen_ty_1::ENTITY_REFERENCE_NODE; + pub const nsIDOMNode_ENTITY_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::ENTITY_NODE; + pub const nsIDOMNode_PROCESSING_INSTRUCTION_NODE: + root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::PROCESSING_INSTRUCTION_NODE; + pub const nsIDOMNode_COMMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::COMMENT_NODE; + pub const nsIDOMNode_DOCUMENT_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::DOCUMENT_NODE; + pub const nsIDOMNode_DOCUMENT_TYPE_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::DOCUMENT_TYPE_NODE; + pub const nsIDOMNode_DOCUMENT_FRAGMENT_NODE: + root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::DOCUMENT_FRAGMENT_NODE; + pub const nsIDOMNode_NOTATION_NODE: root::nsIDOMNode__bindgen_ty_1 = + nsIDOMNode__bindgen_ty_1::NOTATION_NODE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDOMNode__bindgen_ty_1 { + ELEMENT_NODE = 1, + ATTRIBUTE_NODE = 2, + TEXT_NODE = 3, + CDATA_SECTION_NODE = 4, + ENTITY_REFERENCE_NODE = 5, + ENTITY_NODE = 6, + PROCESSING_INSTRUCTION_NODE = 7, + COMMENT_NODE = 8, + DOCUMENT_NODE = 9, + DOCUMENT_TYPE_NODE = 10, + DOCUMENT_FRAGMENT_NODE = 11, + NOTATION_NODE = 12, + } + pub const nsIDOMNode_DOCUMENT_POSITION_DISCONNECTED: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_DISCONNECTED; + pub const nsIDOMNode_DOCUMENT_POSITION_PRECEDING: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_PRECEDING; + pub const nsIDOMNode_DOCUMENT_POSITION_FOLLOWING: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_FOLLOWING; + pub const nsIDOMNode_DOCUMENT_POSITION_CONTAINS: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_CONTAINS; + pub const nsIDOMNode_DOCUMENT_POSITION_CONTAINED_BY: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_CONTAINED_BY; + pub const nsIDOMNode_DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: + root::nsIDOMNode__bindgen_ty_2 = + nsIDOMNode__bindgen_ty_2::DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDOMNode__bindgen_ty_2 { + DOCUMENT_POSITION_DISCONNECTED = 1, + DOCUMENT_POSITION_PRECEDING = 2, + DOCUMENT_POSITION_FOLLOWING = 4, + DOCUMENT_POSITION_CONTAINS = 8, + DOCUMENT_POSITION_CONTAINED_BY = 16, + DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 32, + } + #[test] + fn bindgen_test_layout_nsIDOMNode() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIDOMNode ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIDOMNode ) )); + } + impl Clone for nsIDOMNode { + fn clone(&self) -> Self { *self } + } pub type nsContentPolicyType = u32; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMDocument { + _unused: [u8; 0], + } /** * An internal interface that abstracts some DOMNode-related parts that both * nsIContent and nsIDocument share. An instance of this interface has a list @@ -14281,12 +14729,11 @@ pub mod root { root::mozilla::dom::TextOrElementOrDocument; pub use self::super::root::mozilla::dom::CallerType as nsINode_CallerType; pub type nsINode_ErrorResult = root::mozilla::ErrorResult; + pub type nsINode_Sequence = u8; #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsINode_COMTypeInfo { + pub struct nsINode_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsINode_eCONTENT: root::nsINode__bindgen_ty_2 = nsINode__bindgen_ty_2::eCONTENT; @@ -14332,8 +14779,7 @@ pub mod root { eFILTER = 2048, } #[repr(C)] - pub struct nsINode_nsSlots__bindgen_vtable { - } + pub struct nsINode_nsSlots__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug)] pub struct nsINode_nsSlots { @@ -14506,15 +14952,291 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy)] + pub struct JSErrorFormatString { + /** The error message name in ASCII. */ + pub name: *const ::std::os::raw::c_char, + /** The error format string in ASCII. */ + pub format: *const ::std::os::raw::c_char, + /** The number of arguments to expand in the formatted error message. */ + pub argCount: u16, + /** One of the JSExnType constants above. */ + pub exnType: i16, + } + #[test] + fn bindgen_test_layout_JSErrorFormatString() { + assert_eq!(::std::mem::size_of::() , 24usize , + concat ! ( + "Size of: " , stringify ! ( JSErrorFormatString ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( JSErrorFormatString ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorFormatString ) ) . name as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorFormatString + ) , "::" , stringify ! ( name ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorFormatString ) ) . format as * + const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorFormatString + ) , "::" , stringify ! ( format ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorFormatString ) ) . argCount as + * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorFormatString + ) , "::" , stringify ! ( argCount ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorFormatString ) ) . exnType as + * const _ as usize } , 18usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorFormatString + ) , "::" , stringify ! ( exnType ) )); + } + impl Clone for JSErrorFormatString { + fn clone(&self) -> Self { *self } + } + pub type JSErrorCallback = + ::std::option::Option *const root::JSErrorFormatString>; + #[repr(C)] + #[derive(Debug)] + pub struct JSAutoRequest { + pub mContext: *mut root::JSContext, + } + #[test] + fn bindgen_test_layout_JSAutoRequest() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( JSAutoRequest ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( JSAutoRequest ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoRequest ) ) . mContext as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSAutoRequest ) , + "::" , stringify ! ( mContext ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct JSAutoCompartment { + pub cx_: *mut root::JSContext, + pub oldCompartment_: *mut root::JSCompartment, + } + #[test] + fn bindgen_test_layout_JSAutoCompartment() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( "Size of: " , stringify ! ( JSAutoCompartment ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( JSAutoCompartment ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoCompartment ) ) . cx_ as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSAutoCompartment ) + , "::" , stringify ! ( cx_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoCompartment ) ) . + oldCompartment_ as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( JSAutoCompartment ) + , "::" , stringify ! ( oldCompartment_ ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct JSAutoNullableCompartment { + pub cx_: *mut root::JSContext, + pub oldCompartment_: *mut root::JSCompartment, + } + #[test] + fn bindgen_test_layout_JSAutoNullableCompartment() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( JSAutoNullableCompartment ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( JSAutoNullableCompartment + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoNullableCompartment ) ) . cx_ + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + JSAutoNullableCompartment ) , "::" , stringify ! ( cx_ ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSAutoNullableCompartment ) ) . + oldCompartment_ as * const _ as usize } , 8usize , concat + ! ( + "Alignment of field: " , stringify ! ( + JSAutoNullableCompartment ) , "::" , stringify ! ( + oldCompartment_ ) )); + } + /** + * Base class that implements parts shared by JSErrorReport and + * JSErrorNotes::Note. + */ + #[repr(C)] + #[derive(Debug)] + pub struct JSErrorBase { + pub message_: root::JS::ConstUTF8CharsZ, + pub filename: *const ::std::os::raw::c_char, + pub lineno: ::std::os::raw::c_uint, + pub column: ::std::os::raw::c_uint, + pub errorNumber: ::std::os::raw::c_uint, + pub _bitfield_1: u8, + pub __bindgen_padding_0: [u8; 3usize], + } + #[test] + fn bindgen_test_layout_JSErrorBase() { + assert_eq!(::std::mem::size_of::() , 32usize , concat ! ( + "Size of: " , stringify ! ( JSErrorBase ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( JSErrorBase ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorBase ) ) . message_ as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorBase ) , + "::" , stringify ! ( message_ ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorBase ) ) . filename as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorBase ) , + "::" , stringify ! ( filename ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorBase ) ) . lineno as * const _ + as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorBase ) , + "::" , stringify ! ( lineno ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorBase ) ) . column as * const _ + as usize } , 20usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorBase ) , + "::" , stringify ! ( column ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorBase ) ) . errorNumber as * + const _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorBase ) , + "::" , stringify ! ( errorNumber ) )); + } + impl JSErrorBase { + #[inline] + pub fn ownsMessage_(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_ownsMessage_(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } + /** + * Notes associated with JSErrorReport. + */ + #[repr(C)] + pub struct JSErrorNotes { + pub notes_: [u64; 4usize], + } + #[repr(C)] + #[derive(Debug)] + pub struct JSErrorNotes_Note { + pub _base: root::JSErrorBase, + } + #[test] + fn bindgen_test_layout_JSErrorNotes_Note() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( "Size of: " , stringify ! ( JSErrorNotes_Note ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( JSErrorNotes_Note ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct JSErrorNotes_iterator { + pub note_: *mut root::mozilla::UniquePtr, + } + #[test] + fn bindgen_test_layout_JSErrorNotes_iterator() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( JSErrorNotes_iterator ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( JSErrorNotes_iterator ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorNotes_iterator ) ) . note_ as + * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + JSErrorNotes_iterator ) , "::" , stringify ! ( note_ ) )); + } + #[test] + fn bindgen_test_layout_JSErrorNotes() { + assert_eq!(::std::mem::size_of::() , 32usize , concat ! + ( "Size of: " , stringify ! ( JSErrorNotes ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( JSErrorNotes ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const JSErrorNotes ) ) . notes_ as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( JSErrorNotes ) , + "::" , stringify ! ( notes_ ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIObjectInputStream { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIObjectOutputStream { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsISerializable { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsISerializable_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsISerializable() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsISerializable ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsISerializable ) )); + } + impl Clone for nsISerializable { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIContentSecurityPolicy { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] pub struct nsIChannel { pub _base: root::nsIRequest, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIChannel_COMTypeInfo { + pub struct nsIChannel_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsIChannel_LOAD_DOCUMENT_URI: root::nsIChannel__bindgen_ty_1 = nsIChannel__bindgen_ty_1::LOAD_DOCUMENT_URI; @@ -14579,7 +15301,14 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsILoadContext([u8; 0]); + pub struct nsIDocShell { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsILoadContext { + _unused: [u8; 0], + } pub type nsSecurityFlags = u32; #[repr(C)] #[derive(Debug, Copy)] @@ -14588,10 +15317,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsILoadInfo_COMTypeInfo { + pub struct nsILoadInfo_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsILoadInfo_SEC_NORMAL: root::nsILoadInfo__bindgen_ty_1 = nsILoadInfo__bindgen_ty_1::SEC_NORMAL; @@ -14694,10 +15421,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIInterfaceRequestor_COMTypeInfo { + pub struct nsIInterfaceRequestor_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIInterfaceRequestor() { @@ -14714,7 +15439,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIInputStream([u8; 0]); + pub struct nsIInputStream { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsIStreamListener { @@ -14722,10 +15449,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIStreamListener_COMTypeInfo { + pub struct nsIStreamListener_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIStreamListener() { @@ -14746,10 +15471,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsICSSLoaderObserver_COMTypeInfo { + pub struct nsICSSLoaderObserver_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsICSSLoaderObserver() { @@ -14763,13 +15486,2823 @@ pub mod root { impl Clone for nsICSSLoaderObserver { fn clone(&self) -> Self { *self } } + pub type DOMHighResTimeStamp = f64; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMAttr { + pub _base: root::nsIDOMNode, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMAttr_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMAttr() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIDOMAttr ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIDOMAttr ) )); + } + impl Clone for nsIDOMAttr { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMElement { + pub _base: root::nsIDOMNode, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMElement_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMElement() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsIDOMElement ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsIDOMElement ) )); + } + impl Clone for nsIDOMElement { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMNodeList { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMNodeList_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMNodeList() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsIDOMNodeList ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsIDOMNodeList ) )); + } + impl Clone for nsIDOMNodeList { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMClientRect { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMClientRect_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMClientRect() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsIDOMClientRect ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMClientRect ) )); + } + impl Clone for nsIDOMClientRect { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMClientRectList { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMClientRectList_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMClientRectList() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsIDOMClientRectList ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMClientRectList ) )); + } + impl Clone for nsIDOMClientRectList { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMStyleSheet { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMStyleSheet_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMStyleSheet() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsIDOMStyleSheet ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMStyleSheet ) )); + } + impl Clone for nsIDOMStyleSheet { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMMediaList { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMMediaList_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMMediaList() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsIDOMMediaList ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMMediaList ) )); + } + impl Clone for nsIDOMMediaList { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMEvent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMEventTarget { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMEventTarget_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMEventTarget() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( "Size of: " , stringify ! ( nsIDOMEventTarget ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMEventTarget ) )); + } + impl Clone for nsIDOMEventTarget { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMEventListener { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMHTMLCollection { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMHTMLCollection_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMHTMLCollection() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsIDOMHTMLCollection ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMHTMLCollection ) )); + } + impl Clone for nsIDOMHTMLCollection { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMCSSValue { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMCSSValue_COMTypeInfo { + pub _address: u8, + } + pub const nsIDOMCSSValue_CSS_INHERIT: root::nsIDOMCSSValue__bindgen_ty_1 = + nsIDOMCSSValue__bindgen_ty_1::CSS_INHERIT; + pub const nsIDOMCSSValue_CSS_PRIMITIVE_VALUE: + root::nsIDOMCSSValue__bindgen_ty_1 = + nsIDOMCSSValue__bindgen_ty_1::CSS_PRIMITIVE_VALUE; + pub const nsIDOMCSSValue_CSS_VALUE_LIST: + root::nsIDOMCSSValue__bindgen_ty_1 = + nsIDOMCSSValue__bindgen_ty_1::CSS_VALUE_LIST; + pub const nsIDOMCSSValue_CSS_CUSTOM: root::nsIDOMCSSValue__bindgen_ty_1 = + nsIDOMCSSValue__bindgen_ty_1::CSS_CUSTOM; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDOMCSSValue__bindgen_ty_1 { + CSS_INHERIT = 0, + CSS_PRIMITIVE_VALUE = 1, + CSS_VALUE_LIST = 2, + CSS_CUSTOM = 3, + } + #[test] + fn bindgen_test_layout_nsIDOMCSSValue() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsIDOMCSSValue ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsIDOMCSSValue ) )); + } + impl Clone for nsIDOMCSSValue { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMCSSRule { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMCSSRule_COMTypeInfo { + pub _address: u8, + } + pub const nsIDOMCSSRule_UNKNOWN_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::UNKNOWN_RULE; + pub const nsIDOMCSSRule_STYLE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::STYLE_RULE; + pub const nsIDOMCSSRule_CHARSET_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::CHARSET_RULE; + pub const nsIDOMCSSRule_IMPORT_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::IMPORT_RULE; + pub const nsIDOMCSSRule_MEDIA_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::MEDIA_RULE; + pub const nsIDOMCSSRule_FONT_FACE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 + = + nsIDOMCSSRule__bindgen_ty_1::FONT_FACE_RULE; + pub const nsIDOMCSSRule_PAGE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::PAGE_RULE; + pub const nsIDOMCSSRule_KEYFRAMES_RULE: root::nsIDOMCSSRule__bindgen_ty_1 + = + nsIDOMCSSRule__bindgen_ty_1::KEYFRAMES_RULE; + pub const nsIDOMCSSRule_KEYFRAME_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::KEYFRAME_RULE; + pub const nsIDOMCSSRule_MOZ_KEYFRAMES_RULE: + root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::KEYFRAMES_RULE; + pub const nsIDOMCSSRule_MOZ_KEYFRAME_RULE: + root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::KEYFRAME_RULE; + pub const nsIDOMCSSRule_NAMESPACE_RULE: root::nsIDOMCSSRule__bindgen_ty_1 + = + nsIDOMCSSRule__bindgen_ty_1::NAMESPACE_RULE; + pub const nsIDOMCSSRule_COUNTER_STYLE_RULE: + root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::COUNTER_STYLE_RULE; + pub const nsIDOMCSSRule_SUPPORTS_RULE: root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::SUPPORTS_RULE; + pub const nsIDOMCSSRule_FONT_FEATURE_VALUES_RULE: + root::nsIDOMCSSRule__bindgen_ty_1 = + nsIDOMCSSRule__bindgen_ty_1::FONT_FEATURE_VALUES_RULE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDOMCSSRule__bindgen_ty_1 { + UNKNOWN_RULE = 0, + STYLE_RULE = 1, + CHARSET_RULE = 2, + IMPORT_RULE = 3, + MEDIA_RULE = 4, + FONT_FACE_RULE = 5, + PAGE_RULE = 6, + KEYFRAMES_RULE = 7, + KEYFRAME_RULE = 8, + NAMESPACE_RULE = 10, + COUNTER_STYLE_RULE = 11, + SUPPORTS_RULE = 12, + FONT_FEATURE_VALUES_RULE = 14, + } + #[test] + fn bindgen_test_layout_nsIDOMCSSRule() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsIDOMCSSRule ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsIDOMCSSRule ) )); + } + impl Clone for nsIDOMCSSRule { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMCSSRuleList { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMCSSStyleSheet { + pub _base: root::nsIDOMStyleSheet, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMCSSStyleSheet_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMCSSStyleSheet() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsIDOMCSSStyleSheet ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDOMCSSStyleSheet ) )); + } + impl Clone for nsIDOMCSSStyleSheet { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDOMCSSStyleDeclaration { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMCSSStyleDeclaration_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDOMCSSStyleDeclaration() { + assert_eq!(::std::mem::size_of::() , 8usize + , concat ! ( + "Size of: " , stringify ! ( nsIDOMCSSStyleDeclaration ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIDOMCSSStyleDeclaration + ) )); + } + impl Clone for nsIDOMCSSStyleDeclaration { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + pub struct TraceCallbacks__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug, Copy)] + pub struct TraceCallbacks { + pub vtable_: *const TraceCallbacks__bindgen_vtable, + } + #[test] + fn bindgen_test_layout_TraceCallbacks() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( TraceCallbacks ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( TraceCallbacks ) )); + } + impl Clone for TraceCallbacks { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsScriptObjectTracer { + pub _base: root::nsCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_nsScriptObjectTracer() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( + "Size of: " , stringify ! ( nsScriptObjectTracer ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsScriptObjectTracer ) )); + } + impl Clone for nsScriptObjectTracer { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsXPCOMCycleCollectionParticipant { + pub _base: root::nsScriptObjectTracer, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsXPCOMCycleCollectionParticipant_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsXPCOMCycleCollectionParticipant() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsXPCOMCycleCollectionParticipant ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsXPCOMCycleCollectionParticipant ) )); + } + impl Clone for nsXPCOMCycleCollectionParticipant { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + pub struct nsIDocument { + pub _base: root::nsINode, + pub _base_1: root::mozilla::dom::DispatcherTrait, + pub mDeprecationWarnedAbout: u64, + pub mDocWarningWarnedAbout: u64, + pub mSelectorCache: root::nsAutoPtr, + pub mReferrer: root::nsCString, + pub mLastModified: ::nsstring::nsStringRepr, + pub mDocumentURI: root::nsCOMPtr, + pub mOriginalURI: root::nsCOMPtr, + pub mChromeXHRDocURI: root::nsCOMPtr, + pub mDocumentBaseURI: root::nsCOMPtr, + pub mChromeXHRDocBaseURI: root::nsCOMPtr, + pub mCachedURLData: root::RefPtr, + pub mDocumentLoadGroup: root::nsWeakPtr, + pub mReferrerPolicySet: bool, + pub mReferrerPolicy: root::nsIDocument_ReferrerPolicyEnum, + pub mBlockAllMixedContent: bool, + pub mBlockAllMixedContentPreloads: bool, + pub mUpgradeInsecureRequests: bool, + pub mUpgradeInsecurePreloads: bool, + pub mHSTSPrimingURIList: [u64; 5usize], + pub mDocumentContainer: u64, + pub mCharacterSet: root::nsCString, + pub mCharacterSetSource: i32, + pub mParentDocument: *mut root::nsIDocument, + pub mCachedRootElement: *mut root::mozilla::dom::Element, + pub mNodeInfoManager: *mut root::nsNodeInfoManager, + pub mCSSLoader: root::RefPtr, + pub mStyleImageLoader: root::RefPtr, + pub mAttrStyleSheet: root::RefPtr, + pub mStyleAttrStyleSheet: root::RefPtr, + pub mImageTracker: root::RefPtr, + pub mActivityObservers: u64, + pub mLinksToUpdate: [u64; 3usize], + pub mAnimationController: root::RefPtr, + pub mPropertyTable: root::nsPropertyTable, + pub mExtraPropertyTables: root::nsTArray>, + pub mChildrenCollection: root::nsCOMPtr, + pub mFontFaceSet: root::RefPtr, + pub mLastFocusTime: root::mozilla::TimeStamp, + pub _bitfield_1: u8, + pub _bitfield_2: u8, + pub _bitfield_3: u8, + pub _bitfield_4: u8, + pub _bitfield_5: u8, + pub _bitfield_6: u8, + pub mCompatMode: root::nsCompatibility, + pub mReadyState: root::nsIDocument_ReadyState, + pub mStyleBackendType: root::mozilla::StyleBackendType, + pub mVisibilityState: root::mozilla::dom::VisibilityState, + pub mType: root::nsIDocument_Type, + pub mDefaultElementType: u8, + pub mAllowXULXBL: root::nsIDocument_Tri, + pub mScriptGlobalObject: root::nsCOMPtr, + pub mOriginalDocument: root::nsCOMPtr, + pub mBidiOptions: u32, + pub mSandboxFlags: u32, + pub mContentLanguage: root::nsCString, + pub mChannel: root::nsCOMPtr, + pub mContentType: root::nsCString, + pub mId: ::nsstring::nsStringRepr, + pub mSecurityInfo: root::nsCOMPtr, + pub mFailedChannel: root::nsCOMPtr, + pub mPartID: u32, + pub mMarkedCCGeneration: u32, + pub mPresShell: *mut root::nsIPresShell, + pub mSubtreeModifiedTargets: root::nsCOMArray, + pub mSubtreeModifiedDepth: u32, + pub mDisplayDocument: root::nsCOMPtr, + pub mEventsSuppressed: u32, + /** + * The number number of external scripts (ones with the src attribute) that + * have this document as their owner and that are being evaluated right now. + */ + pub mExternalScriptsBeingEvaluated: u32, + /** + * The current frame request callback handle + */ + pub mFrameRequestCallbackCounter: i32, + pub mStaticCloneCount: u32, + pub mBlockedTrackingNodes: root::nsTArray, + pub mWindow: *mut root::nsPIDOMWindowInner, + pub mCachedEncoder: root::nsCOMPtr, + pub mFrameRequestCallbacks: root::nsTArray, + pub mBFCacheEntry: *mut root::nsIBFCacheEntry, + pub mBaseTarget: ::nsstring::nsStringRepr, + pub mStateObjectContainer: root::nsCOMPtr, + pub mStateObjectCached: root::nsCOMPtr, + pub mInSyncOperationCount: u32, + pub mXPathEvaluator: root::RefPtr, + pub mAnonymousContents: root::nsTArray>, + pub mBlockDOMContentLoaded: u32, + pub mDOMMediaQueryLists: root::mozilla::LinkedList, + pub mUseCounters: [u64; 2usize], + pub mChildDocumentUseCounters: [u64; 2usize], + pub mNotifiedPageForUseCounter: [u64; 2usize], + pub mUserHasInteracted: bool, + pub mPageUnloadingEventTimeStamp: root::mozilla::TimeStamp, + pub mDocGroup: root::RefPtr, + pub mTrackingScripts: [u64; 5usize], + } + pub type nsIDocument_GlobalObject = root::mozilla::dom::GlobalObject; + pub use self::super::root::mozilla::net::ReferrerPolicy as + nsIDocument_ReferrerPolicyEnum; + pub type nsIDocument_Element = root::mozilla::dom::Element; + pub type nsIDocument_FullscreenRequest = + root::mozilla::dom::FullscreenRequest; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDocument_COMTypeInfo { + pub _address: u8, + } + #[repr(C)] + pub struct nsIDocument_PageUnloadingEventTimeStamp { + pub mDocument: root::nsCOMPtr, + pub mSet: bool, + } + #[test] + fn bindgen_test_layout_nsIDocument_PageUnloadingEventTimeStamp() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsIDocument_PageUnloadingEventTimeStamp ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsIDocument_PageUnloadingEventTimeStamp ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const nsIDocument_PageUnloadingEventTimeStamp ) + ) . mDocument as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + nsIDocument_PageUnloadingEventTimeStamp ) , "::" , + stringify ! ( mDocument ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const nsIDocument_PageUnloadingEventTimeStamp ) + ) . mSet as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsIDocument_PageUnloadingEventTimeStamp ) , "::" , + stringify ! ( mSet ) )); + } + /** + * This gets fired when the element that an id refers to changes. + * This fires at difficult times. It is generally not safe to do anything + * which could modify the DOM in any way. Use + * nsContentUtils::AddScriptRunner. + * @return true to keep the callback in the callback set, false + * to remove it. + */ + pub type nsIDocument_IDTargetObserver = + ::std::option::Option bool>; + #[repr(C)] + #[derive(Debug)] + pub struct nsIDocument_SelectorCacheKey { + pub mKey: ::nsstring::nsStringRepr, + pub mState: root::nsExpirationState, + } + #[test] + fn bindgen_test_layout_nsIDocument_SelectorCacheKey() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( + "Size of: " , stringify ! ( nsIDocument_SelectorCacheKey ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsIDocument_SelectorCacheKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsIDocument_SelectorCacheKey ) ) . + mKey as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsIDocument_SelectorCacheKey ) , "::" , stringify ! ( mKey + ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsIDocument_SelectorCacheKey ) ) . + mState as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsIDocument_SelectorCacheKey ) , "::" , stringify ! ( + mState ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDocument_SelectorCacheKeyDeleter { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDocument_SelectorCache { + pub _bindgen_opaque_blob: [u64; 17usize], + } + #[test] + fn bindgen_test_layout_nsIDocument_SelectorCache() { + assert_eq!(::std::mem::size_of::() , + 136usize , concat ! ( + "Size of: " , stringify ! ( nsIDocument_SelectorCache ) )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIDocument_SelectorCache + ) )); + } + impl Clone for nsIDocument_SelectorCache { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_additionalSheetType { + eAgentSheet = 0, + eUserSheet = 1, + eAuthorSheet = 2, + AdditionalSheetTypeCount = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_ReadyState { + READYSTATE_UNINITIALIZED = 0, + READYSTATE_LOADING = 1, + READYSTATE_INTERACTIVE = 3, + READYSTATE_COMPLETE = 4, + } + /** + * Enumerate all subdocuments. + * The enumerator callback should return true to continue enumerating, or + * false to stop. This will never get passed a null aDocument. + */ + pub type nsIDocument_nsSubDocEnumFunc = + ::std::option::Option bool>; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_ElementsFromPointFlags { + IGNORE_ROOT_SCROLL_FRAME = 1, + FLUSH_LAYOUT = 2, + IS_ELEMENT_FROM_POINT = 4, + } + /** + * A class that represents an external resource load that has begun but + * doesn't have a document yet. Observers can be registered on this object, + * and will be notified after the document is created. Observers registered + * after the document has been created will NOT be notified. When observers + * are notified, the subject will be the newly-created document, the topic + * will be "external-resource-document-created", and the data will be null. + * If document creation fails for some reason, observers will still be + * notified, with a null document pointer. + */ + #[repr(C)] + pub struct nsIDocument_ExternalResourceLoad { + pub _base: root::nsISupports, + pub mObservers: [u64; 10usize], + } + #[test] + fn bindgen_test_layout_nsIDocument_ExternalResourceLoad() { + assert_eq!(::std::mem::size_of::() , + 88usize , concat ! ( + "Size of: " , stringify ! ( + nsIDocument_ExternalResourceLoad ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsIDocument_ExternalResourceLoad ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsIDocument_ExternalResourceLoad ) ) + . mObservers as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsIDocument_ExternalResourceLoad ) , "::" , stringify ! ( + mObservers ) )); + } + pub type nsIDocument_ActivityObserverEnumerator = + ::std::option::Option; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_DocumentTheme { + Doc_Theme_Uninitialized = 0, + Doc_Theme_None = 1, + Doc_Theme_Neutral = 2, + Doc_Theme_Dark = 3, + Doc_Theme_Bright = 4, + } + pub type nsIDocument_FrameRequestCallbackList = + root::nsTArray>; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_DeprecatedOperations { + eGetAttributeNode = 0, + eSetAttributeNode = 1, + eGetAttributeNodeNS = 2, + eSetAttributeNodeNS = 3, + eRemoveAttributeNode = 4, + eCreateAttribute = 5, + eCreateAttributeNS = 6, + eNodeValue = 7, + eTextContent = 8, + eEnablePrivilege = 9, + eDOMExceptionCode = 10, + eNoExposedProps = 11, + eMutationEvent = 12, + eComponents = 13, + ePrefixedVisibilityAPI = 14, + eNodeIteratorDetach = 15, + eLenientThis = 16, + eGetPreventDefault = 17, + eGetSetUserData = 18, + eMozGetAsFile = 19, + eUseOfCaptureEvents = 20, + eUseOfReleaseEvents = 21, + eUseOfDOM3LoadMethod = 22, + eChromeUseOfDOM3LoadMethod = 23, + eShowModalDialog = 24, + eWindow_Content = 25, + eSyncXMLHttpRequest = 26, + eWindow_Controllers = 27, + eImportXULIntoContent = 28, + ePannerNodeDoppler = 29, + eNavigatorGetUserMedia = 30, + eWebrtcDeprecatedPrefix = 31, + eRTCPeerConnectionGetStreams = 32, + eAppCache = 33, + ePrefixedImageSmoothingEnabled = 34, + ePrefixedFullscreenAPI = 35, + eLenientSetter = 36, + eFileLastModifiedDate = 37, + eImageBitmapRenderingContext_TransferImageBitmap = 38, + eURLCreateObjectURL_MediaStream = 39, + eXMLBaseAttribute = 40, + eXMLBaseAttributeForStyleAttr = 41, + eDeprecatedOperationCount = 42, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_DocumentWarnings { + eIgnoringWillChangeOverBudget = 0, + ePreventDefaultFromPassiveListener = 1, + eSVGReferenceLoop = 2, + eSVGReferenceChainLengthExceeded = 3, + eDocumentWarningCount = 4, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_ElementCallbackType { + eCreated = 0, + eAttached = 1, + eDetached = 2, + eAttributeChanged = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_Type { + eUnknown = 0, + eHTML = 1, + eXHTML = 2, + eGenericXML = 3, + eSVG = 4, + eXUL = 5, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIDocument_Tri { eTriUnset = 0, eTriFalse = 1, eTriTrue = 2, } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDocument_FrameRequest { + _unused: [u8; 0], + } + pub const nsIDocument_kSegmentSize: usize = 128; + #[test] + fn bindgen_test_layout_nsIDocument() { + assert_eq!(::std::mem::size_of::() , 872usize , concat ! + ( "Size of: " , stringify ! ( nsIDocument ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsIDocument ) )); + } + impl nsIDocument { + #[inline] + pub fn mBidiEnabled(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mBidiEnabled(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mMathMLEnabled(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mMathMLEnabled(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsInitialDocumentInWindow(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsInitialDocumentInWindow(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIgnoreDocGroupMismatches(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIgnoreDocGroupMismatches(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mLoadedAsData(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mLoadedAsData(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mLoadedAsInteractiveData(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mLoadedAsInteractiveData(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mMayStartLayout(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mMayStartLayout(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHaveFiredTitleChange(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHaveFiredTitleChange(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsShowing(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsShowing(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mVisible(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mVisible(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasReferrerPolicyCSP(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasReferrerPolicyCSP(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mRemovedFromDocShell(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mRemovedFromDocShell(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mAllowDNSPrefetch(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mAllowDNSPrefetch(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsStaticDocument(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsStaticDocument(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mCreatingStaticClone(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mCreatingStaticClone(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mInUnlinkOrDeletion(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mInUnlinkOrDeletion(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasHadScriptHandlingObject(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasHadScriptHandlingObject(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsBeingUsedAsImage(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsBeingUsedAsImage(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsSyntheticDocument(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsSyntheticDocument(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasLinksToUpdate(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasLinksToUpdate(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasLinksToUpdateRunnable(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasLinksToUpdateRunnable(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mMayHaveDOMMutationObservers(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mMayHaveDOMMutationObservers(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mMayHaveAnimationObservers(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mMayHaveAnimationObservers(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasMixedActiveContentLoaded(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasMixedActiveContentLoaded(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasMixedActiveContentBlocked(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasMixedActiveContentBlocked(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasMixedDisplayContentLoaded(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasMixedDisplayContentLoaded(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasMixedDisplayContentBlocked(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasMixedDisplayContentBlocked(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasMixedContentObjectSubrequest(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasMixedContentObjectSubrequest(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasCSP(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasCSP(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasUnsafeEvalCSP(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasUnsafeEvalCSP(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasUnsafeInlineCSP(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasUnsafeInlineCSP(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasTrackingContentBlocked(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasTrackingContentBlocked(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_4) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_4 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasTrackingContentLoaded(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasTrackingContentLoaded(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mBFCacheDisallowed(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mBFCacheDisallowed(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasHadDefaultView(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasHadDefaultView(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mStyleSheetChangeEventsEnabled(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mStyleSheetChangeEventsEnabled(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsSrcdocDocument(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsSrcdocDocument(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDidDocumentOpen(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mDidDocumentOpen(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasDisplayDocument(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasDisplayDocument(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFontFaceSetDirty(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mFontFaceSetDirty(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_5) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_5 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mGetUserFontSetCalled(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mGetUserFontSetCalled(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_6 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPostedFlushUserFontSet(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mPostedFlushUserFontSet(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_6 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDidFireDOMContentLoaded(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mDidFireDOMContentLoaded(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_6 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasScrollLinkedEffect(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHasScrollLinkedEffect(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_6 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFrameRequestCallbacksScheduled(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mFrameRequestCallbacksScheduled(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_6) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_6 = unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsFontFaceRuleContainer { + pub mRule: root::RefPtr, + pub mSheetType: root::mozilla::SheetType, + } + #[test] + fn bindgen_test_layout_nsFontFaceRuleContainer() { + assert_eq!(::std::mem::size_of::() , 16usize + , concat ! ( + "Size of: " , stringify ! ( nsFontFaceRuleContainer ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( nsFontFaceRuleContainer ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFontFaceRuleContainer ) ) . mRule + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsFontFaceRuleContainer ) , "::" , stringify ! ( mRule ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsFontFaceRuleContainer ) ) . + mSheetType as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsFontFaceRuleContainer ) , "::" , stringify ! ( + mSheetType ) )); + } + /** + * A node of content in a document's content model. This interface + * is supported by all content objects. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsIContent { + pub _base: root::nsINode, + } + pub type nsIContent_IMEState = root::mozilla::widget::IMEState; + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIContent_COMTypeInfo { + pub _address: u8, + } + pub const nsIContent_eAllChildren: root::nsIContent__bindgen_ty_1 = + nsIContent__bindgen_ty_1::eAllChildren; + pub const nsIContent_eAllButXBL: root::nsIContent__bindgen_ty_1 = + nsIContent__bindgen_ty_1::eAllButXBL; + pub const nsIContent_eSkipPlaceholderContent: + root::nsIContent__bindgen_ty_1 = + nsIContent__bindgen_ty_1::eSkipPlaceholderContent; + pub const nsIContent_eSkipDocumentLevelNativeAnonymousContent: + root::nsIContent__bindgen_ty_1 = + nsIContent__bindgen_ty_1::eSkipDocumentLevelNativeAnonymousContent; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIContent__bindgen_ty_1 { + eAllChildren = 0, + eAllButXBL = 1, + eSkipPlaceholderContent = 2, + eSkipDocumentLevelNativeAnonymousContent = 4, + } + pub const nsIContent_ATTR_MISSING: root::nsIContent__bindgen_ty_2 = + nsIContent__bindgen_ty_2::ATTR_MISSING; + pub const nsIContent_ATTR_VALUE_NO_MATCH: root::nsIContent__bindgen_ty_2 = + nsIContent__bindgen_ty_2::ATTR_VALUE_NO_MATCH; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIContent__bindgen_ty_2 { + ATTR_MISSING = -1, + ATTR_VALUE_NO_MATCH = -2, + } + /** + * Check whether this content node's given attribute has one of a given + * list of values. If there is a match, we return the index in the list + * of the first matching value. If there was no attribute at all, then + * we return ATTR_MISSING. If there was an attribute but it didn't + * match, we return ATTR_VALUE_NO_MATCH. A non-negative result always + * indicates a match. + * + * @param aNameSpaceID The namespace ID of the attribute. Must not + * be kNameSpaceID_Unknown. + * @param aName The name atom of the attribute. Must not be null. + * @param aValues a nullptr-terminated array of pointers to atom values to test + * against. + * @param aCaseSensitive Whether to do a case-sensitive compare on the values. + * @return ATTR_MISSING, ATTR_VALUE_NO_MATCH or the non-negative index + * indicating the first value of aValues that matched + */ + pub type nsIContent_AttrValuesArray = *const *const root::nsIAtom; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIContent_FlattenedParentType { + eNotForStyle = 0, + eForStyle = 1, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIContent_ETabFocusType { + eTabFocus_textControlsMask = 1, + eTabFocus_formElementsMask = 2, + eTabFocus_linksMask = 4, + eTabFocus_any = 7, + } + extern "C" { + #[link_name = "_ZN10nsIContent14sTabFocusModelE"] + pub static mut nsIContent_sTabFocusModel: i32; + } + extern "C" { + #[link_name = "_ZN10nsIContent26sTabFocusModelAppliesToXULE"] + pub static mut nsIContent_sTabFocusModelAppliesToXUL: bool; + } + #[test] + fn bindgen_test_layout_nsIContent() { + assert_eq!(::std::mem::size_of::() , 96usize , concat ! ( + "Size of: " , stringify ! ( nsIContent ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIContent ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsStyleContext { + _unused: [u8; 0], + } + #[repr(C)] + pub struct nsPresContext { + pub _base: root::nsIObserver, + pub _base_1: u64, + pub mRefCnt: root::nsCycleCollectingAutoRefCnt, + pub mType: root::nsPresContext_nsPresContextType, + pub mShell: *mut root::nsIPresShell, + pub mDocument: root::nsCOMPtr, + pub mDeviceContext: root::RefPtr, + pub mEventManager: root::RefPtr, + pub mRefreshDriver: root::RefPtr, + pub mEffectCompositor: root::RefPtr, + pub mTransitionManager: root::RefPtr, + pub mAnimationManager: root::RefPtr, + pub mRestyleManager: root::RefPtr, + pub mCounterStyleManager: root::RefPtr, + pub mMedium: *mut root::nsIAtom, + pub mMediaEmulated: root::nsCOMPtr, + pub mLinkHandler: *mut root::nsILinkHandler, + pub mLanguage: root::nsCOMPtr, + pub mInflationDisabledForShrinkWrap: bool, + pub mContainer: u64, + pub mBaseMinFontSize: i32, + pub mSystemFontScale: f32, + pub mTextZoom: f32, + pub mEffectiveTextZoom: f32, + pub mFullZoom: f32, + pub mOverrideDPPX: f32, + pub mLastFontInflationScreenSize: root::gfxSize, + pub mCurAppUnitsPerDevPixel: i32, + pub mAutoQualityMinFontSizePixelsPref: i32, + pub mTheme: root::nsCOMPtr, + pub mLangService: root::nsCOMPtr, + pub mPrintSettings: root::nsCOMPtr, + pub mPrefChangedTimer: root::nsCOMPtr, + pub mBidiEngine: root::mozilla::UniquePtr, + pub mPropertyTable: root::nsPresContext_FramePropertyTable, + pub mTransactions: [u64; 10usize], + pub mTextPerf: root::nsAutoPtr, + pub mMissingFonts: root::nsAutoPtr, + pub mVisibleArea: root::nsRect, + pub mPageSize: root::nsSize, + pub mPageScale: f32, + pub mPPScale: f32, + pub mDefaultColor: root::nscolor, + pub mBackgroundColor: root::nscolor, + pub mLinkColor: root::nscolor, + pub mActiveLinkColor: root::nscolor, + pub mVisitedLinkColor: root::nscolor, + pub mFocusBackgroundColor: root::nscolor, + pub mFocusTextColor: root::nscolor, + pub mBodyTextColor: root::nscolor, + pub mViewportStyleScrollbar: root::nsPresContext_ScrollbarStyles, + pub mFocusRingWidth: u8, + pub mExistThrottledUpdates: bool, + pub mImageAnimationMode: u16, + pub mImageAnimationModePref: u16, + pub mLangGroupFontPrefs: root::nsPresContext_LangGroupFontPrefs, + pub mBorderWidthTable: [root::nscoord; 3usize], + pub mInterruptChecksToSkip: u32, + pub mElementsRestyled: u64, + pub mFramesConstructed: u64, + pub mFramesReflowed: u64, + pub mReflowStartTime: root::mozilla::TimeStamp, + pub mFirstNonBlankPaintTime: root::mozilla::TimeStamp, + pub mFirstClickTime: root::mozilla::TimeStamp, + pub mFirstKeyTime: root::mozilla::TimeStamp, + pub mFirstMouseMoveTime: root::mozilla::TimeStamp, + pub mFirstScrollTime: root::mozilla::TimeStamp, + pub mInteractionTimeEnabled: bool, + pub mLastStyleUpdateForAllAnimations: root::mozilla::TimeStamp, + pub mTelemetryScrollLastY: root::nscoord, + pub mTelemetryScrollMaxY: root::nscoord, + pub mTelemetryScrollTotalY: root::nscoord, + pub _bitfield_1: [u8; 4usize], + pub _bitfield_2: [u8; 2usize], + pub __bindgen_padding_0: [u16; 3usize], + } + pub type nsPresContext_FramePropertyTable = + root::mozilla::FramePropertyTable; + pub type nsPresContext_LangGroupFontPrefs = + root::mozilla::LangGroupFontPrefs; + pub type nsPresContext_ScrollbarStyles = root::mozilla::ScrollbarStyles; + pub type nsPresContext_StaticPresData = root::mozilla::StaticPresData; + pub type nsPresContext_HasThreadSafeRefCnt = root::mozilla::FalseType; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsPresContext_cycleCollection { + pub _base: root::nsXPCOMCycleCollectionParticipant, + } + #[test] + fn bindgen_test_layout_nsPresContext_cycleCollection() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( nsPresContext_cycleCollection ) + )); + assert_eq! (::std::mem::align_of::() , + 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsPresContext_cycleCollection ) )); + } + impl Clone for nsPresContext_cycleCollection { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsPresContext_nsPresContextType { + eContext_Galley = 0, + eContext_PrintPreview = 1, + eContext_Print = 2, + eContext_PageLayout = 3, + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsPresContext_InteractionType { + eClickInteraction = 0, + eKeyInteraction = 1, + eMouseMoveInteraction = 2, + eScrollInteraction = 3, + } + /** + * A class that can be used to temporarily disable reflow interruption. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsPresContext_InterruptPreventer { + pub mCtx: *mut root::nsPresContext, + pub mInterruptsEnabled: bool, + pub mHasPendingInterrupt: bool, + } + #[test] + fn bindgen_test_layout_nsPresContext_InterruptPreventer() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( + nsPresContext_InterruptPreventer ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsPresContext_InterruptPreventer ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) + . mCtx as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsPresContext_InterruptPreventer ) , "::" , stringify ! ( + mCtx ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) + . mInterruptsEnabled as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + nsPresContext_InterruptPreventer ) , "::" , stringify ! ( + mInterruptsEnabled ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsPresContext_InterruptPreventer ) ) + . mHasPendingInterrupt as * const _ as usize } , 9usize , + concat ! ( + "Alignment of field: " , stringify ! ( + nsPresContext_InterruptPreventer ) , "::" , stringify ! ( + mHasPendingInterrupt ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct nsPresContext_TransactionInvalidations { + pub mTransactionId: u64, + pub mInvalidations: root::nsTArray, + } + #[test] + fn bindgen_test_layout_nsPresContext_TransactionInvalidations() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsPresContext_TransactionInvalidations ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsPresContext_TransactionInvalidations ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const nsPresContext_TransactionInvalidations ) + ) . mTransactionId as * const _ as usize } , 0usize , + concat ! ( + "Alignment of field: " , stringify ! ( + nsPresContext_TransactionInvalidations ) , "::" , + stringify ! ( mTransactionId ) )); + assert_eq! (unsafe { + & ( + * ( 0 as * const nsPresContext_TransactionInvalidations ) + ) . mInvalidations as * const _ as usize } , 8usize , + concat ! ( + "Alignment of field: " , stringify ! ( + nsPresContext_TransactionInvalidations ) , "::" , + stringify ! ( mInvalidations ) )); + } + extern "C" { + #[link_name = "_ZN13nsPresContext21_cycleCollectorGlobalE"] + pub static mut nsPresContext__cycleCollectorGlobal: + root::nsPresContext_cycleCollection; + } + #[test] + fn bindgen_test_layout_nsPresContext() { + assert_eq!(::std::mem::size_of::() , 1304usize , concat + ! ( "Size of: " , stringify ! ( nsPresContext ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsPresContext ) )); + } + impl nsPresContext { + #[inline] + pub fn mHasPendingInterrupt(&self) -> ::std::os::raw::c_uint { + let mask = 1usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mHasPendingInterrupt(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 1usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingInterruptFromTest(&self) -> ::std::os::raw::c_uint { + let mask = 2usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingInterruptFromTest(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 2usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mInterruptsEnabled(&self) -> ::std::os::raw::c_uint { + let mask = 4usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mInterruptsEnabled(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 4usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUseDocumentFonts(&self) -> ::std::os::raw::c_uint { + let mask = 8usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUseDocumentFonts(&mut self, val: ::std::os::raw::c_uint) { + let mask = 8usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUseDocumentColors(&self) -> ::std::os::raw::c_uint { + let mask = 16usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUseDocumentColors(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 16usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUnderlineLinks(&self) -> ::std::os::raw::c_uint { + let mask = 32usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUnderlineLinks(&mut self, val: ::std::os::raw::c_uint) { + let mask = 32usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mSendAfterPaintToContent(&self) -> ::std::os::raw::c_uint { + let mask = 64usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mSendAfterPaintToContent(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 64usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUseFocusColors(&self) -> ::std::os::raw::c_uint { + let mask = 128usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUseFocusColors(&mut self, val: ::std::os::raw::c_uint) { + let mask = 128usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFocusRingOnAnything(&self) -> ::std::os::raw::c_uint { + let mask = 256usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 8usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mFocusRingOnAnything(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 256usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 8usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFocusRingStyle(&self) -> ::std::os::raw::c_uint { + let mask = 512usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 9usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mFocusRingStyle(&mut self, val: ::std::os::raw::c_uint) { + let mask = 512usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 9usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDrawImageBackground(&self) -> ::std::os::raw::c_uint { + let mask = 1024usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 10usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mDrawImageBackground(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 1024usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 10usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDrawColorBackground(&self) -> ::std::os::raw::c_uint { + let mask = 2048usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 11usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mDrawColorBackground(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 2048usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 11usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNeverAnimate(&self) -> ::std::os::raw::c_uint { + let mask = 4096usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 12usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mNeverAnimate(&mut self, val: ::std::os::raw::c_uint) { + let mask = 4096usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 12usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsRenderingOnlySelection(&self) -> ::std::os::raw::c_uint { + let mask = 8192usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 13usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsRenderingOnlySelection(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 8192usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 13usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPaginated(&self) -> ::std::os::raw::c_uint { + let mask = 16384usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 14usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPaginated(&mut self, val: ::std::os::raw::c_uint) { + let mask = 16384usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 14usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mCanPaginatedScroll(&self) -> ::std::os::raw::c_uint { + let mask = 32768usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 15usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mCanPaginatedScroll(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 32768usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 15usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDoScaledTwips(&self) -> ::std::os::raw::c_uint { + let mask = 65536usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 16usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mDoScaledTwips(&mut self, val: ::std::os::raw::c_uint) { + let mask = 65536usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 16usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsRootPaginatedDocument(&self) -> ::std::os::raw::c_uint { + let mask = 131072usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 17usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsRootPaginatedDocument(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 131072usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 17usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPrefBidiDirection(&self) -> ::std::os::raw::c_uint { + let mask = 262144usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 18usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPrefBidiDirection(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 262144usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 18usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPrefScrollbarSide(&self) -> ::std::os::raw::c_uint { + let mask = 1572864usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 19usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPrefScrollbarSide(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 1572864usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 19usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingSysColorChanged(&self) -> ::std::os::raw::c_uint { + let mask = 2097152usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 21usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingSysColorChanged(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 2097152usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 21usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingThemeChanged(&self) -> ::std::os::raw::c_uint { + let mask = 4194304usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 22usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingThemeChanged(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 4194304usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 22usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingUIResolutionChanged(&self) -> ::std::os::raw::c_uint { + let mask = 8388608usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 23usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingUIResolutionChanged(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 8388608usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 23usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingMediaFeatureValuesChanged(&self) + -> ::std::os::raw::c_uint { + let mask = 16777216usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 24usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingMediaFeatureValuesChanged(&mut self, + val: + ::std::os::raw::c_uint) { + let mask = 16777216usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 24usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPrefChangePendingNeedsReflow(&self) + -> ::std::os::raw::c_uint { + let mask = 33554432usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 25usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPrefChangePendingNeedsReflow(&mut self, + val: + ::std::os::raw::c_uint) { + let mask = 33554432usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 25usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsEmulatingMedia(&self) -> ::std::os::raw::c_uint { + let mask = 67108864usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 26usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsEmulatingMedia(&mut self, val: ::std::os::raw::c_uint) { + let mask = 67108864usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 26usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsGlyph(&self) -> ::std::os::raw::c_uint { + let mask = 134217728usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 27usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsGlyph(&mut self, val: ::std::os::raw::c_uint) { + let mask = 134217728usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 27usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUsesRootEMUnits(&self) -> ::std::os::raw::c_uint { + let mask = 268435456usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 28usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUsesRootEMUnits(&mut self, val: ::std::os::raw::c_uint) { + let mask = 268435456usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 28usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUsesExChUnits(&self) -> ::std::os::raw::c_uint { + let mask = 536870912usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 29usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUsesExChUnits(&mut self, val: ::std::os::raw::c_uint) { + let mask = 536870912usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 29usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mUsesViewportUnits(&self) -> ::std::os::raw::c_uint { + let mask = 1073741824usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 30usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mUsesViewportUnits(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 1073741824usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 30usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPendingViewportChange(&self) -> ::std::os::raw::c_uint { + let mask = 2147483648usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 31usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPendingViewportChange(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 2147483648usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 31usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mCounterStylesDirty(&self) -> ::std::os::raw::c_uint { + let mask = 1usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mCounterStylesDirty(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 1usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPostedFlushCounterStyles(&self) -> ::std::os::raw::c_uint { + let mask = 2usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPostedFlushCounterStyles(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 2usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mSuppressResizeReflow(&self) -> ::std::os::raw::c_uint { + let mask = 4usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mSuppressResizeReflow(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 4usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsVisual(&self) -> ::std::os::raw::c_uint { + let mask = 8usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsVisual(&mut self, val: ::std::os::raw::c_uint) { + let mask = 8usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFireAfterPaintEvents(&self) -> ::std::os::raw::c_uint { + let mask = 16usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mFireAfterPaintEvents(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 16usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsChrome(&self) -> ::std::os::raw::c_uint { + let mask = 32usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsChrome(&mut self, val: ::std::os::raw::c_uint) { + let mask = 32usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsChromeOriginImage(&self) -> ::std::os::raw::c_uint { + let mask = 64usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIsChromeOriginImage(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 64usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPaintFlashing(&self) -> ::std::os::raw::c_uint { + let mask = 128usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPaintFlashing(&mut self, val: ::std::os::raw::c_uint) { + let mask = 128usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPaintFlashingInitialized(&self) -> ::std::os::raw::c_uint { + let mask = 256usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 8usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mPaintFlashingInitialized(&mut self, + val: ::std::os::raw::c_uint) { + let mask = 256usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 8usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasWarnedAboutPositionedTableParts(&self) + -> ::std::os::raw::c_uint { + let mask = 512usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 9usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mHasWarnedAboutPositionedTableParts(&mut self, + val: + ::std::os::raw::c_uint) { + let mask = 512usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 9usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHasWarnedAboutTooLargeDashedOrDottedRadius(&self) + -> ::std::os::raw::c_uint { + let mask = 1024usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 10usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mHasWarnedAboutTooLargeDashedOrDottedRadius(&mut self, + val: + ::std::os::raw::c_uint) { + let mask = 1024usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 10usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mQuirkSheetAdded(&self) -> ::std::os::raw::c_uint { + let mask = 2048usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 11usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mQuirkSheetAdded(&mut self, val: ::std::os::raw::c_uint) { + let mask = 2048usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 11usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNeedsPrefUpdate(&self) -> ::std::os::raw::c_uint { + let mask = 4096usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 12usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mNeedsPrefUpdate(&mut self, val: ::std::os::raw::c_uint) { + let mask = 4096usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 12usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHadNonBlankPaint(&self) -> ::std::os::raw::c_uint { + let mask = 8192usize as u16; + let field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 13usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mHadNonBlankPaint(&mut self, val: ::std::os::raw::c_uint) { + let mask = 8192usize as u16; + let val = val as u32 as u16; + let mut field_val: u16 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 13usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsAttrName { + pub mBits: usize, + } + #[test] + fn bindgen_test_layout_nsAttrName() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsAttrName ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsAttrName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsAttrName ) ) . mBits as * const _ + as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsAttrName ) , "::" + , stringify ! ( mBits ) )); + } #[repr(C)] #[derive(Debug)] pub struct nsAttrValue { pub mBits: usize, } - pub type nsAttrValue_AtomArray = - root::nsTArray>; + pub type nsAttrValue_AtomArray = root::nsTArray; pub const nsAttrValue_ValueType_eSVGTypesBegin: root::nsAttrValue_ValueType = nsAttrValue_ValueType::eSVGAngle; @@ -14870,222 +18403,31 @@ pub mod root { "Alignment of field: " , stringify ! ( nsAttrValue ) , "::" , stringify ! ( mBits ) )); } - /** - * Information details about a characterdata change. Basically, we - * view all changes as replacements of a length of text at some offset - * with some other text (of possibly some other length). - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct CharacterDataChangeInfo { - /** - * True if this character data change is just an append. - */ - pub mAppend: bool, - /** - * The offset in the text where the change occurred. - */ - pub mChangeStart: u32, - /** - * The offset such that mChangeEnd - mChangeStart is equal to the length of - * the text we removed. If this was a pure insert or append, this is equal to - * mChangeStart. - */ - pub mChangeEnd: u32, - /** - * The length of the text that was inserted in place of the removed text. If - * this was a pure text removal, this is 0. - */ - pub mReplaceLength: u32, - /** - * Used for splitText() and normalize(), otherwise null. - */ - pub mDetails: *mut root::CharacterDataChangeInfo_Details, - } - /** - * The net result is that mChangeStart characters at the beginning of the - * text remained as they were. The next mChangeEnd - mChangeStart characters - * were removed, and mReplaceLength characters were inserted in their place. - * The text that used to begin at mChangeEnd now begins at - * mChangeStart + mReplaceLength. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct CharacterDataChangeInfo_Details { - pub mType: root::CharacterDataChangeInfo_Details__bindgen_ty_1, - /** - * For eMerge it's the text node that will be removed, for eSplit it's the - * new text node. - */ - pub mNextSibling: *mut root::nsIContent, - } - pub const CharacterDataChangeInfo_Details_eMerge: - root::CharacterDataChangeInfo_Details__bindgen_ty_1 = - CharacterDataChangeInfo_Details__bindgen_ty_1::eMerge; - pub const CharacterDataChangeInfo_Details_eSplit: - root::CharacterDataChangeInfo_Details__bindgen_ty_1 = - CharacterDataChangeInfo_Details__bindgen_ty_1::eSplit; #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum CharacterDataChangeInfo_Details__bindgen_ty_1 { - eMerge = 0, - eSplit = 1, - } - #[test] - fn bindgen_test_layout_CharacterDataChangeInfo_Details() { - assert_eq!(::std::mem::size_of::() , - 16usize , concat ! ( - "Size of: " , stringify ! ( CharacterDataChangeInfo_Details - ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - CharacterDataChangeInfo_Details ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo_Details ) ) . - mType as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo_Details ) , "::" , stringify ! ( - mType ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo_Details ) ) . - mNextSibling as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo_Details ) , "::" , stringify ! ( - mNextSibling ) )); - } - impl Clone for CharacterDataChangeInfo_Details { - fn clone(&self) -> Self { *self } - } - #[test] - fn bindgen_test_layout_CharacterDataChangeInfo() { - assert_eq!(::std::mem::size_of::() , 24usize - , concat ! ( - "Size of: " , stringify ! ( CharacterDataChangeInfo ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( CharacterDataChangeInfo ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo ) ) . mAppend - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo ) , "::" , stringify ! ( mAppend ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo ) ) . - mChangeStart as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo ) , "::" , stringify ! ( - mChangeStart ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo ) ) . - mChangeEnd as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo ) , "::" , stringify ! ( - mChangeEnd ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo ) ) . - mReplaceLength as * const _ as usize } , 12usize , concat - ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo ) , "::" , stringify ! ( - mReplaceLength ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const CharacterDataChangeInfo ) ) . - mDetails as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - CharacterDataChangeInfo ) , "::" , stringify ! ( mDetails - ) )); - } - impl Clone for CharacterDataChangeInfo { - fn clone(&self) -> Self { *self } - } /** - * Mutation observer interface - * - * See nsINode::AddMutationObserver, nsINode::RemoveMutationObserver for how to - * attach or remove your observers. - * - * WARNING: During these notifications, you are not allowed to perform - * any mutations to the current or any other document, or start a - * network load. If you need to perform such operations do that - * during the _last_ nsIDocumentObserver::EndUpdate notification. The - * expection for this is ParentChainChanged, where mutations should be - * done from an async event, as the notification might not be - * surrounded by BeginUpdate/EndUpdate calls. + * This is the enum used by functions that need to be told whether to + * do case-sensitive or case-insensitive string comparisons. */ + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsCaseTreatment { eCaseMatters = 0, eIgnoreCase = 1, } #[repr(C)] #[derive(Debug, Copy)] - pub struct nsIMutationObserver { + pub struct nsIVariant { pub _base: root::nsISupports, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIMutationObserver_COMTypeInfo { + pub struct nsIVariant_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] - fn bindgen_test_layout_nsIMutationObserver() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( nsIMutationObserver ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIMutationObserver ) )); + fn bindgen_test_layout_nsIVariant() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIVariant ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIVariant ) )); } - impl Clone for nsIMutationObserver { - fn clone(&self) -> Self { *self } - } - pub type nsUpdateType = u32; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDocumentObserver { - pub _base: root::nsIMutationObserver, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDocumentObserver_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDocumentObserver() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( - "Size of: " , stringify ! ( nsIDocumentObserver ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIDocumentObserver ) )); - } - impl Clone for nsIDocumentObserver { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIRequestObserver { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIRequestObserver_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIRequestObserver() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( "Size of: " , stringify ! ( nsIRequestObserver ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIRequestObserver ) )); - } - impl Clone for nsIRequestObserver { + impl Clone for nsIVariant { fn clone(&self) -> Self { *self } } pub const kNameSpaceID_None: i32 = 0; @@ -15096,8 +18438,8 @@ pub mod root { pub mNodeInfoHash: *mut root::PLHashTable, pub mDocument: *mut root::nsIDocument, pub mNonDocumentNodeInfos: u32, - pub mPrincipal: root::nsCOMPtr, - pub mDefaultPrincipal: root::nsCOMPtr, + pub mPrincipal: root::nsCOMPtr, + pub mDefaultPrincipal: root::nsCOMPtr, pub mTextNodeInfo: *mut root::mozilla::dom::NodeInfo, pub mCommentNodeInfo: *mut root::mozilla::dom::NodeInfo, pub mDocumentNodeInfo: *mut root::mozilla::dom::NodeInfo, @@ -15201,7 +18543,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsBindingManager([u8; 0]); + pub struct nsBindingManager { + _unused: [u8; 0], + } pub type NSPropertyFunc = ::std::option::Option() , 8usize , concat @@ -15263,6 +18611,144 @@ pub mod root { "Alignment of field: " , stringify ! ( nsPropertyTable ) , "::" , stringify ! ( mPropertyList ) )); } + /** + * An array of observers. Like a normal array, but supports iterators that are + * stable even if the array is modified during iteration. + * The template parameter T is the observer type the array will hold; + * N is the number of built-in storage slots that come with the array. + * NOTE: You probably want to use nsTObserverArray, unless you specifically + * want built-in storage. See below. + * @see nsTObserverArray, nsTArray + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsTObserverArray_base { + pub mIterators: *mut root::nsTObserverArray_base_Iterator_base, + } + pub type nsTObserverArray_base_index_type = usize; + pub type nsTObserverArray_base_size_type = usize; + pub type nsTObserverArray_base_diff_type = isize; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsTObserverArray_base_Iterator_base { + pub mPosition: root::nsTObserverArray_base_index_type, + pub mNext: *mut root::nsTObserverArray_base_Iterator_base, + } + #[test] + fn bindgen_test_layout_nsTObserverArray_base_Iterator_base() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of: " , stringify ! ( + nsTObserverArray_base_Iterator_base ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + nsTObserverArray_base_Iterator_base ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsTObserverArray_base_Iterator_base ) + ) . mPosition as * const _ as usize } , 0usize , concat ! + ( + "Alignment of field: " , stringify ! ( + nsTObserverArray_base_Iterator_base ) , "::" , stringify ! + ( mPosition ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsTObserverArray_base_Iterator_base ) + ) . mNext as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsTObserverArray_base_Iterator_base ) , "::" , stringify ! + ( mNext ) )); + } + impl Clone for nsTObserverArray_base_Iterator_base { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_nsTObserverArray_base() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsTObserverArray_base ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsTObserverArray_base ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsTObserverArray_base ) ) . + mIterators as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + nsTObserverArray_base ) , "::" , stringify ! ( mIterators + ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsTObserverArray { + } + pub type nsTObserverArray_base_type = u8; + pub type nsTObserverArray_size_type = + root::nsTObserverArray_base_size_type; + /** + * It is used by the application to initialize a runtime and run scripts. + * A script runtime would implement this interface. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIScriptContext { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIScriptContext_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIScriptContext() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsIScriptContext ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIScriptContext ) )); + } + impl Clone for nsIScriptContext { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsPIDOMWindowOuter { + pub _base: [u64; 28usize], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsPIDOMWindowOuter_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsPIDOMWindowOuter() { + assert_eq!(::std::mem::size_of::() , 224usize , + concat ! ( "Size of: " , stringify ! ( nsPIDOMWindowOuter ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsPIDOMWindowOuter ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct nsIGlobalObject { + pub _base: root::nsISupports, + pub _base_1: root::mozilla::dom::DispatcherTrait, + pub mHostObjectURIs: root::nsTArray, + pub mIsDying: bool, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIGlobalObject_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIGlobalObject() { + assert_eq!(::std::mem::size_of::() , 32usize , concat + ! ( "Size of: " , stringify ! ( nsIGlobalObject ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIGlobalObject ) )); + } #[repr(C)] #[derive(Debug)] pub struct nsAttrAndChildArray { @@ -15361,17 +18847,21 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsChildContentList([u8; 0]); + pub struct nsChildContentList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsCSSSelectorList([u8; 0]); + pub struct nsCSSSelectorList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct nsDOMAttributeMap { pub _base: root::nsIDOMMozNamedAttrMap, pub _base_1: root::nsWrapperCache, pub mRefCnt: root::nsCycleCollectingAutoRefCnt, - pub mContent: root::nsCOMPtr, + pub mContent: root::nsCOMPtr, /** * Cache of Attrs. */ @@ -15417,10 +18907,50 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIAnimationObserver([u8; 0]); + pub struct nsIAnimationObserver { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIEditor([u8; 0]); + pub struct nsIEditor { + _unused: [u8; 0], + } + /** + * Mutation observer interface + * + * See nsINode::AddMutationObserver, nsINode::RemoveMutationObserver for how to + * attach or remove your observers. + * + * WARNING: During these notifications, you are not allowed to perform + * any mutations to the current or any other document, or start a + * network load. If you need to perform such operations do that + * during the _last_ nsIDocumentObserver::EndUpdate notification. The + * expection for this is ParentChainChanged, where mutations should be + * done from an async event, as the notification might not be + * surrounded by BeginUpdate/EndUpdate calls. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIMutationObserver { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIMutationObserver_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIMutationObserver() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsIMutationObserver ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIMutationObserver ) )); + } + impl Clone for nsIMutationObserver { + fn clone(&self) -> Self { *self } + } /** * An internal interface for a reasonably fast indexOf. */ @@ -15432,10 +18962,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsINodeList_COMTypeInfo { + pub struct nsINodeList_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsINodeList() { @@ -15456,10 +18984,9 @@ pub mod root { * frame. */ #[repr(C)] - #[derive(Debug)] pub struct nsIPresShell { pub _base: root::nsISupports, - pub mDocument: root::nsCOMPtr, + pub mDocument: root::nsCOMPtr, pub mPresContext: root::RefPtr, pub mStyleSet: root::mozilla::StyleSetHandle, pub mFrameConstructor: *mut root::nsCSSFrameConstructor, @@ -15469,7 +18996,7 @@ pub mod root { pub mFrameManager: *mut root::nsFrameManagerBase, pub mForwardingContainer: u64, pub mDocAccessible: *mut root::mozilla::a11y::DocAccessible, - pub mReflowContinueTimer: root::nsCOMPtr, + pub mReflowContinueTimer: root::nsCOMPtr, pub mPaintCount: u64, pub mScrollPositionClampingScrollPortSize: root::nsSize, pub mAutoWeakFrames: *mut root::AutoWeakFrame, @@ -15496,10 +19023,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIPresShell_COMTypeInfo { + pub struct nsIPresShell_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub type nsIPresShell_LayerManager = root::mozilla::layers::LayerManager; pub type nsIPresShell_SourceSurface = root::mozilla::gfx::SourceSurface; @@ -15724,8 +19249,8 @@ pub mod root { #[repr(C)] #[derive(Debug)] pub struct nsIPresShell_PointerCaptureInfo { - pub mPendingContent: root::nsCOMPtr, - pub mOverrideContent: root::nsCOMPtr, + pub mPendingContent: root::nsCOMPtr, + pub mOverrideContent: root::nsCOMPtr, } #[test] fn bindgen_test_layout_nsIPresShell_PointerCaptureInfo() { @@ -16004,6 +19529,315 @@ pub mod root { "Alignment of field: " , stringify ! ( nsIPresShell ) , "::" , stringify ! ( mInFlush ) )); } + impl nsIPresShell { + #[inline] + pub fn mStylesHaveChanged(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mStylesHaveChanged(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDidInitialize(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mDidInitialize(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsDestroying(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsDestroying(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsReflowing(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsReflowing(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mPaintingSuppressed(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mPaintingSuppressed(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsThemeSupportDisabled(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsThemeSupportDisabled(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsActive(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsActive(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mFrozen(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mFrozen(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsFirstPaint(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsFirstPaint(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mObservesMutationsForPrint(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mObservesMutationsForPrint(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mSuppressInterruptibleReflows(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mSuppressInterruptibleReflows(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mScrollPositionClampingScrollPortSizeSet(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mScrollPositionClampingScrollPortSizeSet(&mut self, + val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNeedLayoutFlush(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mNeedLayoutFlush(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNeedStyleFlush(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mNeedStyleFlush(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mObservingStyleFlushes(&self) -> bool { + let mask = 64usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 6usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mObservingStyleFlushes(&mut self, val: bool) { + let mask = 64usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 6usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mObservingLayoutFlushes(&self) -> bool { + let mask = 128usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + let val = (field_val & mask) >> 7usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mObservingLayoutFlushes(&mut self, val: bool) { + let mask = 128usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_2) }; + field_val &= !mask; + field_val |= (val << 7usize) & mask; + self._bitfield_2 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNeedThrottledAnimationFlush(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mNeedThrottledAnimationFlush(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_3) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_3 = unsafe { ::std::mem::transmute(field_val) }; + } + } /** * A class that implements nsIWeakReference */ @@ -16037,67 +19871,69 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDOMMutationObserver([u8; 0]); - pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_HAS_LISTENERMANAGER; - pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_HAS_PROPERTIES; - pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_IS_ANONYMOUS_ROOT; - pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE; - pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_IS_NATIVE_ANONYMOUS_ROOT; - pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_FORCE_XBL_BINDINGS; - pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_MAY_BE_IN_BINDING_MNGR; - pub const NODE_IS_EDITABLE: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_IS_EDITABLE; - pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_IS_NATIVE_ANONYMOUS; - pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_IS_IN_SHADOW_TREE; - pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_HAS_EMPTY_SELECTOR; - pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_HAS_SLOW_SELECTOR; - pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_HAS_EDGE_CHILD_SELECTOR; - pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS; - pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_ALL_SELECTOR_FLAGS; - pub const NODE_NEEDS_FRAME: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_NEEDS_FRAME; - pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_DESCENDANTS_NEED_FRAMES; - pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_HAS_ACCESSKEY; - pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_HAS_DIRECTION_RTL; - pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_HAS_DIRECTION_LTR; - pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_ALL_DIRECTION_FLAGS; - pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_CHROME_ONLY_ACCESS; - pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS; - pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_SHARED_RESTYLE_BIT_1; - pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_SHARED_RESTYLE_BIT_2; - pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_SHARED_RESTYLE_BIT_1; + pub struct nsDOMMutationObserver { + _unused: [u8; 0], + } + pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_HAS_LISTENERMANAGER; + pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_HAS_PROPERTIES; + pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_IS_ANONYMOUS_ROOT; + pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE; + pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_IS_NATIVE_ANONYMOUS_ROOT; + pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_FORCE_XBL_BINDINGS; + pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_MAY_BE_IN_BINDING_MNGR; + pub const NODE_IS_EDITABLE: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_IS_EDITABLE; + pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_IS_NATIVE_ANONYMOUS; + pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_IS_IN_SHADOW_TREE; + pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_HAS_EMPTY_SELECTOR; + pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_HAS_SLOW_SELECTOR; + pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_HAS_EDGE_CHILD_SELECTOR; + pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS; + pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_ALL_SELECTOR_FLAGS; + pub const NODE_NEEDS_FRAME: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_NEEDS_FRAME; + pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_DESCENDANTS_NEED_FRAMES; + pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_HAS_ACCESSKEY; + pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_HAS_DIRECTION_RTL; + pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_HAS_DIRECTION_LTR; + pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_ALL_DIRECTION_FLAGS; + pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_CHROME_ONLY_ACCESS; + pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS; + pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_SHARED_RESTYLE_BIT_1; + pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_SHARED_RESTYLE_BIT_2; + pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_SHARED_RESTYLE_BIT_1; pub const NODE_HAS_ANIMATION_ONLY_DIRTY_DESCENDANTS_FOR_SERVO: - root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_SHARED_RESTYLE_BIT_2; - pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_99 = - _bindgen_ty_99::NODE_TYPE_SPECIFIC_BITS_OFFSET; + root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_SHARED_RESTYLE_BIT_2; + pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_72 = + _bindgen_ty_72::NODE_TYPE_SPECIFIC_BITS_OFFSET; #[repr(u32)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum _bindgen_ty_99 { + pub enum _bindgen_ty_72 { NODE_HAS_LISTENERMANAGER = 4, NODE_HAS_PROPERTIES = 8, NODE_IS_ANONYMOUS_ROOT = 16, @@ -16127,1756 +19963,28 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsScanner([u8; 0]); - /*************************************************************** - Notes: - ***************************************************************/ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsITokenizer { - pub _base: root::nsISupports, + pub struct nsRuleWalker { + _unused: [u8; 0], } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsITokenizer_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsITokenizer() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsITokenizer ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsITokenizer ) )); - } - impl Clone for nsITokenizer { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsDTDMode { - eDTDMode_unknown = 0, - eDTDMode_quirks = 1, - eDTDMode_almost_standards = 2, - eDTDMode_full_standards = 3, - eDTDMode_autodetect = 4, - eDTDMode_fragment = 5, + pub struct nsTextFragment { + _unused: [u8; 0], } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIContentSink([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct CParserContext([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIDTD { - pub _base: root::nsISupports, + pub struct nsXBLBinding { + _unused: [u8; 0], } #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDTD_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIDTD() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIDTD ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIDTD ) )); - } - impl Clone for nsIDTD { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsParserBase { - pub _base: root::nsISupports, - } - #[test] - fn bindgen_test_layout_nsParserBase() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsParserBase ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsParserBase ) )); - } - impl Clone for nsParserBase { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum eParserCommands { - eViewNormal = 0, - eViewSource = 1, - eViewFragment = 2, - eViewErrors = 3, - } - /** - * This GECKO-INTERNAL interface is on track to being REMOVED (or refactored - * to the point of being near-unrecognizable). - * - * Please DO NOT #include this file in comm-central code, in your XULRunner - * app or binary extensions. - * - * Please DO NOT #include this into new files even inside Gecko. It is more - * likely than not that #including this header is the wrong thing to do. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIParser { - pub _base: root::nsParserBase, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIParser_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIParser() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsIParser ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsIParser ) )); - } - impl Clone for nsIParser { - fn clone(&self) -> Self { *self } - } - pub type nscoord = i32; - pub type nsIntPoint = root::mozilla::gfx::IntPoint; - /** - * Currently needs to be 'double' for Cairo compatibility. Could - * become 'float', perhaps, in some configurations. - */ - pub type gfxFloat = f64; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct gfxSize { - pub _bindgen_opaque_blob: [u64; 2usize], - } - pub type gfxSize_Super = [u64; 2usize]; - #[test] - fn bindgen_test_layout_gfxSize() { - assert_eq!(::std::mem::size_of::() , 16usize , concat ! ( - "Size of: " , stringify ! ( gfxSize ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( gfxSize ) )); - } - impl Clone for gfxSize { - fn clone(&self) -> Self { *self } - } - pub type nsIntMargin = root::mozilla::gfx::IntMargin; - pub type nsIntRect = root::mozilla::gfx::IntRect; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct pixman_region32_data { - pub size: ::std::os::raw::c_long, - pub numRects: ::std::os::raw::c_long, - } - #[test] - fn bindgen_test_layout_pixman_region32_data() { - assert_eq!(::std::mem::size_of::() , 16usize , - concat ! ( - "Size of: " , stringify ! ( pixman_region32_data ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( pixman_region32_data ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_region32_data ) ) . size as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - pixman_region32_data ) , "::" , stringify ! ( size ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_region32_data ) ) . numRects - as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - pixman_region32_data ) , "::" , stringify ! ( numRects ) - )); - } - impl Clone for pixman_region32_data { - fn clone(&self) -> Self { *self } - } - pub type pixman_region32_data_t = root::pixman_region32_data; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct pixman_box32 { - pub x1: i32, - pub y1: i32, - pub x2: i32, - pub y2: i32, - } - #[test] - fn bindgen_test_layout_pixman_box32() { - assert_eq!(::std::mem::size_of::() , 16usize , concat ! - ( "Size of: " , stringify ! ( pixman_box32 ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat ! - ( "Alignment of " , stringify ! ( pixman_box32 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_box32 ) ) . x1 as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_box32 ) , - "::" , stringify ! ( x1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_box32 ) ) . y1 as * const _ as - usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_box32 ) , - "::" , stringify ! ( y1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_box32 ) ) . x2 as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_box32 ) , - "::" , stringify ! ( x2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_box32 ) ) . y2 as * const _ as - usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_box32 ) , - "::" , stringify ! ( y2 ) )); - } - impl Clone for pixman_box32 { - fn clone(&self) -> Self { *self } - } - pub type pixman_box32_t = root::pixman_box32; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct pixman_region32 { - pub extents: root::pixman_box32_t, - pub data: *mut root::pixman_region32_data_t, - } - #[test] - fn bindgen_test_layout_pixman_region32() { - assert_eq!(::std::mem::size_of::() , 24usize , concat - ! ( "Size of: " , stringify ! ( pixman_region32 ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( pixman_region32 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_region32 ) ) . extents as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_region32 ) , - "::" , stringify ! ( extents ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pixman_region32 ) ) . data as * const - _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( pixman_region32 ) , - "::" , stringify ! ( data ) )); - } - impl Clone for pixman_region32 { - fn clone(&self) -> Self { *self } - } - pub type pixman_region32_t = root::pixman_region32; - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum VisitSide { TOP = 0, BOTTOM = 1, LEFT = 2, RIGHT = 3, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsContentList([u8; 0]); - /** - * The signature of the timer callback function passed to initWithFuncCallback. - * This is the function that will get called when the timer expires if the - * timer is initialized via initWithFuncCallback. - * - * @param aTimer the timer which has expired - * @param aClosure opaque parameter passed to initWithFuncCallback - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsITimer { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsITimer_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const nsITimer_TYPE_ONE_SHOT: root::nsITimer__bindgen_ty_1 = - nsITimer__bindgen_ty_1::TYPE_ONE_SHOT; - pub const nsITimer_TYPE_REPEATING_SLACK: root::nsITimer__bindgen_ty_1 = - nsITimer__bindgen_ty_1::TYPE_REPEATING_SLACK; - pub const nsITimer_TYPE_REPEATING_PRECISE: root::nsITimer__bindgen_ty_1 = - nsITimer__bindgen_ty_1::TYPE_REPEATING_PRECISE; - pub const nsITimer_TYPE_REPEATING_PRECISE_CAN_SKIP: - root::nsITimer__bindgen_ty_1 = - nsITimer__bindgen_ty_1::TYPE_REPEATING_PRECISE_CAN_SKIP; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsITimer__bindgen_ty_1 { - TYPE_ONE_SHOT = 0, - TYPE_REPEATING_SLACK = 1, - TYPE_REPEATING_PRECISE = 2, - TYPE_REPEATING_PRECISE_CAN_SKIP = 3, - } - #[test] - fn bindgen_test_layout_nsITimer() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsITimer ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsITimer ) )); - } - impl Clone for nsITimer { - fn clone(&self) -> Self { *self } - } - pub type nsTimerCallbackFunc = - ::std::option::Option; - /** - * The signature of the timer name callback function passed to - * initWithNameableFuncCallback. - * This is the function that will get called when timer profiling is enabled - * via the "TimerFirings" log module. - * - * @param aTimer the timer which has expired - * @param aAnonymize whether the name should avoid including privacy sensitive info - * @param aClosure opaque parameter passed to initWithFuncCallback - * @param aBuf a buffer in which to put the name - * @param aLen the length of the buffer - */ - pub type nsTimerNameCallbackFunc = - ::std::option::Option; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsITimerCallback { - pub _base: root::nsISupports, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsITimerCallback_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsITimerCallback() { - assert_eq!(::std::mem::size_of::() , 8usize , concat - ! ( "Size of: " , stringify ! ( nsITimerCallback ) )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsITimerCallback ) )); - } - impl Clone for nsITimerCallback { - fn clone(&self) -> Self { *self } - } - /** - * Data used to track the expiration state of an object. We promise that this - * is 32 bits so that objects that includes this as a field can pad and align - * efficiently. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsExpirationState { - pub _bitfield_1: u32, - pub __bindgen_align: [u32; 0usize], - } - pub const nsExpirationState_NOT_TRACKED: - root::nsExpirationState__bindgen_ty_1 = - nsExpirationState__bindgen_ty_1::NOT_TRACKED; - pub const nsExpirationState_MAX_INDEX_IN_GENERATION: - root::nsExpirationState__bindgen_ty_1 = - nsExpirationState__bindgen_ty_1::MAX_INDEX_IN_GENERATION; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsExpirationState__bindgen_ty_1 { - NOT_TRACKED = 15, - MAX_INDEX_IN_GENERATION = 268435455, - } - #[test] - fn bindgen_test_layout_nsExpirationState() { - assert_eq!(::std::mem::size_of::() , 4usize , - concat ! ( "Size of: " , stringify ! ( nsExpirationState ) - )); - assert_eq! (::std::mem::align_of::() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( nsExpirationState ) )); - } - impl Clone for nsExpirationState { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct gfxUserFontSet([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct imgIRequest { - pub _base: root::nsIRequest, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct imgIRequest_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - pub const imgIRequest_STATUS_NONE: root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_NONE; - pub const imgIRequest_STATUS_SIZE_AVAILABLE: - root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_SIZE_AVAILABLE; - pub const imgIRequest_STATUS_LOAD_COMPLETE: - root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_LOAD_COMPLETE; - pub const imgIRequest_STATUS_ERROR: root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_ERROR; - pub const imgIRequest_STATUS_FRAME_COMPLETE: - root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_FRAME_COMPLETE; - pub const imgIRequest_STATUS_DECODE_COMPLETE: - root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_DECODE_COMPLETE; - pub const imgIRequest_STATUS_IS_ANIMATED: root::imgIRequest__bindgen_ty_1 - = - imgIRequest__bindgen_ty_1::STATUS_IS_ANIMATED; - pub const imgIRequest_STATUS_HAS_TRANSPARENCY: - root::imgIRequest__bindgen_ty_1 = - imgIRequest__bindgen_ty_1::STATUS_HAS_TRANSPARENCY; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum imgIRequest__bindgen_ty_1 { - STATUS_NONE = 0, - STATUS_SIZE_AVAILABLE = 1, - STATUS_LOAD_COMPLETE = 2, - STATUS_ERROR = 4, - STATUS_FRAME_COMPLETE = 8, - STATUS_DECODE_COMPLETE = 16, - STATUS_IS_ANIMATED = 32, - STATUS_HAS_TRANSPARENCY = 64, - } - pub const imgIRequest_CORS_NONE: root::imgIRequest__bindgen_ty_2 = - imgIRequest__bindgen_ty_2::CORS_NONE; - pub const imgIRequest_CORS_ANONYMOUS: root::imgIRequest__bindgen_ty_2 = - imgIRequest__bindgen_ty_2::CORS_ANONYMOUS; - pub const imgIRequest_CORS_USE_CREDENTIALS: - root::imgIRequest__bindgen_ty_2 = - imgIRequest__bindgen_ty_2::CORS_USE_CREDENTIALS; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum imgIRequest__bindgen_ty_2 { - CORS_NONE = 1, - 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::() , 8usize , concat ! ( - "Size of: " , stringify ! ( imgIRequest ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( imgIRequest ) )); - } - impl Clone for imgIRequest { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsDocShell([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsDOMNavigationTiming([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsFrameLoader([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsHTMLCSSStyleSheet([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsHTMLStyleSheet([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIBFCacheEntry([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDocumentEncoder([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIDOMNodeFilter([u8; 0]); - /** - * An internal interface - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsIHTMLCollection { - pub _base: root::nsIDOMHTMLCollection, - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIHTMLCollection_COMTypeInfo { - pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, - } - #[test] - fn bindgen_test_layout_nsIHTMLCollection() { - assert_eq!(::std::mem::size_of::() , 8usize , - concat ! ( "Size of: " , stringify ! ( nsIHTMLCollection ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsIHTMLCollection ) )); - } - impl Clone for nsIHTMLCollection { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsILayoutHistoryState([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIObjectLoadingContent([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIStructuredCloneContainer([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsViewManager([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsRange([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsScriptLoader([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsSMILAnimationController([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsSVGElement([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsTextNode([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsWindowSizes([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsDOMCaretPosition([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsViewportInfo([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct ProfilerBacktrace([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy)] - pub struct ProfilerBacktraceDestructor { - pub _address: u8, - } - #[test] - fn bindgen_test_layout_ProfilerBacktraceDestructor() { - assert_eq!(::std::mem::size_of::() , - 1usize , concat ! ( - "Size of: " , stringify ! ( ProfilerBacktraceDestructor ) - )); - assert_eq! (::std::mem::align_of::() , - 1usize , concat ! ( - "Alignment of " , stringify ! ( - ProfilerBacktraceDestructor ) )); - } - impl Clone for ProfilerBacktraceDestructor { - fn clone(&self) -> Self { *self } - } - /** - * Utility class to provide scaling defined in a keySplines element. - */ - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsSMILKeySpline { - pub mX1: f64, - pub mY1: f64, - pub mX2: f64, - pub mY2: f64, - pub mSampleValues: [f64; 11usize], - } - pub const nsSMILKeySpline_kSplineTableSize: - root::nsSMILKeySpline__bindgen_ty_1 = - nsSMILKeySpline__bindgen_ty_1::kSplineTableSize; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsSMILKeySpline__bindgen_ty_1 { kSplineTableSize = 11, } - extern "C" { - #[link_name = "_ZN15nsSMILKeySpline15kSampleStepSizeE"] - pub static nsSMILKeySpline_kSampleStepSize: f64; - } - #[test] - fn bindgen_test_layout_nsSMILKeySpline() { - assert_eq!(::std::mem::size_of::() , 120usize , - concat ! ( "Size of: " , stringify ! ( nsSMILKeySpline ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsSMILKeySpline ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSMILKeySpline ) ) . mX1 as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , - "::" , stringify ! ( mX1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSMILKeySpline ) ) . mY1 as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , - "::" , stringify ! ( mY1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSMILKeySpline ) ) . mX2 as * const - _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , - "::" , stringify ! ( mX2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSMILKeySpline ) ) . mY2 as * const - _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , - "::" , stringify ! ( mY2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsSMILKeySpline ) ) . mSampleValues - as * const _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , - "::" , stringify ! ( mSampleValues ) )); - } - impl Clone for nsSMILKeySpline { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - pub struct nsQueryFrame__bindgen_vtable { - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsQueryFrame { - pub vtable_: *const nsQueryFrame__bindgen_vtable, - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsQueryFrame_FrameIID { - BRFrame_id = 0, - DetailsFrame_id = 1, - nsAutoRepeatBoxFrame_id = 2, - nsBCTableCellFrame_id = 3, - nsBackdropFrame_id = 4, - nsBlockFrame_id = 5, - nsBox_id = 6, - nsBoxFrame_id = 7, - nsBulletFrame_id = 8, - nsButtonBoxFrame_id = 9, - nsCanvasFrame_id = 10, - nsColorControlFrame_id = 11, - nsColumnSetFrame_id = 12, - nsComboboxControlFrame_id = 13, - nsComboboxDisplayFrame_id = 14, - nsContainerFrame_id = 15, - nsContinuingTextFrame_id = 16, - nsDateTimeControlFrame_id = 17, - nsDeckFrame_id = 18, - nsDocElementBoxFrame_id = 19, - nsFieldSetFrame_id = 20, - nsFileControlFrame_id = 21, - nsFirstLetterFrame_id = 22, - nsFirstLineFrame_id = 23, - nsFlexContainerFrame_id = 24, - nsFormControlFrame_id = 25, - nsFrame_id = 26, - nsGfxButtonControlFrame_id = 27, - nsGfxCheckboxControlFrame_id = 28, - nsGfxRadioControlFrame_id = 29, - nsGridContainerFrame_id = 30, - nsGridRowGroupFrame_id = 31, - nsGridRowLeafFrame_id = 32, - nsGroupBoxFrame_id = 33, - nsHTMLButtonControlFrame_id = 34, - nsHTMLCanvasFrame_id = 35, - nsHTMLFramesetBlankFrame_id = 36, - nsHTMLFramesetBorderFrame_id = 37, - nsHTMLFramesetFrame_id = 38, - nsHTMLScrollFrame_id = 39, - nsIAnonymousContentCreator_id = 40, - nsIComboboxControlFrame_id = 41, - nsIFormControlFrame_id = 42, - nsIFrame_id = 43, - nsIFrameFrame_id = 44, - nsIListControlFrame_id = 45, - nsIMathMLFrame_id = 46, - nsIMenuFrame_id = 47, - nsIObjectFrame_id = 48, - nsIPageSequenceFrame_id = 49, - nsIPercentBSizeObserver_id = 50, - nsIRootBox_id = 51, - nsSVGDisplayableFrame_id = 52, - nsISVGSVGFrame_id = 53, - nsIScrollableFrame_id = 54, - nsIScrollbarMediator_id = 55, - nsISelectControlFrame_id = 56, - nsIStatefulFrame_id = 57, - nsITableCellLayout_id = 58, - nsITableLayout_id = 59, - nsITextControlFrame_id = 60, - nsITreeBoxObject_id = 61, - nsImageBoxFrame_id = 62, - nsImageControlFrame_id = 63, - nsImageFrame_id = 64, - nsInlineFrame_id = 65, - nsLeafBoxFrame_id = 66, - nsLeafFrame_id = 67, - nsLegendFrame_id = 68, - nsListBoxBodyFrame_id = 69, - nsListControlFrame_id = 70, - nsListItemFrame_id = 71, - nsMathMLContainerFrame_id = 72, - nsMathMLFrame_id = 73, - nsMathMLmactionFrame_id = 74, - nsMathMLmathBlockFrame_id = 75, - nsMathMLmathInlineFrame_id = 76, - nsMathMLmencloseFrame_id = 77, - nsMathMLmfencedFrame_id = 78, - nsMathMLmfracFrame_id = 79, - nsMathMLmmultiscriptsFrame_id = 80, - nsMathMLmoFrame_id = 81, - nsMathMLmoverFrame_id = 82, - nsMathMLmpaddedFrame_id = 83, - nsMathMLmrootFrame_id = 84, - nsMathMLmrowFrame_id = 85, - nsMathMLmspaceFrame_id = 86, - nsMathMLmsqrtFrame_id = 87, - nsMathMLmstyleFrame_id = 88, - nsMathMLmtableFrame_id = 89, - nsMathMLmtableWrapperFrame_id = 90, - nsMathMLmtdFrame_id = 91, - nsMathMLmtdInnerFrame_id = 92, - nsMathMLmtrFrame_id = 93, - nsMathMLmunderFrame_id = 94, - nsMathMLmunderoverFrame_id = 95, - nsMathMLsemanticsFrame_id = 96, - nsMathMLTokenFrame_id = 97, - nsMenuBarFrame_id = 98, - nsMenuFrame_id = 99, - nsMenuPopupFrame_id = 100, - nsMeterFrame_id = 101, - nsNumberControlFrame_id = 102, - nsPluginFrame_id = 103, - nsPageBreakFrame_id = 104, - nsPageContentFrame_id = 105, - nsPageFrame_id = 106, - nsPlaceholderFrame_id = 107, - nsPopupSetFrame_id = 108, - nsProgressFrame_id = 109, - nsProgressMeterFrame_id = 110, - nsRangeFrame_id = 111, - nsResizerFrame_id = 112, - nsRootBoxFrame_id = 113, - nsRubyBaseContainerFrame_id = 114, - nsRubyBaseFrame_id = 115, - nsRubyContentFrame_id = 116, - nsRubyFrame_id = 117, - nsRubyTextContainerFrame_id = 118, - nsRubyTextFrame_id = 119, - nsScrollbarButtonFrame_id = 120, - nsScrollbarFrame_id = 121, - nsSelectsAreaFrame_id = 122, - nsSimplePageSequenceFrame_id = 123, - nsSliderFrame_id = 124, - nsSplittableFrame_id = 125, - nsSplitterFrame_id = 126, - nsStackFrame_id = 127, - nsSubDocumentFrame_id = 128, - nsSVGAFrame_id = 129, - nsSVGClipPathFrame_id = 130, - nsSVGContainerFrame_id = 131, - nsSVGDisplayContainerFrame_id = 132, - SVGFEContainerFrame_id = 133, - SVGFEImageFrame_id = 134, - SVGFELeafFrame_id = 135, - SVGFEUnstyledLeafFrame_id = 136, - nsSVGFilterFrame_id = 137, - nsSVGForeignObjectFrame_id = 138, - nsSVGGenericContainerFrame_id = 139, - nsSVGGFrame_id = 140, - nsSVGGradientFrame_id = 141, - nsSVGImageFrame_id = 142, - nsSVGInnerSVGFrame_id = 143, - nsSVGLinearGradientFrame_id = 144, - nsSVGMarkerFrame_id = 145, - nsSVGMarkerAnonChildFrame_id = 146, - nsSVGMaskFrame_id = 147, - nsSVGOuterSVGFrame_id = 148, - nsSVGOuterSVGAnonChildFrame_id = 149, - nsSVGPaintServerFrame_id = 150, - SVGGeometryFrame_id = 151, - nsSVGPatternFrame_id = 152, - nsSVGRadialGradientFrame_id = 153, - nsSVGStopFrame_id = 154, - nsSVGSwitchFrame_id = 155, - SVGTextFrame_id = 156, - nsSVGUseFrame_id = 157, - SVGViewFrame_id = 158, - nsTableCellFrame_id = 159, - nsTableColFrame_id = 160, - nsTableColGroupFrame_id = 161, - nsTableFrame_id = 162, - nsTableWrapperFrame_id = 163, - nsTableRowFrame_id = 164, - nsTableRowGroupFrame_id = 165, - nsTextBoxFrame_id = 166, - nsTextControlFrame_id = 167, - nsTextFrame_id = 168, - nsTitleBarFrame_id = 169, - nsTreeBodyFrame_id = 170, - nsTreeColFrame_id = 171, - nsVideoFrame_id = 172, - nsXULLabelFrame_id = 173, - nsXULScrollFrame_id = 174, - ViewportFrame_id = 175, - NON_FRAME_MARKER = 536870912, - } - #[test] - fn bindgen_test_layout_nsQueryFrame() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsQueryFrame ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsQueryFrame ) )); - } - impl Clone for nsQueryFrame { - fn clone(&self) -> Self { *self } - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsCSSTokenSerializationType { - eCSSTokenSerialization_Nothing = 0, - eCSSTokenSerialization_Whitespace = 1, - eCSSTokenSerialization_AtKeyword_or_Hash = 2, - eCSSTokenSerialization_Number = 3, - eCSSTokenSerialization_Dimension = 4, - eCSSTokenSerialization_Percentage = 5, - eCSSTokenSerialization_URange = 6, - eCSSTokenSerialization_URL_or_BadURL = 7, - eCSSTokenSerialization_Function = 8, - eCSSTokenSerialization_Ident = 9, - eCSSTokenSerialization_CDC = 10, - eCSSTokenSerialization_DashMatch = 11, - eCSSTokenSerialization_ContainsMatch = 12, - eCSSTokenSerialization_Symbol_Hash = 13, - eCSSTokenSerialization_Symbol_At = 14, - eCSSTokenSerialization_Symbol_Dot_or_Plus = 15, - eCSSTokenSerialization_Symbol_Minus = 16, - eCSSTokenSerialization_Symbol_OpenParen = 17, - eCSSTokenSerialization_Symbol_Question = 18, - eCSSTokenSerialization_Symbol_Assorted = 19, - eCSSTokenSerialization_Symbol_Equals = 20, - eCSSTokenSerialization_Symbol_Bar = 21, - eCSSTokenSerialization_Symbol_Slash = 22, - eCSSTokenSerialization_Symbol_Asterisk = 23, - eCSSTokenSerialization_Other = 24, - } - pub type nscolor = u32; - #[repr(C)] - #[derive(Debug, Copy)] - pub struct gfxFontFeature { - pub mTag: u32, - pub mValue: u32, - } - #[test] - fn bindgen_test_layout_gfxFontFeature() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! - ( "Size of: " , stringify ! ( gfxFontFeature ) )); - assert_eq! (::std::mem::align_of::() , 4usize , concat - ! ( "Alignment of " , stringify ! ( gfxFontFeature ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeature ) ) . mTag as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxFontFeature ) , - "::" , stringify ! ( mTag ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeature ) ) . mValue as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxFontFeature ) , - "::" , stringify ! ( mValue ) )); - } - impl Clone for gfxFontFeature { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct gfxAlternateValue { - pub alternate: u32, - pub value: ::nsstring::nsStringRepr, - } - #[test] - fn bindgen_test_layout_gfxAlternateValue() { - assert_eq!(::std::mem::size_of::() , 24usize , - concat ! ( "Size of: " , stringify ! ( gfxAlternateValue ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( gfxAlternateValue ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxAlternateValue ) ) . alternate as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxAlternateValue ) - , "::" , stringify ! ( alternate ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxAlternateValue ) ) . value as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( gfxAlternateValue ) - , "::" , stringify ! ( value ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct gfxFontFeatureValueSet { - pub mRefCnt: root::nsAutoRefCnt, - pub mFontFeatureValues: [u64; 5usize], - } - pub type gfxFontFeatureValueSet_HasThreadSafeRefCnt = - root::mozilla::FalseType; - #[repr(C)] - #[derive(Debug)] - pub struct gfxFontFeatureValueSet_ValueList { - pub name: ::nsstring::nsStringRepr, - pub featureSelectors: root::nsTArray<::std::os::raw::c_uint>, - } - #[test] - fn bindgen_test_layout_gfxFontFeatureValueSet_ValueList() { - assert_eq!(::std::mem::size_of::() , - 24usize , concat ! ( - "Size of: " , stringify ! ( - gfxFontFeatureValueSet_ValueList ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - gfxFontFeatureValueSet_ValueList ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeatureValueSet_ValueList ) ) - . name as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_ValueList ) , "::" , stringify ! ( - name ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeatureValueSet_ValueList ) ) - . featureSelectors as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_ValueList ) , "::" , stringify ! ( - featureSelectors ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct gfxFontFeatureValueSet_FeatureValues { - pub alternate: u32, - pub valuelist: root::nsTArray, - } - #[test] - fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValues() { - assert_eq!(::std::mem::size_of::() - , 16usize , concat ! ( - "Size of: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValues ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - gfxFontFeatureValueSet_FeatureValues ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const gfxFontFeatureValueSet_FeatureValues ) ) - . alternate as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValues ) , "::" , stringify - ! ( alternate ) )); - assert_eq! (unsafe { - & ( - * ( 0 as * const gfxFontFeatureValueSet_FeatureValues ) ) - . valuelist as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValues ) , "::" , stringify - ! ( valuelist ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct gfxFontFeatureValueSet_FeatureValueHashKey { - pub mFamily: ::nsstring::nsStringRepr, - pub mPropVal: u32, - pub mName: ::nsstring::nsStringRepr, - } - #[test] - fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValueHashKey() { - assert_eq!(::std::mem::size_of::() - , 40usize , concat ! ( - "Size of: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashKey ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashKey ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) - ) . mFamily as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , - stringify ! ( mFamily ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) - ) . mPropVal as * const _ as usize } , 16usize , concat ! - ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , - stringify ! ( mPropVal ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const gfxFontFeatureValueSet_FeatureValueHashKey ) - ) . mName as * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashKey ) , "::" , - stringify ! ( mName ) )); - } - #[repr(C)] - #[derive(Debug)] - pub struct gfxFontFeatureValueSet_FeatureValueHashEntry { - pub _base: root::PLDHashEntryHdr, - pub mKey: root::gfxFontFeatureValueSet_FeatureValueHashKey, - pub mValues: root::nsTArray<::std::os::raw::c_uint>, - } - pub type gfxFontFeatureValueSet_FeatureValueHashEntry_KeyType = - *const root::gfxFontFeatureValueSet_FeatureValueHashKey; - pub type gfxFontFeatureValueSet_FeatureValueHashEntry_KeyTypePointer = - *const root::gfxFontFeatureValueSet_FeatureValueHashKey; - pub const gfxFontFeatureValueSet_FeatureValueHashEntry_ALLOW_MEMMOVE: - root::gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1 - = - gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1::ALLOW_MEMMOVE; - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum gfxFontFeatureValueSet_FeatureValueHashEntry__bindgen_ty_1 { - ALLOW_MEMMOVE = 1, - } - #[test] - fn bindgen_test_layout_gfxFontFeatureValueSet_FeatureValueHashEntry() { - assert_eq!(::std::mem::size_of::() - , 56usize , concat ! ( - "Size of: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashEntry ) )); - assert_eq! (::std::mem::align_of::() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashEntry ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const gfxFontFeatureValueSet_FeatureValueHashEntry - ) ) . mKey as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashEntry ) , "::" , - stringify ! ( mKey ) )); - assert_eq! (unsafe { - & ( - * ( - 0 as * const gfxFontFeatureValueSet_FeatureValueHashEntry - ) ) . mValues as * const _ as usize } , 48usize , concat ! - ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet_FeatureValueHashEntry ) , "::" , - stringify ! ( mValues ) )); - } - #[test] - fn bindgen_test_layout_gfxFontFeatureValueSet() { - assert_eq!(::std::mem::size_of::() , 48usize , - concat ! ( - "Size of: " , stringify ! ( gfxFontFeatureValueSet ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( gfxFontFeatureValueSet ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeatureValueSet ) ) . mRefCnt - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet ) , "::" , stringify ! ( mRefCnt ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const gfxFontFeatureValueSet ) ) . - mFontFeatureValues as * const _ as usize } , 8usize , - concat ! ( - "Alignment of field: " , stringify ! ( - gfxFontFeatureValueSet ) , "::" , stringify ! ( - mFontFeatureValues ) )); - } - pub type gfxFontVariation = root::mozilla::gfx::FontVariation; - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct gfxFontStyle([u8; 0]); - pub const kGenericFont_NONE: u8 = 0; - pub const kGenericFont_moz_variable: u8 = 0; - pub const kGenericFont_moz_fixed: u8 = 1; - pub const kGenericFont_serif: u8 = 2; - pub const kGenericFont_sans_serif: u8 = 4; - pub const kGenericFont_monospace: u8 = 8; - pub const kGenericFont_cursive: u8 = 16; - pub const kGenericFont_fantasy: u8 = 32; - #[repr(C)] - #[derive(Debug)] - pub struct nsFont { - pub fontlist: root::mozilla::FontFamilyList, - pub style: u8, - pub systemFont: bool, - pub variantCaps: u8, - pub variantNumeric: u8, - pub variantPosition: u8, - pub variantWidth: u8, - pub variantLigatures: u16, - pub variantEastAsian: u16, - pub variantAlternates: u16, - pub smoothing: u8, - pub weight: u16, - pub stretch: i16, - pub kerning: u8, - pub synthesis: u8, - pub size: root::nscoord, - pub sizeAdjust: f32, - pub alternateValues: root::nsTArray, - pub featureValueLookup: root::RefPtr, - pub fontFeatureSettings: root::nsTArray, - pub fontVariationSettings: root::nsTArray, - pub languageOverride: u32, - } - #[test] - fn bindgen_test_layout_nsFont() { - assert_eq!(::std::mem::size_of::() , 88usize , concat ! ( - "Size of: " , stringify ! ( nsFont ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . fontlist as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( fontlist ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . style as * const _ as - usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( style ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . systemFont as * const _ - as usize } , 17usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( systemFont ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantCaps as * const _ - as usize } , 18usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantCaps ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantNumeric as * - const _ as usize } , 19usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantNumeric ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantPosition as * - const _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantPosition ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantWidth as * const - _ as usize } , 21usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantWidth ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantLigatures as * - const _ as usize } , 22usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantLigatures ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantEastAsian as * - const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantEastAsian ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . variantAlternates as * - const _ as usize } , 26usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( variantAlternates ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . smoothing as * const _ - as usize } , 28usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( smoothing ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . weight as * const _ as - usize } , 30usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( weight ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . stretch as * const _ as - usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( stretch ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . kerning as * const _ as - usize } , 34usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( kerning ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . synthesis as * const _ - as usize } , 35usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( synthesis ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . size as * const _ as - usize } , 36usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( size ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . sizeAdjust as * const _ - as usize } , 40usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( sizeAdjust ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . alternateValues as * - const _ as usize } , 48usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( alternateValues ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . featureValueLookup as * - const _ as usize } , 56usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( featureValueLookup ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . fontFeatureSettings as * - const _ as usize } , 64usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( fontFeatureSettings ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . fontVariationSettings as - * const _ as usize } , 72usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( fontVariationSettings ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFont ) ) . languageOverride as * - const _ as usize } , 80usize , concat ! ( - "Alignment of field: " , stringify ! ( nsFont ) , "::" , - stringify ! ( languageOverride ) )); - } - /** - * An array of objects, similar to AutoTArray but which is memmovable. It - * always has length >= 1. - */ - #[repr(C)] - #[derive(Debug)] - pub struct nsStyleAutoArray { - pub mFirstElement: T, - pub mOtherElements: root::nsTArray, - } - #[repr(i32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsStyleAutoArray_WithSingleInitialElement { - WITH_SINGLE_INITIAL_ELEMENT = 0, - } - pub const nsStyleUnit_eStyleUnit_MAX: root::nsStyleUnit = - nsStyleUnit::eStyleUnit_Calc; - #[repr(u8)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - 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(Debug, Copy)] - pub struct nsStyleUnion { - pub mInt: root::__BindgenUnionField, - pub mFloat: root::__BindgenUnionField, - pub mPointer: root::__BindgenUnionField<*mut ::std::os::raw::c_void>, - pub bindgen_union_field: u64, - } - #[test] - fn bindgen_test_layout_nsStyleUnion() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsStyleUnion ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsStyleUnion ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleUnion ) ) . mInt as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleUnion ) , - "::" , stringify ! ( mInt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleUnion ) ) . mFloat as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleUnion ) , - "::" , stringify ! ( mFloat ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleUnion ) ) . mPointer as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleUnion ) , - "::" , stringify ! ( mPointer ) )); - } - impl Clone for nsStyleUnion { - fn clone(&self) -> Self { *self } - } - /** - * 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)] - #[derive(Debug)] - pub struct nsStyleCoord { - mUnit: root::nsStyleUnit, - mValue: root::nsStyleUnion, - } - #[repr(C)] - #[derive(Debug, Copy)] - pub struct nsStyleCoord_CalcValue { - pub mLength: root::nscoord, - pub mPercent: f32, - pub mHasPercent: bool, - } - #[test] - fn bindgen_test_layout_nsStyleCoord_CalcValue() { - assert_eq!(::std::mem::size_of::() , 12usize , - concat ! ( - "Size of: " , stringify ! ( nsStyleCoord_CalcValue ) )); - assert_eq! (::std::mem::align_of::() , 4usize - , concat ! ( - "Alignment of " , stringify ! ( nsStyleCoord_CalcValue ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . mLength - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsStyleCoord_CalcValue ) , "::" , stringify ! ( mLength ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . mPercent - as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsStyleCoord_CalcValue ) , "::" , stringify ! ( mPercent ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord_CalcValue ) ) . - mHasPercent as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsStyleCoord_CalcValue ) , "::" , stringify ! ( - mHasPercent ) )); - } - impl Clone for nsStyleCoord_CalcValue { - fn clone(&self) -> Self { *self } - } - #[repr(C)] - #[derive(Debug)] - pub struct nsStyleCoord_Calc { - pub _base: root::nsStyleCoord_CalcValue, - pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, - } - pub type nsStyleCoord_Calc_HasThreadSafeRefCnt = root::mozilla::TrueType; - #[test] - fn bindgen_test_layout_nsStyleCoord_Calc() { - assert_eq!(::std::mem::size_of::() , 24usize , - concat ! ( "Size of: " , stringify ! ( nsStyleCoord_Calc ) - )); - assert_eq! (::std::mem::align_of::() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( nsStyleCoord_Calc ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord_Calc ) ) . mRefCnt as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleCoord_Calc ) - , "::" , stringify ! ( mRefCnt ) )); - } - #[repr(u32)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsStyleCoord_CoordConstructorType { CoordConstructor = 0, } - #[test] - fn bindgen_test_layout_nsStyleCoord() { - assert_eq!(::std::mem::size_of::() , 16usize , concat ! - ( "Size of: " , stringify ! ( nsStyleCoord ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsStyleCoord ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord ) ) . mUnit as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleCoord ) , - "::" , stringify ! ( mUnit ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCoord ) ) . mValue as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleCoord ) , - "::" , stringify ! ( mValue ) )); - } - impl nsStyleCoord { - #[inline] - pub unsafe fn get_mUnit(&self) -> &root::nsStyleUnit { &self.mUnit } - #[inline] - pub unsafe fn get_mUnit_mut(&mut self) -> &mut root::nsStyleUnit { - &mut self.mUnit - } - #[inline] - pub unsafe fn get_mValue(&self) -> &root::nsStyleUnion { - &self.mValue - } - #[inline] - pub unsafe fn get_mValue_mut(&mut self) -> &mut root::nsStyleUnion { - &mut self.mValue - } - } - /** - * 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)] - #[derive(Debug)] - pub struct nsStyleSides { - mUnits: [root::nsStyleUnit; 4usize], - mValues: [root::nsStyleUnion; 4usize], - } - #[test] - fn bindgen_test_layout_nsStyleSides() { - assert_eq!(::std::mem::size_of::() , 40usize , concat ! - ( "Size of: " , stringify ! ( nsStyleSides ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! - ( "Alignment of " , stringify ! ( nsStyleSides ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleSides ) ) . mUnits as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleSides ) , - "::" , stringify ! ( mUnits ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleSides ) ) . mValues as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleSides ) , - "::" , stringify ! ( mValues ) )); - } - impl nsStyleSides { - #[inline] - pub unsafe fn get_mUnits(&self) -> &[root::nsStyleUnit; 4usize] { - &self.mUnits - } - #[inline] - pub unsafe fn get_mUnits_mut(&mut self) - -> &mut [root::nsStyleUnit; 4usize] { - &mut self.mUnits - } - #[inline] - pub unsafe fn get_mValues(&self) -> &[root::nsStyleUnion; 4usize] { - &self.mValues - } - #[inline] - pub unsafe fn get_mValues_mut(&mut self) - -> &mut [root::nsStyleUnion; 4usize] { - &mut self.mValues - } - } - /** - * Class that represents a set of top-left/top-right/bottom-right/bottom-left - * 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)] - #[derive(Debug)] - pub struct nsStyleCorners { - mUnits: [root::nsStyleUnit; 8usize], - mValues: [root::nsStyleUnion; 8usize], - } - #[test] - fn bindgen_test_layout_nsStyleCorners() { - assert_eq!(::std::mem::size_of::() , 72usize , concat - ! ( "Size of: " , stringify ! ( nsStyleCorners ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat - ! ( "Alignment of " , stringify ! ( nsStyleCorners ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCorners ) ) . mUnits as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleCorners ) , - "::" , stringify ! ( mUnits ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsStyleCorners ) ) . mValues as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( nsStyleCorners ) , - "::" , stringify ! ( mValues ) )); - } - impl nsStyleCorners { - #[inline] - pub unsafe fn get_mUnits(&self) -> &[root::nsStyleUnit; 8usize] { - &self.mUnits - } - #[inline] - pub unsafe fn get_mUnits_mut(&mut self) - -> &mut [root::nsStyleUnit; 8usize] { - &mut self.mUnits - } - #[inline] - pub unsafe fn get_mValues(&self) -> &[root::nsStyleUnion; 8usize] { - &self.mValues - } - #[inline] - pub unsafe fn get_mValues_mut(&mut self) - -> &mut [root::nsStyleUnion; 8usize] { - &mut self.mValues - } - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsCSSSelector([u8; 0]); - pub const nsChangeHint_nsChangeHint_Empty: root::nsChangeHint = - nsChangeHint(0); - pub const nsChangeHint_nsChangeHint_RepaintFrame: root::nsChangeHint = - nsChangeHint(1); - pub const nsChangeHint_nsChangeHint_NeedReflow: root::nsChangeHint = - nsChangeHint(2); - pub const nsChangeHint_nsChangeHint_ClearAncestorIntrinsics: - root::nsChangeHint = - nsChangeHint(4); - pub const nsChangeHint_nsChangeHint_ClearDescendantIntrinsics: - root::nsChangeHint = - nsChangeHint(8); - pub const nsChangeHint_nsChangeHint_NeedDirtyReflow: root::nsChangeHint = - nsChangeHint(16); - pub const nsChangeHint_nsChangeHint_SyncFrameView: root::nsChangeHint = - nsChangeHint(32); - pub const nsChangeHint_nsChangeHint_UpdateCursor: root::nsChangeHint = - nsChangeHint(64); - pub const nsChangeHint_nsChangeHint_UpdateEffects: root::nsChangeHint = - nsChangeHint(128); - pub const nsChangeHint_nsChangeHint_UpdateOpacityLayer: root::nsChangeHint - = - nsChangeHint(256); - pub const nsChangeHint_nsChangeHint_UpdateTransformLayer: - root::nsChangeHint = - nsChangeHint(512); - pub const nsChangeHint_nsChangeHint_ReconstructFrame: root::nsChangeHint = - nsChangeHint(1024); - pub const nsChangeHint_nsChangeHint_UpdateOverflow: root::nsChangeHint = - nsChangeHint(2048); - pub const nsChangeHint_nsChangeHint_UpdateSubtreeOverflow: - root::nsChangeHint = - nsChangeHint(4096); - pub const nsChangeHint_nsChangeHint_UpdatePostTransformOverflow: - root::nsChangeHint = - nsChangeHint(8192); - pub const nsChangeHint_nsChangeHint_UpdateParentOverflow: - root::nsChangeHint = - nsChangeHint(16384); - pub const nsChangeHint_nsChangeHint_ChildrenOnlyTransform: - root::nsChangeHint = - nsChangeHint(32768); - pub const nsChangeHint_nsChangeHint_RecomputePosition: root::nsChangeHint - = - nsChangeHint(65536); - pub const nsChangeHint_nsChangeHint_UpdateContainingBlock: - root::nsChangeHint = - nsChangeHint(131072); - pub const nsChangeHint_nsChangeHint_BorderStyleNoneChange: - root::nsChangeHint = - nsChangeHint(262144); - pub const nsChangeHint_nsChangeHint_UpdateTextPath: root::nsChangeHint = - nsChangeHint(524288); - pub const nsChangeHint_nsChangeHint_SchedulePaint: root::nsChangeHint = - nsChangeHint(1048576); - pub const nsChangeHint_nsChangeHint_NeutralChange: root::nsChangeHint = - nsChangeHint(2097152); - pub const nsChangeHint_nsChangeHint_InvalidateRenderingObservers: - root::nsChangeHint = - nsChangeHint(4194304); - pub const nsChangeHint_nsChangeHint_ReflowChangesSizeOrPosition: - root::nsChangeHint = - nsChangeHint(8388608); - pub const nsChangeHint_nsChangeHint_UpdateComputedBSize: - root::nsChangeHint = - nsChangeHint(16777216); - pub const nsChangeHint_nsChangeHint_UpdateUsesOpacity: root::nsChangeHint - = - nsChangeHint(33554432); - pub const nsChangeHint_nsChangeHint_UpdateBackgroundPosition: - root::nsChangeHint = - nsChangeHint(67108864); - pub const nsChangeHint_nsChangeHint_AddOrRemoveTransform: - root::nsChangeHint = - nsChangeHint(134217728); - pub const nsChangeHint_nsChangeHint_AllHints: root::nsChangeHint = - nsChangeHint(268435455); - impl ::std::ops::BitOr for root::nsChangeHint { - type - Output - = - Self; - #[inline] - fn bitor(self, other: Self) -> Self { nsChangeHint(self.0 | other.0) } - } - #[repr(C)] - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub struct nsChangeHint(pub u32); - pub const nsRestyleHint_eRestyle_Self: root::nsRestyleHint = - nsRestyleHint(1); - pub const nsRestyleHint_eRestyle_SomeDescendants: root::nsRestyleHint = - nsRestyleHint(2); - pub const nsRestyleHint_eRestyle_Subtree: root::nsRestyleHint = - nsRestyleHint(4); - pub const nsRestyleHint_eRestyle_LaterSiblings: root::nsRestyleHint = - nsRestyleHint(8); - pub const nsRestyleHint_eRestyle_CSSTransitions: root::nsRestyleHint = - nsRestyleHint(16); - pub const nsRestyleHint_eRestyle_CSSAnimations: root::nsRestyleHint = - nsRestyleHint(32); - pub const nsRestyleHint_eRestyle_StyleAttribute: root::nsRestyleHint = - nsRestyleHint(64); - pub const nsRestyleHint_eRestyle_StyleAttribute_Animations: - root::nsRestyleHint = - nsRestyleHint(128); - pub const nsRestyleHint_eRestyle_Force: root::nsRestyleHint = - nsRestyleHint(256); - pub const nsRestyleHint_eRestyle_ForceDescendants: root::nsRestyleHint = - nsRestyleHint(512); - pub const nsRestyleHint_eRestyle_AllHintsWithAnimations: - root::nsRestyleHint = - nsRestyleHint(176); - impl ::std::ops::BitOr for root::nsRestyleHint { - type - Output - = - Self; - #[inline] - fn bitor(self, other: Self) -> Self { - nsRestyleHint(self.0 | other.0) - } - } - #[repr(C)] - /** - * |nsRestyleHint| is a bitfield for the result of - * |HasStateDependentStyle| and |HasAttributeDependentStyle|. When no - * restyling is necessary, use |nsRestyleHint(0)|. - * - * Without eRestyle_Force or eRestyle_ForceDescendants, the restyling process - * can stop processing at a frame when it detects no style changes and it is - * known that the styles of the subtree beneath it will not change, leaving - * the old style context on the frame. eRestyle_Force can be used to skip this - * optimization on a frame, and to force its new style context to be used. - * - * Similarly, eRestyle_ForceDescendants will cause the frame and all of its - * descendants to be traversed and for the new style contexts that are created - * to be set on the frames. - * - * NOTE: When adding new restyle hints, please also add them to - * RestyleManager::RestyleHintToString. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub struct nsRestyleHint(pub u32); - #[repr(C)] - #[derive(Debug)] - pub struct nsFontFaceRuleContainer { - pub mRule: root::RefPtr, - pub mSheetType: root::mozilla::SheetType, - } - #[test] - fn bindgen_test_layout_nsFontFaceRuleContainer() { - assert_eq!(::std::mem::size_of::() , 16usize - , concat ! ( - "Size of: " , stringify ! ( nsFontFaceRuleContainer ) )); - assert_eq! (::std::mem::align_of::() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( nsFontFaceRuleContainer ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFontFaceRuleContainer ) ) . mRule - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsFontFaceRuleContainer ) , "::" , stringify ! ( mRule ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsFontFaceRuleContainer ) ) . - mSheetType as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - nsFontFaceRuleContainer ) , "::" , stringify ! ( - mSheetType ) )); - } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsStyleContext([u8; 0]); - #[repr(C)] - #[derive(Debug)] - pub struct nsAttrName { - pub mBits: usize, - } - #[test] - fn bindgen_test_layout_nsAttrName() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of: " , stringify ! ( nsAttrName ) )); - assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of " , stringify ! ( nsAttrName ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const nsAttrName ) ) . mBits as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( nsAttrName ) , "::" - , stringify ! ( mBits ) )); - } - #[repr(u32)] - /** - * This is the enum used by functions that need to be told whether to - * do case-sensitive or case-insensitive string comparisons. - */ - #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] - pub enum nsCaseTreatment { eCaseMatters = 0, eIgnoreCase = 1, } - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsRuleWalker([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsTextFragment([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsXBLBinding([u8; 0]); - #[repr(C)] #[derive(Debug, Copy)] pub struct nsISelectionDisplay { pub _base: root::nsISupports, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsISelectionDisplay_COMTypeInfo { + pub struct nsISelectionDisplay_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsISelectionDisplay_DISPLAY_TEXT: root::nsISelectionDisplay__bindgen_ty_1 = @@ -17911,16 +20019,19 @@ pub mod root { fn clone(&self) -> Self { *self } } #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsISelection { + _unused: [u8; 0], + } + #[repr(C)] #[derive(Debug, Copy)] pub struct nsISelectionController { pub _base: root::nsISelectionDisplay, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsISelectionController_COMTypeInfo { + pub struct nsISelectionController_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsISelectionController_SELECTION_NONE: root::nsISelectionController__bindgen_ty_1 = @@ -18071,7 +20182,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsFrameManagerBase_UndisplayedMap([u8; 0]); + pub struct nsFrameManagerBase_UndisplayedMap { + _unused: [u8; 0], + } #[test] fn bindgen_test_layout_nsFrameManagerBase() { assert_eq!(::std::mem::size_of::() , 80usize , @@ -18116,7 +20229,43 @@ pub mod root { ) , "::" , stringify ! ( mIsDestroyingFrames ) )); } #[repr(C)] - #[derive(Debug)] + #[derive(Debug, Copy)] + pub struct nsIWeakReference { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIWeakReference_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIWeakReference() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsIWeakReference ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIWeakReference ) )); + } + impl Clone for nsIWeakReference { + fn clone(&self) -> Self { *self } + } + pub type nsWeakPtr = root::nsCOMPtr; + /** + * templated hashtable class maps keys to reference pointers. + * See nsBaseHashtable for complete declaration. + * @param KeyClass a wrapper-class for the hashtable key, see nsHashKeys.h + * for a complete specification. + * @param PtrType the reference-type being wrapped + * @see nsDataHashtable, nsClassHashtable + */ + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsRefPtrHashtable { + } + pub type nsRefPtrHashtable_KeyType = [u8; 0usize]; + pub type nsRefPtrHashtable_UserDataType = *mut PtrType; + pub type nsRefPtrHashtable_base_type = root::nsBaseHashtable; + #[repr(C)] pub struct nsPresArena { pub mFreeLists: [u64; 5usize], pub mPool: [u64; 4usize], @@ -18197,7 +20346,92 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsArenaMemoryStats([u8; 0]); + pub struct nsArenaMemoryStats { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct imgIRequest { + pub _base: root::nsIRequest, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct imgIRequest_COMTypeInfo { + pub _address: u8, + } + pub const imgIRequest_STATUS_NONE: root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_NONE; + pub const imgIRequest_STATUS_SIZE_AVAILABLE: + root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_SIZE_AVAILABLE; + pub const imgIRequest_STATUS_LOAD_COMPLETE: + root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_LOAD_COMPLETE; + pub const imgIRequest_STATUS_ERROR: root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_ERROR; + pub const imgIRequest_STATUS_FRAME_COMPLETE: + root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_FRAME_COMPLETE; + pub const imgIRequest_STATUS_DECODE_COMPLETE: + root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_DECODE_COMPLETE; + pub const imgIRequest_STATUS_IS_ANIMATED: root::imgIRequest__bindgen_ty_1 + = + imgIRequest__bindgen_ty_1::STATUS_IS_ANIMATED; + pub const imgIRequest_STATUS_HAS_TRANSPARENCY: + root::imgIRequest__bindgen_ty_1 = + imgIRequest__bindgen_ty_1::STATUS_HAS_TRANSPARENCY; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum imgIRequest__bindgen_ty_1 { + STATUS_NONE = 0, + STATUS_SIZE_AVAILABLE = 1, + STATUS_LOAD_COMPLETE = 2, + STATUS_ERROR = 4, + STATUS_FRAME_COMPLETE = 8, + STATUS_DECODE_COMPLETE = 16, + STATUS_IS_ANIMATED = 32, + STATUS_HAS_TRANSPARENCY = 64, + } + pub const imgIRequest_CORS_NONE: root::imgIRequest__bindgen_ty_2 = + imgIRequest__bindgen_ty_2::CORS_NONE; + pub const imgIRequest_CORS_ANONYMOUS: root::imgIRequest__bindgen_ty_2 = + imgIRequest__bindgen_ty_2::CORS_ANONYMOUS; + pub const imgIRequest_CORS_USE_CREDENTIALS: + root::imgIRequest__bindgen_ty_2 = + imgIRequest__bindgen_ty_2::CORS_USE_CREDENTIALS; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum imgIRequest__bindgen_ty_2 { + CORS_NONE = 1, + 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::() , 8usize , concat ! ( + "Size of: " , stringify ! ( imgIRequest ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( imgIRequest ) )); + } + impl Clone for imgIRequest { + fn clone(&self) -> Self { *self } + } #[repr(C)] #[derive(Debug, Copy)] pub struct imgINotificationObserver { @@ -18205,10 +20439,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct imgINotificationObserver_COMTypeInfo { + pub struct imgINotificationObserver_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const imgINotificationObserver_SIZE_AVAILABLE: root::imgINotificationObserver__bindgen_ty_1 = @@ -18502,35 +20734,170 @@ pub mod root { TEXT_IN_OFFSET_CACHE = 9223372036854775808, } #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsView([u8; 0]); + #[derive(Debug, Copy)] + pub struct pixman_region32_data { + pub size: ::std::os::raw::c_long, + pub numRects: ::std::os::raw::c_long, + } + #[test] + fn bindgen_test_layout_pixman_region32_data() { + assert_eq!(::std::mem::size_of::() , 16usize , + concat ! ( + "Size of: " , stringify ! ( pixman_region32_data ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( pixman_region32_data ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_region32_data ) ) . size as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + pixman_region32_data ) , "::" , stringify ! ( size ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_region32_data ) ) . numRects + as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + pixman_region32_data ) , "::" , stringify ! ( numRects ) + )); + } + impl Clone for pixman_region32_data { + fn clone(&self) -> Self { *self } + } + pub type pixman_region32_data_t = root::pixman_region32_data; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct pixman_box32 { + pub x1: i32, + pub y1: i32, + pub x2: i32, + pub y2: i32, + } + #[test] + fn bindgen_test_layout_pixman_box32() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! + ( "Size of: " , stringify ! ( pixman_box32 ) )); + assert_eq! (::std::mem::align_of::() , 4usize , concat ! + ( "Alignment of " , stringify ! ( pixman_box32 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_box32 ) ) . x1 as * const _ as + usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_box32 ) , + "::" , stringify ! ( x1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_box32 ) ) . y1 as * const _ as + usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_box32 ) , + "::" , stringify ! ( y1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_box32 ) ) . x2 as * const _ as + usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_box32 ) , + "::" , stringify ! ( x2 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_box32 ) ) . y2 as * const _ as + usize } , 12usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_box32 ) , + "::" , stringify ! ( y2 ) )); + } + impl Clone for pixman_box32 { + fn clone(&self) -> Self { *self } + } + pub type pixman_box32_t = root::pixman_box32; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct pixman_region32 { + pub extents: root::pixman_box32_t, + pub data: *mut root::pixman_region32_data_t, + } + #[test] + fn bindgen_test_layout_pixman_region32() { + assert_eq!(::std::mem::size_of::() , 24usize , concat + ! ( "Size of: " , stringify ! ( pixman_region32 ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( pixman_region32 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_region32 ) ) . extents as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_region32 ) , + "::" , stringify ! ( extents ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const pixman_region32 ) ) . data as * const + _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( pixman_region32 ) , + "::" , stringify ! ( data ) )); + } + impl Clone for pixman_region32 { + fn clone(&self) -> Self { *self } + } + pub type pixman_region32_t = root::pixman_region32; + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum VisitSide { TOP = 0, BOTTOM = 1, LEFT = 2, RIGHT = 3, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsRenderingContext([u8; 0]); + pub struct nsDocShell { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIPageSequenceFrame([u8; 0]); + pub struct nsViewManager { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsCanvasFrame([u8; 0]); + pub struct nsView { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsCaret([u8; 0]); + pub struct nsRenderingContext { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsFrameSelection([u8; 0]); + pub struct nsIPageSequenceFrame { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIReflowCallback([u8; 0]); + pub struct nsCanvasFrame { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsCSSFrameConstructor([u8; 0]); + pub struct nsCaret { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AutoWeakFrame([u8; 0]); + pub struct nsFrameSelection { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct WeakFrame([u8; 0]); + pub struct nsILayoutHistoryState { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIReflowCallback { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsCSSFrameConstructor { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct AutoWeakFrame { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct WeakFrame { + _unused: [u8; 0], + } /** * Interface for frames that are scrollable. This interface exposes * APIs for examining scroll state, observing changes to scroll state, @@ -18640,25 +21007,84 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct gfxContext([u8; 0]); + pub struct gfxContext { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDisplayList([u8; 0]); + pub struct nsDisplayList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDisplayListBuilder([u8; 0]); + pub struct nsDisplayListBuilder { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsRefreshDriver([u8; 0]); + pub struct nsRefreshDriver { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsARefreshObserver([u8; 0]); + pub struct nsARefreshObserver { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsAPostRefreshObserver([u8; 0]); + pub struct nsAPostRefreshObserver { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsAccessibilityService([u8; 0]); + pub struct nsAccessibilityService { + _unused: [u8; 0], + } + /** + * The signature of the timer callback function passed to initWithFuncCallback. + * This is the function that will get called when the timer expires if the + * timer is initialized via initWithFuncCallback. + * + * @param aTimer the timer which has expired + * @param aClosure opaque parameter passed to initWithFuncCallback + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsITimer { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsITimer_COMTypeInfo { + pub _address: u8, + } + pub const nsITimer_TYPE_ONE_SHOT: root::nsITimer__bindgen_ty_1 = + nsITimer__bindgen_ty_1::TYPE_ONE_SHOT; + pub const nsITimer_TYPE_REPEATING_SLACK: root::nsITimer__bindgen_ty_1 = + nsITimer__bindgen_ty_1::TYPE_REPEATING_SLACK; + pub const nsITimer_TYPE_REPEATING_PRECISE: root::nsITimer__bindgen_ty_1 = + nsITimer__bindgen_ty_1::TYPE_REPEATING_PRECISE; + pub const nsITimer_TYPE_REPEATING_PRECISE_CAN_SKIP: + root::nsITimer__bindgen_ty_1 = + nsITimer__bindgen_ty_1::TYPE_REPEATING_PRECISE_CAN_SKIP; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsITimer__bindgen_ty_1 { + TYPE_ONE_SHOT = 0, + TYPE_REPEATING_SLACK = 1, + TYPE_REPEATING_PRECISE = 2, + TYPE_REPEATING_PRECISE_CAN_SKIP = 3, + } + #[test] + fn bindgen_test_layout_nsITimer() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsITimer ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsITimer ) )); + } + impl Clone for nsITimer { + fn clone(&self) -> Self { *self } + } #[repr(C)] #[derive(Debug)] pub struct CapturingContentInfo { @@ -18718,8 +21144,113 @@ pub mod root { nsRectVisibility_kRightOfViewport = 4, } #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIObserver { + pub _base: root::nsISupports, + } + #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIWidget([u8; 0]); + pub struct nsIObserver_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIObserver() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIObserver ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsIObserver ) )); + } + impl Clone for nsIObserver { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIEventTarget { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIEventTarget_COMTypeInfo { + pub _address: u8, + } + pub const nsIEventTarget_DISPATCH_NORMAL: + root::nsIEventTarget__bindgen_ty_1 = + nsIEventTarget__bindgen_ty_1::DISPATCH_NORMAL; + pub const nsIEventTarget_DISPATCH_SYNC: root::nsIEventTarget__bindgen_ty_1 + = + nsIEventTarget__bindgen_ty_1::DISPATCH_SYNC; + pub const nsIEventTarget_DISPATCH_AT_END: + root::nsIEventTarget__bindgen_ty_1 = + nsIEventTarget__bindgen_ty_1::DISPATCH_AT_END; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsIEventTarget__bindgen_ty_1 { + DISPATCH_NORMAL = 0, + DISPATCH_SYNC = 1, + DISPATCH_AT_END = 2, + } + #[test] + fn bindgen_test_layout_nsIEventTarget() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( nsIEventTarget ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsIEventTarget ) )); + } + impl Clone for nsIEventTarget { + fn clone(&self) -> Self { *self } + } + pub type nsTimerCallbackFunc = + ::std::option::Option; + /** + * The signature of the timer name callback function passed to + * initWithNameableFuncCallback. + * This is the function that will get called when timer profiling is enabled + * via the "TimerFirings" log module. + * + * @param aTimer the timer which has expired + * @param aAnonymize whether the name should avoid including privacy sensitive info + * @param aClosure opaque parameter passed to initWithFuncCallback + * @param aBuf a buffer in which to put the name + * @param aLen the length of the buffer + */ + pub type nsTimerNameCallbackFunc = + ::std::option::Option; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsITimerCallback { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsITimerCallback_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsITimerCallback() { + assert_eq!(::std::mem::size_of::() , 8usize , concat + ! ( "Size of: " , stringify ! ( nsITimerCallback ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsITimerCallback ) )); + } + impl Clone for nsITimerCallback { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIWidget { + _unused: [u8; 0], + } #[repr(u32)] /** * sizemode is an adjunct to widget size @@ -18733,6 +21264,796 @@ pub mod root { nsSizeMode_Invalid = 4, } #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsINamed { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsINamed_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsINamed() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsINamed ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsINamed ) )); + } + impl Clone for nsINamed { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIRunnable { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIRunnable_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIRunnable() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIRunnable ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsIRunnable ) )); + } + impl Clone for nsIRunnable { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsRevocableEventPtr { + pub mEvent: root::RefPtr, + } + #[repr(C)] + #[derive(Debug)] + pub struct nsPIDOMWindowInner { + pub _base: [u64; 28usize], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsPIDOMWindowInner_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsPIDOMWindowInner() { + assert_eq!(::std::mem::size_of::() , 224usize , + concat ! ( "Size of: " , stringify ! ( nsPIDOMWindowInner ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsPIDOMWindowInner ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsGlobalWindow { + _unused: [u8; 0], + } + /** + * The global object which keeps a script context for each supported script + * language. This often used to store per-window global state. + * This is a heavyweight interface implemented only by DOM globals, and + * it might go away some time in the future. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsIScriptGlobalObject { + pub _base: root::nsIGlobalObject, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIScriptGlobalObject_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIScriptGlobalObject() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( + "Size of: " , stringify ! ( nsIScriptGlobalObject ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIScriptGlobalObject ) + )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsISimpleEnumerator { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIControllers { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct mozIDOMWindow { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct mozIDOMWindow_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_mozIDOMWindow() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of: " , stringify ! ( mozIDOMWindow ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( mozIDOMWindow ) )); + } + impl Clone for mozIDOMWindow { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct mozIDOMWindowProxy { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct mozIDOMWindowProxy_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_mozIDOMWindowProxy() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( "Size of: " , stringify ! ( mozIDOMWindowProxy ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( mozIDOMWindowProxy ) )); + } + impl Clone for mozIDOMWindowProxy { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug)] + pub struct nsICSSDeclaration { + pub _base: root::nsIDOMCSSStyleDeclaration, + pub _base_1: root::nsWrapperCache, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsICSSDeclaration_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsICSSDeclaration() { + assert_eq!(::std::mem::size_of::() , 32usize , + concat ! ( "Size of: " , stringify ! ( nsICSSDeclaration ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsICSSDeclaration ) )); + } + pub type SuspendTypes = u32; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum UIStateChangeType { + UIStateChangeType_NoChange = 0, + UIStateChangeType_Set = 1, + UIStateChangeType_Clear = 2, + UIStateChangeType_Invalid = 3, + } + #[repr(C)] + pub struct nsPIDOMWindow__bindgen_vtable(::std::os::raw::c_void); + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsPIDOMWindow { + } + pub type nsPIDOMWindow_ServiceWorkerRegistrationTable = [u64; 5usize]; + pub mod xpc { + #[allow(unused_imports)] + use self::super::super::root; + #[repr(C)] + #[derive(Debug)] + pub struct ErrorBase { + pub mErrorMsg: ::nsstring::nsStringRepr, + pub mFileName: ::nsstring::nsStringRepr, + pub mLineNumber: u32, + pub mColumn: u32, + } + #[test] + fn bindgen_test_layout_ErrorBase() { + assert_eq!(::std::mem::size_of::() , 40usize , concat ! + ( "Size of: " , stringify ! ( ErrorBase ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( ErrorBase ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ErrorBase ) ) . mErrorMsg as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( ErrorBase ) , + "::" , stringify ! ( mErrorMsg ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ErrorBase ) ) . mFileName as * + const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( ErrorBase ) , + "::" , stringify ! ( mFileName ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ErrorBase ) ) . mLineNumber as * + const _ as usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( ErrorBase ) , + "::" , stringify ! ( mLineNumber ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const ErrorBase ) ) . mColumn as * + const _ as usize } , 36usize , concat ! ( + "Alignment of field: " , stringify ! ( ErrorBase ) , + "::" , stringify ! ( mColumn ) )); + } + #[repr(C)] + #[derive(Debug)] + pub struct ErrorNote { + pub _base: root::xpc::ErrorBase, + } + #[test] + fn bindgen_test_layout_ErrorNote() { + assert_eq!(::std::mem::size_of::() , 40usize , concat ! + ( "Size of: " , stringify ! ( ErrorNote ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( ErrorNote ) )); + } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsCompatibility { + eCompatibility_FullStandards = 1, + eCompatibility_AlmostStandards = 2, + eCompatibility_NavQuirks = 3, + } + /** + * Information details about a characterdata change. Basically, we + * view all changes as replacements of a length of text at some offset + * with some other text (of possibly some other length). + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct CharacterDataChangeInfo { + /** + * True if this character data change is just an append. + */ + pub mAppend: bool, + /** + * The offset in the text where the change occurred. + */ + pub mChangeStart: u32, + /** + * The offset such that mChangeEnd - mChangeStart is equal to the length of + * the text we removed. If this was a pure insert or append, this is equal to + * mChangeStart. + */ + pub mChangeEnd: u32, + /** + * The length of the text that was inserted in place of the removed text. If + * this was a pure text removal, this is 0. + */ + pub mReplaceLength: u32, + /** + * Used for splitText() and normalize(), otherwise null. + */ + pub mDetails: *mut root::CharacterDataChangeInfo_Details, + } + /** + * The net result is that mChangeStart characters at the beginning of the + * text remained as they were. The next mChangeEnd - mChangeStart characters + * were removed, and mReplaceLength characters were inserted in their place. + * The text that used to begin at mChangeEnd now begins at + * mChangeStart + mReplaceLength. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct CharacterDataChangeInfo_Details { + pub mType: root::CharacterDataChangeInfo_Details__bindgen_ty_1, + /** + * For eMerge it's the text node that will be removed, for eSplit it's the + * new text node. + */ + pub mNextSibling: *mut root::nsIContent, + } + pub const CharacterDataChangeInfo_Details_eMerge: + root::CharacterDataChangeInfo_Details__bindgen_ty_1 = + CharacterDataChangeInfo_Details__bindgen_ty_1::eMerge; + pub const CharacterDataChangeInfo_Details_eSplit: + root::CharacterDataChangeInfo_Details__bindgen_ty_1 = + CharacterDataChangeInfo_Details__bindgen_ty_1::eSplit; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum CharacterDataChangeInfo_Details__bindgen_ty_1 { + eMerge = 0, + eSplit = 1, + } + #[test] + fn bindgen_test_layout_CharacterDataChangeInfo_Details() { + assert_eq!(::std::mem::size_of::() , + 16usize , concat ! ( + "Size of: " , stringify ! ( CharacterDataChangeInfo_Details + ) )); + assert_eq! (::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of " , stringify ! ( + CharacterDataChangeInfo_Details ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo_Details ) ) . + mType as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo_Details ) , "::" , stringify ! ( + mType ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo_Details ) ) . + mNextSibling as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo_Details ) , "::" , stringify ! ( + mNextSibling ) )); + } + impl Clone for CharacterDataChangeInfo_Details { + fn clone(&self) -> Self { *self } + } + #[test] + fn bindgen_test_layout_CharacterDataChangeInfo() { + assert_eq!(::std::mem::size_of::() , 24usize + , concat ! ( + "Size of: " , stringify ! ( CharacterDataChangeInfo ) )); + assert_eq! (::std::mem::align_of::() , 8usize + , concat ! ( + "Alignment of " , stringify ! ( CharacterDataChangeInfo ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo ) ) . mAppend + as * const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo ) , "::" , stringify ! ( mAppend ) + )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo ) ) . + mChangeStart as * const _ as usize } , 4usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo ) , "::" , stringify ! ( + mChangeStart ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo ) ) . + mChangeEnd as * const _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo ) , "::" , stringify ! ( + mChangeEnd ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo ) ) . + mReplaceLength as * const _ as usize } , 12usize , concat + ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo ) , "::" , stringify ! ( + mReplaceLength ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const CharacterDataChangeInfo ) ) . + mDetails as * const _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( + CharacterDataChangeInfo ) , "::" , stringify ! ( mDetails + ) )); + } + impl Clone for CharacterDataChangeInfo { + fn clone(&self) -> Self { *self } + } + pub type nsUpdateType = u32; + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDocumentObserver { + pub _base: root::nsIMutationObserver, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDocumentObserver_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDocumentObserver() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of: " , stringify ! ( nsIDocumentObserver ) )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIDocumentObserver ) )); + } + impl Clone for nsIDocumentObserver { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIRequestObserver { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIRequestObserver_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIRequestObserver() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( "Size of: " , stringify ! ( nsIRequestObserver ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIRequestObserver ) )); + } + impl Clone for nsIRequestObserver { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsScanner { + _unused: [u8; 0], + } + /*************************************************************** + Notes: + ***************************************************************/ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsITokenizer { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsITokenizer_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsITokenizer() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsITokenizer ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsITokenizer ) )); + } + impl Clone for nsITokenizer { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsDTDMode { + eDTDMode_unknown = 0, + eDTDMode_quirks = 1, + eDTDMode_almost_standards = 2, + eDTDMode_full_standards = 3, + eDTDMode_autodetect = 4, + eDTDMode_fragment = 5, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIContentSink { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct CParserContext { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIDTD { + pub _base: root::nsISupports, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDTD_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIDTD() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIDTD ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIDTD ) )); + } + impl Clone for nsIDTD { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsParserBase { + pub _base: root::nsISupports, + } + #[test] + fn bindgen_test_layout_nsParserBase() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsParserBase ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsParserBase ) )); + } + impl Clone for nsParserBase { + fn clone(&self) -> Self { *self } + } + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum eParserCommands { + eViewNormal = 0, + eViewSource = 1, + eViewFragment = 2, + eViewErrors = 3, + } + /** + * This GECKO-INTERNAL interface is on track to being REMOVED (or refactored + * to the point of being near-unrecognizable). + * + * Please DO NOT #include this file in comm-central code, in your XULRunner + * app or binary extensions. + * + * Please DO NOT #include this into new files even inside Gecko. It is more + * likely than not that #including this header is the wrong thing to do. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIParser { + pub _base: root::nsParserBase, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIParser_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIParser() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of: " , stringify ! ( nsIParser ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsIParser ) )); + } + impl Clone for nsIParser { + fn clone(&self) -> Self { *self } + } + /** + * Hashtable key class to use with nsTHashtable/nsBaseHashtable + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsURIHashKey { + pub _base: root::PLDHashEntryHdr, + pub mKey: root::nsCOMPtr, + } + pub type nsURIHashKey_KeyType = *mut root::nsIURI; + pub type nsURIHashKey_KeyTypePointer = *const root::nsIURI; + pub const nsURIHashKey_ALLOW_MEMMOVE: root::nsURIHashKey__bindgen_ty_1 = + nsURIHashKey__bindgen_ty_1::ALLOW_MEMMOVE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsURIHashKey__bindgen_ty_1 { ALLOW_MEMMOVE = 1, } + #[test] + fn bindgen_test_layout_nsURIHashKey() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! + ( "Size of: " , stringify ! ( nsURIHashKey ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! + ( "Alignment of " , stringify ! ( nsURIHashKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsURIHashKey ) ) . mKey as * const _ + as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsURIHashKey ) , + "::" , stringify ! ( mKey ) )); + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsContentList { + _unused: [u8; 0], + } + /** + * Data used to track the expiration state of an object. We promise that this + * is 32 bits so that objects that includes this as a field can pad and align + * efficiently. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsExpirationState { + pub _bitfield_1: u32, + pub __bindgen_align: [u32; 0usize], + } + pub const nsExpirationState_NOT_TRACKED: + root::nsExpirationState__bindgen_ty_1 = + nsExpirationState__bindgen_ty_1::NOT_TRACKED; + pub const nsExpirationState_MAX_INDEX_IN_GENERATION: + root::nsExpirationState__bindgen_ty_1 = + nsExpirationState__bindgen_ty_1::MAX_INDEX_IN_GENERATION; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsExpirationState__bindgen_ty_1 { + NOT_TRACKED = 15, + MAX_INDEX_IN_GENERATION = 268435455, + } + #[test] + fn bindgen_test_layout_nsExpirationState() { + assert_eq!(::std::mem::size_of::() , 4usize , + concat ! ( "Size of: " , stringify ! ( nsExpirationState ) + )); + assert_eq! (::std::mem::align_of::() , 4usize , + concat ! ( + "Alignment of " , stringify ! ( nsExpirationState ) )); + } + impl Clone for nsExpirationState { + fn clone(&self) -> Self { *self } + } + impl nsExpirationState { + #[inline] + pub fn mGeneration(&self) -> u32 { + let mask = 15usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mGeneration(&mut self, val: u32) { + let mask = 15usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIndexInGeneration(&self) -> u32 { + let mask = 4294967280usize as u32; + let field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u32) } + } + #[inline] + pub fn set_mIndexInGeneration(&mut self, val: u32) { + let mask = 4294967280usize as u32; + let val = val as u32 as u32; + let mut field_val: u32 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct gfxUserFontSet { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsDOMNavigationTiming { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsFrameLoader { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsHTMLCSSStyleSheet { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsHTMLStyleSheet { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIBFCacheEntry { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDocumentEncoder { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIDOMNodeFilter { + _unused: [u8; 0], + } + /** + * An internal interface + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsIHTMLCollection { + pub _base: root::nsIDOMHTMLCollection, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIHTMLCollection_COMTypeInfo { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_nsIHTMLCollection() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( "Size of: " , stringify ! ( nsIHTMLCollection ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsIHTMLCollection ) )); + } + impl Clone for nsIHTMLCollection { + fn clone(&self) -> Self { *self } + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIObjectLoadingContent { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIStructuredCloneContainer { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsRange { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsScriptLoader { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsSMILAnimationController { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsSVGElement { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsTextNode { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsWindowSizes { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsDOMCaretPosition { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsViewportInfo { + _unused: [u8; 0], + } + #[repr(i32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum HSTSPrimingState { + eNO_HSTS_PRIMING = 0, + eHSTS_PRIMING_ALLOW = 1, + eHSTS_PRIMING_BLOCK = 2, + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct ProfilerBacktrace { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy)] + pub struct ProfilerBacktraceDestructor { + pub _address: u8, + } + #[test] + fn bindgen_test_layout_ProfilerBacktraceDestructor() { + assert_eq!(::std::mem::size_of::() , + 1usize , concat ! ( + "Size of: " , stringify ! ( ProfilerBacktraceDestructor ) + )); + assert_eq! (::std::mem::align_of::() , + 1usize , concat ! ( + "Alignment of " , stringify ! ( + ProfilerBacktraceDestructor ) )); + } + impl Clone for ProfilerBacktraceDestructor { + fn clone(&self) -> Self { *self } + } + #[repr(C)] #[derive(Debug)] pub struct nsStyleDisplay { pub mBinding: root::BindingHolder, @@ -18756,7 +22077,7 @@ pub mod root { pub mIsolation: u8, pub mTopLayer: u8, pub mWillChangeBitField: u8, - pub mWillChange: root::nsCOMArray, + pub mWillChange: root::nsCOMArray, pub mTouchAction: u8, pub mScrollBehavior: u8, pub mScrollSnapTypeX: u8, @@ -19091,10 +22412,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsILanguageAtomService_COMTypeInfo { + pub struct nsILanguageAtomService_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsILanguageAtomService() { @@ -19111,13 +22430,19 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsBidi([u8; 0]); + pub struct nsBidi { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIPrintSettings([u8; 0]); + pub struct nsIPrintSettings { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsITheme([u8; 0]); + pub struct nsITheme { + _unused: [u8; 0], + } /** * Interface used for handling clicks on links */ @@ -19128,10 +22453,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsILinkHandler_COMTypeInfo { + pub struct nsILinkHandler_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsILinkHandler() { @@ -19145,32 +22468,43 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct gfxUserFontEntry([u8; 0]); + pub struct gfxUserFontEntry { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct gfxTextPerfMetrics([u8; 0]); + pub struct gfxTextPerfMetrics { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsTransitionManager([u8; 0]); + pub struct nsTransitionManager { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsAnimationManager([u8; 0]); + pub struct nsAnimationManager { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDeviceContext([u8; 0]); + pub struct nsDeviceContext { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct gfxMissingFontRecorder([u8; 0]); + pub struct gfxMissingFontRecorder { + _unused: [u8; 0], + } pub const kPresContext_DefaultVariableFont_ID: u8 = 0; pub const kPresContext_DefaultFixedFont_ID: u8 = 1; #[repr(C)] - #[derive(Debug)] pub struct nsRootPresContext { pub _base: root::nsPresContext, pub mNotifyDidPaintTimers: [u64; 10usize], - pub mApplyPluginGeometryTimer: root::nsCOMPtr, + pub mApplyPluginGeometryTimer: root::nsCOMPtr, pub mRegisteredPlugins: [u64; 5usize], - pub mWillPaintObservers: root::nsTArray>, + pub mWillPaintObservers: root::nsTArray, pub mWillPaintFallbackEvent: root::nsRevocableEventPtr, pub mDOMGeneration: u32, } @@ -19203,7 +22537,7 @@ pub mod root { #[derive(Debug)] pub struct nsRootPresContext_NotifyDidPaintTimer { pub mTransactionId: u64, - pub mTimer: root::nsCOMPtr, + pub mTimer: root::nsCOMPtr, } #[test] fn bindgen_test_layout_nsRootPresContext_NotifyDidPaintTimer() { @@ -20628,10 +23962,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIProperties_COMTypeInfo { + pub struct nsIProperties_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIProperties() { @@ -21735,11 +25067,10 @@ pub mod root { pub _base_3: root::nsISecurityInfoProvider, pub _base_4: root::nsITimedChannel, pub mRefCnt: root::nsAutoRefCnt, - pub mBehaviour: root::mozilla::UniquePtr>, - pub mURI: root::RefPtr, + pub mBehaviour: root::mozilla::UniquePtr, + pub mURI: root::RefPtr, pub mListener: *mut root::imgINotificationObserver, - pub mLoadGroup: root::nsCOMPtr, + pub mLoadGroup: root::nsCOMPtr, pub mLoadFlags: root::nsLoadFlags, pub mLockCount: u32, pub mAnimationConsumers: u32, @@ -22014,9 +25345,9 @@ pub mod root { pub mPropertyID: root::nsCSSPropertyID, pub mShorthandPropertyID: root::nsCSSPropertyID, pub mTokenStream: ::nsstring::nsStringRepr, - pub mBaseURI: root::nsCOMPtr, - pub mSheetURI: root::nsCOMPtr, - pub mSheetPrincipal: root::nsCOMPtr, + pub mBaseURI: root::nsCOMPtr, + pub mSheetURI: root::nsCOMPtr, + pub mSheetPrincipal: root::nsCOMPtr, pub mLineNumber: u32, pub mLineOffset: u32, pub mLevel: root::mozilla::SheetType, @@ -22663,7 +25994,9 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct imgIContainer([u8; 0]); + pub struct imgIContainer { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsISecurityInfoProvider { @@ -22671,10 +26004,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsISecurityInfoProvider_COMTypeInfo { + pub struct nsISecurityInfoProvider_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsISecurityInfoProvider() { @@ -22696,10 +26027,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsISupportsPriority_COMTypeInfo { + pub struct nsISupportsPriority_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsISupportsPriority_PRIORITY_HIGHEST: root::nsISupportsPriority__bindgen_ty_1 = @@ -22744,10 +26073,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsITimedChannel_COMTypeInfo { + pub struct nsITimedChannel_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsITimedChannel() { @@ -22767,10 +26094,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIAsyncVerifyRedirectCallback_COMTypeInfo { + pub struct nsIAsyncVerifyRedirectCallback_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIAsyncVerifyRedirectCallback() { @@ -22793,10 +26118,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIChannelEventSink_COMTypeInfo { + pub struct nsIChannelEventSink_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub const nsIChannelEventSink_REDIRECT_TEMPORARY: root::nsIChannelEventSink__bindgen_ty_1 = @@ -22837,10 +26160,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIThreadRetargetableStreamListener_COMTypeInfo { + pub struct nsIThreadRetargetableStreamListener_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIThreadRetargetableStreamListener() { @@ -22858,16 +26179,24 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct imgCacheValidator([u8; 0]); + pub struct imgCacheValidator { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct imgLoader([u8; 0]); + pub struct imgLoader { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct imgCacheEntry([u8; 0]); + pub struct imgCacheEntry { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIApplicationCache([u8; 0]); + pub struct nsIApplicationCache { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct imgRequest { @@ -22878,17 +26207,17 @@ pub mod root { pub _base_4: root::nsIAsyncVerifyRedirectCallback, pub mRefCnt: root::mozilla::ThreadSafeAutoRefCnt, pub mLoader: *mut root::imgLoader, - pub mRequest: root::nsCOMPtr, - pub mURI: root::RefPtr, - pub mCurrentURI: root::nsCOMPtr, - pub mLoadingPrincipal: root::nsCOMPtr, - pub mPrincipal: root::nsCOMPtr, - pub mProperties: root::nsCOMPtr, - pub mSecurityInfo: root::nsCOMPtr, - pub mChannel: root::nsCOMPtr, - pub mPrevChannelSink: root::nsCOMPtr, - pub mApplicationCache: root::nsCOMPtr, - pub mTimedChannel: root::nsCOMPtr, + pub mRequest: root::nsCOMPtr, + pub mURI: root::RefPtr, + pub mCurrentURI: root::nsCOMPtr, + pub mLoadingPrincipal: root::nsCOMPtr, + pub mPrincipal: root::nsCOMPtr, + pub mProperties: root::nsCOMPtr, + pub mSecurityInfo: root::nsCOMPtr, + pub mChannel: root::nsCOMPtr, + pub mPrevChannelSink: root::nsCOMPtr, + pub mApplicationCache: root::nsCOMPtr, + pub mTimedChannel: root::nsCOMPtr, pub mContentType: root::nsCString, pub mCacheEntry: root::RefPtr, /// The key under which this imgRequest is stored in the image cache. @@ -22898,16 +26227,16 @@ pub mod root { /// pointer comparisons; there's no guarantee this will remain valid. pub mFirstProxy: *mut ::std::os::raw::c_void, pub mValidator: *mut root::imgCacheValidator, - pub mRedirectCallback: root::nsCOMPtr, - pub mNewRedirectChannel: root::nsCOMPtr, + pub mRedirectCallback: root::nsCOMPtr, + pub mNewRedirectChannel: root::nsCOMPtr, pub mInnerWindowId: u64, pub mCORSMode: i32, pub mReferrerPolicy: root::imgRequest_ReferrerPolicy, pub mImageErrorCode: root::nsresult, pub mBoostCategoriesRequested: u32, pub mMutex: root::mozilla::Mutex, - pub mProgressTracker: root::RefPtr, - pub mImage: root::RefPtr, + pub mProgressTracker: root::RefPtr, + pub mImage: root::RefPtr, pub _bitfield_1: u8, pub __bindgen_padding_0: [u8; 7usize], } @@ -22926,9 +26255,121 @@ pub mod root { assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( "Alignment of " , stringify ! ( imgRequest ) )); } + impl imgRequest { + #[inline] + pub fn mIsMultiPartChannel(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsMultiPartChannel(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mGotData(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mGotData(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsInCache(&self) -> bool { + let mask = 4usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 2usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsInCache(&mut self, val: bool) { + let mask = 4usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 2usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mDecodeRequested(&self) -> bool { + let mask = 8usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 3usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mDecodeRequested(&mut self, val: bool) { + let mask = 8usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 3usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mNewPartPending(&self) -> bool { + let mask = 16usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 4usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mNewPartPending(&mut self, val: bool) { + let mask = 16usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 4usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mHadInsecureRedirect(&self) -> bool { + let mask = 32usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 5usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mHadInsecureRedirect(&mut self, val: bool) { + let mask = 32usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 5usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ProxyBehaviour([u8; 0]); + pub struct ProxyBehaviour { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug)] pub struct nsStyleVisibility { @@ -23002,7 +26443,7 @@ pub mod root { pub mScriptUnconstrainedSize: root::nscoord, pub mScriptMinSize: root::nscoord, pub mScriptSizeMultiplier: f32, - pub mLanguage: root::nsCOMPtr, + pub mLanguage: root::nsCOMPtr, } #[test] fn bindgen_test_layout_nsStyleFont() { @@ -23303,7 +26744,7 @@ pub mod root { #[derive(Debug)] pub struct CachedBorderImageData { pub mCachedSVGViewportSize: [u32; 3usize], - pub mSubImages: root::nsCOMArray, + pub mSubImages: root::nsCOMArray, } #[test] fn bindgen_test_layout_CachedBorderImageData() { @@ -23341,12 +26782,10 @@ pub mod root { #[repr(C)] #[derive(Debug)] pub struct nsStyleImage { - pub mCachedBIData: root::mozilla::UniquePtr>, + pub mCachedBIData: root::mozilla::UniquePtr, pub mType: root::nsStyleImageType, pub __bindgen_anon_1: root::nsStyleImage__bindgen_ty_1, - pub mCropRect: root::mozilla::UniquePtr>, + pub mCropRect: root::mozilla::UniquePtr, } pub type nsStyleImage_URLValue = root::mozilla::css::URLValue; pub type nsStyleImage_URLValueData = root::mozilla::css::URLValueData; @@ -24227,7 +27666,7 @@ pub mod root { ) , "::" , stringify ! ( mQuotePairs ) )); } #[test] - fn __bindgen_test_layout_template_6() { + fn __bindgen_test_layout_StaticRefPtr_instantiation_148624() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -24379,6 +27818,44 @@ pub mod root { "Alignment of field: " , stringify ! ( nsStyleGridTemplate ) , "::" , stringify ! ( mRepeatAutoIndex ) )); } + impl nsStyleGridTemplate { + #[inline] + pub fn mIsAutoFill(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsAutoFill(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mIsSubgrid(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mIsSubgrid(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } #[repr(C)] #[derive(Debug)] pub struct nsStylePosition { @@ -24922,6 +28399,44 @@ pub mod root { "Alignment of field: " , stringify ! ( nsStyleText ) , "::" , stringify ! ( mTextEmphasisStyleString ) )); } + impl nsStyleText { + #[inline] + pub fn mTextAlignTrue(&self) -> bool { + let mask = 1usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 0usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mTextAlignTrue(&mut self, val: bool) { + let mask = 1usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 0usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + #[inline] + pub fn mTextAlignLastTrue(&self) -> bool { + let mask = 2usize as u8; + let field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + let val = (field_val & mask) >> 1usize; + unsafe { ::std::mem::transmute(val as u8) } + } + #[inline] + pub fn set_mTextAlignLastTrue(&mut self, val: bool) { + let mask = 2usize as u8; + let val = val as u8 as u8; + let mut field_val: u8 = + unsafe { ::std::mem::transmute(self._bitfield_1) }; + field_val &= !mask; + field_val |= (val << 1usize) & mask; + self._bitfield_1 = unsafe { ::std::mem::transmute(field_val) }; + } + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsStyleImageOrientation { @@ -25683,7 +29198,7 @@ pub mod root { pub mMarkerMid: root::RefPtr, pub mMarkerStart: root::RefPtr, pub mStrokeDasharray: root::nsTArray, - pub mContextProps: root::nsTArray>, + pub mContextProps: root::nsTArray, pub mStrokeDashoffset: root::nsStyleCoord, pub mStrokeWidth: root::nsStyleCoord, pub mFillOpacity: f32, @@ -26214,25 +29729,34 @@ pub mod root { */ #[repr(C)] #[derive(Debug)] - pub struct nsCOMArray { + pub struct nsCOMArray { pub mBuffer: root::nsTArray<*mut root::nsISupports>, - pub _phantom_0: ::std::marker::PhantomData, } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RawServoStyleSet([u8; 0]); + pub struct RawServoStyleSet { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RawServoAnimationValueMap([u8; 0]); + pub struct RawServoAnimationValueMap { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RawServoDeclarationBlock([u8; 0]); + pub struct RawServoDeclarationBlock { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RawServoStyleRule([u8; 0]); + pub struct RawServoStyleRule { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct RawServoAnimationValue([u8; 0]); + pub struct RawServoAnimationValue { + _unused: [u8; 0], + } pub type RawGeckoNode = root::nsINode; pub type RawGeckoElement = root::mozilla::dom::Element; pub type RawGeckoDocument = root::nsIDocument; @@ -26240,7 +29764,7 @@ pub mod root { pub type RawGeckoURLExtraData = root::mozilla::URLExtraData; pub type RawGeckoKeyframeList = root::nsTArray; pub type RawGeckoComputedKeyframeValuesList = - root::nsTArray>; + root::nsTArray; pub type RawGeckoAnimationValueList = root::nsTArray; pub type RawGeckoStyleAnimationList = @@ -26280,24 +29804,95 @@ pub mod root { *const root::RawGeckoComputedTiming; pub type RawGeckoServoStyleRuleListBorrowedMut = *mut root::RawGeckoServoStyleRuleList; + /** + * Utility class to provide scaling defined in a keySplines element. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsSMILKeySpline { + pub mX1: f64, + pub mY1: f64, + pub mX2: f64, + pub mY2: f64, + pub mSampleValues: [f64; 11usize], + } + pub const nsSMILKeySpline_kSplineTableSize: + root::nsSMILKeySpline__bindgen_ty_1 = + nsSMILKeySpline__bindgen_ty_1::kSplineTableSize; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsSMILKeySpline__bindgen_ty_1 { kSplineTableSize = 11, } + extern "C" { + #[link_name = "_ZN15nsSMILKeySpline15kSampleStepSizeE"] + pub static nsSMILKeySpline_kSampleStepSize: f64; + } + #[test] + fn bindgen_test_layout_nsSMILKeySpline() { + assert_eq!(::std::mem::size_of::() , 120usize , + concat ! ( "Size of: " , stringify ! ( nsSMILKeySpline ) + )); + assert_eq! (::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of " , stringify ! ( nsSMILKeySpline ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSMILKeySpline ) ) . mX1 as * const + _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , + "::" , stringify ! ( mX1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSMILKeySpline ) ) . mY1 as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , + "::" , stringify ! ( mY1 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSMILKeySpline ) ) . mX2 as * const + _ as usize } , 16usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , + "::" , stringify ! ( mX2 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSMILKeySpline ) ) . mY2 as * const + _ as usize } , 24usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , + "::" , stringify ! ( mY2 ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsSMILKeySpline ) ) . mSampleValues + as * const _ as usize } , 32usize , concat ! ( + "Alignment of field: " , stringify ! ( nsSMILKeySpline ) , + "::" , stringify ! ( mSampleValues ) )); + } + impl Clone for nsSMILKeySpline { + fn clone(&self) -> Self { *self } + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsSVGAngle([u8; 0]); + pub struct nsSVGAngle { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsSVGIntegerPair([u8; 0]); + pub struct nsSVGIntegerPair { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsSVGLength2([u8; 0]); + pub struct nsSVGLength2 { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsSVGNumberPair([u8; 0]); + pub struct nsSVGNumberPair { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsSVGViewBox([u8; 0]); + pub struct nsSVGViewBox { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsStyledElement([u8; 0]); + pub struct nsStyledElement { + _unused: [u8; 0], + } /** * A class used to construct a nsString from a nsStringBuffer (we might * want to move this to nsString at some point). @@ -26323,16 +29918,24 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsMappedAttributes([u8; 0]); + pub struct nsMappedAttributes { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsMappedAttributeElement([u8; 0]); + pub struct nsMappedAttributeElement { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDOMTokenList([u8; 0]); + pub struct nsDOMTokenList { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsDOMStringMap([u8; 0]); + pub struct nsDOMStringMap { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsIDOMMozNamedAttrMap { @@ -26340,10 +29943,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIDOMMozNamedAttrMap_COMTypeInfo { + pub struct nsIDOMMozNamedAttrMap_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIDOMMozNamedAttrMap() { @@ -26366,10 +29967,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIAttribute_COMTypeInfo { + pub struct nsIAttribute_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIAttribute() { @@ -26383,9 +29982,75 @@ pub mod root { "Alignment of field: " , stringify ! ( nsIAttribute ) , "::" , stringify ! ( mAttrMap ) )); } + /** + * Structure used as a key for caching Attrs in nsDOMAttributeMap's mAttributeCache. + */ + #[repr(C)] + #[derive(Debug, Copy)] + pub struct nsAttrKey { + /** + * The namespace of the attribute + */ + pub mNamespaceID: i32, + /** + * The atom for attribute, stored as void*, to make sure that we only use it + * for the hashcode, and we can never dereference it. + */ + pub mLocalName: *mut ::std::os::raw::c_void, + } + #[test] + fn bindgen_test_layout_nsAttrKey() { + assert_eq!(::std::mem::size_of::() , 16usize , concat ! ( + "Size of: " , stringify ! ( nsAttrKey ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of " , stringify ! ( nsAttrKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsAttrKey ) ) . mNamespaceID as * + const _ as usize } , 0usize , concat ! ( + "Alignment of field: " , stringify ! ( nsAttrKey ) , "::" + , stringify ! ( mNamespaceID ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsAttrKey ) ) . mLocalName as * const + _ as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsAttrKey ) , "::" + , stringify ! ( mLocalName ) )); + } + impl Clone for nsAttrKey { + fn clone(&self) -> Self { *self } + } + /** + * PLDHashEntryHdr implementation for nsAttrKey. + */ + #[repr(C)] + #[derive(Debug)] + pub struct nsAttrHashKey { + pub _base: root::PLDHashEntryHdr, + pub mKey: root::nsAttrKey, + } + pub type nsAttrHashKey_KeyType = *const root::nsAttrKey; + pub type nsAttrHashKey_KeyTypePointer = *const root::nsAttrKey; + pub const nsAttrHashKey_ALLOW_MEMMOVE: root::nsAttrHashKey__bindgen_ty_1 = + nsAttrHashKey__bindgen_ty_1::ALLOW_MEMMOVE; + #[repr(u32)] + #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)] + pub enum nsAttrHashKey__bindgen_ty_1 { ALLOW_MEMMOVE = 1, } + #[test] + fn bindgen_test_layout_nsAttrHashKey() { + assert_eq!(::std::mem::size_of::() , 24usize , concat ! + ( "Size of: " , stringify ! ( nsAttrHashKey ) )); + assert_eq! (::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of " , stringify ! ( nsAttrHashKey ) )); + assert_eq! (unsafe { + & ( * ( 0 as * const nsAttrHashKey ) ) . mKey as * const _ + as usize } , 8usize , concat ! ( + "Alignment of field: " , stringify ! ( nsAttrHashKey ) , + "::" , stringify ! ( mKey ) )); + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsScrollbarFrame([u8; 0]); + pub struct nsScrollbarFrame { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsIScrollbarMediator { @@ -26424,16 +30089,21 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsBoxLayoutState([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsIScrollPositionListener([u8; 0]); - #[repr(C)] - #[derive(Debug, Copy, Clone)] - pub struct nsSMILValue([u8; 0]); - #[repr(C)] - pub struct nsISMILAttr__bindgen_vtable { + pub struct nsBoxLayoutState { + _unused: [u8; 0], } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsIScrollPositionListener { + _unused: [u8; 0], + } + #[repr(C)] + #[derive(Debug, Copy, Clone)] + pub struct nsSMILValue { + _unused: [u8; 0], + } + #[repr(C)] + pub struct nsISMILAttr__bindgen_vtable(::std::os::raw::c_void); //////////////////////////////////////////////////////////////////////// #[repr(C)] #[derive(Debug)] @@ -26449,10 +30119,14 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct mozAutoDocUpdate([u8; 0]); + pub struct mozAutoDocUpdate { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsAttrValueOrString([u8; 0]); + pub struct nsAttrValueOrString { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct LookAndFeelInt { @@ -26481,25 +30155,39 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct ElementRuleProcessorData([u8; 0]); + pub struct ElementRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct PseudoElementRuleProcessorData([u8; 0]); + pub struct PseudoElementRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AnonBoxRuleProcessorData([u8; 0]); + pub struct AnonBoxRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct XULTreeRuleProcessorData([u8; 0]); + pub struct XULTreeRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct StateRuleProcessorData([u8; 0]); + pub struct StateRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct PseudoElementStateRuleProcessorData([u8; 0]); + pub struct PseudoElementStateRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct AttributeRuleProcessorData([u8; 0]); + pub struct AttributeRuleProcessorData { + _unused: [u8; 0], + } #[repr(C)] #[derive(Debug, Copy)] pub struct nsIStyleRuleProcessor { @@ -26507,10 +30195,8 @@ pub mod root { } #[repr(C)] #[derive(Debug, Copy, Clone)] - pub struct nsIStyleRuleProcessor_COMTypeInfo { + pub struct nsIStyleRuleProcessor_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } pub type nsIStyleRuleProcessor_EnumFunc = ::std::option::Option { + pub struct nsIDOMCSSFontFaceRule_COMTypeInfo { pub _address: u8, - pub _phantom_0: ::std::marker::PhantomData, - pub _phantom_1: ::std::marker::PhantomData, } #[test] fn bindgen_test_layout_nsIDOMCSSFontFaceRule() { @@ -26914,7 +30602,7 @@ pub mod root { #[repr(C)] #[derive(Debug)] pub struct nsMediaQueryResultCacheKey { - pub mMedium: root::nsCOMPtr, + pub mMedium: root::nsCOMPtr, pub mFeatureCache: root::nsTArray, } #[repr(C)] @@ -27049,7 +30737,7 @@ pub mod root { pub mHasOnly: bool, pub mTypeOmitted: bool, pub mHadUnknownExpression: bool, - pub mMediaType: root::nsCOMPtr, + pub mMediaType: root::nsCOMPtr, pub mExpressions: root::nsTArray, } #[test] @@ -27148,253 +30836,77 @@ pub mod root { } pub type __builtin_va_list = [root::__va_list_tag; 1usize]; #[test] - fn __bindgen_test_layout_template_7() { - assert_eq!(::std::mem::size_of::>() , - 24usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsReadingIterator ) )); - assert_eq!(::std::mem::align_of::>() , - 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsReadingIterator ) )); + fn __bindgen_test_layout_IntegralConstant_instantiation_176114() { + assert_eq!(::std::mem::size_of::() , 1usize , concat ! ( + "Size of template specialization: " , stringify ! ( u8 ) + )); + assert_eq!(::std::mem::align_of::() , 1usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( u8 + ) )); } #[test] - fn __bindgen_test_layout_template_8() { - assert_eq!(::std::mem::size_of::>() , - 24usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsWritingIterator ) )); - assert_eq!(::std::mem::align_of::>() , - 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsWritingIterator ) )); + fn __bindgen_test_layout_IntegralConstant_instantiation_176118() { + assert_eq!(::std::mem::size_of::() , 1usize , concat ! ( + "Size of template specialization: " , stringify ! ( u8 ) + )); + assert_eq!(::std::mem::align_of::() , 1usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( u8 + ) )); } #[test] - fn __bindgen_test_layout_template_9() { - assert_eq!(::std::mem::size_of::>() + fn __bindgen_test_layout_nsReadingIterator_instantiation_176947() { + assert_eq!(::std::mem::size_of::>() , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::nsReadingIterator<::std::os::raw::c_char> ) )); - assert_eq!(::std::mem::align_of::>() + root::nsReadingIterator + ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::nsReadingIterator<::std::os::raw::c_char> ) )); + root::nsReadingIterator + ) )); } #[test] - fn __bindgen_test_layout_template_10() { - assert_eq!(::std::mem::size_of::>() + fn __bindgen_test_layout_nsWritingIterator_instantiation_176950() { + assert_eq!(::std::mem::size_of::>() , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::nsWritingIterator<::std::os::raw::c_char> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsWritingIterator<::std::os::raw::c_char> ) )); - } - #[test] - fn __bindgen_test_layout_template_11() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - } - #[test] - fn __bindgen_test_layout_template_12() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - } - #[test] - fn __bindgen_test_layout_template_13() { - assert_eq!(::std::mem::size_of::>>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> + root::nsWritingIterator ) )); - assert_eq!(::std::mem::align_of::>>() + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> + root::nsWritingIterator ) )); } #[test] - fn __bindgen_test_layout_template_14() { - assert_eq!(::std::mem::size_of::>() , - 8usize , concat ! ( + fn __bindgen_test_layout_nsReadingIterator_instantiation_177022() { + assert_eq!(::std::mem::size_of::>() + , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::nsTArray<::nsstring::nsStringRepr> ) )); - assert_eq!(::std::mem::align_of::>() , - 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray<::nsstring::nsStringRepr> ) )); - } - #[test] - fn __bindgen_test_layout_template_15() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::Handle<*mut root::JSObject> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::Handle<*mut root::JSObject> ) )); - } - #[test] - fn __bindgen_test_layout_template_16() { - assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat ! - ( - "Size of template specialization: " , stringify ! ( - [u64; 5usize] ) )); - assert_eq!(::std::mem::align_of::<[u64; 5usize]>() , 8usize , concat ! - ( - "Alignment of template specialization: " , stringify ! ( - [u64; 5usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_17() { - assert_eq!(::std::mem::size_of::<[u8; 2usize]>() , 2usize , concat ! ( - "Size of template specialization: " , stringify ! ( - [u8; 2usize] ) )); - assert_eq!(::std::mem::align_of::<[u8; 2usize]>() , 1usize , concat ! - ( - "Alignment of template specialization: " , stringify ! ( - [u8; 2usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_18() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::Handle ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::Handle ) )); - } - #[test] - fn __bindgen_test_layout_template_19() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::MutableHandle<*mut root::JSObject> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::MutableHandle<*mut root::JSObject> ) )); - } - #[test] - fn __bindgen_test_layout_template_20() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::MutableHandle ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::MutableHandle ) )); - } - #[test] - fn __bindgen_test_layout_template_21() { - assert_eq!(::std::mem::size_of::<[u64; 3usize]>() , 24usize , concat ! - ( - "Size of template specialization: " , stringify ! ( - [u64; 3usize] ) )); - assert_eq!(::std::mem::align_of::<[u64; 3usize]>() , 8usize , concat ! - ( - "Alignment of template specialization: " , stringify ! ( - [u64; 3usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_22() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::DeletePolicy ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::DeletePolicy ) )); - } - #[test] - fn __bindgen_test_layout_template_23() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr<[::std::os::raw::c_char; 0usize], - root::JS::FreePolicy> + root::nsReadingIterator ) )); - assert_eq!(::std::mem::align_of::>() + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr<[::std::os::raw::c_char; 0usize], - root::JS::FreePolicy> + root::nsReadingIterator ) )); } #[test] - fn __bindgen_test_layout_template_24() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( + fn __bindgen_test_layout_nsWritingIterator_instantiation_177025() { + assert_eq!(::std::mem::size_of::>() + , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::JS::TenuredHeap<*mut root::JSObject> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::TenuredHeap<*mut root::JSObject> ) )); - } - #[test] - fn __bindgen_test_layout_template_25() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::Heap<*mut root::JSObject> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::Heap<*mut root::JSObject> ) )); - } - #[test] - fn __bindgen_test_layout_template_26() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete<[root::nsDependentSubstring; 0usize]> + root::nsWritingIterator ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete<[root::nsDependentSubstring; 0usize]> + root::nsWritingIterator ) )); } #[test] - fn __bindgen_test_layout_template_27() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete<[root::nsDependentCSubstring; 0usize]> - ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete<[root::nsDependentCSubstring; 0usize]> - ) )); - } - #[test] - fn __bindgen_test_layout_template_28() { + fn __bindgen_test_layout_nsTArray_instantiation_181372() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27405,20 +30917,139 @@ pub mod root { root::nsTArray ) )); } #[test] - fn __bindgen_test_layout_template_29() { - assert_eq!(::std::mem::size_of::>() - , 16usize , concat ! ( + fn __bindgen_test_layout_Handle_instantiation_182216() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::binding_danger::TErrorResult - ) )); - assert_eq!(::std::mem::align_of::>() + root::JS::Handle<*mut root::JSObject> ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::binding_danger::TErrorResult - ) )); + root::JS::Handle<*mut root::JSObject> ) )); } #[test] - fn __bindgen_test_layout_template_30() { + fn __bindgen_test_layout_Handle_instantiation_182232() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::Handle ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::Handle ) )); + } + #[test] + fn __bindgen_test_layout_MutableHandle_instantiation_182242() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::MutableHandle<*mut root::JSObject> ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::MutableHandle<*mut root::JSObject> ) )); + } + #[test] + fn __bindgen_test_layout_MutableHandle_instantiation_182258() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::MutableHandle ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::MutableHandle ) )); + } + #[test] + fn __bindgen_test_layout_Rooted_instantiation_182261() { + assert_eq!(::std::mem::size_of::<[u64; 3usize]>() , 24usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + [u64; 3usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 3usize]>() , 8usize , concat ! + ( + "Alignment of template specialization: " , stringify ! ( + [u64; 3usize] ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_184764() { + assert_eq!(::std::mem::size_of::>() , + 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray<::nsstring::nsStringRepr> ) )); + assert_eq!(::std::mem::align_of::>() , + 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray<::nsstring::nsStringRepr> ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_184768() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_184781() { + assert_eq!(::std::mem::size_of::>() , 8usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray ) )); + } + #[test] + fn __bindgen_test_layout_TenuredHeap_instantiation_185620() { + assert_eq!(::std::mem::size_of::() , 8usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::TenuredHeap ) )); + assert_eq!(::std::mem::align_of::() , 8usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::TenuredHeap ) )); + } + #[test] + fn __bindgen_test_layout_Heap_instantiation_185710() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::Heap<*mut root::JSObject> ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::Heap<*mut root::JSObject> ) )); + } + #[test] + fn __bindgen_test_layout_TErrorResult_instantiation_185820() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::binding_danger::TErrorResult ) )); + assert_eq!(::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::binding_danger::TErrorResult ) )); + } + #[test] + fn __bindgen_test_layout_TErrorResult_instantiation_185836() { + assert_eq!(::std::mem::size_of::() + , 16usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::binding_danger::TErrorResult ) )); + assert_eq!(::std::mem::align_of::() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::binding_danger::TErrorResult ) )); + } + #[test] + fn __bindgen_test_layout_already_AddRefed_instantiation_185841() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27429,7 +31060,7 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_31() { + fn __bindgen_test_layout_already_AddRefed_instantiation_185893() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27440,120 +31071,29 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_32() { - assert_eq!(::std::mem::size_of::>() , - 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::Heap ) )); - assert_eq!(::std::mem::align_of::>() , - 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::Heap ) )); - } - #[test] - fn __bindgen_test_layout_template_33() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::JS::DeletePolicy ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::JS::DeletePolicy ) )); - } - #[test] - fn __bindgen_test_layout_template_34() { - assert_eq!(::std::mem::size_of::>>() + fn __bindgen_test_layout_RefPtr_instantiation_186367() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); - assert_eq!(::std::mem::align_of::>>() + root::RefPtr ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); + root::RefPtr ) )); } #[test] - fn __bindgen_test_layout_template_35() { - assert_eq!(::std::mem::size_of::>, - ::std::os::raw::c_long, - *mut root::mozilla::UniquePtr>, - *mut root::mozilla::UniquePtr>>>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::std::iterator>, - ::std::os::raw::c_long, - *mut root::mozilla::UniquePtr>, - *mut root::mozilla::UniquePtr>> - ) )); - assert_eq!(::std::mem::align_of::>, - ::std::os::raw::c_long, - *mut root::mozilla::UniquePtr>, - *mut root::mozilla::UniquePtr>>>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::std::iterator>, - ::std::os::raw::c_long, - *mut root::mozilla::UniquePtr>, - *mut root::mozilla::UniquePtr>> - ) )); - } - #[test] - fn __bindgen_test_layout_template_36() { - assert_eq!(::std::mem::size_of::>() + fn __bindgen_test_layout_already_AddRefed_instantiation_186713() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); + root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_37() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - } - #[test] - fn __bindgen_test_layout_template_38() { - assert_eq!(::std::mem::size_of::<[u64; 28usize]>() , 224usize , concat - ! ( - "Size of template specialization: " , stringify ! ( - [u64; 28usize] ) )); - assert_eq!(::std::mem::align_of::<[u64; 28usize]>() , 8usize , concat - ! ( - "Alignment of template specialization: " , stringify ! ( - [u64; 28usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_39() { + fn __bindgen_test_layout_already_AddRefed_instantiation_186956() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27564,7 +31104,62 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_40() { + fn __bindgen_test_layout_already_AddRefed_instantiation_187103() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + } + #[test] + fn __bindgen_test_layout_UniquePtr_instantiation_191183() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + } + #[test] + fn __bindgen_test_layout_iterator_instantiation_191215() { + assert_eq!(::std::mem::size_of::() , 1usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::std::iterator ) )); + assert_eq!(::std::mem::align_of::() , 1usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::std::iterator ) )); + } + #[test] + fn __bindgen_test_layout_nsCOMPtr_instantiation_191782() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + assert_eq!(::std::mem::align_of::() , 8usize , concat + ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + } + #[test] + fn __bindgen_test_layout_Heap_instantiation_193035() { + assert_eq!(::std::mem::size_of::>() , + 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::JS::Heap ) )); + assert_eq!(::std::mem::align_of::>() , + 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::JS::Heap ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_193377() { assert_eq!(::std::mem::size_of::>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27577,31 +31172,18 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_41() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( + fn __bindgen_test_layout_LinkedList_instantiation_193650() { + assert_eq!(::std::mem::size_of::() , + 24usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::RefPtr ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( + root::mozilla::LinkedList ) )); + assert_eq!(::std::mem::align_of::() , + 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::RefPtr ) )); + root::mozilla::LinkedList ) )); } #[test] - fn __bindgen_test_layout_template_42() { - assert_eq!(::std::mem::size_of::>() - , 24usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::LinkedList - ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::LinkedList - ) )); - } - #[test] - fn __bindgen_test_layout_template_43() { + fn __bindgen_test_layout_RefPtr_instantiation_193666() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27612,7 +31194,7 @@ pub mod root { root::RefPtr ) )); } #[test] - fn __bindgen_test_layout_template_44() { + fn __bindgen_test_layout_nsTArray_instantiation_193665() { assert_eq!(::std::mem::size_of::>>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27625,29 +31207,29 @@ pub mod root { )); } #[test] - fn __bindgen_test_layout_template_45() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( + fn __bindgen_test_layout_nsCOMPtr_instantiation_193695() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( + root::nsCOMPtr ) )); + assert_eq!(::std::mem::align_of::() , 8usize , concat + ! ( "Alignment of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); + root::nsCOMPtr ) )); } #[test] - fn __bindgen_test_layout_template_46() { - assert_eq!(::std::mem::size_of::>>() - , 8usize , concat ! ( + fn __bindgen_test_layout_nsTArray_instantiation_193694() { + assert_eq!(::std::mem::size_of::>() , + 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::nsTArray> ) )); - assert_eq!(::std::mem::align_of::>>() - , 8usize , concat ! ( + root::nsTArray ) )); + assert_eq!(::std::mem::align_of::>() , + 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::nsTArray> ) )); + root::nsTArray ) )); } #[test] - fn __bindgen_test_layout_template_47() { + fn __bindgen_test_layout_already_AddRefed_instantiation_193740() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27658,7 +31240,7 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_48() { + fn __bindgen_test_layout_already_AddRefed_instantiation_193905() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27669,161 +31251,53 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_49() { - assert_eq!(::std::mem::size_of::>() + fn __bindgen_test_layout_already_AddRefed_instantiation_194232() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); + root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_50() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( + fn __bindgen_test_layout_nsCOMPtr_instantiation_194325() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( "Size of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - } - #[test] - fn __bindgen_test_layout_template_51() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - } - #[test] - fn __bindgen_test_layout_template_52() { - assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( u64 ) - )); - assert_eq!(::std::mem::align_of::() , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - u64 ) )); - } - #[test] - fn __bindgen_test_layout_template_53() { - assert_eq!(::std::mem::size_of::>() , - 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray ) )); - assert_eq!(::std::mem::align_of::>() , - 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray ) )); - } - #[test] - fn __bindgen_test_layout_template_54() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - } - #[test] - fn __bindgen_test_layout_template_55() { - assert_eq!(::std::mem::size_of::<[u64; 28usize]>() , 224usize , concat - ! ( - "Size of template specialization: " , stringify ! ( - [u64; 28usize] ) )); - assert_eq!(::std::mem::align_of::<[u64; 28usize]>() , 8usize , concat + root::nsCOMPtr ) )); + assert_eq!(::std::mem::align_of::() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - [u64; 28usize] ) )); + root::nsCOMPtr ) )); } #[test] - fn __bindgen_test_layout_template_56() { - assert_eq!(::std::mem::size_of::>() + fn __bindgen_test_layout_UniquePtr_instantiation_194614() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::nsTArray<*mut root::nsIContent> ) )); - assert_eq!(::std::mem::align_of::>() + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::nsTArray<*mut root::nsIContent> ) )); + root::mozilla::UniquePtr ) )); } #[test] - fn __bindgen_test_layout_template_57() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( + fn __bindgen_test_layout_nsRefPtrHashKey_instantiation_195151() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - } - #[test] - fn __bindgen_test_layout_template_58() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete + root::nsRefPtrHashKey ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete + root::nsRefPtrHashKey ) )); } #[test] - fn __bindgen_test_layout_template_59() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - } - #[test] - fn __bindgen_test_layout_template_60() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsCOMPtr ) )); - } - #[test] - fn __bindgen_test_layout_template_61() { - assert_eq!(::std::mem::size_of::>>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray> ) )); - assert_eq!(::std::mem::align_of::>>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray> ) )); - } - #[test] - fn __bindgen_test_layout_template_62() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::already_AddRefed ) )); - } - #[test] - fn __bindgen_test_layout_template_63() { + fn __bindgen_test_layout_nsDataHashtable_instantiation_195150() { assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27834,7 +31308,93 @@ pub mod root { [u64; 5usize] ) )); } #[test] - fn __bindgen_test_layout_template_64() { + fn __bindgen_test_layout_nsTArray_instantiation_195266() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray<*mut root::nsIContent> ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray<*mut root::nsIContent> ) )); + } + #[test] + fn __bindgen_test_layout_SupportsWeakPtr_instantiation_195313() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( u64 ) + )); + assert_eq!(::std::mem::align_of::() , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + u64 ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_195488() { + assert_eq!(::std::mem::size_of::>() , + 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray ) )); + assert_eq!(::std::mem::align_of::>() , + 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_195761() { + assert_eq!(::std::mem::size_of::>() , + 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray ) )); + assert_eq!(::std::mem::align_of::>() , + 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray ) )); + } + #[test] + fn __bindgen_test_layout_nsPIDOMWindow_instantiation_196548() { + assert_eq!(::std::mem::size_of::<[u64; 28usize]>() , 224usize , concat + ! ( + "Size of template specialization: " , stringify ! ( + [u64; 28usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 28usize]>() , 8usize , concat + ! ( + "Alignment of template specialization: " , stringify ! ( + [u64; 28usize] ) )); + } + #[test] + fn __bindgen_test_layout_already_AddRefed_instantiation_196640() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + } + #[test] + fn __bindgen_test_layout_nsRefPtrHashtable_instantiation_196821() { + assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + [u64; 5usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 5usize]>() , 8usize , concat ! + ( + "Alignment of template specialization: " , stringify ! ( + [u64; 5usize] ) )); + } + #[test] + fn __bindgen_test_layout_nsPtrHashKey_instantiation_197338() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsPtrHashKey ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsPtrHashKey ) )); + } + #[test] + fn __bindgen_test_layout_OwningNonNull_instantiation_197453() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27845,7 +31405,29 @@ pub mod root { root::mozilla::OwningNonNull ) )); } #[test] - fn __bindgen_test_layout_template_65() { + fn __bindgen_test_layout_nsCOMPtr_instantiation_197580() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + assert_eq!(::std::mem::align_of::() , 8usize , concat + ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + } + #[test] + fn __bindgen_test_layout_nsPtrHashKey_instantiation_197750() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsPtrHashKey<::std::os::raw::c_void> ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsPtrHashKey<::std::os::raw::c_void> ) )); + } + #[test] + fn __bindgen_test_layout_PointTyped_instantiation_198539() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27856,7 +31438,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_66() { + fn __bindgen_test_layout_IntPointTyped_instantiation_198542() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27867,7 +31449,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_67() { + fn __bindgen_test_layout_SizeTyped_instantiation_198545() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27878,7 +31460,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_68() { + fn __bindgen_test_layout_RectTyped_instantiation_198551() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27889,7 +31471,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_69() { + fn __bindgen_test_layout_IntPointTyped_instantiation_198575() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27900,7 +31482,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_70() { + fn __bindgen_test_layout_IntSizeTyped_instantiation_198581() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27911,7 +31493,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_71() { + fn __bindgen_test_layout_IntRectTyped_instantiation_198587() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27922,7 +31504,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_72() { + fn __bindgen_test_layout_MarginTyped_instantiation_198716() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27933,7 +31515,7 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_73() { + fn __bindgen_test_layout_RectTyped_instantiation_198743() { assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27944,7 +31526,18 @@ pub mod root { [u32; 4usize] ) )); } #[test] - fn __bindgen_test_layout_template_74() { + fn __bindgen_test_layout_IntRectTyped_instantiation_198746() { + assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + [u32; 4usize] ) )); + assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat ! + ( + "Alignment of template specialization: " , stringify ! ( + [u32; 4usize] ) )); + } + #[test] + fn __bindgen_test_layout_ScaleFactor_instantiation_198782() { assert_eq!(::std::mem::size_of::() , 4usize , concat ! ( "Size of template specialization: " , stringify ! ( u32 ) )); @@ -27953,7 +31546,7 @@ pub mod root { u32 ) )); } #[test] - fn __bindgen_test_layout_template_75() { + fn __bindgen_test_layout_ScaleFactors2D_instantiation_198882() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27964,7 +31557,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_76() { + fn __bindgen_test_layout_ScaleFactors2D_instantiation_198890() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27975,7 +31568,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_77() { + fn __bindgen_test_layout_ScaleFactors2D_instantiation_198934() { assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -27986,83 +31579,7 @@ pub mod root { [u32; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_78() { - assert_eq!(::std::mem::size_of::>() , 8usize , - concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray ) )); - assert_eq!(::std::mem::align_of::>() , 8usize , - concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray ) )); - } - #[test] - fn __bindgen_test_layout_template_79() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::RefPtr - ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::RefPtr - ) )); - } - #[test] - fn __bindgen_test_layout_template_80() { - assert_eq!(::std::mem::size_of::>>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray> - ) )); - assert_eq!(::std::mem::align_of::>>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray> - ) )); - } - #[test] - fn __bindgen_test_layout_template_81() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr - ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr - ) )); - } - #[test] - fn __bindgen_test_layout_template_82() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray ) )); - } - #[test] - fn __bindgen_test_layout_template_83() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::nsTArray<::std::os::raw::c_uint> ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::nsTArray<::std::os::raw::c_uint> ) )); - } - #[test] - fn __bindgen_test_layout_template_84() { + fn __bindgen_test_layout_nsTArray_instantiation_199564() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28075,7 +31592,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_85() { + fn __bindgen_test_layout_nsPtrHashKey_instantiation_199580() { assert_eq!(::std::mem::size_of::>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28086,7 +31603,29 @@ pub mod root { root::nsPtrHashKey ) )); } #[test] - fn __bindgen_test_layout_template_86() { + fn __bindgen_test_layout_nsPIDOMWindow_instantiation_202828() { + assert_eq!(::std::mem::size_of::<[u64; 28usize]>() , 224usize , concat + ! ( + "Size of template specialization: " , stringify ! ( + [u64; 28usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 28usize]>() , 8usize , concat + ! ( + "Alignment of template specialization: " , stringify ! ( + [u64; 28usize] ) )); + } + #[test] + fn __bindgen_test_layout_already_AddRefed_instantiation_203455() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + } + #[test] + fn __bindgen_test_layout_nsRefPtrHashtable_instantiation_203547() { assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28097,7 +31636,99 @@ pub mod root { [u64; 5usize] ) )); } #[test] - fn __bindgen_test_layout_template_87() { + fn __bindgen_test_layout_already_AddRefed_instantiation_204744() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::already_AddRefed ) )); + } + #[test] + fn __bindgen_test_layout_nsCOMPtr_instantiation_205090() { + assert_eq!(::std::mem::size_of::() , 8usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + assert_eq!(::std::mem::align_of::() , 8usize , concat + ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsCOMPtr ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_206655() { + assert_eq!(::std::mem::size_of::>() , 8usize , + concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , + concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray ) )); + } + #[test] + fn __bindgen_test_layout_RefPtr_instantiation_206667() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::RefPtr + ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::RefPtr + ) )); + } + #[test] + fn __bindgen_test_layout_nsTArray_instantiation_206666() { + assert_eq!(::std::mem::size_of::>>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsTArray> + ) )); + assert_eq!(::std::mem::align_of::>>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsTArray> + ) )); + } + #[test] + fn __bindgen_test_layout_nsPtrHashKey_instantiation_206700() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsPtrHashKey ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsPtrHashKey ) )); + } + #[test] + fn __bindgen_test_layout_UniquePtr_instantiation_206797() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + } + #[test] + fn __bindgen_test_layout_nsDataHashtable_instantiation_208715() { + assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + [u64; 5usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 5usize]>() , 8usize , concat ! + ( + "Alignment of template specialization: " , stringify ! ( + [u64; 5usize] ) )); + } + #[test] + fn __bindgen_test_layout_OwningNonNull_instantiation_208754() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28110,18 +31741,29 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_88() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( + fn __bindgen_test_layout_nsRefPtrHashKey_instantiation_208775() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( + root::nsRefPtrHashKey ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); + root::nsRefPtrHashKey ) )); } #[test] - fn __bindgen_test_layout_template_89() { + fn __bindgen_test_layout_nsRefPtrHashKey_instantiation_208806() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::nsRefPtrHashKey ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::nsRefPtrHashKey ) )); + } + #[test] + fn __bindgen_test_layout_already_AddRefed_instantiation_209362() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28132,7 +31774,7 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_90() { + fn __bindgen_test_layout_nsMainThreadPtrHolder_instantiation_209366() { assert_eq!(::std::mem::size_of::>() , 24usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28143,65 +31785,40 @@ pub mod root { root::nsMainThreadPtrHolder ) )); } #[test] - fn __bindgen_test_layout_template_91() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( + fn __bindgen_test_layout_nsPtrHashKey_instantiation_209440() { + assert_eq!(::std::mem::size_of::>() + , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - } - #[test] - fn __bindgen_test_layout_template_92() { - assert_eq!(::std::mem::size_of::>>() - , 8usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); - assert_eq!(::std::mem::align_of::>>() + root::nsPtrHashKey ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); + root::nsPtrHashKey ) )); } #[test] - fn __bindgen_test_layout_template_93() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) - )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) - )); - } - #[test] - fn __bindgen_test_layout_template_94() { - assert_eq!(::std::mem::size_of::>>() + fn __bindgen_test_layout_UniquePtr_instantiation_209725() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); - assert_eq!(::std::mem::align_of::>>() + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); + root::mozilla::UniquePtr ) )); } #[test] - fn __bindgen_test_layout_template_95() { + fn __bindgen_test_layout_UniquePtr_instantiation_209728() { + assert_eq!(::std::mem::size_of::>() + , 8usize , concat ! ( + "Size of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() + , 8usize , concat ! ( + "Alignment of template specialization: " , stringify ! ( + root::mozilla::UniquePtr ) )); + } + #[test] + fn __bindgen_test_layout_Maybe_instantiation_209997() { assert_eq!(::std::mem::size_of::<[u64; 2usize]>() , 16usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28212,7 +31829,7 @@ pub mod root { [u64; 2usize] ) )); } #[test] - fn __bindgen_test_layout_template_96() { + fn __bindgen_test_layout_SupportsWeakPtr_instantiation_210163() { assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -28221,7 +31838,7 @@ pub mod root { u64 ) )); } #[test] - fn __bindgen_test_layout_template_97() { + fn __bindgen_test_layout_Maybe_instantiation_210311() { assert_eq!(::std::mem::size_of::<[u32; 3usize]>() , 12usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28232,7 +31849,7 @@ pub mod root { [u32; 3usize] ) )); } #[test] - fn __bindgen_test_layout_template_98() { + fn __bindgen_test_layout_already_AddRefed_instantiation_210326() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28243,48 +31860,18 @@ pub mod root { root::already_AddRefed ) )); } #[test] - fn __bindgen_test_layout_template_99() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) )); - } - #[test] - fn __bindgen_test_layout_template_100() { - assert_eq!(::std::mem::size_of::>>() + fn __bindgen_test_layout_UniquePtr_instantiation_210332() { + assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); - assert_eq!(::std::mem::align_of::>>() + root::mozilla::UniquePtr ) )); + assert_eq!(::std::mem::align_of::>() , 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::UniquePtr> - ) )); + root::mozilla::UniquePtr ) )); } #[test] - fn __bindgen_test_layout_template_101() { - assert_eq!(::std::mem::size_of::>() - , 1usize , concat ! ( - "Size of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) - )); - assert_eq!(::std::mem::align_of::>() - , 1usize , concat ! ( - "Alignment of template specialization: " , stringify ! ( - root::mozilla::DefaultDelete ) - )); - } - #[test] - fn __bindgen_test_layout_template_102() { + fn __bindgen_test_layout_pair_instantiation_210518() { assert_eq!(::std::mem::size_of::>() , 32usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28295,7 +31882,7 @@ pub mod root { root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr> ) )); } #[test] - fn __bindgen_test_layout_template_103() { + fn __bindgen_test_layout_nsTArray_instantiation_210517() { assert_eq!(::std::mem::size_of::>>() , 8usize , concat ! ( @@ -28310,18 +31897,7 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_104() { - assert_eq!(::std::mem::size_of::<[u64; 18usize]>() , 144usize , concat - ! ( - "Size of template specialization: " , stringify ! ( - [u64; 18usize] ) )); - assert_eq!(::std::mem::align_of::<[u64; 18usize]>() , 8usize , concat - ! ( - "Alignment of template specialization: " , stringify ! ( - [u64; 18usize] ) )); - } - #[test] - fn __bindgen_test_layout_template_105() { + fn __bindgen_test_layout_RefPtr_instantiation_211497() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28332,20 +31908,18 @@ pub mod root { root::RefPtr ) )); } #[test] - fn __bindgen_test_layout_template_106() { - assert_eq!(::std::mem::size_of::>() - , 8usize , concat ! ( + fn __bindgen_test_layout_BaseTimeDuration_instantiation_215485() { + assert_eq!(::std::mem::size_of::() , + 8usize , concat ! ( "Size of template specialization: " , stringify ! ( - root::mozilla::BaseTimeDuration - ) )); - assert_eq!(::std::mem::align_of::>() - , 8usize , concat ! ( + root::mozilla::BaseTimeDuration ) )); + assert_eq!(::std::mem::align_of::() , + 8usize , concat ! ( "Alignment of template specialization: " , stringify ! ( - root::mozilla::BaseTimeDuration - ) )); + root::mozilla::BaseTimeDuration ) )); } #[test] - fn __bindgen_test_layout_template_107() { + fn __bindgen_test_layout_nsTArray_instantiation_216077() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28358,7 +31932,18 @@ pub mod root { ) )); } #[test] - fn __bindgen_test_layout_template_108() { + fn __bindgen_test_layout_Maybe_instantiation_216251() { + assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat ! + ( + "Size of template specialization: " , stringify ! ( + [u64; 5usize] ) )); + assert_eq!(::std::mem::align_of::<[u64; 5usize]>() , 8usize , concat ! + ( + "Alignment of template specialization: " , stringify ! ( + [u64; 5usize] ) )); + } + #[test] + fn __bindgen_test_layout_RefPtr_instantiation_216426() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28369,7 +31954,7 @@ pub mod root { root::RefPtr ) )); } #[test] - fn __bindgen_test_layout_template_109() { + fn __bindgen_test_layout_Sequence_instantiation_216670() { assert_eq!(::std::mem::size_of::() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( u64 ) )); @@ -28378,7 +31963,7 @@ pub mod root { u64 ) )); } #[test] - fn __bindgen_test_layout_template_110() { + fn __bindgen_test_layout_nsTArray_instantiation_218065() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( @@ -28389,7 +31974,7 @@ pub mod root { root::nsTArray<*mut root::mozilla::css::DocumentRule> ) )); } #[test] - fn __bindgen_test_layout_template_111() { + fn __bindgen_test_layout_nsAutoPtr_instantiation_218101() { assert_eq!(::std::mem::size_of::>() , 8usize , concat ! ( "Size of template specialization: " , stringify ! ( diff --git a/servo/components/style/gecko/wrapper.rs b/servo/components/style/gecko/wrapper.rs index a8ed92192afc..66ac6797b97d 100644 --- a/servo/components/style/gecko/wrapper.rs +++ b/servo/components/style/gecko/wrapper.rs @@ -1060,7 +1060,7 @@ impl<'le> ::selectors::Element for GeckoElement<'le> { fn get_local_name(&self) -> &WeakAtom { unsafe { - WeakAtom::new(self.as_node().node_info().mInner.mName.raw()) + WeakAtom::new(self.as_node().node_info().mInner.mName.raw::()) } } diff --git a/servo/components/style/gecko_bindings/sugar/ns_com_ptr.rs b/servo/components/style/gecko_bindings/sugar/ns_com_ptr.rs index 4cbd81e5876c..488dc862608e 100644 --- a/servo/components/style/gecko_bindings/sugar/ns_com_ptr.rs +++ b/servo/components/style/gecko_bindings/sugar/ns_com_ptr.rs @@ -6,18 +6,20 @@ use gecko_bindings::structs::nsCOMPtr; +#[cfg(feature = "gecko_debug")] impl nsCOMPtr { /// Get this pointer as a raw pointer. - #[cfg(feature = "gecko_debug")] #[inline] - pub fn raw(&self) -> *mut T { + pub fn raw(&self) -> *mut T { self.mRawPtr } +} +#[cfg(not(feature = "gecko_debug"))] +impl nsCOMPtr { /// Get this pointer as a raw pointer. - #[cfg(not(feature = "gecko_debug"))] #[inline] - pub fn raw(&self) -> *mut T { + pub fn raw(&self) -> *mut T { self._base.mRawPtr as *mut _ } } diff --git a/servo/components/style/properties/gecko.mako.rs b/servo/components/style/properties/gecko.mako.rs index f6fb7b957091..4995e9abfceb 100644 --- a/servo/components/style/properties/gecko.mako.rs +++ b/servo/components/style/properties/gecko.mako.rs @@ -2273,10 +2273,11 @@ fn static_assert() { use gecko_bindings::structs::nsCSSPropertyID::eCSSPropertyExtra_no_properties; use gecko_bindings::structs::nsCSSPropertyID::eCSSPropertyExtra_variable; use gecko_bindings::structs::nsCSSPropertyID::eCSSProperty_UNKNOWN; + use gecko_bindings::structs::nsIAtom; let property = self.gecko.mTransitions[index].mProperty; if property == eCSSProperty_UNKNOWN || property == eCSSPropertyExtra_variable { - let atom = self.gecko.mTransitions[index].mUnknownProperty.raw(); + let atom = self.gecko.mTransitions[index].mUnknownProperty.raw::(); debug_assert!(!atom.is_null()); TransitionProperty::Unsupported(atom.into()) } else if property == eCSSPropertyExtra_no_properties { @@ -2295,6 +2296,7 @@ fn static_assert() { pub fn copy_transition_property_from(&mut self, other: &Self) { use gecko_bindings::structs::nsCSSPropertyID::eCSSPropertyExtra_variable; use gecko_bindings::structs::nsCSSPropertyID::eCSSProperty_UNKNOWN; + use gecko_bindings::structs::nsIAtom; unsafe { self.gecko.mTransitions.ensure_len(other.gecko.mTransitions.len()) }; let count = other.gecko.mTransitionPropertyCount; @@ -2304,7 +2306,7 @@ fn static_assert() { transition.mProperty = other.gecko.mTransitions[index].mProperty; if transition.mProperty == eCSSProperty_UNKNOWN || transition.mProperty == eCSSPropertyExtra_variable { - let atom = other.gecko.mTransitions[index].mUnknownProperty.raw(); + let atom = other.gecko.mTransitions[index].mUnknownProperty.raw::(); debug_assert!(!atom.is_null()); unsafe { Gecko_StyleTransition_SetUnsupportedProperty(transition, atom) }; } diff --git a/servo/components/style/properties/longhand/font.mako.rs b/servo/components/style/properties/longhand/font.mako.rs index 159f5de5884b..603e100a4e2c 100644 --- a/servo/components/style/properties/longhand/font.mako.rs +++ b/servo/components/style/properties/longhand/font.mako.rs @@ -695,7 +695,7 @@ ${helpers.single_keyword_system("font-variant-caps", #[inline] fn to_computed_value(&self, cx: &Context) -> computed_value::T { use gecko_bindings::bindings::Gecko_GetBaseSize; - use gecko_bindings::structs; + use gecko_bindings::structs::{self, nsIAtom}; use values::specified::length::au_to_int_px; // Data from nsRuleNode.cpp in Gecko // Mapping from base size and HTML size to pixels @@ -721,7 +721,7 @@ ${helpers.single_keyword_system("font-variant-caps", // XXXManishearth handle quirks mode let ref gecko_font = cx.style().get_font().gecko(); - let base_size = unsafe { Atom::with(gecko_font.mLanguage.raw(), &mut |atom| { + let base_size = unsafe { Atom::with(gecko_font.mLanguage.raw::(), &mut |atom| { cx.font_metrics_provider.get_size(atom, gecko_font.mGenericID).0 }) };