servo/components/style/gecko/generated/structs_release.rs
author Cameron McCormack <cam@mcc.id.au>
Fri, 09 Jun 2017 03:57:36 -0700
changeset 411329 6fcb8d17838d87c1864a776bfe1ddb95357c73c0
parent 411209 83ff39c14cedc6a5a56fc0b0c2aa774880ca7c00
child 411426 f627e18598c3ccd3c086865186459eda991fca0b
permissions -rw-r--r--
servo: Merge #17252 - style: don't perform selector matching on the flattened tree (from heycam:flattened-tree); r=emilio From https://bugzilla.mozilla.org/show_bug.cgi?id=1369954. Source-Repo: https://github.com/servo/servo Source-Revision: 969047bb7cab0f5e8c235017b7e9f7a170c9b7e4

/* automatically generated by rust-bindgen */

pub use self::root::*;
pub use self::root::mozilla::*;
pub use self::root::mozilla::css::*;
pub use self::root::mozilla::dom::*;
use atomic_refcell::AtomicRefCell;
use data::ElementData;
pub type ServoUnsafeCell<T> = ::std::cell::UnsafeCell<T>;
pub type ServoCell<T> = ::std::cell::Cell<T>;
pub type ServoNodeData = AtomicRefCell<ElementData>;

#[allow(non_snake_case, non_camel_case_types, non_upper_case_globals)]
pub mod root {
    #[repr(C)]
    pub struct __BindgenUnionField<T>(::std::marker::PhantomData<T>);
    impl <T> __BindgenUnionField<T> {
        #[inline]
        pub fn new() -> Self {
            __BindgenUnionField(::std::marker::PhantomData)
        }
        #[inline]
        pub unsafe fn as_ref(&self) -> &T { ::std::mem::transmute(self) }
        #[inline]
        pub unsafe fn as_mut(&mut self) -> &mut T {
            ::std::mem::transmute(self)
        }
    }
    impl <T> ::std::default::Default for __BindgenUnionField<T> {
        #[inline]
        fn default() -> Self { Self::new() }
    }
    impl <T> ::std::clone::Clone for __BindgenUnionField<T> {
        #[inline]
        fn clone(&self) -> Self { Self::new() }
    }
    impl <T> ::std::marker::Copy for __BindgenUnionField<T> { }
    impl <T> ::std::fmt::Debug for __BindgenUnionField<T> {
        fn fmt(&self, fmt: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
            fmt.write_str("__BindgenUnionField")
        }
    }
    #[allow(unused_imports)]
    use self::super::root;
    pub const NS_FONT_STYLE_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_STYLE_ITALIC: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_STYLE_OBLIQUE: ::std::os::raw::c_uint = 2;
    pub const NS_FONT_WEIGHT_NORMAL: ::std::os::raw::c_uint = 400;
    pub const NS_FONT_WEIGHT_BOLD: ::std::os::raw::c_uint = 700;
    pub const NS_FONT_WEIGHT_THIN: ::std::os::raw::c_uint = 100;
    pub const NS_FONT_STRETCH_ULTRA_CONDENSED: ::std::os::raw::c_int = -4;
    pub const NS_FONT_STRETCH_EXTRA_CONDENSED: ::std::os::raw::c_int = -3;
    pub const NS_FONT_STRETCH_CONDENSED: ::std::os::raw::c_int = -2;
    pub const NS_FONT_STRETCH_SEMI_CONDENSED: ::std::os::raw::c_int = -1;
    pub const NS_FONT_STRETCH_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_STRETCH_SEMI_EXPANDED: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_STRETCH_EXPANDED: ::std::os::raw::c_uint = 2;
    pub const NS_FONT_STRETCH_EXTRA_EXPANDED: ::std::os::raw::c_uint = 3;
    pub const NS_FONT_STRETCH_ULTRA_EXPANDED: ::std::os::raw::c_uint = 4;
    pub const NS_FONT_SMOOTHING_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_SMOOTHING_GRAYSCALE: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_KERNING_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_KERNING_NONE: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_KERNING_NORMAL: ::std::os::raw::c_uint = 2;
    pub const NS_FONT_SYNTHESIS_WEIGHT: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_SYNTHESIS_STYLE: ::std::os::raw::c_uint = 2;
    pub const NS_FONT_DISPLAY_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_DISPLAY_BLOCK: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_DISPLAY_SWAP: ::std::os::raw::c_uint = 2;
    pub const NS_FONT_DISPLAY_FALLBACK: ::std::os::raw::c_uint = 3;
    pub const NS_FONT_DISPLAY_OPTIONAL: ::std::os::raw::c_uint = 4;
    pub const NS_FONT_VARIANT_ALTERNATES_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_VARIANT_ALTERNATES_HISTORICAL: ::std::os::raw::c_uint =
        1;
    pub const NS_FONT_VARIANT_ALTERNATES_STYLISTIC: ::std::os::raw::c_uint =
        2;
    pub const NS_FONT_VARIANT_ALTERNATES_STYLESET: ::std::os::raw::c_uint = 4;
    pub const NS_FONT_VARIANT_ALTERNATES_CHARACTER_VARIANT:
              ::std::os::raw::c_uint =
        8;
    pub const NS_FONT_VARIANT_ALTERNATES_SWASH: ::std::os::raw::c_uint = 16;
    pub const NS_FONT_VARIANT_ALTERNATES_ORNAMENTS: ::std::os::raw::c_uint =
        32;
    pub const NS_FONT_VARIANT_ALTERNATES_ANNOTATION: ::std::os::raw::c_uint =
        64;
    pub const NS_FONT_VARIANT_ALTERNATES_COUNT: ::std::os::raw::c_uint = 7;
    pub const NS_FONT_VARIANT_ALTERNATES_ENUMERATED_MASK:
              ::std::os::raw::c_uint =
        1;
    pub const NS_FONT_VARIANT_ALTERNATES_FUNCTIONAL_MASK:
              ::std::os::raw::c_uint =
        126;
    pub const NS_FONT_VARIANT_CAPS_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_VARIANT_CAPS_SMALLCAPS: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_VARIANT_CAPS_ALLSMALL: ::std::os::raw::c_uint = 2;
    pub const NS_FONT_VARIANT_CAPS_PETITECAPS: ::std::os::raw::c_uint = 3;
    pub const NS_FONT_VARIANT_CAPS_ALLPETITE: ::std::os::raw::c_uint = 4;
    pub const NS_FONT_VARIANT_CAPS_TITLING: ::std::os::raw::c_uint = 5;
    pub const NS_FONT_VARIANT_CAPS_UNICASE: ::std::os::raw::c_uint = 6;
    pub const NS_FONT_VARIANT_EAST_ASIAN_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_VARIANT_EAST_ASIAN_JIS78: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_VARIANT_EAST_ASIAN_JIS83: ::std::os::raw::c_uint = 2;
    pub const NS_FONT_VARIANT_EAST_ASIAN_JIS90: ::std::os::raw::c_uint = 4;
    pub const NS_FONT_VARIANT_EAST_ASIAN_JIS04: ::std::os::raw::c_uint = 8;
    pub const NS_FONT_VARIANT_EAST_ASIAN_SIMPLIFIED: ::std::os::raw::c_uint =
        16;
    pub const NS_FONT_VARIANT_EAST_ASIAN_TRADITIONAL: ::std::os::raw::c_uint =
        32;
    pub const NS_FONT_VARIANT_EAST_ASIAN_FULL_WIDTH: ::std::os::raw::c_uint =
        64;
    pub const NS_FONT_VARIANT_EAST_ASIAN_PROP_WIDTH: ::std::os::raw::c_uint =
        128;
    pub const NS_FONT_VARIANT_EAST_ASIAN_RUBY: ::std::os::raw::c_uint = 256;
    pub const NS_FONT_VARIANT_EAST_ASIAN_COUNT: ::std::os::raw::c_uint = 9;
    pub const NS_FONT_VARIANT_EAST_ASIAN_VARIANT_MASK: ::std::os::raw::c_uint
              =
        63;
    pub const NS_FONT_VARIANT_EAST_ASIAN_WIDTH_MASK: ::std::os::raw::c_uint =
        192;
    pub const NS_FONT_VARIANT_LIGATURES_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_VARIANT_LIGATURES_NONE: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_VARIANT_LIGATURES_COMMON: ::std::os::raw::c_uint = 2;
    pub const NS_FONT_VARIANT_LIGATURES_NO_COMMON: ::std::os::raw::c_uint = 4;
    pub const NS_FONT_VARIANT_LIGATURES_DISCRETIONARY: ::std::os::raw::c_uint
              =
        8;
    pub const NS_FONT_VARIANT_LIGATURES_NO_DISCRETIONARY:
              ::std::os::raw::c_uint =
        16;
    pub const NS_FONT_VARIANT_LIGATURES_HISTORICAL: ::std::os::raw::c_uint =
        32;
    pub const NS_FONT_VARIANT_LIGATURES_NO_HISTORICAL: ::std::os::raw::c_uint
              =
        64;
    pub const NS_FONT_VARIANT_LIGATURES_CONTEXTUAL: ::std::os::raw::c_uint =
        128;
    pub const NS_FONT_VARIANT_LIGATURES_NO_CONTEXTUAL: ::std::os::raw::c_uint
              =
        256;
    pub const NS_FONT_VARIANT_LIGATURES_COUNT: ::std::os::raw::c_uint = 9;
    pub const NS_FONT_VARIANT_LIGATURES_COMMON_MASK: ::std::os::raw::c_uint =
        6;
    pub const NS_FONT_VARIANT_LIGATURES_DISCRETIONARY_MASK:
              ::std::os::raw::c_uint =
        24;
    pub const NS_FONT_VARIANT_LIGATURES_HISTORICAL_MASK:
              ::std::os::raw::c_uint =
        96;
    pub const NS_FONT_VARIANT_LIGATURES_CONTEXTUAL_MASK:
              ::std::os::raw::c_uint =
        384;
    pub const NS_FONT_VARIANT_NUMERIC_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_VARIANT_NUMERIC_LINING: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_VARIANT_NUMERIC_OLDSTYLE: ::std::os::raw::c_uint = 2;
    pub const NS_FONT_VARIANT_NUMERIC_PROPORTIONAL: ::std::os::raw::c_uint =
        4;
    pub const NS_FONT_VARIANT_NUMERIC_TABULAR: ::std::os::raw::c_uint = 8;
    pub const NS_FONT_VARIANT_NUMERIC_DIAGONAL_FRACTIONS:
              ::std::os::raw::c_uint =
        16;
    pub const NS_FONT_VARIANT_NUMERIC_STACKED_FRACTIONS:
              ::std::os::raw::c_uint =
        32;
    pub const NS_FONT_VARIANT_NUMERIC_SLASHZERO: ::std::os::raw::c_uint = 64;
    pub const NS_FONT_VARIANT_NUMERIC_ORDINAL: ::std::os::raw::c_uint = 128;
    pub const NS_FONT_VARIANT_NUMERIC_COUNT: ::std::os::raw::c_uint = 8;
    pub const NS_FONT_VARIANT_NUMERIC_FIGURE_MASK: ::std::os::raw::c_uint = 3;
    pub const NS_FONT_VARIANT_NUMERIC_SPACING_MASK: ::std::os::raw::c_uint =
        12;
    pub const NS_FONT_VARIANT_NUMERIC_FRACTION_MASK: ::std::os::raw::c_uint =
        48;
    pub const NS_FONT_VARIANT_POSITION_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_VARIANT_POSITION_SUPER: ::std::os::raw::c_uint = 1;
    pub const NS_FONT_VARIANT_POSITION_SUB: ::std::os::raw::c_uint = 2;
    pub const NS_FONT_VARIANT_WIDTH_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_FONT_VARIANT_WIDTH_FULL: ::std::os::raw::c_uint = 1;
    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: 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_AZIMUTH_LEFT_SIDE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_AZIMUTH_FAR_LEFT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_AZIMUTH_LEFT: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_AZIMUTH_CENTER_LEFT: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_AZIMUTH_CENTER: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_AZIMUTH_CENTER_RIGHT: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_AZIMUTH_RIGHT: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_AZIMUTH_FAR_RIGHT: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_AZIMUTH_RIGHT_SIDE: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_AZIMUTH_BEHIND: ::std::os::raw::c_uint = 128;
    pub const NS_STYLE_AZIMUTH_LEFTWARDS: ::std::os::raw::c_uint = 16;
    pub const NS_STYLE_AZIMUTH_RIGHTWARDS: ::std::os::raw::c_uint = 32;
    pub const NS_STYLE_ELEVATION_BELOW: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_ELEVATION_LEVEL: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_ELEVATION_ABOVE: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_ELEVATION_HIGHER: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_ELEVATION_LOWER: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_PITCH_X_LOW: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_PITCH_LOW: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_PITCH_MEDIUM: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_PITCH_HIGH: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_PITCH_X_HIGH: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_SPEAK_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_SPEAK_NORMAL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_SPEAK_SPELL_OUT: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_SPEAK_HEADER_ONCE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_SPEAK_HEADER_ALWAYS: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_SPEAK_NUMERAL_DIGITS: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_SPEAK_NUMERAL_CONTINUOUS: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_SPEAK_PUNCTUATION_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_SPEAK_PUNCTUATION_CODE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_SPEECH_RATE_X_SLOW: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_SPEECH_RATE_SLOW: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_SPEECH_RATE_MEDIUM: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_SPEECH_RATE_FAST: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_SPEECH_RATE_X_FAST: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_SPEECH_RATE_FASTER: ::std::os::raw::c_uint = 10;
    pub const NS_STYLE_SPEECH_RATE_SLOWER: ::std::os::raw::c_uint = 11;
    pub const NS_STYLE_VOLUME_SILENT: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_VOLUME_X_SOFT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_VOLUME_SOFT: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_VOLUME_MEDIUM: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_VOLUME_LOUD: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_VOLUME_X_LOUD: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_COLOR_INHERIT_FROM_BODY: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_WILL_CHANGE_STACKING_CONTEXT: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_WILL_CHANGE_TRANSFORM: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_WILL_CHANGE_SCROLL: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_WILL_CHANGE_OPACITY: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_WILL_CHANGE_FIXPOS_CB: ::std::os::raw::c_uint = 16;
    pub const NS_STYLE_WILL_CHANGE_ABSPOS_CB: ::std::os::raw::c_uint = 32;
    pub const NS_STYLE_ANIMATION_ITERATION_COUNT_INFINITE:
              ::std::os::raw::c_uint =
        0;
    pub const NS_STYLE_ANIMATION_PLAY_STATE_RUNNING: ::std::os::raw::c_uint =
        0;
    pub const NS_STYLE_ANIMATION_PLAY_STATE_PAUSED: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_IMAGELAYER_ATTACHMENT_SCROLL: ::std::os::raw::c_uint =
        0;
    pub const NS_STYLE_IMAGELAYER_ATTACHMENT_FIXED: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_IMAGELAYER_ATTACHMENT_LOCAL: ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_IMAGELAYER_CLIP_MOZ_ALMOST_PADDING:
              ::std::os::raw::c_uint =
        127;
    pub const NS_STYLE_IMAGELAYER_POSITION_CENTER: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_IMAGELAYER_POSITION_TOP: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_IMAGELAYER_POSITION_BOTTOM: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_IMAGELAYER_POSITION_LEFT: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_IMAGELAYER_POSITION_RIGHT: ::std::os::raw::c_uint = 16;
    pub const NS_STYLE_IMAGELAYER_REPEAT_NO_REPEAT: ::std::os::raw::c_uint =
        0;
    pub const NS_STYLE_IMAGELAYER_REPEAT_REPEAT_X: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_IMAGELAYER_REPEAT_REPEAT_Y: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_IMAGELAYER_REPEAT_REPEAT: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_IMAGELAYER_REPEAT_SPACE: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_IMAGELAYER_REPEAT_ROUND: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_IMAGELAYER_SIZE_CONTAIN: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_IMAGELAYER_SIZE_COVER: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_MASK_MODE_ALPHA: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_MASK_MODE_LUMINANCE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_MASK_MODE_MATCH_SOURCE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_BG_INLINE_POLICY_EACH_BOX: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_BG_INLINE_POLICY_CONTINUOUS: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_BG_INLINE_POLICY_BOUNDING_BOX: ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_BORDER_COLLAPSE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_BORDER_SEPARATE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_BORDER_WIDTH_THIN: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_BORDER_WIDTH_MEDIUM: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_BORDER_WIDTH_THICK: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_BORDER_STYLE_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_BORDER_STYLE_GROOVE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_BORDER_STYLE_RIDGE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_BORDER_STYLE_DOTTED: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_BORDER_STYLE_DASHED: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_BORDER_STYLE_SOLID: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_BORDER_STYLE_DOUBLE: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_BORDER_STYLE_INSET: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_BORDER_STYLE_OUTSET: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_BORDER_STYLE_HIDDEN: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_BORDER_STYLE_AUTO: ::std::os::raw::c_uint = 10;
    pub const NS_STYLE_BORDER_IMAGE_REPEAT_STRETCH: ::std::os::raw::c_uint =
        0;
    pub const NS_STYLE_BORDER_IMAGE_REPEAT_REPEAT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_BORDER_IMAGE_REPEAT_ROUND: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_BORDER_IMAGE_REPEAT_SPACE: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_BORDER_IMAGE_SLICE_NOFILL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_BORDER_IMAGE_SLICE_FILL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_CONTENT_OPEN_QUOTE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_CONTENT_CLOSE_QUOTE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_CONTENT_NO_OPEN_QUOTE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_CONTENT_NO_CLOSE_QUOTE: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_CONTENT_ALT_CONTENT: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_CURSOR_AUTO: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_CURSOR_CROSSHAIR: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_CURSOR_DEFAULT: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_CURSOR_POINTER: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_CURSOR_MOVE: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_CURSOR_E_RESIZE: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_CURSOR_NE_RESIZE: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_CURSOR_NW_RESIZE: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_CURSOR_N_RESIZE: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_CURSOR_SE_RESIZE: ::std::os::raw::c_uint = 10;
    pub const NS_STYLE_CURSOR_SW_RESIZE: ::std::os::raw::c_uint = 11;
    pub const NS_STYLE_CURSOR_S_RESIZE: ::std::os::raw::c_uint = 12;
    pub const NS_STYLE_CURSOR_W_RESIZE: ::std::os::raw::c_uint = 13;
    pub const NS_STYLE_CURSOR_TEXT: ::std::os::raw::c_uint = 14;
    pub const NS_STYLE_CURSOR_WAIT: ::std::os::raw::c_uint = 15;
    pub const NS_STYLE_CURSOR_HELP: ::std::os::raw::c_uint = 16;
    pub const NS_STYLE_CURSOR_COPY: ::std::os::raw::c_uint = 17;
    pub const NS_STYLE_CURSOR_ALIAS: ::std::os::raw::c_uint = 18;
    pub const NS_STYLE_CURSOR_CONTEXT_MENU: ::std::os::raw::c_uint = 19;
    pub const NS_STYLE_CURSOR_CELL: ::std::os::raw::c_uint = 20;
    pub const NS_STYLE_CURSOR_GRAB: ::std::os::raw::c_uint = 21;
    pub const NS_STYLE_CURSOR_GRABBING: ::std::os::raw::c_uint = 22;
    pub const NS_STYLE_CURSOR_SPINNING: ::std::os::raw::c_uint = 23;
    pub const NS_STYLE_CURSOR_ZOOM_IN: ::std::os::raw::c_uint = 24;
    pub const NS_STYLE_CURSOR_ZOOM_OUT: ::std::os::raw::c_uint = 25;
    pub const NS_STYLE_CURSOR_NOT_ALLOWED: ::std::os::raw::c_uint = 26;
    pub const NS_STYLE_CURSOR_COL_RESIZE: ::std::os::raw::c_uint = 27;
    pub const NS_STYLE_CURSOR_ROW_RESIZE: ::std::os::raw::c_uint = 28;
    pub const NS_STYLE_CURSOR_NO_DROP: ::std::os::raw::c_uint = 29;
    pub const NS_STYLE_CURSOR_VERTICAL_TEXT: ::std::os::raw::c_uint = 30;
    pub const NS_STYLE_CURSOR_ALL_SCROLL: ::std::os::raw::c_uint = 31;
    pub const NS_STYLE_CURSOR_NESW_RESIZE: ::std::os::raw::c_uint = 32;
    pub const NS_STYLE_CURSOR_NWSE_RESIZE: ::std::os::raw::c_uint = 33;
    pub const NS_STYLE_CURSOR_NS_RESIZE: ::std::os::raw::c_uint = 34;
    pub const NS_STYLE_CURSOR_EW_RESIZE: ::std::os::raw::c_uint = 35;
    pub const NS_STYLE_CURSOR_NONE: ::std::os::raw::c_uint = 36;
    pub const NS_STYLE_DIRECTION_LTR: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_DIRECTION_RTL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_WRITING_MODE_HORIZONTAL_TB: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_WRITING_MODE_VERTICAL_RL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_WRITING_MODE_VERTICAL_LR: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_WRITING_MODE_SIDEWAYS_MASK: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_WRITING_MODE_SIDEWAYS_RL: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_WRITING_MODE_SIDEWAYS_LR: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_CONTAIN_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_CONTAIN_STRICT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_CONTAIN_LAYOUT: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_CONTAIN_STYLE: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_CONTAIN_PAINT: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_CONTAIN_ALL_BITS: ::std::os::raw::c_uint = 14;
    pub const NS_STYLE_ALIGN_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_ALIGN_NORMAL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_ALIGN_START: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_ALIGN_END: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_ALIGN_FLEX_START: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_ALIGN_FLEX_END: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_ALIGN_CENTER: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_ALIGN_LEFT: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_ALIGN_RIGHT: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_ALIGN_BASELINE: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_ALIGN_LAST_BASELINE: ::std::os::raw::c_uint = 10;
    pub const NS_STYLE_ALIGN_STRETCH: ::std::os::raw::c_uint = 11;
    pub const NS_STYLE_ALIGN_SELF_START: ::std::os::raw::c_uint = 12;
    pub const NS_STYLE_ALIGN_SELF_END: ::std::os::raw::c_uint = 13;
    pub const NS_STYLE_ALIGN_SPACE_BETWEEN: ::std::os::raw::c_uint = 14;
    pub const NS_STYLE_ALIGN_SPACE_AROUND: ::std::os::raw::c_uint = 15;
    pub const NS_STYLE_ALIGN_SPACE_EVENLY: ::std::os::raw::c_uint = 16;
    pub const NS_STYLE_ALIGN_LEGACY: ::std::os::raw::c_uint = 32;
    pub const NS_STYLE_ALIGN_SAFE: ::std::os::raw::c_uint = 64;
    pub const NS_STYLE_ALIGN_UNSAFE: ::std::os::raw::c_uint = 128;
    pub const NS_STYLE_ALIGN_FLAG_BITS: ::std::os::raw::c_uint = 224;
    pub const NS_STYLE_ALIGN_ALL_BITS: ::std::os::raw::c_uint = 255;
    pub const NS_STYLE_ALIGN_ALL_SHIFT: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_JUSTIFY_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_JUSTIFY_NORMAL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_JUSTIFY_START: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_JUSTIFY_END: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_JUSTIFY_FLEX_START: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_JUSTIFY_FLEX_END: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_JUSTIFY_CENTER: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_JUSTIFY_LEFT: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_JUSTIFY_RIGHT: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_JUSTIFY_BASELINE: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_JUSTIFY_LAST_BASELINE: ::std::os::raw::c_uint = 10;
    pub const NS_STYLE_JUSTIFY_STRETCH: ::std::os::raw::c_uint = 11;
    pub const NS_STYLE_JUSTIFY_SELF_START: ::std::os::raw::c_uint = 12;
    pub const NS_STYLE_JUSTIFY_SELF_END: ::std::os::raw::c_uint = 13;
    pub const NS_STYLE_JUSTIFY_SPACE_BETWEEN: ::std::os::raw::c_uint = 14;
    pub const NS_STYLE_JUSTIFY_SPACE_AROUND: ::std::os::raw::c_uint = 15;
    pub const NS_STYLE_JUSTIFY_SPACE_EVENLY: ::std::os::raw::c_uint = 16;
    pub const NS_STYLE_JUSTIFY_LEGACY: ::std::os::raw::c_uint = 32;
    pub const NS_STYLE_JUSTIFY_SAFE: ::std::os::raw::c_uint = 64;
    pub const NS_STYLE_JUSTIFY_UNSAFE: ::std::os::raw::c_uint = 128;
    pub const NS_STYLE_JUSTIFY_FLAG_BITS: ::std::os::raw::c_uint = 224;
    pub const NS_STYLE_JUSTIFY_ALL_BITS: ::std::os::raw::c_uint = 255;
    pub const NS_STYLE_JUSTIFY_ALL_SHIFT: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_FLEX_DIRECTION_ROW: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_FLEX_DIRECTION_ROW_REVERSE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_FLEX_DIRECTION_COLUMN: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_FLEX_DIRECTION_COLUMN_REVERSE: ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_FLEX_WRAP_NOWRAP: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_FLEX_WRAP_WRAP: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_FLEX_WRAP_WRAP_REVERSE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_ORDER_INITIAL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_JUSTIFY_CONTENT_FLEX_START: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_JUSTIFY_CONTENT_FLEX_END: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_JUSTIFY_CONTENT_CENTER: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_JUSTIFY_CONTENT_SPACE_BETWEEN: ::std::os::raw::c_uint =
        14;
    pub const NS_STYLE_JUSTIFY_CONTENT_SPACE_AROUND: ::std::os::raw::c_uint =
        15;
    pub const NS_STYLE_FILTER_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_FILTER_URL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_FILTER_BLUR: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_FILTER_BRIGHTNESS: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_FILTER_CONTRAST: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_FILTER_GRAYSCALE: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_FILTER_INVERT: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_FILTER_OPACITY: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_FILTER_SATURATE: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_FILTER_SEPIA: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_FILTER_HUE_ROTATE: ::std::os::raw::c_uint = 10;
    pub const NS_STYLE_FILTER_DROP_SHADOW: ::std::os::raw::c_uint = 11;
    pub const NS_STYLE_FONT_STYLE_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_FONT_STYLE_ITALIC: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_FONT_STYLE_OBLIQUE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_FONT_WEIGHT_NORMAL: ::std::os::raw::c_uint = 400;
    pub const NS_STYLE_FONT_WEIGHT_BOLD: ::std::os::raw::c_uint = 700;
    pub const NS_STYLE_FONT_WEIGHT_BOLDER: ::std::os::raw::c_int = -1;
    pub const NS_STYLE_FONT_WEIGHT_LIGHTER: ::std::os::raw::c_int = -2;
    pub const NS_STYLE_FONT_SIZE_XXSMALL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_FONT_SIZE_XSMALL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_FONT_SIZE_SMALL: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_FONT_SIZE_MEDIUM: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_FONT_SIZE_LARGE: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_FONT_SIZE_XLARGE: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_FONT_SIZE_XXLARGE: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_FONT_SIZE_XXXLARGE: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_FONT_SIZE_LARGER: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_FONT_SIZE_SMALLER: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_FONT_STRETCH_ULTRA_CONDENSED: ::std::os::raw::c_int =
        -4;
    pub const NS_STYLE_FONT_STRETCH_EXTRA_CONDENSED: ::std::os::raw::c_int =
        -3;
    pub const NS_STYLE_FONT_STRETCH_CONDENSED: ::std::os::raw::c_int = -2;
    pub const NS_STYLE_FONT_STRETCH_SEMI_CONDENSED: ::std::os::raw::c_int =
        -1;
    pub const NS_STYLE_FONT_STRETCH_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_FONT_STRETCH_SEMI_EXPANDED: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_FONT_STRETCH_EXPANDED: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_FONT_STRETCH_EXTRA_EXPANDED: ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_FONT_STRETCH_ULTRA_EXPANDED: ::std::os::raw::c_uint =
        4;
    pub const NS_STYLE_FONT_CAPTION: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_FONT_ICON: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_FONT_MENU: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_FONT_MESSAGE_BOX: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_FONT_SMALL_CAPTION: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_FONT_STATUS_BAR: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_FONT_WINDOW: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_FONT_DOCUMENT: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_FONT_WORKSPACE: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_FONT_DESKTOP: ::std::os::raw::c_uint = 10;
    pub const NS_STYLE_FONT_INFO: ::std::os::raw::c_uint = 11;
    pub const NS_STYLE_FONT_DIALOG: ::std::os::raw::c_uint = 12;
    pub const NS_STYLE_FONT_BUTTON: ::std::os::raw::c_uint = 13;
    pub const NS_STYLE_FONT_PULL_DOWN_MENU: ::std::os::raw::c_uint = 14;
    pub const NS_STYLE_FONT_LIST: ::std::os::raw::c_uint = 15;
    pub const NS_STYLE_FONT_FIELD: ::std::os::raw::c_uint = 16;
    pub const NS_STYLE_GRID_AUTO_FLOW_ROW: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_GRID_AUTO_FLOW_COLUMN: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_GRID_AUTO_FLOW_DENSE: ::std::os::raw::c_uint = 4;
    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: 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;
    pub const NS_MATHML_MATHVARIANT_NORMAL: ::std::os::raw::c_uint = 1;
    pub const NS_MATHML_MATHVARIANT_BOLD: ::std::os::raw::c_uint = 2;
    pub const NS_MATHML_MATHVARIANT_ITALIC: ::std::os::raw::c_uint = 3;
    pub const NS_MATHML_MATHVARIANT_BOLD_ITALIC: ::std::os::raw::c_uint = 4;
    pub const NS_MATHML_MATHVARIANT_SCRIPT: ::std::os::raw::c_uint = 5;
    pub const NS_MATHML_MATHVARIANT_BOLD_SCRIPT: ::std::os::raw::c_uint = 6;
    pub const NS_MATHML_MATHVARIANT_FRAKTUR: ::std::os::raw::c_uint = 7;
    pub const NS_MATHML_MATHVARIANT_DOUBLE_STRUCK: ::std::os::raw::c_uint = 8;
    pub const NS_MATHML_MATHVARIANT_BOLD_FRAKTUR: ::std::os::raw::c_uint = 9;
    pub const NS_MATHML_MATHVARIANT_SANS_SERIF: ::std::os::raw::c_uint = 10;
    pub const NS_MATHML_MATHVARIANT_BOLD_SANS_SERIF: ::std::os::raw::c_uint =
        11;
    pub const NS_MATHML_MATHVARIANT_SANS_SERIF_ITALIC: ::std::os::raw::c_uint
              =
        12;
    pub const NS_MATHML_MATHVARIANT_SANS_SERIF_BOLD_ITALIC:
              ::std::os::raw::c_uint =
        13;
    pub const NS_MATHML_MATHVARIANT_MONOSPACE: ::std::os::raw::c_uint = 14;
    pub const NS_MATHML_MATHVARIANT_INITIAL: ::std::os::raw::c_uint = 15;
    pub const NS_MATHML_MATHVARIANT_TAILED: ::std::os::raw::c_uint = 16;
    pub const NS_MATHML_MATHVARIANT_LOOPED: ::std::os::raw::c_uint = 17;
    pub const NS_MATHML_MATHVARIANT_STRETCHED: ::std::os::raw::c_uint = 18;
    pub const NS_MATHML_DISPLAYSTYLE_INLINE: ::std::os::raw::c_uint = 0;
    pub const NS_MATHML_DISPLAYSTYLE_BLOCK: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_WIDTH_MAX_CONTENT: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_WIDTH_MIN_CONTENT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_WIDTH_FIT_CONTENT: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_WIDTH_AVAILABLE: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_POSITION_STATIC: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_POSITION_RELATIVE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_POSITION_ABSOLUTE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_POSITION_FIXED: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_POSITION_STICKY: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_CLIP_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_CLIP_RECT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_CLIP_TYPE_MASK: ::std::os::raw::c_uint = 15;
    pub const NS_STYLE_CLIP_LEFT_AUTO: ::std::os::raw::c_uint = 16;
    pub const NS_STYLE_CLIP_TOP_AUTO: ::std::os::raw::c_uint = 32;
    pub const NS_STYLE_CLIP_RIGHT_AUTO: ::std::os::raw::c_uint = 64;
    pub const NS_STYLE_CLIP_BOTTOM_AUTO: ::std::os::raw::c_uint = 128;
    pub const NS_STYLE_FRAME_YES: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_FRAME_NO: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_FRAME_0: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_FRAME_1: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_FRAME_ON: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_FRAME_OFF: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_FRAME_AUTO: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_FRAME_SCROLL: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_FRAME_NOSCROLL: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_OVERFLOW_VISIBLE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_OVERFLOW_HIDDEN: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_OVERFLOW_SCROLL: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_OVERFLOW_AUTO: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_OVERFLOW_CLIP: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_OVERFLOW_SCROLLBARS_HORIZONTAL: ::std::os::raw::c_uint
              =
        5;
    pub const NS_STYLE_OVERFLOW_SCROLLBARS_VERTICAL: ::std::os::raw::c_uint =
        6;
    pub const NS_STYLE_OVERFLOW_CLIP_BOX_PADDING_BOX: ::std::os::raw::c_uint =
        0;
    pub const NS_STYLE_OVERFLOW_CLIP_BOX_CONTENT_BOX: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_LIST_STYLE_CUSTOM: ::std::os::raw::c_int = -1;
    pub const NS_STYLE_LIST_STYLE_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_LIST_STYLE_DISC: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_LIST_STYLE_CIRCLE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_LIST_STYLE_SQUARE: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_LIST_STYLE_DECIMAL: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_LIST_STYLE_HEBREW: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_LIST_STYLE_JAPANESE_INFORMAL: ::std::os::raw::c_uint =
        6;
    pub const NS_STYLE_LIST_STYLE_JAPANESE_FORMAL: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_LIST_STYLE_KOREAN_HANGUL_FORMAL: ::std::os::raw::c_uint
              =
        8;
    pub const NS_STYLE_LIST_STYLE_KOREAN_HANJA_INFORMAL:
              ::std::os::raw::c_uint =
        9;
    pub const NS_STYLE_LIST_STYLE_KOREAN_HANJA_FORMAL: ::std::os::raw::c_uint
              =
        10;
    pub const NS_STYLE_LIST_STYLE_SIMP_CHINESE_INFORMAL:
              ::std::os::raw::c_uint =
        11;
    pub const NS_STYLE_LIST_STYLE_SIMP_CHINESE_FORMAL: ::std::os::raw::c_uint
              =
        12;
    pub const NS_STYLE_LIST_STYLE_TRAD_CHINESE_INFORMAL:
              ::std::os::raw::c_uint =
        13;
    pub const NS_STYLE_LIST_STYLE_TRAD_CHINESE_FORMAL: ::std::os::raw::c_uint
              =
        14;
    pub const NS_STYLE_LIST_STYLE_ETHIOPIC_NUMERIC: ::std::os::raw::c_uint =
        15;
    pub const NS_STYLE_LIST_STYLE_DISCLOSURE_CLOSED: ::std::os::raw::c_uint =
        16;
    pub const NS_STYLE_LIST_STYLE_DISCLOSURE_OPEN: ::std::os::raw::c_uint =
        17;
    pub const NS_STYLE_LIST_STYLE__MAX: ::std::os::raw::c_uint = 18;
    pub const NS_STYLE_LIST_STYLE_LOWER_ROMAN: ::std::os::raw::c_uint = 100;
    pub const NS_STYLE_LIST_STYLE_UPPER_ROMAN: ::std::os::raw::c_uint = 101;
    pub const NS_STYLE_LIST_STYLE_LOWER_ALPHA: ::std::os::raw::c_uint = 102;
    pub const NS_STYLE_LIST_STYLE_UPPER_ALPHA: ::std::os::raw::c_uint = 103;
    pub const NS_STYLE_LIST_STYLE_POSITION_INSIDE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_LIST_STYLE_POSITION_OUTSIDE: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_MARGIN_SIZE_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_POINTER_EVENTS_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_POINTER_EVENTS_VISIBLEPAINTED: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_POINTER_EVENTS_VISIBLEFILL: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_POINTER_EVENTS_VISIBLESTROKE: ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_POINTER_EVENTS_VISIBLE: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_POINTER_EVENTS_PAINTED: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_POINTER_EVENTS_FILL: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_POINTER_EVENTS_STROKE: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_POINTER_EVENTS_ALL: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_POINTER_EVENTS_AUTO: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_IMAGE_ORIENTATION_FLIP: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_IMAGE_ORIENTATION_FROM_IMAGE: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_ISOLATION_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_ISOLATION_ISOLATE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_OBJECT_FIT_FILL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_OBJECT_FIT_CONTAIN: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_OBJECT_FIT_COVER: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_OBJECT_FIT_NONE: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_OBJECT_FIT_SCALE_DOWN: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_RESIZE_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_RESIZE_BOTH: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_RESIZE_HORIZONTAL: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_RESIZE_VERTICAL: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_TEXT_ALIGN_START: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_ALIGN_LEFT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TEXT_ALIGN_RIGHT: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_TEXT_ALIGN_CENTER: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_TEXT_ALIGN_JUSTIFY: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_TEXT_ALIGN_CHAR: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_TEXT_ALIGN_END: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_TEXT_ALIGN_AUTO: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_TEXT_ALIGN_MOZ_CENTER: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_TEXT_ALIGN_MOZ_RIGHT: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_TEXT_ALIGN_MOZ_LEFT: ::std::os::raw::c_uint = 10;
    pub const NS_STYLE_TEXT_ALIGN_MOZ_CENTER_OR_INHERIT:
              ::std::os::raw::c_uint =
        11;
    pub const NS_STYLE_TEXT_ALIGN_UNSAFE: ::std::os::raw::c_uint = 12;
    pub const NS_STYLE_TEXT_ALIGN_MATCH_PARENT: ::std::os::raw::c_uint = 13;
    pub const NS_STYLE_TEXT_DECORATION_LINE_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_DECORATION_LINE_UNDERLINE: ::std::os::raw::c_uint
              =
        1;
    pub const NS_STYLE_TEXT_DECORATION_LINE_OVERLINE: ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_TEXT_DECORATION_LINE_LINE_THROUGH:
              ::std::os::raw::c_uint =
        4;
    pub const NS_STYLE_TEXT_DECORATION_LINE_BLINK: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_TEXT_DECORATION_LINE_OVERRIDE_ALL:
              ::std::os::raw::c_uint =
        16;
    pub const NS_STYLE_TEXT_DECORATION_LINE_LINES_MASK: ::std::os::raw::c_uint
              =
        7;
    pub const NS_STYLE_TEXT_DECORATION_STYLE_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_DECORATION_STYLE_DOTTED: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_TEXT_DECORATION_STYLE_DASHED: ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_TEXT_DECORATION_STYLE_SOLID: ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_TEXT_DECORATION_STYLE_DOUBLE: ::std::os::raw::c_uint =
        4;
    pub const NS_STYLE_TEXT_DECORATION_STYLE_WAVY: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_TEXT_DECORATION_STYLE_MAX: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_TEXT_OVERFLOW_CLIP: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_OVERFLOW_ELLIPSIS: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TEXT_OVERFLOW_STRING: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_TEXT_TRANSFORM_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_TRANSFORM_CAPITALIZE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TEXT_TRANSFORM_LOWERCASE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_TEXT_TRANSFORM_UPPERCASE: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_TEXT_TRANSFORM_FULL_WIDTH: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_TOUCH_ACTION_NONE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TOUCH_ACTION_AUTO: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_TOUCH_ACTION_PAN_X: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_TOUCH_ACTION_PAN_Y: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_TOUCH_ACTION_MANIPULATION: ::std::os::raw::c_uint = 16;
    pub const NS_STYLE_TOP_LAYER_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TOP_LAYER_TOP: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TRANSITION_TIMING_FUNCTION_EASE: ::std::os::raw::c_uint
              =
        0;
    pub const NS_STYLE_TRANSITION_TIMING_FUNCTION_LINEAR:
              ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_TRANSITION_TIMING_FUNCTION_EASE_IN:
              ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_TRANSITION_TIMING_FUNCTION_EASE_OUT:
              ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_TRANSITION_TIMING_FUNCTION_EASE_IN_OUT:
              ::std::os::raw::c_uint =
        4;
    pub const NS_STYLE_TRANSITION_TIMING_FUNCTION_STEP_START:
              ::std::os::raw::c_uint =
        5;
    pub const NS_STYLE_TRANSITION_TIMING_FUNCTION_STEP_END:
              ::std::os::raw::c_uint =
        6;
    pub const NS_STYLE_VERTICAL_ALIGN_BASELINE: ::std::os::raw::c_uint = 14;
    pub const NS_STYLE_VERTICAL_ALIGN_SUB: ::std::os::raw::c_uint = 15;
    pub const NS_STYLE_VERTICAL_ALIGN_SUPER: ::std::os::raw::c_uint = 16;
    pub const NS_STYLE_VERTICAL_ALIGN_TOP: ::std::os::raw::c_uint = 17;
    pub const NS_STYLE_VERTICAL_ALIGN_TEXT_TOP: ::std::os::raw::c_uint = 18;
    pub const NS_STYLE_VERTICAL_ALIGN_MIDDLE: ::std::os::raw::c_uint = 19;
    pub const NS_STYLE_VERTICAL_ALIGN_TEXT_BOTTOM: ::std::os::raw::c_uint =
        20;
    pub const NS_STYLE_VERTICAL_ALIGN_BOTTOM: ::std::os::raw::c_uint = 21;
    pub const NS_STYLE_VERTICAL_ALIGN_MIDDLE_WITH_BASELINE:
              ::std::os::raw::c_uint =
        22;
    pub const NS_STYLE_VISIBILITY_HIDDEN: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_VISIBILITY_VISIBLE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_VISIBILITY_COLLAPSE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_TABSIZE_INITIAL: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_WORDBREAK_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_WORDBREAK_BREAK_ALL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_WORDBREAK_KEEP_ALL: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_OVERFLOWWRAP_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_OVERFLOWWRAP_BREAK_WORD: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_RUBY_ALIGN_START: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_RUBY_ALIGN_CENTER: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_RUBY_ALIGN_SPACE_BETWEEN: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_RUBY_ALIGN_SPACE_AROUND: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_RUBY_POSITION_OVER: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_RUBY_POSITION_UNDER: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_RUBY_POSITION_INTER_CHARACTER: ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_TEXT_SIZE_ADJUST_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_SIZE_ADJUST_AUTO: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TEXT_ORIENTATION_MIXED: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_ORIENTATION_UPRIGHT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TEXT_ORIENTATION_SIDEWAYS: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_TEXT_COMBINE_UPRIGHT_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_COMBINE_UPRIGHT_ALL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TEXT_COMBINE_UPRIGHT_DIGITS_2: ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_TEXT_COMBINE_UPRIGHT_DIGITS_3: ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_TEXT_COMBINE_UPRIGHT_DIGITS_4: ::std::os::raw::c_uint =
        4;
    pub const NS_STYLE_LINE_HEIGHT_BLOCK_HEIGHT: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_UNICODE_BIDI_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_UNICODE_BIDI_EMBED: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_UNICODE_BIDI_ISOLATE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_UNICODE_BIDI_BIDI_OVERRIDE: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_UNICODE_BIDI_ISOLATE_OVERRIDE: ::std::os::raw::c_uint =
        6;
    pub const NS_STYLE_UNICODE_BIDI_PLAINTEXT: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_TABLE_LAYOUT_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TABLE_LAYOUT_FIXED: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TABLE_EMPTY_CELLS_HIDE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TABLE_EMPTY_CELLS_SHOW: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_CAPTION_SIDE_TOP: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_CAPTION_SIDE_RIGHT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_CAPTION_SIDE_BOTTOM: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_CAPTION_SIDE_LEFT: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_CAPTION_SIDE_TOP_OUTSIDE: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_CAPTION_SIDE_BOTTOM_OUTSIDE: ::std::os::raw::c_uint =
        5;
    pub const NS_STYLE_CELL_SCOPE_ROW: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_CELL_SCOPE_COL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_CELL_SCOPE_ROWGROUP: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_CELL_SCOPE_COLGROUP: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_PAGE_MARKS_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_PAGE_MARKS_CROP: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_PAGE_MARKS_REGISTER: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_PAGE_SIZE_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_PAGE_SIZE_PORTRAIT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_PAGE_SIZE_LANDSCAPE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_PAGE_BREAK_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_PAGE_BREAK_ALWAYS: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_PAGE_BREAK_AVOID: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_PAGE_BREAK_LEFT: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_PAGE_BREAK_RIGHT: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_COLUMN_COUNT_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_COLUMN_COUNT_UNLIMITED: ::std::os::raw::c_int = -1;
    pub const NS_STYLE_COLUMN_FILL_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_COLUMN_FILL_BALANCE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_COLUMN_SPAN_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_COLUMN_SPAN_ALL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_IME_MODE_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_IME_MODE_NORMAL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_IME_MODE_ACTIVE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_IME_MODE_DISABLED: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_IME_MODE_INACTIVE: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_GRADIENT_SHAPE_LINEAR: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_GRADIENT_SHAPE_ELLIPTICAL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_GRADIENT_SHAPE_CIRCULAR: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_GRADIENT_SIZE_CLOSEST_SIDE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_GRADIENT_SIZE_CLOSEST_CORNER: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_GRADIENT_SIZE_FARTHEST_SIDE: ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_GRADIENT_SIZE_FARTHEST_CORNER: ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_GRADIENT_SIZE_EXPLICIT_SIZE: ::std::os::raw::c_uint =
        4;
    pub const NS_STYLE_CONTEXT_PROPERTY_FILL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_CONTEXT_PROPERTY_STROKE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_CONTEXT_PROPERTY_FILL_OPACITY: ::std::os::raw::c_uint =
        4;
    pub const NS_STYLE_CONTEXT_PROPERTY_STROKE_OPACITY: ::std::os::raw::c_uint
              =
        8;
    pub const NS_STYLE_WINDOW_SHADOW_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_WINDOW_SHADOW_DEFAULT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_WINDOW_SHADOW_MENU: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_WINDOW_SHADOW_TOOLTIP: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_WINDOW_SHADOW_SHEET: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_DOMINANT_BASELINE_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_DOMINANT_BASELINE_USE_SCRIPT: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_DOMINANT_BASELINE_NO_CHANGE: ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_DOMINANT_BASELINE_RESET_SIZE: ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_DOMINANT_BASELINE_IDEOGRAPHIC: ::std::os::raw::c_uint =
        4;
    pub const NS_STYLE_DOMINANT_BASELINE_ALPHABETIC: ::std::os::raw::c_uint =
        5;
    pub const NS_STYLE_DOMINANT_BASELINE_HANGING: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_DOMINANT_BASELINE_MATHEMATICAL: ::std::os::raw::c_uint
              =
        7;
    pub const NS_STYLE_DOMINANT_BASELINE_CENTRAL: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_DOMINANT_BASELINE_MIDDLE: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_DOMINANT_BASELINE_TEXT_AFTER_EDGE:
              ::std::os::raw::c_uint =
        10;
    pub const NS_STYLE_DOMINANT_BASELINE_TEXT_BEFORE_EDGE:
              ::std::os::raw::c_uint =
        11;
    pub const NS_STYLE_IMAGE_RENDERING_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_IMAGE_RENDERING_OPTIMIZESPEED: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_IMAGE_RENDERING_OPTIMIZEQUALITY: ::std::os::raw::c_uint
              =
        2;
    pub const NS_STYLE_IMAGE_RENDERING_CRISPEDGES: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_MASK_TYPE_LUMINANCE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_MASK_TYPE_ALPHA: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_PAINT_ORDER_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_PAINT_ORDER_FILL: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_PAINT_ORDER_STROKE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_PAINT_ORDER_MARKERS: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_PAINT_ORDER_LAST_VALUE: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_PAINT_ORDER_BITWIDTH: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_SHAPE_RENDERING_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_SHAPE_RENDERING_OPTIMIZESPEED: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_SHAPE_RENDERING_CRISPEDGES: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_SHAPE_RENDERING_GEOMETRICPRECISION:
              ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_STROKE_LINECAP_BUTT: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_STROKE_LINECAP_ROUND: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_STROKE_LINECAP_SQUARE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_STROKE_LINEJOIN_MITER: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_STROKE_LINEJOIN_ROUND: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_STROKE_LINEJOIN_BEVEL: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_STROKE_PROP_CONTEXT_VALUE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_ANCHOR_START: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_ANCHOR_MIDDLE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TEXT_ANCHOR_END: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_TEXT_EMPHASIS_POSITION_OVER: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_TEXT_EMPHASIS_POSITION_UNDER: ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_TEXT_EMPHASIS_POSITION_LEFT: ::std::os::raw::c_uint =
        4;
    pub const NS_STYLE_TEXT_EMPHASIS_POSITION_RIGHT: ::std::os::raw::c_uint =
        8;
    pub const NS_STYLE_TEXT_EMPHASIS_POSITION_DEFAULT: ::std::os::raw::c_uint
              =
        9;
    pub const NS_STYLE_TEXT_EMPHASIS_POSITION_DEFAULT_ZH:
              ::std::os::raw::c_uint =
        10;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_FILL_MASK: ::std::os::raw::c_uint =
        8;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_FILLED: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_OPEN: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_SHAPE_MASK: ::std::os::raw::c_uint
              =
        7;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_DOT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_CIRCLE: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_DOUBLE_CIRCLE:
              ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_TRIANGLE: ::std::os::raw::c_uint =
        4;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_SESAME: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_TEXT_EMPHASIS_STYLE_STRING: ::std::os::raw::c_uint =
        255;
    pub const NS_STYLE_TEXT_RENDERING_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TEXT_RENDERING_OPTIMIZESPEED: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_TEXT_RENDERING_OPTIMIZELEGIBILITY:
              ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_TEXT_RENDERING_GEOMETRICPRECISION:
              ::std::os::raw::c_uint =
        3;
    pub const NS_STYLE_COLOR_ADJUST_ECONOMY: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_COLOR_ADJUST_EXACT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_COLOR_INTERPOLATION_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_COLOR_INTERPOLATION_SRGB: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_COLOR_INTERPOLATION_LINEARRGB: ::std::os::raw::c_uint =
        2;
    pub const NS_STYLE_VECTOR_EFFECT_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_VECTOR_EFFECT_NON_SCALING_STROKE:
              ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_BACKFACE_VISIBILITY_VISIBLE: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_BACKFACE_VISIBILITY_HIDDEN: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TRANSFORM_STYLE_FLAT: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_TRANSFORM_STYLE_PRESERVE_3D: ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_CONTEXT_FILL_OPACITY: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_CONTEXT_STROKE_OPACITY: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_BLEND_NORMAL: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_BLEND_MULTIPLY: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_BLEND_SCREEN: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_BLEND_OVERLAY: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_BLEND_DARKEN: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_BLEND_LIGHTEN: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_BLEND_COLOR_DODGE: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_BLEND_COLOR_BURN: ::std::os::raw::c_uint = 7;
    pub const NS_STYLE_BLEND_HARD_LIGHT: ::std::os::raw::c_uint = 8;
    pub const NS_STYLE_BLEND_SOFT_LIGHT: ::std::os::raw::c_uint = 9;
    pub const NS_STYLE_BLEND_DIFFERENCE: ::std::os::raw::c_uint = 10;
    pub const NS_STYLE_BLEND_EXCLUSION: ::std::os::raw::c_uint = 11;
    pub const NS_STYLE_BLEND_HUE: ::std::os::raw::c_uint = 12;
    pub const NS_STYLE_BLEND_SATURATION: ::std::os::raw::c_uint = 13;
    pub const NS_STYLE_BLEND_COLOR: ::std::os::raw::c_uint = 14;
    pub const NS_STYLE_BLEND_LUMINOSITY: ::std::os::raw::c_uint = 15;
    pub const NS_STYLE_MASK_COMPOSITE_ADD: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_MASK_COMPOSITE_SUBTRACT: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_MASK_COMPOSITE_INTERSECT: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_MASK_COMPOSITE_EXCLUDE: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_CONTROL_CHARACTER_VISIBILITY_HIDDEN:
              ::std::os::raw::c_uint =
        0;
    pub const NS_STYLE_CONTROL_CHARACTER_VISIBILITY_VISIBLE:
              ::std::os::raw::c_uint =
        1;
    pub const NS_STYLE_COUNTER_SYSTEM_CYCLIC: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_COUNTER_SYSTEM_NUMERIC: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_COUNTER_SYSTEM_ALPHABETIC: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_COUNTER_SYSTEM_SYMBOLIC: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_COUNTER_SYSTEM_ADDITIVE: ::std::os::raw::c_uint = 4;
    pub const NS_STYLE_COUNTER_SYSTEM_FIXED: ::std::os::raw::c_uint = 5;
    pub const NS_STYLE_COUNTER_SYSTEM_EXTENDS: ::std::os::raw::c_uint = 6;
    pub const NS_STYLE_COUNTER_RANGE_INFINITE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_COUNTER_SPEAKAS_BULLETS: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_COUNTER_SPEAKAS_NUMBERS: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_COUNTER_SPEAKAS_WORDS: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_COUNTER_SPEAKAS_SPELL_OUT: ::std::os::raw::c_uint = 3;
    pub const NS_STYLE_COUNTER_SPEAKAS_OTHER: ::std::os::raw::c_uint = 255;
    pub const NS_STYLE_SCROLL_BEHAVIOR_AUTO: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_SCROLL_BEHAVIOR_SMOOTH: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_SCROLL_SNAP_TYPE_NONE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_SCROLL_SNAP_TYPE_MANDATORY: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_SCROLL_SNAP_TYPE_PROXIMITY: ::std::os::raw::c_uint = 2;
    pub const NS_STYLE_ORIENTATION_PORTRAIT: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_ORIENTATION_LANDSCAPE: ::std::os::raw::c_uint = 1;
    pub const NS_STYLE_SCAN_PROGRESSIVE: ::std::os::raw::c_uint = 0;
    pub const NS_STYLE_SCAN_INTERLACE: ::std::os::raw::c_uint = 1;
    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 CSS_PSEUDO_ELEMENT_IS_CSS2: ::std::os::raw::c_uint = 1;
    pub const CSS_PSEUDO_ELEMENT_CONTAINS_ELEMENTS: ::std::os::raw::c_uint =
        2;
    pub const CSS_PSEUDO_ELEMENT_SUPPORTS_STYLE_ATTRIBUTE:
              ::std::os::raw::c_uint =
        4;
    pub const CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE:
              ::std::os::raw::c_uint =
        8;
    pub const CSS_PSEUDO_ELEMENT_UA_SHEET_ONLY: ::std::os::raw::c_uint = 16;
    pub const CSS_PSEUDO_ELEMENT_IS_JS_CREATED_NAC: ::std::os::raw::c_uint =
        32;
    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_AUTHOR_SPECIFIED_BACKGROUND: ::std::os::raw::c_uint = 1;
    pub const NS_AUTHOR_SPECIFIED_BORDER: ::std::os::raw::c_uint = 2;
    pub const NS_AUTHOR_SPECIFIED_PADDING: ::std::os::raw::c_uint = 4;
    pub const NS_AUTHOR_SPECIFIED_TEXT_SHADOW: ::std::os::raw::c_uint = 8;
    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;
    pub const NS_STYLE_HAS_PSEUDO_ELEMENT_DATA: ::std::os::raw::c_uint =
        33554432;
    pub const NS_STYLE_RELEVANT_LINK_VISITED: ::std::os::raw::c_uint =
        67108864;
    pub const NS_STYLE_IS_STYLE_IF_VISITED: ::std::os::raw::c_uint =
        134217728;
    pub const NS_STYLE_CHILD_USES_GRANDANCESTOR_STYLE: ::std::os::raw::c_uint
              =
        268435456;
    pub const NS_STYLE_IS_SHARED: ::std::os::raw::c_uint = 536870912;
    pub const NS_STYLE_IS_GOING_AWAY: ::std::os::raw::c_uint = 1073741824;
    pub const NS_STYLE_SUPPRESS_LINEBREAK: ::std::os::raw::c_uint =
        2147483648;
    pub const NS_STYLE_IN_DISPLAY_NONE_SUBTREE: ::std::os::raw::c_ulonglong =
        4294967296;
    pub const NS_STYLE_INELIGIBLE_FOR_SHARING: ::std::os::raw::c_ulonglong =
        8589934592;
    pub const NS_STYLE_HAS_CHILD_THAT_USES_RESET_STYLE:
              ::std::os::raw::c_ulonglong =
        17179869184;
    pub const NS_STYLE_IS_TEXT_COMBINED: ::std::os::raw::c_ulonglong =
        34359738368;
    pub const NS_STYLE_CONTEXT_TYPE_SHIFT: ::std::os::raw::c_uint = 36;
    pub mod std {
        #[allow(unused_imports)]
        use self::super::super::root;
        #[repr(C)]
        #[derive(Debug, Copy, Clone)]
        pub struct pair<_T1, _T2> {
            pub first: _T1,
            pub second: _T2,
            pub _phantom_0: ::std::marker::PhantomData<::std::cell::UnsafeCell<_T1>>,
            pub _phantom_1: ::std::marker::PhantomData<::std::cell::UnsafeCell<_T2>>,
        }
        pub type pair_first_type<_T1> = _T1;
        pub type pair_second_type<_T2> = _T2;
        #[repr(C)]
        #[derive(Debug, Copy)]
        pub struct input_iterator_tag {
            pub _address: u8,
        }
        #[test]
        fn bindgen_test_layout_input_iterator_tag() {
            assert_eq!(::std::mem::size_of::<input_iterator_tag>() , 1usize ,
                       concat ! (
                       "Size of: " , stringify ! ( input_iterator_tag ) ));
            assert_eq! (::std::mem::align_of::<input_iterator_tag>() , 1usize
                        , concat ! (
                        "Alignment of " , stringify ! ( input_iterator_tag )
                        ));
        }
        impl Clone for input_iterator_tag {
            fn clone(&self) -> Self { *self }
        }
        #[repr(C)]
        #[derive(Debug, Copy, Clone)]
        pub struct iterator {
            pub _address: u8,
        }
        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 __iterator_traits {
            pub _address: u8,
        }
        #[repr(C)]
        #[derive(Debug, Copy, Clone)]
        pub struct iterator_traits {
            pub _address: u8,
        }
        #[repr(C)]
        #[derive(Debug, Copy, Clone)]
        pub struct reverse_iterator<_Iterator> {
            pub current: _Iterator,
            pub _phantom_0: ::std::marker::PhantomData<::std::cell::UnsafeCell<_Iterator>>,
        }
        pub type reverse_iterator___traits_type = root::std::iterator_traits;
        pub type reverse_iterator_iterator_type<_Iterator> = _Iterator;
        pub type reverse_iterator_difference_type =
            root::std::reverse_iterator___traits_type;
        pub type reverse_iterator_pointer =
            root::std::reverse_iterator___traits_type;
        pub type reverse_iterator_reference =
            root::std::reverse_iterator___traits_type;
        #[repr(C)]
        #[derive(Debug, Copy, Clone)]
        pub struct atomic {
        }
    }
    pub mod __gnu_cxx {
        #[allow(unused_imports)]
        use self::super::super::root;
    }
    pub mod mozilla {
        #[allow(unused_imports)]
        use self::super::super::root;
        #[repr(C)]
        #[derive(Debug, Copy)]
        pub struct fallible_t {
            pub _address: u8,
        }
        #[test]
        fn bindgen_test_layout_fallible_t() {
            assert_eq!(::std::mem::size_of::<fallible_t>() , 1usize , concat !
                       ( "Size of: " , stringify ! ( fallible_t ) ));
            assert_eq! (::std::mem::align_of::<fallible_t>() , 1usize , concat
                        ! ( "Alignment of " , stringify ! ( fallible_t ) ));
        }
        impl Clone for fallible_t {
            fn clone(&self) -> Self { *self }
        }
        /** Convenient aliases. */
        pub type TrueType = u8;
        pub type FalseType = u8;
        pub mod detail {
            #[allow(unused_imports)]
            use self::super::super::super::root;
            #[repr(C)]
            #[derive(Debug, Copy)]
            pub struct nsStringRepr {
                pub mData: *mut root::mozilla::detail::nsStringRepr_char_type,
                pub mLength: root::mozilla::detail::nsStringRepr_size_type,
                pub mFlags: u32,
            }
            pub type nsStringRepr_fallible_t = root::mozilla::fallible_t;
            pub type nsStringRepr_char_type = u16;
            pub type nsStringRepr_self_type =
                root::mozilla::detail::nsStringRepr;
            pub type nsStringRepr_base_string_type =
                root::mozilla::detail::nsStringRepr_self_type;
            pub type nsStringRepr_substring_type = root::nsAString;
            pub type nsStringRepr_substring_tuple_type =
                root::nsSubstringTuple;
            pub type nsStringRepr_string_type = ::nsstring::nsStringRepr;
            pub type nsStringRepr_const_iterator =
                root::nsReadingIterator<u16>;
            pub type nsStringRepr_iterator = root::nsWritingIterator<u16>;
            pub type nsStringRepr_comparator_type = root::nsStringComparator;
            pub type nsStringRepr_char_iterator =
                *mut root::mozilla::detail::nsStringRepr_char_type;
            pub type nsStringRepr_const_char_iterator =
                *const root::mozilla::detail::nsStringRepr_char_type;
            pub type nsStringRepr_index_type = u32;
            pub type nsStringRepr_size_type = u32;
            pub const nsStringRepr_F_NONE:
                      root::mozilla::detail::nsStringRepr__bindgen_ty_1 =
                nsStringRepr__bindgen_ty_1::F_NONE;
            pub const nsStringRepr_F_TERMINATED:
                      root::mozilla::detail::nsStringRepr__bindgen_ty_1 =
                nsStringRepr__bindgen_ty_1::F_TERMINATED;
            pub const nsStringRepr_F_VOIDED:
                      root::mozilla::detail::nsStringRepr__bindgen_ty_1 =
                nsStringRepr__bindgen_ty_1::F_VOIDED;
            pub const nsStringRepr_F_SHARED:
                      root::mozilla::detail::nsStringRepr__bindgen_ty_1 =
                nsStringRepr__bindgen_ty_1::F_SHARED;
            pub const nsStringRepr_F_OWNED:
                      root::mozilla::detail::nsStringRepr__bindgen_ty_1 =
                nsStringRepr__bindgen_ty_1::F_OWNED;
            pub const nsStringRepr_F_FIXED:
                      root::mozilla::detail::nsStringRepr__bindgen_ty_1 =
                nsStringRepr__bindgen_ty_1::F_FIXED;
            pub const nsStringRepr_F_LITERAL:
                      root::mozilla::detail::nsStringRepr__bindgen_ty_1 =
                nsStringRepr__bindgen_ty_1::F_LITERAL;
            pub const nsStringRepr_F_CLASS_FIXED:
                      root::mozilla::detail::nsStringRepr__bindgen_ty_1 =
                nsStringRepr__bindgen_ty_1::F_CLASS_FIXED;
            #[repr(u32)]
            #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
            pub enum nsStringRepr__bindgen_ty_1 {
                F_NONE = 0,
                F_TERMINATED = 1,
                F_VOIDED = 2,
                F_SHARED = 4,
                F_OWNED = 8,
                F_FIXED = 16,
                F_LITERAL = 32,
                F_CLASS_FIXED = 65536,
            }
            #[test]
            fn bindgen_test_layout_nsStringRepr() {
                assert_eq!(::std::mem::size_of::<nsStringRepr>() , 16usize ,
                           concat ! (
                           "Size of: " , stringify ! ( nsStringRepr ) ));
                assert_eq! (::std::mem::align_of::<nsStringRepr>() , 8usize ,
                            concat ! (
                            "Alignment of " , stringify ! ( nsStringRepr ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const nsStringRepr ) ) . mData as *
                            const _ as usize } , 0usize , concat ! (
                            "Alignment of field: " , stringify ! (
                            nsStringRepr ) , "::" , stringify ! ( mData ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const nsStringRepr ) ) . mLength as
                            * const _ as usize } , 8usize , concat ! (
                            "Alignment of field: " , stringify ! (
                            nsStringRepr ) , "::" , stringify ! ( mLength )
                            ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const nsStringRepr ) ) . mFlags as
                            * const _ as usize } , 12usize , concat ! (
                            "Alignment of field: " , stringify ! (
                            nsStringRepr ) , "::" , stringify ! ( mFlags ) ));
            }
            impl Clone for nsStringRepr {
                fn clone(&self) -> Self { *self }
            }
            #[repr(C)]
            #[derive(Debug, Copy)]
            pub struct nsCStringRepr {
                pub mData: *mut root::mozilla::detail::nsCStringRepr_char_type,
                pub mLength: root::mozilla::detail::nsCStringRepr_size_type,
                pub mFlags: u32,
            }
            pub type nsCStringRepr_fallible_t = root::mozilla::fallible_t;
            pub type nsCStringRepr_char_type = ::std::os::raw::c_char;
            pub type nsCStringRepr_self_type =
                root::mozilla::detail::nsCStringRepr;
            pub type nsCStringRepr_base_string_type =
                root::mozilla::detail::nsCStringRepr_self_type;
            pub type nsCStringRepr_substring_type = root::nsACString;
            pub type nsCStringRepr_substring_tuple_type =
                root::nsCSubstringTuple;
            pub type nsCStringRepr_string_type = root::nsCString;
            pub type nsCStringRepr_const_iterator =
                root::nsReadingIterator<::std::os::raw::c_char>;
            pub type nsCStringRepr_iterator =
                root::nsWritingIterator<::std::os::raw::c_char>;
            pub type nsCStringRepr_comparator_type =
                root::nsCStringComparator;
            pub type nsCStringRepr_char_iterator =
                *mut root::mozilla::detail::nsCStringRepr_char_type;
            pub type nsCStringRepr_const_char_iterator =
                *const root::mozilla::detail::nsCStringRepr_char_type;
            pub type nsCStringRepr_index_type = u32;
            pub type nsCStringRepr_size_type = u32;
            pub const nsCStringRepr_F_NONE:
                      root::mozilla::detail::nsCStringRepr__bindgen_ty_1 =
                nsCStringRepr__bindgen_ty_1::F_NONE;
            pub const nsCStringRepr_F_TERMINATED:
                      root::mozilla::detail::nsCStringRepr__bindgen_ty_1 =
                nsCStringRepr__bindgen_ty_1::F_TERMINATED;
            pub const nsCStringRepr_F_VOIDED:
                      root::mozilla::detail::nsCStringRepr__bindgen_ty_1 =
                nsCStringRepr__bindgen_ty_1::F_VOIDED;
            pub const nsCStringRepr_F_SHARED:
                      root::mozilla::detail::nsCStringRepr__bindgen_ty_1 =
                nsCStringRepr__bindgen_ty_1::F_SHARED;
            pub const nsCStringRepr_F_OWNED:
                      root::mozilla::detail::nsCStringRepr__bindgen_ty_1 =
                nsCStringRepr__bindgen_ty_1::F_OWNED;
            pub const nsCStringRepr_F_FIXED:
                      root::mozilla::detail::nsCStringRepr__bindgen_ty_1 =
                nsCStringRepr__bindgen_ty_1::F_FIXED;
            pub const nsCStringRepr_F_LITERAL:
                      root::mozilla::detail::nsCStringRepr__bindgen_ty_1 =
                nsCStringRepr__bindgen_ty_1::F_LITERAL;
            pub const nsCStringRepr_F_CLASS_FIXED:
                      root::mozilla::detail::nsCStringRepr__bindgen_ty_1 =
                nsCStringRepr__bindgen_ty_1::F_CLASS_FIXED;
            #[repr(u32)]
            #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
            pub enum nsCStringRepr__bindgen_ty_1 {
                F_NONE = 0,
                F_TERMINATED = 1,
                F_VOIDED = 2,
                F_SHARED = 4,
                F_OWNED = 8,
                F_FIXED = 16,
                F_LITERAL = 32,
                F_CLASS_FIXED = 65536,
            }
            #[test]
            fn bindgen_test_layout_nsCStringRepr() {
                assert_eq!(::std::mem::size_of::<nsCStringRepr>() , 16usize ,
                           concat ! (
                           "Size of: " , stringify ! ( nsCStringRepr ) ));
                assert_eq! (::std::mem::align_of::<nsCStringRepr>() , 8usize ,
                            concat ! (
                            "Alignment of " , stringify ! ( nsCStringRepr )
                            ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const nsCStringRepr ) ) . mData as
                            * const _ as usize } , 0usize , concat ! (
                            "Alignment of field: " , stringify ! (
                            nsCStringRepr ) , "::" , stringify ! ( mData ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const nsCStringRepr ) ) . mLength
                            as * const _ as usize } , 8usize , concat ! (
                            "Alignment of field: " , stringify ! (
                            nsCStringRepr ) , "::" , stringify ! ( mLength )
                            ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const nsCStringRepr ) ) . mFlags as
                            * const _ as usize } , 12usize , concat ! (
                            "Alignment of field: " , stringify ! (
                            nsCStringRepr ) , "::" , stringify ! ( mFlags )
                            ));
            }
            impl Clone for nsCStringRepr {
                fn clone(&self) -> Self { *self }
            }
            /**
 * LinkedList supports refcounted elements using this adapter class. Clients
 * using LinkedList<RefPtr<T>> will get a data structure that holds a strong
 * reference to T as long as T is in the list.
 */
            #[repr(C)]
            #[derive(Debug, Copy, Clone)]
            pub struct LinkedListElementTraits {
                pub _address: u8,
            }
            pub type LinkedListElementTraits_RawType<T> = *mut T;
            pub type LinkedListElementTraits_ConstRawType<T> = *mut T;
            pub type LinkedListElementTraits_ClientType<T> = *mut T;
            pub type LinkedListElementTraits_ConstClientType<T> = *mut T;
            #[repr(C)]
            #[derive(Debug, Copy, Clone)]
            pub struct WeakReference {
            }
            #[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 {
                _unused: [u8; 0],
            }
            #[test]
            fn bindgen_test_layout_MutexImpl() {
                assert_eq!(::std::mem::size_of::<MutexImpl>() , 40usize ,
                           concat ! ( "Size of: " , stringify ! ( MutexImpl )
                           ));
                assert_eq! (::std::mem::align_of::<MutexImpl>() , 8usize ,
                            concat ! (
                            "Alignment of " , stringify ! ( MutexImpl ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const MutexImpl ) ) . platformData_
                            as * const _ as usize } , 0usize , concat ! (
                            "Alignment of field: " , stringify ! ( MutexImpl )
                            , "::" , stringify ! ( platformData_ ) ));
            }
        }
        #[repr(u32)]
        #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
        pub enum ArenaObjectID {
            eArenaObjectID_DummyBeforeFirstObjectID = 172,
            eArenaObjectID_nsLineBox = 173,
            eArenaObjectID_nsRuleNode = 174,
            eArenaObjectID_nsStyleContext = 175,
            eArenaObjectID_DisplayItemData = 176,
            eArenaObjectID_nsInheritedStyleData = 177,
            eArenaObjectID_nsResetStyleData = 178,
            eArenaObjectID_nsConditionalResetStyleData = 179,
            eArenaObjectID_nsConditionalResetStyleDataEntry = 180,
            eArenaObjectID_nsFrameList = 181,
            eArenaObjectID_CustomCounterStyle = 182,
            eArenaObjectID_DependentBuiltinCounterStyle = 183,
            eArenaObjectID_nsCallbackEventRequest = 184,
            eArenaObjectID_nsIntervalSet_Interval = 185,
            eArenaObjectID_CellData = 186,
            eArenaObjectID_BCCellData = 187,
            eArenaObjectID_nsStyleFont = 188,
            eArenaObjectID_nsStyleColor = 189,
            eArenaObjectID_nsStyleList = 190,
            eArenaObjectID_nsStyleText = 191,
            eArenaObjectID_nsStyleVisibility = 192,
            eArenaObjectID_nsStyleUserInterface = 193,
            eArenaObjectID_nsStyleTableBorder = 194,
            eArenaObjectID_nsStyleSVG = 195,
            eArenaObjectID_nsStyleVariables = 196,
            eArenaObjectID_nsStyleBackground = 197,
            eArenaObjectID_nsStylePosition = 198,
            eArenaObjectID_nsStyleTextReset = 199,
            eArenaObjectID_nsStyleDisplay = 200,
            eArenaObjectID_nsStyleContent = 201,
            eArenaObjectID_nsStyleUIReset = 202,
            eArenaObjectID_nsStyleTable = 203,
            eArenaObjectID_nsStyleMargin = 204,
            eArenaObjectID_nsStylePadding = 205,
            eArenaObjectID_nsStyleBorder = 206,
            eArenaObjectID_nsStyleOutline = 207,
            eArenaObjectID_nsStyleXUL = 208,
            eArenaObjectID_nsStyleSVGReset = 209,
            eArenaObjectID_nsStyleColumn = 210,
            eArenaObjectID_nsStyleEffects = 211,
            eArenaObjectID_COUNT = 212,
        }
        /**
 * 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<unsafe extern "C" fn(p:
                                                           *const ::std::os::raw::c_void)
                                      -> usize>;
        #[repr(C)]
        #[derive(Debug, Copy, Clone)]
        pub struct ReverseIterator<IteratorT> {
            pub mCurrent: IteratorT,
            pub _phantom_0: ::std::marker::PhantomData<::std::cell::UnsafeCell<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)]
            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::<Rule_cycleCollection>() ,
                           16usize , concat ! (
                           "Size of: " , stringify ! ( Rule_cycleCollection )
                           ));
                assert_eq! (::std::mem::align_of::<Rule_cycleCollection>() ,
                            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::<Rule>() , 64usize , concat !
                           ( "Size of: " , stringify ! ( Rule ) ));
                assert_eq! (::std::mem::align_of::<Rule>() , 8usize , concat !
                            ( "Alignment of " , stringify ! ( Rule ) ));
            }
            #[repr(C)]
            pub struct Loader {
                pub mRefCnt: root::nsCycleCollectingAutoRefCnt,
                pub mSheets: root::nsAutoPtr<root::mozilla::css::Loader_Sheets>,
                pub mParsingDatas: [u64; 10usize],
                pub mPostedEvents: root::mozilla::css::Loader_LoadDataArray,
                pub mObservers: [u64; 2usize],
                pub mDocument: *mut root::nsIDocument,
                pub mDocGroup: root::RefPtr<root::mozilla::dom::DocGroup>,
                pub mDatasToNotifyOn: u32,
                pub mCompatMode: root::nsCompatibility,
                pub mPreferredSheet: ::nsstring::nsStringRepr,
                pub mStyleBackendType: [u8; 2usize],
                pub mEnabled: bool,
                pub mReporter: root::nsCOMPtr,
            }
            pub use self::super::super::super::root::mozilla::net::ReferrerPolicy
                    as Loader_ReferrerPolicy;
            pub type Loader_HasThreadSafeRefCnt = root::mozilla::FalseType;
            #[repr(C)]
            #[derive(Debug, Copy)]
            pub struct Loader_cycleCollection {
                pub _base: root::nsCycleCollectionParticipant,
            }
            #[test]
            fn bindgen_test_layout_Loader_cycleCollection() {
                assert_eq!(::std::mem::size_of::<Loader_cycleCollection>() ,
                           16usize , concat ! (
                           "Size of: " , stringify ! ( Loader_cycleCollection
                           ) ));
                assert_eq! (::std::mem::align_of::<Loader_cycleCollection>() ,
                            8usize , concat ! (
                            "Alignment of " , stringify ! (
                            Loader_cycleCollection ) ));
            }
            impl Clone for Loader_cycleCollection {
                fn clone(&self) -> Self { *self }
            }
            pub type Loader_LoadDataArray =
                root::nsTArray<root::RefPtr<root::mozilla::css::SheetLoadData>>;
            #[repr(C)]
            #[derive(Debug)]
            pub struct Loader_Sheets {
                pub mCompleteSheets: [u64; 5usize],
                pub mLoadingDatas: [u64; 5usize],
                pub mPendingDatas: [u64; 5usize],
            }
            #[test]
            fn bindgen_test_layout_Loader_Sheets() {
                assert_eq!(::std::mem::size_of::<Loader_Sheets>() , 120usize ,
                           concat ! (
                           "Size of: " , stringify ! ( Loader_Sheets ) ));
                assert_eq! (::std::mem::align_of::<Loader_Sheets>() , 8usize ,
                            concat ! (
                            "Alignment of " , stringify ! ( Loader_Sheets )
                            ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader_Sheets ) ) .
                            mCompleteSheets as * const _ as usize } , 0usize ,
                            concat ! (
                            "Alignment of field: " , stringify ! (
                            Loader_Sheets ) , "::" , stringify ! (
                            mCompleteSheets ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader_Sheets ) ) .
                            mLoadingDatas as * const _ as usize } , 40usize ,
                            concat ! (
                            "Alignment of field: " , stringify ! (
                            Loader_Sheets ) , "::" , stringify ! (
                            mLoadingDatas ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader_Sheets ) ) .
                            mPendingDatas as * const _ as usize } , 80usize ,
                            concat ! (
                            "Alignment of field: " , stringify ! (
                            Loader_Sheets ) , "::" , stringify ! (
                            mPendingDatas ) ));
            }
            extern "C" {
                #[link_name =
                      "_ZN7mozilla3css6Loader21_cycleCollectorGlobalE"]
                pub static mut Loader__cycleCollectorGlobal:
                           root::mozilla::css::Loader_cycleCollection;
            }
            #[test]
            fn bindgen_test_layout_Loader() {
                assert_eq!(::std::mem::size_of::<Loader>() , 176usize , concat
                           ! ( "Size of: " , stringify ! ( Loader ) ));
                assert_eq! (::std::mem::align_of::<Loader>() , 8usize , concat
                            ! ( "Alignment of " , stringify ! ( Loader ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mRefCnt as *
                            const _ as usize } , 0usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mRefCnt ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mSheets as *
                            const _ as usize } , 8usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mSheets ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mParsingDatas as
                            * const _ as usize } , 16usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mParsingDatas ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mPostedEvents as
                            * const _ as usize } , 96usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mPostedEvents ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mObservers as *
                            const _ as usize } , 104usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mObservers ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mDocument as *
                            const _ as usize } , 120usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mDocument ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mDocGroup as *
                            const _ as usize } , 128usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mDocGroup ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mDatasToNotifyOn
                            as * const _ as usize } , 136usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mDatasToNotifyOn ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mCompatMode as *
                            const _ as usize } , 140usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mCompatMode ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mPreferredSheet
                            as * const _ as usize } , 144usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mPreferredSheet ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) .
                            mStyleBackendType as * const _ as usize } ,
                            160usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mStyleBackendType ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mEnabled as *
                            const _ as usize } , 162usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mEnabled ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const Loader ) ) . mReporter as *
                            const _ as usize } , 168usize , concat ! (
                            "Alignment of field: " , stringify ! ( Loader ) ,
                            "::" , stringify ! ( mReporter ) ));
            }
            #[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<root::nsIURI>,
                pub mString: ::nsstring::nsStringRepr,
                pub mExtraData: root::RefPtr<root::mozilla::URLExtraData>,
                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::<URLValueData>() , 56usize ,
                           concat ! (
                           "Size of: " , stringify ! ( URLValueData ) ));
                assert_eq! (::std::mem::align_of::<URLValueData>() , 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::<URLValue>() , 56usize ,
                           concat ! ( "Size of: " , stringify ! ( URLValue )
                           ));
                assert_eq! (::std::mem::align_of::<URLValue>() , 8usize ,
                            concat ! (
                            "Alignment of " , stringify ! ( URLValue ) ));
            }
            #[repr(C)]
            #[derive(Debug)]
            pub struct ImageValue {
                pub _base: root::mozilla::css::URLValueData,
                pub mRequests: [u64; 5usize],
                pub mLoadedImage: bool,
            }
            #[test]
            fn bindgen_test_layout_ImageValue() {
                assert_eq!(::std::mem::size_of::<ImageValue>() , 104usize ,
                           concat ! ( "Size of: " , stringify ! ( ImageValue )
                           ));
                assert_eq! (::std::mem::align_of::<ImageValue>() , 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 ) ) . mLoadedImage
                            as * const _ as usize } , 96usize , concat ! (
                            "Alignment of field: " , stringify ! ( ImageValue
                            ) , "::" , stringify ! ( mLoadedImage ) ));
            }
            #[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::<GridNamedArea>() , 32usize ,
                           concat ! (
                           "Size of: " , stringify ! ( GridNamedArea ) ));
                assert_eq! (::std::mem::align_of::<GridNamedArea>() , 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<root::mozilla::css::GridNamedArea>,
                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::<GridTemplateAreasValue>() ,
                           32usize , concat ! (
                           "Size of: " , stringify ! ( GridTemplateAreasValue
                           ) ));
                assert_eq! (::std::mem::align_of::<GridTemplateAreasValue>() ,
                            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::<FontFamilyListRefCnt>() ,
                           24usize , concat ! (
                           "Size of: " , stringify ! ( FontFamilyListRefCnt )
                           ));
                assert_eq! (::std::mem::align_of::<FontFamilyListRefCnt>() ,
                            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::<RGBAColorData>() , 16usize ,
                           concat ! (
                           "Size of: " , stringify ! ( RGBAColorData ) ));
                assert_eq! (::std::mem::align_of::<RGBAColorData>() , 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::<ComplexColorData>() , 20usize
                           , concat ! (
                           "Size of: " , stringify ! ( ComplexColorData ) ));
                assert_eq! (::std::mem::align_of::<ComplexColorData>() ,
                            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::<ComplexColorValue>() ,
                           32usize , concat ! (
                           "Size of: " , stringify ! ( ComplexColorValue ) ));
                assert_eq! (::std::mem::align_of::<ComplexColorValue>() ,
                            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
                            ) ));
            }
            /*********************
 * Style sheet reuse *
 *********************/
            #[repr(C)]
            #[derive(Debug)]
            pub struct LoaderReusableStyleSheets {
                pub mReusableSheets: root::nsTArray<root::RefPtr<root::mozilla::StyleSheet>>,
            }
            #[test]
            fn bindgen_test_layout_LoaderReusableStyleSheets() {
                assert_eq!(::std::mem::size_of::<LoaderReusableStyleSheets>()
                           , 8usize , concat ! (
                           "Size of: " , stringify ! (
                           LoaderReusableStyleSheets ) ));
                assert_eq! (::std::mem::align_of::<LoaderReusableStyleSheets>()
                            , 8usize , concat ! (
                            "Alignment of " , stringify ! (
                            LoaderReusableStyleSheets ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const LoaderReusableStyleSheets ) )
                            . mReusableSheets as * const _ as usize } , 0usize
                            , concat ! (
                            "Alignment of field: " , stringify ! (
                            LoaderReusableStyleSheets ) , "::" , stringify ! (
                            mReusableSheets ) ));
            }
            #[repr(C)]
            #[derive(Debug, Copy, Clone)]
            pub struct SheetLoadData {
                _unused: [u8; 0],
            }
            #[repr(C)]
            #[derive(Debug, Copy, Clone)]
            pub struct ImportRule {
                _unused: [u8; 0],
            }
            #[repr(i32)]
            /**
 * Enum defining the type of URL matching function for a @-moz-document rule
 * condition.
 */
            #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
            pub enum URLMatchingFunction {
                eURL = 0,
                eURLPrefix = 1,
                eDomain = 2,
                eRegExp = 3,
            }
            #[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::<ThreadSafeAutoRefCnt>() , 8usize
                       , concat ! (
                       "Size of: " , stringify ! ( ThreadSafeAutoRefCnt ) ));
            assert_eq! (::std::mem::align_of::<ThreadSafeAutoRefCnt>() ,
                        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<T> {
            pub mPtr: root::RefPtr<T>,
            pub _phantom_0: ::std::marker::PhantomData<::std::cell::UnsafeCell<T>>,
        }
        #[repr(C)]
        #[derive(Debug, Copy, Clone)]
        pub struct StaticRefPtr<T> {
            pub mRawPtr: *mut T,
            pub _phantom_0: ::std::marker::PhantomData<::std::cell::UnsafeCell<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 AlignedStorage2 {
            pub u: root::mozilla::AlignedStorage2_U,
        }
        #[repr(C)]
        #[derive(Debug, Copy, Clone)]
        pub struct AlignedStorage2_U {
            pub mBytes: root::__BindgenUnionField<*mut ::std::os::raw::c_char>,
            pub mDummy: root::__BindgenUnionField<u64>,
            pub bindgen_union_field: u64,
        }
        #[repr(C)]
        #[derive(Debug, Copy, Clone)]
        pub struct Maybe {
        }
        pub type Maybe_ValueType<T> = T;
        pub mod gfx {
            #[allow(unused_imports)]
            use self::super::super::super::root;
            pub type IntRegion = [u64; 3usize];
            pub type Float = f32;
            #[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::<Color>() , 16usize , concat !
                           ( "Size of: " , stringify ! ( Color ) ));
                assert_eq! (::std::mem::align_of::<Color>() , 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 mTag: u32,
                pub mValue: f32,
            }
            #[test]
            fn bindgen_test_layout_FontVariation() {
                assert_eq!(::std::mem::size_of::<FontVariation>() , 8usize ,
                           concat ! (
                           "Size of: " , stringify ! ( FontVariation ) ));
                assert_eq! (::std::mem::align_of::<FontVariation>() , 4usize ,
                            concat ! (
                            "Alignment of " , stringify ! ( FontVariation )
                            ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const FontVariation ) ) . mTag as *
                            const _ as usize } , 0usize , concat ! (
                            "Alignment of field: " , stringify ! (
                            FontVariation ) , "::" , stringify ! ( mTag ) ));
                assert_eq! (unsafe {
                            & ( * ( 0 as * const FontVariation ) ) . mValue as
                            * const _ as usize } , 4usize , concat ! (
                            "Alignment of field: " , stringify ! (
                            FontVariation ) , "::" , stringify ! ( mValue )
                            ));
            }
            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::<FrameMetrics>() , 184usize ,
                           concat ! (
                           "Size of: " , stringify ! ( FrameMetrics ) ));
                assert_eq! (::std::mem::align_of::<FrameMetrics>() , 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 unit_field_val: u8 =
                        unsafe { ::std::mem::transmute(self._bitfield_1) };