/* automatically generated by rust-bindgen */

pub use nsstring::{nsACString, nsAString, nsString};
type nsACString_internal = nsACString;
type nsAString_internal = nsAString;
use gecko_bindings::structs::mozilla::css::URLValue;
use gecko_bindings::structs::RawGeckoDocument;
use gecko_bindings::structs::RawGeckoElement;
use gecko_bindings::structs::RawGeckoKeyframeList;
use gecko_bindings::structs::RawGeckoComputedKeyframeValuesList;
use gecko_bindings::structs::RawGeckoNode;
use gecko_bindings::structs::RawGeckoAnimationValueList;
use gecko_bindings::structs::RawServoAnimationValue;
use gecko_bindings::structs::RawServoDeclarationBlock;
use gecko_bindings::structs::RawGeckoPresContext;
use gecko_bindings::structs::RawGeckoPresContextOwned;
use gecko_bindings::structs::RefPtr;
use gecko_bindings::structs::ThreadSafeURIHolder;
use gecko_bindings::structs::ThreadSafePrincipalHolder;
use gecko_bindings::structs::CSSPseudoClassType;
use gecko_bindings::structs::TraversalRootBehavior;
use gecko_bindings::structs::FontFamilyList;
use gecko_bindings::structs::FontFamilyType;
use gecko_bindings::structs::Keyframe;
use gecko_bindings::structs::ServoBundledURI;
use gecko_bindings::structs::ServoElementSnapshot;
use gecko_bindings::structs::SheetParsingMode;
use gecko_bindings::structs::StyleBasicShape;
use gecko_bindings::structs::StyleBasicShapeType;
use gecko_bindings::structs::StyleShapeSource;
use gecko_bindings::structs::nsCSSKeyword;
use gecko_bindings::structs::nsCSSPropertyID;
use gecko_bindings::structs::nsCSSShadowArray;
use gecko_bindings::structs::nsCSSValue;
use gecko_bindings::structs::nsCSSValueSharedList;
use gecko_bindings::structs::nsChangeHint;
use gecko_bindings::structs::nsCursorImage;
use gecko_bindings::structs::nsFont;
use gecko_bindings::structs::nsIAtom;
use gecko_bindings::structs::nsMediaFeature;
use gecko_bindings::structs::nsRestyleHint;
use gecko_bindings::structs::nsStyleBackground;
unsafe impl Send for nsStyleBackground {}
unsafe impl Sync for nsStyleBackground {}
use gecko_bindings::structs::nsStyleBorder;
unsafe impl Send for nsStyleBorder {}
unsafe impl Sync for nsStyleBorder {}
use gecko_bindings::structs::nsStyleColor;
unsafe impl Send for nsStyleColor {}
unsafe impl Sync for nsStyleColor {}
use gecko_bindings::structs::nsStyleColumn;
unsafe impl Send for nsStyleColumn {}
unsafe impl Sync for nsStyleColumn {}
use gecko_bindings::structs::nsStyleContent;
unsafe impl Send for nsStyleContent {}
unsafe impl Sync for nsStyleContent {}
use gecko_bindings::structs::nsStyleContext;
unsafe impl Send for nsStyleContext {}
unsafe impl Sync for nsStyleContext {}
use gecko_bindings::structs::nsStyleCoord;
unsafe impl Send for nsStyleCoord {}
unsafe impl Sync for nsStyleCoord {}
use gecko_bindings::structs::nsStyleCoord_Calc;
unsafe impl Send for nsStyleCoord_Calc {}
unsafe impl Sync for nsStyleCoord_Calc {}
use gecko_bindings::structs::nsStyleCoord_CalcValue;
unsafe impl Send for nsStyleCoord_CalcValue {}
unsafe impl Sync for nsStyleCoord_CalcValue {}
use gecko_bindings::structs::nsStyleDisplay;
unsafe impl Send for nsStyleDisplay {}
unsafe impl Sync for nsStyleDisplay {}
use gecko_bindings::structs::nsStyleEffects;
unsafe impl Send for nsStyleEffects {}
unsafe impl Sync for nsStyleEffects {}
use gecko_bindings::structs::nsStyleFilter;
unsafe impl Send for nsStyleFilter {}
unsafe impl Sync for nsStyleFilter {}
use gecko_bindings::structs::nsStyleFont;
unsafe impl Send for nsStyleFont {}
unsafe impl Sync for nsStyleFont {}
use gecko_bindings::structs::nsStyleGradient;
unsafe impl Send for nsStyleGradient {}
unsafe impl Sync for nsStyleGradient {}
use gecko_bindings::structs::nsStyleGradientStop;
unsafe impl Send for nsStyleGradientStop {}
unsafe impl Sync for nsStyleGradientStop {}
use gecko_bindings::structs::nsStyleImage;
unsafe impl Send for nsStyleImage {}
unsafe impl Sync for nsStyleImage {}
use gecko_bindings::structs::nsStyleImageLayers;
unsafe impl Send for nsStyleImageLayers {}
unsafe impl Sync for nsStyleImageLayers {}
use gecko_bindings::structs::nsStyleImageLayers_Layer;
unsafe impl Send for nsStyleImageLayers_Layer {}
unsafe impl Sync for nsStyleImageLayers_Layer {}
use gecko_bindings::structs::nsStyleImageLayers_LayerType;
unsafe impl Send for nsStyleImageLayers_LayerType {}
unsafe impl Sync for nsStyleImageLayers_LayerType {}
use gecko_bindings::structs::nsStyleImageRequest;
unsafe impl Send for nsStyleImageRequest {}
unsafe impl Sync for nsStyleImageRequest {}
use gecko_bindings::structs::nsStyleList;
unsafe impl Send for nsStyleList {}
unsafe impl Sync for nsStyleList {}
use gecko_bindings::structs::nsStyleMargin;
unsafe impl Send for nsStyleMargin {}
unsafe impl Sync for nsStyleMargin {}
use gecko_bindings::structs::nsStyleOutline;
unsafe impl Send for nsStyleOutline {}
unsafe impl Sync for nsStyleOutline {}
use gecko_bindings::structs::nsStylePadding;
unsafe impl Send for nsStylePadding {}
unsafe impl Sync for nsStylePadding {}
use gecko_bindings::structs::nsStylePosition;
unsafe impl Send for nsStylePosition {}
unsafe impl Sync for nsStylePosition {}
use gecko_bindings::structs::nsStyleQuoteValues;
unsafe impl Send for nsStyleQuoteValues {}
unsafe impl Sync for nsStyleQuoteValues {}
use gecko_bindings::structs::nsStyleSVG;
unsafe impl Send for nsStyleSVG {}
unsafe impl Sync for nsStyleSVG {}
use gecko_bindings::structs::nsStyleSVGPaint;
unsafe impl Send for nsStyleSVGPaint {}
unsafe impl Sync for nsStyleSVGPaint {}
use gecko_bindings::structs::nsStyleSVGReset;
unsafe impl Send for nsStyleSVGReset {}
unsafe impl Sync for nsStyleSVGReset {}
use gecko_bindings::structs::nsStyleTable;
unsafe impl Send for nsStyleTable {}
unsafe impl Sync for nsStyleTable {}
use gecko_bindings::structs::nsStyleTableBorder;
unsafe impl Send for nsStyleTableBorder {}
unsafe impl Sync for nsStyleTableBorder {}
use gecko_bindings::structs::nsStyleText;
unsafe impl Send for nsStyleText {}
unsafe impl Sync for nsStyleText {}
use gecko_bindings::structs::nsStyleTextReset;
unsafe impl Send for nsStyleTextReset {}
unsafe impl Sync for nsStyleTextReset {}
use gecko_bindings::structs::nsStyleUIReset;
unsafe impl Send for nsStyleUIReset {}
unsafe impl Sync for nsStyleUIReset {}
use gecko_bindings::structs::nsStyleUnion;
unsafe impl Send for nsStyleUnion {}
unsafe impl Sync for nsStyleUnion {}
use gecko_bindings::structs::nsStyleUnit;
unsafe impl Send for nsStyleUnit {}
unsafe impl Sync for nsStyleUnit {}
use gecko_bindings::structs::nsStyleUserInterface;
unsafe impl Send for nsStyleUserInterface {}
unsafe impl Sync for nsStyleUserInterface {}
use gecko_bindings::structs::nsStyleVariables;
unsafe impl Send for nsStyleVariables {}
unsafe impl Sync for nsStyleVariables {}
use gecko_bindings::structs::nsStyleVisibility;
unsafe impl Send for nsStyleVisibility {}
unsafe impl Sync for nsStyleVisibility {}
use gecko_bindings::structs::nsStyleXUL;
unsafe impl Send for nsStyleXUL {}
unsafe impl Sync for nsStyleXUL {}
use gecko_bindings::structs::nsTimingFunction;
use gecko_bindings::structs::nscolor;
use gecko_bindings::structs::nscoord;
use gecko_bindings::structs::nsresult;
use gecko_bindings::structs::Loader;
use gecko_bindings::structs::ServoStyleSheet;
use gecko_bindings::structs::EffectCompositor_CascadeLevel;
use gecko_bindings::structs::RawServoAnimationValueBorrowedListBorrowed;
pub type nsTArrayBorrowed_uintptr_t<'a> = &'a mut ::gecko_bindings::structs::nsTArray<usize>;
pub type ServoCssRulesStrong = ::gecko_bindings::sugar::ownership::Strong<ServoCssRules>;
pub type ServoCssRulesBorrowed<'a> = &'a ServoCssRules;
pub type ServoCssRulesBorrowedOrNull<'a> = Option<&'a ServoCssRules>;
enum ServoCssRulesVoid { }
pub struct ServoCssRules(ServoCssRulesVoid);
pub type RawServoStyleSheetStrong = ::gecko_bindings::sugar::ownership::Strong<RawServoStyleSheet>;
pub type RawServoStyleSheetBorrowed<'a> = &'a RawServoStyleSheet;
pub type RawServoStyleSheetBorrowedOrNull<'a> = Option<&'a RawServoStyleSheet>;
enum RawServoStyleSheetVoid { }
pub struct RawServoStyleSheet(RawServoStyleSheetVoid);
pub type ServoComputedValuesStrong = ::gecko_bindings::sugar::ownership::Strong<ServoComputedValues>;
pub type ServoComputedValuesBorrowed<'a> = &'a ServoComputedValues;
pub type ServoComputedValuesBorrowedOrNull<'a> = Option<&'a ServoComputedValues>;
enum ServoComputedValuesVoid { }
pub struct ServoComputedValues(ServoComputedValuesVoid);
pub type RawServoDeclarationBlockStrong = ::gecko_bindings::sugar::ownership::Strong<RawServoDeclarationBlock>;
pub type RawServoDeclarationBlockBorrowed<'a> = &'a RawServoDeclarationBlock;
pub type RawServoDeclarationBlockBorrowedOrNull<'a> = Option<&'a RawServoDeclarationBlock>;
pub type RawServoStyleRuleStrong = ::gecko_bindings::sugar::ownership::Strong<RawServoStyleRule>;
pub type RawServoStyleRuleBorrowed<'a> = &'a RawServoStyleRule;
pub type RawServoStyleRuleBorrowedOrNull<'a> = Option<&'a RawServoStyleRule>;
enum RawServoStyleRuleVoid { }
pub struct RawServoStyleRule(RawServoStyleRuleVoid);
pub type RawServoImportRuleStrong = ::gecko_bindings::sugar::ownership::Strong<RawServoImportRule>;
pub type RawServoImportRuleBorrowed<'a> = &'a RawServoImportRule;
pub type RawServoImportRuleBorrowedOrNull<'a> = Option<&'a RawServoImportRule>;
enum RawServoImportRuleVoid { }
pub struct RawServoImportRule(RawServoImportRuleVoid);
pub type RawServoAnimationValueStrong = ::gecko_bindings::sugar::ownership::Strong<RawServoAnimationValue>;
pub type RawServoAnimationValueBorrowed<'a> = &'a RawServoAnimationValue;
pub type RawServoAnimationValueBorrowedOrNull<'a> = Option<&'a RawServoAnimationValue>;
pub type RawServoStyleSetOwned = ::gecko_bindings::sugar::ownership::Owned<RawServoStyleSet>;
pub type RawServoStyleSetOwnedOrNull = ::gecko_bindings::sugar::ownership::OwnedOrNull<RawServoStyleSet>;
pub type RawServoStyleSetBorrowed<'a> = &'a RawServoStyleSet;
pub type RawServoStyleSetBorrowedOrNull<'a> = Option<&'a RawServoStyleSet>;
pub type RawServoStyleSetBorrowedMut<'a> = &'a mut RawServoStyleSet;
pub type RawServoStyleSetBorrowedMutOrNull<'a> = Option<&'a mut RawServoStyleSet>;
enum RawServoStyleSetVoid { }
pub struct RawServoStyleSet(RawServoStyleSetVoid);
pub type StyleChildrenIteratorOwned = ::gecko_bindings::sugar::ownership::Owned<StyleChildrenIterator>;
pub type StyleChildrenIteratorOwnedOrNull = ::gecko_bindings::sugar::ownership::OwnedOrNull<StyleChildrenIterator>;
pub type StyleChildrenIteratorBorrowed<'a> = &'a StyleChildrenIterator;
pub type StyleChildrenIteratorBorrowedOrNull<'a> = Option<&'a StyleChildrenIterator>;
pub type StyleChildrenIteratorBorrowedMut<'a> = &'a mut StyleChildrenIterator;
pub type StyleChildrenIteratorBorrowedMutOrNull<'a> = Option<&'a mut StyleChildrenIterator>;
enum StyleChildrenIteratorVoid { }
pub struct StyleChildrenIterator(StyleChildrenIteratorVoid);
pub type ServoElementSnapshotOwned = ::gecko_bindings::sugar::ownership::Owned<ServoElementSnapshot>;
pub type ServoElementSnapshotOwnedOrNull = ::gecko_bindings::sugar::ownership::OwnedOrNull<ServoElementSnapshot>;
pub type ServoElementSnapshotBorrowed<'a> = &'a ServoElementSnapshot;
pub type ServoElementSnapshotBorrowedOrNull<'a> = Option<&'a ServoElementSnapshot>;
pub type ServoElementSnapshotBorrowedMut<'a> = &'a mut ServoElementSnapshot;
pub type ServoElementSnapshotBorrowedMutOrNull<'a> = Option<&'a mut ServoElementSnapshot>;
pub type RawGeckoNodeBorrowed<'a> = &'a RawGeckoNode;
pub type RawGeckoNodeBorrowedOrNull<'a> = Option<&'a RawGeckoNode>;
pub type RawGeckoElementBorrowed<'a> = &'a RawGeckoElement;
pub type RawGeckoElementBorrowedOrNull<'a> = Option<&'a RawGeckoElement>;
pub type RawGeckoDocumentBorrowed<'a> = &'a RawGeckoDocument;
pub type RawGeckoDocumentBorrowedOrNull<'a> = Option<&'a RawGeckoDocument>;
pub type RawServoDeclarationBlockStrongBorrowed<'a> = &'a RawServoDeclarationBlockStrong;
pub type RawServoDeclarationBlockStrongBorrowedOrNull<'a> = Option<&'a RawServoDeclarationBlockStrong>;
pub type RawGeckoPresContextBorrowed<'a> = &'a RawGeckoPresContext;
pub type RawGeckoPresContextBorrowedOrNull<'a> = Option<&'a RawGeckoPresContext>;
pub type nsCSSValueBorrowed<'a> = &'a nsCSSValue;
pub type nsCSSValueBorrowedOrNull<'a> = Option<&'a nsCSSValue>;
pub type nsCSSValueBorrowedMut<'a> = &'a mut nsCSSValue;
pub type nsCSSValueBorrowedMutOrNull<'a> = Option<&'a mut nsCSSValue>;
pub type RawGeckoAnimationValueListBorrowed<'a> = &'a RawGeckoAnimationValueList;
pub type RawGeckoAnimationValueListBorrowedOrNull<'a> = Option<&'a RawGeckoAnimationValueList>;
pub type RawGeckoAnimationValueListBorrowedMut<'a> = &'a mut RawGeckoAnimationValueList;
pub type RawGeckoAnimationValueListBorrowedMutOrNull<'a> = Option<&'a mut RawGeckoAnimationValueList>;
pub type RawGeckoKeyframeListBorrowed<'a> = &'a RawGeckoKeyframeList;
pub type RawGeckoKeyframeListBorrowedOrNull<'a> = Option<&'a RawGeckoKeyframeList>;
pub type RawGeckoKeyframeListBorrowedMut<'a> = &'a mut RawGeckoKeyframeList;
pub type RawGeckoKeyframeListBorrowedMutOrNull<'a> = Option<&'a mut RawGeckoKeyframeList>;
pub type RawGeckoComputedKeyframeValuesListBorrowed<'a> = &'a RawGeckoComputedKeyframeValuesList;
pub type RawGeckoComputedKeyframeValuesListBorrowedOrNull<'a> = Option<&'a RawGeckoComputedKeyframeValuesList>;
pub type RawGeckoComputedKeyframeValuesListBorrowedMut<'a> = &'a mut RawGeckoComputedKeyframeValuesList;
pub type RawGeckoComputedKeyframeValuesListBorrowedMutOrNull<'a> = Option<&'a mut RawGeckoComputedKeyframeValuesList>;

extern "C" {
    pub fn Gecko_EnsureTArrayCapacity(aArray: *mut ::std::os::raw::c_void,
                                      aCapacity: usize, aElementSize: usize);
}
extern "C" {
    pub fn Gecko_ClearPODTArray(aArray: *mut ::std::os::raw::c_void,
                                aElementSize: usize, aElementAlign: usize);
}
extern "C" {
    pub fn Servo_CssRules_AddRef(ptr: ServoCssRulesBorrowed);
}
extern "C" {
    pub fn Servo_CssRules_Release(ptr: ServoCssRulesBorrowed);
}
extern "C" {
    pub fn Servo_StyleSheet_AddRef(ptr: RawServoStyleSheetBorrowed);
}
extern "C" {
    pub fn Servo_StyleSheet_Release(ptr: RawServoStyleSheetBorrowed);
}
extern "C" {
    pub fn Servo_ComputedValues_AddRef(ptr: ServoComputedValuesBorrowed);
}
extern "C" {
    pub fn Servo_ComputedValues_Release(ptr: ServoComputedValuesBorrowed);
}
extern "C" {
    pub fn Servo_DeclarationBlock_AddRef(ptr:
                                             RawServoDeclarationBlockBorrowed);
}
extern "C" {
    pub fn Servo_DeclarationBlock_Release(ptr:
                                              RawServoDeclarationBlockBorrowed);
}
extern "C" {
    pub fn Servo_StyleRule_AddRef(ptr: RawServoStyleRuleBorrowed);
}
extern "C" {
    pub fn Servo_StyleRule_Release(ptr: RawServoStyleRuleBorrowed);
}
extern "C" {
    pub fn Servo_ImportRule_AddRef(ptr: RawServoImportRuleBorrowed);
}
extern "C" {
    pub fn Servo_ImportRule_Release(ptr: RawServoImportRuleBorrowed);
}
extern "C" {
    pub fn Servo_AnimationValue_AddRef(ptr: RawServoAnimationValueBorrowed);
}
extern "C" {
    pub fn Servo_AnimationValue_Release(ptr: RawServoAnimationValueBorrowed);
}
extern "C" {
    pub fn Servo_StyleSet_Drop(ptr: RawServoStyleSetOwned);
}
extern "C" {
    pub fn Gecko_AddRefPrincipalArbitraryThread(aPtr:
                                                    *mut ThreadSafePrincipalHolder);
}
extern "C" {
    pub fn Gecko_ReleasePrincipalArbitraryThread(aPtr:
                                                     *mut ThreadSafePrincipalHolder);
}
extern "C" {
    pub fn Gecko_AddRefURIArbitraryThread(aPtr: *mut ThreadSafeURIHolder);
}
extern "C" {
    pub fn Gecko_ReleaseURIArbitraryThread(aPtr: *mut ThreadSafeURIHolder);
}
extern "C" {
    pub fn Gecko_ChildrenCount(node: RawGeckoNodeBorrowed) -> u32;
}
extern "C" {
    pub fn Gecko_NodeIsElement(node: RawGeckoNodeBorrowed) -> bool;
}
extern "C" {
    pub fn Gecko_IsInDocument(node: RawGeckoNodeBorrowed) -> bool;
}
extern "C" {
    pub fn Gecko_FlattenedTreeParentIsParent(node: RawGeckoNodeBorrowed)
     -> bool;
}
extern "C" {
    pub fn Gecko_GetParentNode(node: RawGeckoNodeBorrowed)
     -> RawGeckoNodeBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetFirstChild(node: RawGeckoNodeBorrowed)
     -> RawGeckoNodeBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetLastChild(node: RawGeckoNodeBorrowed)
     -> RawGeckoNodeBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetPrevSibling(node: RawGeckoNodeBorrowed)
     -> RawGeckoNodeBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetNextSibling(node: RawGeckoNodeBorrowed)
     -> RawGeckoNodeBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetFirstChildElement(element: RawGeckoElementBorrowed)
     -> RawGeckoElementBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetLastChildElement(element: RawGeckoElementBorrowed)
     -> RawGeckoElementBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetPrevSiblingElement(element: RawGeckoElementBorrowed)
     -> RawGeckoElementBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetNextSiblingElement(element: RawGeckoElementBorrowed)
     -> RawGeckoElementBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetDocumentElement(document: RawGeckoDocumentBorrowed)
     -> RawGeckoElementBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_LoadStyleSheet(loader: *mut Loader,
                                parent: *mut ServoStyleSheet,
                                import_rule: RawServoImportRuleBorrowed,
                                url_bytes: *const u8, url_length: u32,
                                media_bytes: *const u8, media_length: u32);
}
extern "C" {
    pub fn Gecko_MaybeCreateStyleChildrenIterator(node: RawGeckoNodeBorrowed)
     -> StyleChildrenIteratorOwnedOrNull;
}
extern "C" {
    pub fn Gecko_DropStyleChildrenIterator(it: StyleChildrenIteratorOwned);
}
extern "C" {
    pub fn Gecko_GetNextStyleChild(it: StyleChildrenIteratorBorrowedMut)
     -> RawGeckoNodeBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_ElementState(element: RawGeckoElementBorrowed) -> u16;
}
extern "C" {
    pub fn Gecko_IsLink(element: RawGeckoElementBorrowed) -> bool;
}
extern "C" {
    pub fn Gecko_IsTextNode(node: RawGeckoNodeBorrowed) -> bool;
}
extern "C" {
    pub fn Gecko_IsVisitedLink(element: RawGeckoElementBorrowed) -> bool;
}
extern "C" {
    pub fn Gecko_IsUnvisitedLink(element: RawGeckoElementBorrowed) -> bool;
}
extern "C" {
    pub fn Gecko_IsRootElement(element: RawGeckoElementBorrowed) -> bool;
}
extern "C" {
    pub fn Gecko_MatchesElement(type_: CSSPseudoClassType,
                                element: RawGeckoElementBorrowed) -> bool;
}
extern "C" {
    pub fn Gecko_LocalName(element: RawGeckoElementBorrowed) -> *mut nsIAtom;
}
extern "C" {
    pub fn Gecko_Namespace(element: RawGeckoElementBorrowed) -> *mut nsIAtom;
}
extern "C" {
    pub fn Gecko_GetElementId(element: RawGeckoElementBorrowed)
     -> *mut nsIAtom;
}
extern "C" {
    pub fn Gecko_AtomAttrValue(element: RawGeckoElementBorrowed,
                               attribute: *mut nsIAtom) -> *mut nsIAtom;
}
extern "C" {
    pub fn Gecko_HasAttr(element: RawGeckoElementBorrowed, ns: *mut nsIAtom,
                         name: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_AttrEquals(element: RawGeckoElementBorrowed,
                            ns: *mut nsIAtom, name: *mut nsIAtom,
                            str: *mut nsIAtom, ignoreCase: bool) -> bool;
}
extern "C" {
    pub fn Gecko_AttrDashEquals(element: RawGeckoElementBorrowed,
                                ns: *mut nsIAtom, name: *mut nsIAtom,
                                str: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_AttrIncludes(element: RawGeckoElementBorrowed,
                              ns: *mut nsIAtom, name: *mut nsIAtom,
                              str: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_AttrHasSubstring(element: RawGeckoElementBorrowed,
                                  ns: *mut nsIAtom, name: *mut nsIAtom,
                                  str: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_AttrHasPrefix(element: RawGeckoElementBorrowed,
                               ns: *mut nsIAtom, name: *mut nsIAtom,
                               str: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_AttrHasSuffix(element: RawGeckoElementBorrowed,
                               ns: *mut nsIAtom, name: *mut nsIAtom,
                               str: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_ClassOrClassList(element: RawGeckoElementBorrowed,
                                  class_: *mut *mut nsIAtom,
                                  classList: *mut *mut *mut nsIAtom) -> u32;
}
extern "C" {
    pub fn Gecko_SnapshotAtomAttrValue(element: *const ServoElementSnapshot,
                                       attribute: *mut nsIAtom)
     -> *mut nsIAtom;
}
extern "C" {
    pub fn Gecko_SnapshotHasAttr(element: *const ServoElementSnapshot,
                                 ns: *mut nsIAtom, name: *mut nsIAtom)
     -> bool;
}
extern "C" {
    pub fn Gecko_SnapshotAttrEquals(element: *const ServoElementSnapshot,
                                    ns: *mut nsIAtom, name: *mut nsIAtom,
                                    str: *mut nsIAtom, ignoreCase: bool)
     -> bool;
}
extern "C" {
    pub fn Gecko_SnapshotAttrDashEquals(element: *const ServoElementSnapshot,
                                        ns: *mut nsIAtom, name: *mut nsIAtom,
                                        str: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_SnapshotAttrIncludes(element: *const ServoElementSnapshot,
                                      ns: *mut nsIAtom, name: *mut nsIAtom,
                                      str: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_SnapshotAttrHasSubstring(element:
                                              *const ServoElementSnapshot,
                                          ns: *mut nsIAtom,
                                          name: *mut nsIAtom,
                                          str: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_SnapshotAttrHasPrefix(element: *const ServoElementSnapshot,
                                       ns: *mut nsIAtom, name: *mut nsIAtom,
                                       str: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_SnapshotAttrHasSuffix(element: *const ServoElementSnapshot,
                                       ns: *mut nsIAtom, name: *mut nsIAtom,
                                       str: *mut nsIAtom) -> bool;
}
extern "C" {
    pub fn Gecko_SnapshotClassOrClassList(element:
                                              *const ServoElementSnapshot,
                                          class_: *mut *mut nsIAtom,
                                          classList: *mut *mut *mut nsIAtom)
     -> u32;
}
extern "C" {
    pub fn Gecko_GetStyleAttrDeclarationBlock(element:
                                                  RawGeckoElementBorrowed)
     -> RawServoDeclarationBlockStrongBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetHTMLPresentationAttrDeclarationBlock(element:
                                                             RawGeckoElementBorrowed)
     -> RawServoDeclarationBlockStrongBorrowedOrNull;
}
extern "C" {
    pub fn Gecko_GetAnimationRule(aElement: RawGeckoElementBorrowed,
                                  aPseudoTag: *mut nsIAtom,
                                  aCascadeLevel:
                                      EffectCompositor_CascadeLevel)
     -> RawServoDeclarationBlockStrong;
}
extern "C" {
    pub fn Gecko_Atomize(aString: *const ::std::os::raw::c_char, aLength: u32)
     -> *mut nsIAtom;
}
extern "C" {
    pub fn Gecko_AddRefAtom(aAtom: *mut nsIAtom);
}
extern "C" {
    pub fn Gecko_ReleaseAtom(aAtom: *mut nsIAtom);
}
extern "C" {
    pub fn Gecko_GetAtomAsUTF16(aAtom: *mut nsIAtom, aLength: *mut u32)
     -> *const u16;
}
extern "C" {
    pub fn Gecko_AtomEqualsUTF8(aAtom: *mut nsIAtom,
                                aString: *const ::std::os::raw::c_char,
                                aLength: u32) -> bool;
}
extern "C" {
    pub fn Gecko_AtomEqualsUTF8IgnoreCase(aAtom: *mut nsIAtom,
                                          aString:
                                              *const ::std::os::raw::c_char,
                                          aLength: u32) -> bool;
}
extern "C" {
    pub fn Gecko_FontFamilyList_Clear(aList: *mut FontFamilyList);
}
extern "C" {
    pub fn Gecko_FontFamilyList_AppendNamed(aList: *mut FontFamilyList,
                                            aName: *mut nsIAtom);
}
extern "C" {
    pub fn Gecko_FontFamilyList_AppendGeneric(list: *mut FontFamilyList,
                                              familyType: FontFamilyType);
}
extern "C" {
    pub fn Gecko_CopyFontFamilyFrom(dst: *mut nsFont, src: *const nsFont);
}
extern "C" {
    pub fn Gecko_SetListStyleType(style_struct: *mut nsStyleList, type_: u32);
}
extern "C" {
    pub fn Gecko_CopyListStyleTypeFrom(dst: *mut nsStyleList,
                                       src: *const nsStyleList);
}
extern "C" {
    pub fn Gecko_SetNullImageValue(image: *mut nsStyleImage);
}
extern "C" {
    pub fn Gecko_SetGradientImageValue(image: *mut nsStyleImage,
                                       gradient: *mut nsStyleGradient);
}
extern "C" {
    pub fn Gecko_SetUrlImageValue(image: *mut nsStyleImage,
                                  url_bytes: *const u8, url_length: u32,
                                  base_uri: *mut ThreadSafeURIHolder,
                                  referrer: *mut ThreadSafeURIHolder,
                                  principal: *mut ThreadSafePrincipalHolder);
}
extern "C" {
    pub fn Gecko_CopyImageValueFrom(image: *mut nsStyleImage,
                                    other: *const nsStyleImage);
}
extern "C" {
    pub fn Gecko_CreateGradient(shape: u8, size: u8, repeating: bool,
                                legacy_syntax: bool, stops: u32)
     -> *mut nsStyleGradient;
}
extern "C" {
    pub fn Gecko_SetListStyleImageNone(style_struct: *mut nsStyleList);
}
extern "C" {
    pub fn Gecko_SetListStyleImage(style_struct: *mut nsStyleList,
                                   uri: ServoBundledURI);
}
extern "C" {
    pub fn Gecko_CopyListStyleImageFrom(dest: *mut nsStyleList,
                                        src: *const nsStyleList);
}
extern "C" {
    pub fn Gecko_SetCursorArrayLength(ui: *mut nsStyleUserInterface,
                                      len: usize);
}
extern "C" {
    pub fn Gecko_SetCursorImage(cursor: *mut nsCursorImage,
                                string_bytes: *const u8, string_length: u32,
                                base_uri: *mut ThreadSafeURIHolder,
                                referrer: *mut ThreadSafeURIHolder,
                                principal: *mut ThreadSafePrincipalHolder);
}
extern "C" {
    pub fn Gecko_CopyCursorArrayFrom(dest: *mut nsStyleUserInterface,
                                     src: *const nsStyleUserInterface);
}
extern "C" {
    pub fn Gecko_GetNodeFlags(node: RawGeckoNodeBorrowed) -> u32;
}
extern "C" {
    pub fn Gecko_SetNodeFlags(node: RawGeckoNodeBorrowed, flags: u32);
}
extern "C" {
    pub fn Gecko_UnsetNodeFlags(node: RawGeckoNodeBorrowed, flags: u32);
}
extern "C" {
    pub fn Gecko_SetOwnerDocumentNeedsStyleFlush(element:
                                                     RawGeckoElementBorrowed);
}
extern "C" {
    pub fn Gecko_GetStyleContext(node: RawGeckoNodeBorrowed,
                                 aPseudoTagOrNull: *mut nsIAtom)
     -> *mut nsStyleContext;
}
extern "C" {
    pub fn Gecko_CalcStyleDifference(oldstyle: *mut nsStyleContext,
                                     newstyle: ServoComputedValuesBorrowed)
     -> nsChangeHint;
}
extern "C" {
    pub fn Gecko_HintsHandledForDescendants(aHint: nsChangeHint)
     -> nsChangeHint;
}
extern "C" {
    pub fn Gecko_CreateElementSnapshot(element: RawGeckoElementBorrowed)
     -> ServoElementSnapshotOwned;
}
extern "C" {
    pub fn Gecko_DropElementSnapshot(snapshot: ServoElementSnapshotOwned);
}
extern "C" {
    pub fn Gecko_ClearAndResizeStyleContents(content: *mut nsStyleContent,
                                             how_many: u32);
}
extern "C" {
    pub fn Gecko_CopyStyleContentsFrom(content: *mut nsStyleContent,
                                       other: *const nsStyleContent);
}
extern "C" {
    pub fn Gecko_EnsureImageLayersLength(layers: *mut nsStyleImageLayers,
                                         len: usize,
                                         layer_type:
                                             nsStyleImageLayers_LayerType);
}
extern "C" {
    pub fn Gecko_EnsureStyleAnimationArrayLength(array:
                                                     *mut ::std::os::raw::c_void,
                                                 len: usize);
}
extern "C" {
    pub fn Gecko_AnimationAppendKeyframe(keyframes:
                                             RawGeckoKeyframeListBorrowedMut,
                                         offset: f32,
                                         timingFunction:
                                             *const nsTimingFunction)
     -> *mut Keyframe;
}
extern "C" {
    pub fn Gecko_ResetStyleCoord(unit: *mut nsStyleUnit,
                                 value: *mut nsStyleUnion);
}
extern "C" {
    pub fn Gecko_SetStyleCoordCalcValue(unit: *mut nsStyleUnit,
                                        value: *mut nsStyleUnion,
                                        calc: nsStyleCoord_CalcValue);
}
extern "C" {
    pub fn Gecko_CopyClipPathValueFrom(dst: *mut StyleShapeSource,
                                       src: *const StyleShapeSource);
}
extern "C" {
    pub fn Gecko_DestroyClipPath(clip: *mut StyleShapeSource);
}
extern "C" {
    pub fn Gecko_NewBasicShape(type_: StyleBasicShapeType)
     -> *mut StyleBasicShape;
}
extern "C" {
    pub fn Gecko_StyleClipPath_SetURLValue(clip: *mut StyleShapeSource,
                                           uri: ServoBundledURI);
}
extern "C" {
    pub fn Gecko_ResetFilters(effects: *mut nsStyleEffects, new_len: usize);
}
extern "C" {
    pub fn Gecko_CopyFiltersFrom(aSrc: *mut nsStyleEffects,
                                 aDest: *mut nsStyleEffects);
}
extern "C" {
    pub fn Gecko_nsStyleFilter_SetURLValue(effects: *mut nsStyleFilter,
                                           uri: ServoBundledURI);
}
extern "C" {
    pub fn Gecko_nsStyleSVGPaint_CopyFrom(dest: *mut nsStyleSVGPaint,
                                          src: *const nsStyleSVGPaint);
}
extern "C" {
    pub fn Gecko_nsStyleSVGPaint_SetURLValue(paint: *mut nsStyleSVGPaint,
                                             uri: ServoBundledURI);
}
extern "C" {
    pub fn Gecko_nsStyleSVGPaint_Reset(paint: *mut nsStyleSVGPaint);
}
extern "C" {
    pub fn Gecko_nsStyleSVG_SetDashArrayLength(svg: *mut nsStyleSVG,
                                               len: u32);
}
extern "C" {
    pub fn Gecko_nsStyleSVG_CopyDashArray(dst: *mut nsStyleSVG,
                                          src: *const nsStyleSVG);
}
extern "C" {
    pub fn Gecko_NewURLValue(uri: ServoBundledURI) -> *mut URLValue;
}
extern "C" {
    pub fn Gecko_AddRefCSSURLValueArbitraryThread(aPtr: *mut URLValue);
}
extern "C" {
    pub fn Gecko_ReleaseCSSURLValueArbitraryThread(aPtr: *mut URLValue);
}
extern "C" {
    pub fn Gecko_FillAllBackgroundLists(layers: *mut nsStyleImageLayers,
                                        max_len: u32);
}
extern "C" {
    pub fn Gecko_FillAllMaskLists(layers: *mut nsStyleImageLayers,
                                  max_len: u32);
}
extern "C" {
    pub fn Gecko_AddRefCalcArbitraryThread(aPtr: *mut nsStyleCoord_Calc);
}
extern "C" {
    pub fn Gecko_ReleaseCalcArbitraryThread(aPtr: *mut nsStyleCoord_Calc);
}
extern "C" {
    pub fn Gecko_NewCSSShadowArray(len: u32) -> *mut nsCSSShadowArray;
}
extern "C" {
    pub fn Gecko_AddRefCSSShadowArrayArbitraryThread(aPtr:
                                                         *mut nsCSSShadowArray);
}
extern "C" {
    pub fn Gecko_ReleaseCSSShadowArrayArbitraryThread(aPtr:
                                                          *mut nsCSSShadowArray);
}
extern "C" {
    pub fn Gecko_NewStyleQuoteValues(len: u32) -> *mut nsStyleQuoteValues;
}
extern "C" {
    pub fn Gecko_AddRefQuoteValuesArbitraryThread(aPtr:
                                                      *mut nsStyleQuoteValues);
}
extern "C" {
    pub fn Gecko_ReleaseQuoteValuesArbitraryThread(aPtr:
                                                       *mut nsStyleQuoteValues);
}
extern "C" {
    pub fn Gecko_NewCSSValueSharedList(len: u32) -> *mut nsCSSValueSharedList;
}
extern "C" {
    pub fn Gecko_CSSValue_GetArrayItem(css_value: nsCSSValueBorrowedMut,
                                       index: i32) -> nsCSSValueBorrowedMut;
}
extern "C" {
    pub fn Gecko_CSSValue_GetArrayItemConst(css_value: nsCSSValueBorrowed,
                                            index: i32) -> nsCSSValueBorrowed;
}
extern "C" {
    pub fn Gecko_CSSValue_GetAbsoluteLength(css_value: nsCSSValueBorrowed)
     -> nscoord;
}
extern "C" {
    pub fn Gecko_CSSValue_GetAngle(css_value: nsCSSValueBorrowed) -> f32;
}
extern "C" {
    pub fn Gecko_CSSValue_GetKeyword(aCSSValue: nsCSSValueBorrowed)
     -> nsCSSKeyword;
}
extern "C" {
    pub fn Gecko_CSSValue_GetNumber(css_value: nsCSSValueBorrowed) -> f32;
}
extern "C" {
    pub fn Gecko_CSSValue_GetPercentage(css_value: nsCSSValueBorrowed) -> f32;
}
extern "C" {
    pub fn Gecko_CSSValue_GetCalc(aCSSValue: nsCSSValueBorrowed)
     -> nsStyleCoord_CalcValue;
}
extern "C" {
    pub fn Gecko_CSSValue_SetAbsoluteLength(css_value: nsCSSValueBorrowedMut,
                                            len: nscoord);
}
extern "C" {
    pub fn Gecko_CSSValue_SetNumber(css_value: nsCSSValueBorrowedMut,
                                    number: f32);
}
extern "C" {
    pub fn Gecko_CSSValue_SetKeyword(css_value: nsCSSValueBorrowedMut,
                                     keyword: nsCSSKeyword);
}
extern "C" {
    pub fn Gecko_CSSValue_SetPercentage(css_value: nsCSSValueBorrowedMut,
                                        percent: f32);
}
extern "C" {
    pub fn Gecko_CSSValue_SetAngle(css_value: nsCSSValueBorrowedMut,
                                   radians: f32);
}
extern "C" {
    pub fn Gecko_CSSValue_SetCalc(css_value: nsCSSValueBorrowedMut,
                                  calc: nsStyleCoord_CalcValue);
}
extern "C" {
    pub fn Gecko_CSSValue_SetFunction(css_value: nsCSSValueBorrowedMut,
                                      len: i32);
}
extern "C" {
    pub fn Gecko_CSSValue_SetString(css_value: nsCSSValueBorrowedMut,
                                    string: nsString);
}
extern "C" {
    pub fn Gecko_CSSValue_SetArray(css_value: nsCSSValueBorrowedMut,
                                   len: i32);
}
extern "C" {
    pub fn Gecko_CSSValue_SetURL(css_value: nsCSSValueBorrowedMut,
                                 uri: ServoBundledURI);
}
extern "C" {
    pub fn Gecko_CSSValue_SetLocal(css_value: nsCSSValueBorrowedMut,
                                   family: nsString);
}
extern "C" {
    pub fn Gecko_CSSValue_SetInteger(css_value: nsCSSValueBorrowedMut,
                                     integer: i32);
}
extern "C" {
    pub fn Gecko_CSSValue_Drop(css_value: nsCSSValueBorrowedMut);
}
extern "C" {
    pub fn Gecko_AddRefCSSValueSharedListArbitraryThread(aPtr:
                                                             *mut nsCSSValueSharedList);
}
extern "C" {
    pub fn Gecko_ReleaseCSSValueSharedListArbitraryThread(aPtr:
                                                              *mut nsCSSValueSharedList);
}
extern "C" {
    pub fn Gecko_PropertyId_IsPrefEnabled(id: nsCSSPropertyID) -> bool;
}
extern "C" {
    pub fn Gecko_nsStyleFont_SetLang(font: *mut nsStyleFont,
                                     atom: *mut nsIAtom);
}
extern "C" {
    pub fn Gecko_nsStyleFont_CopyLangFrom(aFont: *mut nsStyleFont,
                                          aSource: *const nsStyleFont);
}
extern "C" {
    pub fn Gecko_GetMediaFeatures() -> *const nsMediaFeature;
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleFont(ptr: *mut nsStyleFont,
                                               pres_context:
                                                   RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleFont(ptr: *mut nsStyleFont,
                                           other: *const nsStyleFont);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleFont(ptr: *mut nsStyleFont);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleColor(ptr: *mut nsStyleColor,
                                                pres_context:
                                                    RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleColor(ptr: *mut nsStyleColor,
                                            other: *const nsStyleColor);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleColor(ptr: *mut nsStyleColor);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleList(ptr: *mut nsStyleList,
                                               pres_context:
                                                   RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleList(ptr: *mut nsStyleList,
                                           other: *const nsStyleList);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleList(ptr: *mut nsStyleList);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleText(ptr: *mut nsStyleText,
                                               pres_context:
                                                   RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleText(ptr: *mut nsStyleText,
                                           other: *const nsStyleText);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleText(ptr: *mut nsStyleText);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleVisibility(ptr:
                                                         *mut nsStyleVisibility,
                                                     pres_context:
                                                         RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleVisibility(ptr: *mut nsStyleVisibility,
                                                 other:
                                                     *const nsStyleVisibility);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleVisibility(ptr: *mut nsStyleVisibility);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleUserInterface(ptr:
                                                            *mut nsStyleUserInterface,
                                                        pres_context:
                                                            RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleUserInterface(ptr:
                                                        *mut nsStyleUserInterface,
                                                    other:
                                                        *const nsStyleUserInterface);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleUserInterface(ptr: *mut nsStyleUserInterface);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleTableBorder(ptr:
                                                          *mut nsStyleTableBorder,
                                                      pres_context:
                                                          RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleTableBorder(ptr:
                                                      *mut nsStyleTableBorder,
                                                  other:
                                                      *const nsStyleTableBorder);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleTableBorder(ptr: *mut nsStyleTableBorder);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleSVG(ptr: *mut nsStyleSVG,
                                              pres_context:
                                                  RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleSVG(ptr: *mut nsStyleSVG,
                                          other: *const nsStyleSVG);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleSVG(ptr: *mut nsStyleSVG);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleVariables(ptr:
                                                        *mut nsStyleVariables,
                                                    pres_context:
                                                        RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleVariables(ptr: *mut nsStyleVariables,
                                                other:
                                                    *const nsStyleVariables);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleVariables(ptr: *mut nsStyleVariables);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleBackground(ptr:
                                                         *mut nsStyleBackground,
                                                     pres_context:
                                                         RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleBackground(ptr: *mut nsStyleBackground,
                                                 other:
                                                     *const nsStyleBackground);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleBackground(ptr: *mut nsStyleBackground);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStylePosition(ptr: *mut nsStylePosition,
                                                   pres_context:
                                                       RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStylePosition(ptr: *mut nsStylePosition,
                                               other: *const nsStylePosition);
}
extern "C" {
    pub fn Gecko_Destroy_nsStylePosition(ptr: *mut nsStylePosition);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleTextReset(ptr:
                                                        *mut nsStyleTextReset,
                                                    pres_context:
                                                        RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleTextReset(ptr: *mut nsStyleTextReset,
                                                other:
                                                    *const nsStyleTextReset);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleTextReset(ptr: *mut nsStyleTextReset);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleDisplay(ptr: *mut nsStyleDisplay,
                                                  pres_context:
                                                      RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleDisplay(ptr: *mut nsStyleDisplay,
                                              other: *const nsStyleDisplay);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleDisplay(ptr: *mut nsStyleDisplay);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleContent(ptr: *mut nsStyleContent,
                                                  pres_context:
                                                      RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleContent(ptr: *mut nsStyleContent,
                                              other: *const nsStyleContent);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleContent(ptr: *mut nsStyleContent);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleUIReset(ptr: *mut nsStyleUIReset,
                                                  pres_context:
                                                      RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleUIReset(ptr: *mut nsStyleUIReset,
                                              other: *const nsStyleUIReset);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleUIReset(ptr: *mut nsStyleUIReset);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleTable(ptr: *mut nsStyleTable,
                                                pres_context:
                                                    RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleTable(ptr: *mut nsStyleTable,
                                            other: *const nsStyleTable);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleTable(ptr: *mut nsStyleTable);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleMargin(ptr: *mut nsStyleMargin,
                                                 pres_context:
                                                     RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleMargin(ptr: *mut nsStyleMargin,
                                             other: *const nsStyleMargin);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleMargin(ptr: *mut nsStyleMargin);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStylePadding(ptr: *mut nsStylePadding,
                                                  pres_context:
                                                      RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStylePadding(ptr: *mut nsStylePadding,
                                              other: *const nsStylePadding);
}
extern "C" {
    pub fn Gecko_Destroy_nsStylePadding(ptr: *mut nsStylePadding);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleBorder(ptr: *mut nsStyleBorder,
                                                 pres_context:
                                                     RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleBorder(ptr: *mut nsStyleBorder,
                                             other: *const nsStyleBorder);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleBorder(ptr: *mut nsStyleBorder);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleOutline(ptr: *mut nsStyleOutline,
                                                  pres_context:
                                                      RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleOutline(ptr: *mut nsStyleOutline,
                                              other: *const nsStyleOutline);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleOutline(ptr: *mut nsStyleOutline);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleXUL(ptr: *mut nsStyleXUL,
                                              pres_context:
                                                  RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleXUL(ptr: *mut nsStyleXUL,
                                          other: *const nsStyleXUL);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleXUL(ptr: *mut nsStyleXUL);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleSVGReset(ptr: *mut nsStyleSVGReset,
                                                   pres_context:
                                                       RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleSVGReset(ptr: *mut nsStyleSVGReset,
                                               other: *const nsStyleSVGReset);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleSVGReset(ptr: *mut nsStyleSVGReset);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleColumn(ptr: *mut nsStyleColumn,
                                                 pres_context:
                                                     RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleColumn(ptr: *mut nsStyleColumn,
                                             other: *const nsStyleColumn);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleColumn(ptr: *mut nsStyleColumn);
}
extern "C" {
    pub fn Gecko_Construct_Default_nsStyleEffects(ptr: *mut nsStyleEffects,
                                                  pres_context:
                                                      RawGeckoPresContextBorrowed);
}
extern "C" {
    pub fn Gecko_CopyConstruct_nsStyleEffects(ptr: *mut nsStyleEffects,
                                              other: *const nsStyleEffects);
}
extern "C" {
    pub fn Gecko_Destroy_nsStyleEffects(ptr: *mut nsStyleEffects);
}
extern "C" {
    pub fn Gecko_Construct_nsStyleVariables(ptr: *mut nsStyleVariables);
}
extern "C" {
    pub fn Servo_Element_ClearData(node: RawGeckoElementBorrowed);
}
extern "C" {
    pub fn Servo_StyleSheet_Empty(parsing_mode: SheetParsingMode)
     -> RawServoStyleSheetStrong;
}
extern "C" {
    pub fn Servo_StyleSheet_FromUTF8Bytes(loader: *mut Loader,
                                          gecko_stylesheet:
                                              *mut ServoStyleSheet,
                                          data: *const nsACString_internal,
                                          parsing_mode: SheetParsingMode,
                                          base_url:
                                              *const nsACString_internal,
                                          base: *mut ThreadSafeURIHolder,
                                          referrer: *mut ThreadSafeURIHolder,
                                          principal:
                                              *mut ThreadSafePrincipalHolder)
     -> RawServoStyleSheetStrong;
}
extern "C" {
    pub fn Servo_ImportRule_GetSheet(import_rule: RawServoImportRuleBorrowed)
     -> RawServoStyleSheetStrong;
}
extern "C" {
    pub fn Servo_StyleSheet_ClearAndUpdate(stylesheet:
                                               RawServoStyleSheetBorrowed,
                                           loader: *mut Loader,
                                           gecko_stylesheet:
                                               *mut ServoStyleSheet,
                                           data: *const nsACString_internal,
                                           base: *mut ThreadSafeURIHolder,
                                           referrer: *mut ThreadSafeURIHolder,
                                           principal:
                                               *mut ThreadSafePrincipalHolder);
}
extern "C" {
    pub fn Servo_StyleSheet_HasRules(sheet: RawServoStyleSheetBorrowed)
     -> bool;
}
extern "C" {
    pub fn Servo_StyleSheet_GetRules(sheet: RawServoStyleSheetBorrowed)
     -> ServoCssRulesStrong;
}
extern "C" {
    pub fn Servo_StyleSet_Init(pres_context: RawGeckoPresContextOwned)
     -> RawServoStyleSetOwned;
}
extern "C" {
    pub fn Servo_StyleSet_RebuildData(set: RawServoStyleSetBorrowed);
}
extern "C" {
    pub fn Servo_StyleSet_AppendStyleSheet(set: RawServoStyleSetBorrowed,
                                           sheet: RawServoStyleSheetBorrowed,
                                           flush: bool);
}
extern "C" {
    pub fn Servo_StyleSet_PrependStyleSheet(set: RawServoStyleSetBorrowed,
                                            sheet: RawServoStyleSheetBorrowed,
                                            flush: bool);
}
extern "C" {
    pub fn Servo_StyleSet_RemoveStyleSheet(set: RawServoStyleSetBorrowed,
                                           sheet: RawServoStyleSheetBorrowed,
                                           flush: bool);
}
extern "C" {
    pub fn Servo_StyleSet_InsertStyleSheetBefore(set:
                                                     RawServoStyleSetBorrowed,
                                                 sheet:
                                                     RawServoStyleSheetBorrowed,
                                                 reference:
                                                     RawServoStyleSheetBorrowed,
                                                 flush: bool);
}
extern "C" {
    pub fn Servo_StyleSet_FlushStyleSheets(set: RawServoStyleSetBorrowed);
}
extern "C" {
    pub fn Servo_StyleSet_NoteStyleSheetsChanged(set:
                                                     RawServoStyleSetBorrowed);
}
extern "C" {
    pub fn Servo_StyleSet_FillKeyframesForName(set: RawServoStyleSetBorrowed,
                                               property:
                                                   *const nsACString_internal,
                                               timing_function:
                                                   *const nsTimingFunction,
                                               computed_values:
                                                   ServoComputedValuesBorrowed,
                                               keyframe_list:
                                                   RawGeckoKeyframeListBorrowedMut)
     -> bool;
}
extern "C" {
    pub fn Servo_CssRules_ListTypes(rules: ServoCssRulesBorrowed,
                                    result: nsTArrayBorrowed_uintptr_t);
}
extern "C" {
    pub fn Servo_CssRules_GetStyleRuleAt(rules: ServoCssRulesBorrowed,
                                         index: u32)
     -> RawServoStyleRuleStrong;
}
extern "C" {
    pub fn Servo_CssRules_InsertRule(rules: ServoCssRulesBorrowed,
                                     sheet: RawServoStyleSheetBorrowed,
                                     rule: *const nsACString_internal,
                                     index: u32, nested: bool,
                                     rule_type: *mut u16) -> nsresult;
}
extern "C" {
    pub fn Servo_CssRules_DeleteRule(rules: ServoCssRulesBorrowed, index: u32)
     -> nsresult;
}
extern "C" {
    pub fn Servo_StyleRule_Debug(rule: RawServoStyleRuleBorrowed,
                                 result: *mut nsACString_internal);
}
extern "C" {
    pub fn Servo_StyleRule_GetStyle(rule: RawServoStyleRuleBorrowed)
     -> RawServoDeclarationBlockStrong;
}
extern "C" {
    pub fn Servo_StyleRule_SetStyle(rule: RawServoStyleRuleBorrowed,
                                    declarations:
                                        RawServoDeclarationBlockBorrowed);
}
extern "C" {
    pub fn Servo_StyleRule_GetCssText(rule: RawServoStyleRuleBorrowed,
                                      result: *mut nsAString_internal);
}
extern "C" {
    pub fn Servo_StyleRule_GetSelectorText(rule: RawServoStyleRuleBorrowed,
                                           result: *mut nsAString_internal);
}
extern "C" {
    pub fn Servo_ParseProperty(property: *const nsACString_internal,
                               value: *const nsACString_internal,
                               base_url: *const nsACString_internal,
                               base: *mut ThreadSafeURIHolder,
                               referrer: *mut ThreadSafeURIHolder,
                               principal: *mut ThreadSafePrincipalHolder)
     -> RawServoDeclarationBlockStrong;
}
extern "C" {
    pub fn Servo_GetComputedKeyframeValues(keyframes:
                                               RawGeckoKeyframeListBorrowed,
                                           style: ServoComputedValuesBorrowed,
                                           parent_style:
                                               ServoComputedValuesBorrowedOrNull,
                                           pres_context:
                                               RawGeckoPresContextBorrowed,
                                           result:
                                               RawGeckoComputedKeyframeValuesListBorrowedMut);
}
extern "C" {
    pub fn Servo_AnimationValues_Interpolate(from:
                                                 RawServoAnimationValueBorrowed,
                                             to:
                                                 RawServoAnimationValueBorrowed,
                                             progress: f64)
     -> RawServoAnimationValueStrong;
}
extern "C" {
    pub fn Servo_AnimationValues_Uncompute(value:
                                               RawServoAnimationValueBorrowedListBorrowed)
     -> RawServoDeclarationBlockStrong;
}
extern "C" {
    pub fn Servo_AnimationValue_Serialize(value:
                                              RawServoAnimationValueBorrowed,
                                          property: nsCSSPropertyID,
                                          buffer: *mut nsAString_internal);
}
extern "C" {
    pub fn Servo_AnimationValue_GetOpacity(value:
                                               RawServoAnimationValueBorrowed)
     -> f32;
}
extern "C" {
    pub fn Servo_AnimationValue_GetTransform(value:
                                                 RawServoAnimationValueBorrowed,
                                             list:
                                                 *mut RefPtr<nsCSSValueSharedList>);
}
extern "C" {
    pub fn Servo_AnimationValue_DeepEqual(arg1:
                                              RawServoAnimationValueBorrowed,
                                          arg2:
                                              RawServoAnimationValueBorrowed)
     -> bool;
}
extern "C" {
    pub fn Servo_ParseStyleAttribute(data: *const nsACString_internal)
     -> RawServoDeclarationBlockStrong;
}
extern "C" {
    pub fn Servo_DeclarationBlock_CreateEmpty()
     -> RawServoDeclarationBlockStrong;
}
extern "C" {
    pub fn Servo_DeclarationBlock_Clone(declarations:
                                            RawServoDeclarationBlockBorrowed)
     -> RawServoDeclarationBlockStrong;
}
extern "C" {
    pub fn Servo_DeclarationBlock_Equals(a: RawServoDeclarationBlockBorrowed,
                                         b: RawServoDeclarationBlockBorrowed)
     -> bool;
}
extern "C" {
    pub fn Servo_DeclarationBlock_GetCssText(declarations:
                                                 RawServoDeclarationBlockBorrowed,
                                             result: *mut nsAString_internal);
}
extern "C" {
    pub fn Servo_DeclarationBlock_SerializeOneValue(declarations:
                                                        RawServoDeclarationBlockBorrowed,
                                                    property: nsCSSPropertyID,
                                                    buffer:
                                                        *mut nsAString_internal);
}
extern "C" {
    pub fn Servo_DeclarationBlock_Count(declarations:
                                            RawServoDeclarationBlockBorrowed)
     -> u32;
}
extern "C" {
    pub fn Servo_DeclarationBlock_GetNthProperty(declarations:
                                                     RawServoDeclarationBlockBorrowed,
                                                 index: u32,
                                                 result:
                                                     *mut nsAString_internal)
     -> bool;
}
extern "C" {
    pub fn Servo_DeclarationBlock_GetPropertyValue(declarations:
                                                       RawServoDeclarationBlockBorrowed,
                                                   property:
                                                       *const nsACString_internal,
                                                   value:
                                                       *mut nsAString_internal);
}
extern "C" {
    pub fn Servo_DeclarationBlock_GetPropertyValueById(declarations:
                                                           RawServoDeclarationBlockBorrowed,
                                                       property:
                                                           nsCSSPropertyID,
                                                       value:
                                                           *mut nsAString_internal);
}
extern "C" {
    pub fn Servo_DeclarationBlock_GetPropertyIsImportant(declarations:
                                                             RawServoDeclarationBlockBorrowed,
                                                         property:
                                                             *const nsACString_internal)
     -> bool;
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetProperty(declarations:
                                                  RawServoDeclarationBlockBorrowed,
                                              property:
                                                  *const nsACString_internal,
                                              value: *mut nsACString_internal,
                                              is_important: bool) -> bool;
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetPropertyById(declarations:
                                                      RawServoDeclarationBlockBorrowed,
                                                  property: nsCSSPropertyID,
                                                  value:
                                                      *mut nsACString_internal,
                                                  is_important: bool) -> bool;
}
extern "C" {
    pub fn Servo_DeclarationBlock_RemoveProperty(declarations:
                                                     RawServoDeclarationBlockBorrowed,
                                                 property:
                                                     *const nsACString_internal);
}
extern "C" {
    pub fn Servo_DeclarationBlock_RemovePropertyById(declarations:
                                                         RawServoDeclarationBlockBorrowed,
                                                     property:
                                                         nsCSSPropertyID);
}
extern "C" {
    pub fn Servo_DeclarationBlock_PropertyIsSet(declarations:
                                                    RawServoDeclarationBlockBorrowed,
                                                property: nsCSSPropertyID)
     -> bool;
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetIdentStringValue(declarations:
                                                          RawServoDeclarationBlockBorrowed,
                                                      property:
                                                          nsCSSPropertyID,
                                                      value: *mut nsIAtom);
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetKeywordValue(declarations:
                                                      RawServoDeclarationBlockBorrowed,
                                                  property: nsCSSPropertyID,
                                                  value: i32);
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetIntValue(declarations:
                                                  RawServoDeclarationBlockBorrowed,
                                              property: nsCSSPropertyID,
                                              value: i32);
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetPixelValue(declarations:
                                                    RawServoDeclarationBlockBorrowed,
                                                property: nsCSSPropertyID,
                                                value: f32);
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetPercentValue(declarations:
                                                      RawServoDeclarationBlockBorrowed,
                                                  property: nsCSSPropertyID,
                                                  value: f32);
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetAutoValue(declarations:
                                                   RawServoDeclarationBlockBorrowed,
                                               property: nsCSSPropertyID);
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetCurrentColor(declarations:
                                                      RawServoDeclarationBlockBorrowed,
                                                  property: nsCSSPropertyID);
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetColorValue(declarations:
                                                    RawServoDeclarationBlockBorrowed,
                                                property: nsCSSPropertyID,
                                                value: nscolor);
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetFontFamily(declarations:
                                                    RawServoDeclarationBlockBorrowed,
                                                value:
                                                    *const nsAString_internal);
}
extern "C" {
    pub fn Servo_DeclarationBlock_SetTextDecorationColorOverride(declarations:
                                                                     RawServoDeclarationBlockBorrowed);
}
extern "C" {
    pub fn Servo_CSSSupports2(name: *const nsACString_internal,
                              value: *const nsACString_internal) -> bool;
}
extern "C" {
    pub fn Servo_CSSSupports(cond: *const nsACString_internal) -> bool;
}
extern "C" {
    pub fn Servo_ComputedValues_GetForAnonymousBox(parent_style_or_null:
                                                       ServoComputedValuesBorrowedOrNull,
                                                   pseudoTag: *mut nsIAtom,
                                                   set:
                                                       RawServoStyleSetBorrowed)
     -> ServoComputedValuesStrong;
}
extern "C" {
    pub fn Servo_ComputedValues_Inherit(set: RawServoStyleSetBorrowed,
                                        parent_style:
                                            ServoComputedValuesBorrowedOrNull)
     -> ServoComputedValuesStrong;
}
extern "C" {
    pub fn Servo_Initialize();
}
extern "C" {
    pub fn Servo_Shutdown();
}
extern "C" {
    pub fn Servo_Element_GetSnapshot(element: RawGeckoElementBorrowed)
     -> *mut ServoElementSnapshot;
}
extern "C" {
    pub fn Servo_NoteExplicitHints(element: RawGeckoElementBorrowed,
                                   restyle_hint: nsRestyleHint,
                                   change_hint: nsChangeHint);
}
extern "C" {
    pub fn Servo_TakeChangeHint(element: RawGeckoElementBorrowed)
     -> nsChangeHint;
}
extern "C" {
    pub fn Servo_ResolveStyle(element: RawGeckoElementBorrowed,
                              set: RawServoStyleSetBorrowed)
     -> ServoComputedValuesStrong;
}
extern "C" {
    pub fn Servo_ResolvePseudoStyle(element: RawGeckoElementBorrowed,
                                    pseudo_tag: *mut nsIAtom, is_probe: bool,
                                    set: RawServoStyleSetBorrowed)
     -> ServoComputedValuesStrong;
}
extern "C" {
    pub fn Servo_ResolveStyleLazily(element: RawGeckoElementBorrowed,
                                    pseudo_tag: *mut nsIAtom,
                                    set: RawServoStyleSetBorrowed)
     -> ServoComputedValuesStrong;
}
extern "C" {
    pub fn Servo_TraverseSubtree(root: RawGeckoElementBorrowed,
                                 set: RawServoStyleSetBorrowed,
                                 root_behavior: TraversalRootBehavior)
     -> bool;
}
extern "C" {
    pub fn Servo_AssertTreeIsClean(root: RawGeckoElementBorrowed);
}
extern "C" {
    pub fn Servo_GetStyleFont(computed_values:
                                  ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleFont;
}
extern "C" {
    pub fn Servo_GetStyleColor(computed_values:
                                   ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleColor;
}
extern "C" {
    pub fn Servo_GetStyleList(computed_values:
                                  ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleList;
}
extern "C" {
    pub fn Servo_GetStyleText(computed_values:
                                  ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleText;
}
extern "C" {
    pub fn Servo_GetStyleVisibility(computed_values:
                                        ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleVisibility;
}
extern "C" {
    pub fn Servo_GetStyleUserInterface(computed_values:
                                           ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleUserInterface;
}
extern "C" {
    pub fn Servo_GetStyleTableBorder(computed_values:
                                         ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleTableBorder;
}
extern "C" {
    pub fn Servo_GetStyleSVG(computed_values:
                                 ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleSVG;
}
extern "C" {
    pub fn Servo_GetStyleVariables(computed_values:
                                       ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleVariables;
}
extern "C" {
    pub fn Servo_GetStyleBackground(computed_values:
                                        ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleBackground;
}
extern "C" {
    pub fn Servo_GetStylePosition(computed_values:
                                      ServoComputedValuesBorrowedOrNull)
     -> *const nsStylePosition;
}
extern "C" {
    pub fn Servo_GetStyleTextReset(computed_values:
                                       ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleTextReset;
}
extern "C" {
    pub fn Servo_GetStyleDisplay(computed_values:
                                     ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleDisplay;
}
extern "C" {
    pub fn Servo_GetStyleContent(computed_values:
                                     ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleContent;
}
extern "C" {
    pub fn Servo_GetStyleUIReset(computed_values:
                                     ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleUIReset;
}
extern "C" {
    pub fn Servo_GetStyleTable(computed_values:
                                   ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleTable;
}
extern "C" {
    pub fn Servo_GetStyleMargin(computed_values:
                                    ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleMargin;
}
extern "C" {
    pub fn Servo_GetStylePadding(computed_values:
                                     ServoComputedValuesBorrowedOrNull)
     -> *const nsStylePadding;
}
extern "C" {
    pub fn Servo_GetStyleBorder(computed_values:
                                    ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleBorder;
}
extern "C" {
    pub fn Servo_GetStyleOutline(computed_values:
                                     ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleOutline;
}
extern "C" {
    pub fn Servo_GetStyleXUL(computed_values:
                                 ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleXUL;
}
extern "C" {
    pub fn Servo_GetStyleSVGReset(computed_values:
                                      ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleSVGReset;
}
extern "C" {
    pub fn Servo_GetStyleColumn(computed_values:
                                    ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleColumn;
}
extern "C" {
    pub fn Servo_GetStyleEffects(computed_values:
                                     ServoComputedValuesBorrowedOrNull)
     -> *const nsStyleEffects;
}
