4 "mozilla/StyleAnimationValue.h",
8 "mozilla/css/Loader.h",
9 "mozilla/css/SheetLoadData.h",
10 "mozilla/DeclarationBlock.h",
11 "mozilla/dom/AnimationEffectBinding.h",
12 "mozilla/dom/HTMLSlotElement.h",
13 "mozilla/dom/KeyframeEffectBinding.h",
14 "mozilla/dom/MediaList.h",
15 "mozilla/dom/ShadowRoot.h",
16 "mozilla/ipc/ByteBuf.h",
17 "mozilla/AnimationPropertySegment.h",
18 "mozilla/ComputedTiming.h",
19 "mozilla/ComputedTimingFunction.h",
22 "mozilla/ServoElementSnapshot.h",
23 "mozilla/ServoElementSnapshotTable.h",
24 "mozilla/dom/Element.h",
25 "mozilla/dom/ChildIterator.h",
26 "mozilla/dom/NameSpaceConstants.h",
27 "mozilla/LookAndFeel.h",
28 "mozilla/GeckoBindings.h",
29 "mozilla/ServoBindings.h",
30 "mozilla/ComputedStyle.h",
31 "mozilla/PresShell.h",
32 "mozilla/ServoTraversalStatistics.h",
33 "mozilla/SizeOfState.h",
36 "nsNameSpaceManager.h",
41 # FIXME(emilio): Incrementally remove these "pub use"s. Probably
42 # mozilla::css and mozilla::dom are easier.
43 "pub use self::root::*;",
44 "pub use self::root::mozilla::*;",
45 "pub use self::root::mozilla::css::*;",
46 "pub use self::root::mozilla::dom::*;",
50 ".*incompatible_char_type",
51 # https://github.com/rust-lang/rust-bindgen/issues/1503
52 "mozilla::StyleTimingFunction.*",
53 # https://github.com/rust-lang/rust-bindgen/issues/1559
54 "mozilla::StyleGenericTransformOperation_.*",
58 "mozilla::OriginFlags",
59 "mozilla::StyleTextUnderlinePosition",
63 "mozilla::EffectCompositor_CascadeLevel",
65 "mozilla::dom::CallerType",
66 "mozilla::dom::IterationCompositeOperation",
67 "mozilla::dom::CompositeOperation",
68 "mozilla::InheritTarget",
69 "mozilla::css::DocumentMatchingFunction",
70 "mozilla::css::SheetParsingMode",
71 "nsStyleSVGOpacitySource",
72 "mozilla::dom::Document_DocumentTheme",
73 "mozilla::dom::Document_Type",
78 "nsMediaFeature_RangeType",
79 "nsMediaFeature_ValueType",
82 "nsStyleImageLayers_LayerType",
83 "mozilla::ServoElementSnapshotFlags",
85 "mozilla::dom::PlaybackDirection",
86 "mozilla::dom::FillMode",
87 "mozilla::HalfCorner",
88 "mozilla::StyleFloatEdge",
89 "mozilla::StyleShapeRadius",
90 "mozilla::StyleWindowDragging",
91 "mozilla::StyleAnimationPlayState",
92 "mozilla::StyleOrient",
93 "mozilla::StyleBoxSizing",
94 "mozilla::StyleClear",
95 "mozilla::StyleColumnFill",
96 "mozilla::StyleColumnSpan",
97 "mozilla::StyleDirection",
98 "mozilla::StyleFloat",
99 "mozilla::StyleImageOrientation",
100 "mozilla::StyleImageRendering",
101 "mozilla::StyleInert",
102 "mozilla::StyleUserModify",
103 "mozilla::StyleUserInput",
104 "mozilla::StyleBoxDirection",
105 "mozilla::StyleTextJustify",
106 "mozilla::StyleRubyAlign",
107 "mozilla::StyleTextSizeAdjust",
108 "mozilla::StyleHyphens",
109 "mozilla::StyleRubyPosition",
110 "mozilla::StyleShapeSourceType",
111 "mozilla::StyleVisibility",
112 "mozilla::StyleBasicShapeType",
113 "nsStyleImageLayers_Size_DimensionType",
114 "mozilla::StyleBorderCollapse",
115 "mozilla::StyleBorderImageRepeat",
116 "mozilla::StyleBoxPack",
117 "mozilla::StyleWindowShadow",
118 "mozilla::StyleDominantBaseline",
119 "mozilla::StyleBoxOrient",
120 "mozilla::StyleBoxAlign",
121 "mozilla::StyleUserFocus",
122 "mozilla::StyleUserSelect",
123 "mozilla::StyleImageLayerRepeat",
124 "mozilla::StyleImageLayerAttachment",
125 "mozilla::StylePositionProperty",
126 "mozilla::StyleBoxDecorationBreak",
127 "mozilla::StyleBorderStyle",
128 "mozilla::StyleRuleInclusion",
129 "mozilla::StyleGridTrackBreadth",
130 "mozilla::StyleOverscrollBehavior",
131 "mozilla::StyleImeMode",
132 "mozilla::StyleOverflowAnchor",
133 "mozilla::StylePointerEvents",
134 "mozilla::StyleScrollbarWidth",
135 "mozilla::StyleWhiteSpace",
136 "mozilla::StyleTextRendering",
137 "mozilla::StyleColorAdjust",
138 "mozilla::StyleFlexDirection",
139 "mozilla::StyleStrokeLinecap",
140 "mozilla::StyleStrokeLinejoin",
141 "mozilla::StyleFlexWrap",
142 "mozilla::StyleTextDecorationSkipInk",
143 "mozilla::StyleTextDecorationLength",
144 "mozilla::StyleMaskType",
145 "mozilla::StyleShapeRendering",
146 "mozilla::StyleTextAnchor",
147 "mozilla::StyleObjectFit",
148 "mozilla::StyleTopLayer",
149 "mozilla::StyleIsolation",
150 "mozilla::StyleTextOrientation",
151 "mozilla::StyleTableLayout",
152 "mozilla::StyleEmptyCells",
154 "nsINode_BooleanFlag",
155 "mozilla::PseudoStyleType",
156 "mozilla::LookAndFeel_ColorID",
157 "mozilla::LookAndFeel_FontID",
158 "nsStyleTransformMatrix::MatrixTransformOperator",
159 "mozilla::StyleGeometryBox",
160 "mozilla::SystemColor",
161 "mozilla::StyleMaskMode",
162 "mozilla::StyleScrollBehavior",
163 "mozilla::StyleColorInterpolation",
164 "mozilla::StyleVectorEffect",
165 "mozilla::StyleBackfaceVisibility",
166 "mozilla::StyleBlend",
167 "mozilla::StyleMaskComposite",
168 "mozilla::StyleControlCharacterVisibility",
169 "mozilla::StyleWritingModeProperty",
181 "CSS_PSEUDO_ELEMENT_.*",
182 "SERVO_CSS_PSEUDO_ELEMENT_FLAGS_.*",
188 "mozilla::detail::gGkAtoms",
189 "mozilla::detail::kGkAtomsArrayOffset",
190 "mozilla::profiler::detail::RacyFeatures::sActiveAndFeatures",
192 # TODO(emilio): A bunch of types here can go away once we generate bindings and
198 "nsFontFaceRuleContainer",
199 "Matrix4x4Components",
200 "mozilla::ComputedKeyframeValues",
202 "mozilla::PropertyValuePair",
203 "mozilla::DeclarationBlockMutationClosure",
204 "mozilla::AnimationPropertySegment",
205 "mozilla::AnonymousCounterStyle",
206 "mozilla::AtomArray",
207 "mozilla::ComputedTiming",
208 "mozilla::ComputedTimingFunction",
209 "mozilla::ComputedTimingFunction::BeforeFlag",
210 "mozilla::Matrix4x4Components",
211 "mozilla::PreferenceSheet",
213 "mozilla::ServoElementSnapshot.*",
214 "mozilla::ComputedStyle",
215 "mozilla::StyleSheet",
216 "mozilla::ServoStyleSheetInner",
217 "mozilla::ServoStyleSetSizes",
218 "mozilla::ServoTraversalStatistics",
219 "mozilla::css::LoaderReusableStyleSheets",
220 "mozilla::css::SheetLoadData",
221 "mozilla::css::SheetLoadDataHolder",
222 "mozilla::css::SheetParsingMode",
223 "mozilla::css::DocumentMatchingFunction",
224 "mozilla::dom::IterationCompositeOperation",
225 "mozilla::dom::StyleChildrenIterator",
226 "mozilla::HalfCorner",
227 "mozilla::ipc::ByteBuf",
228 "mozilla::MallocSizeOf",
229 "mozilla::OriginFlags",
230 "mozilla::PropertyStyleAnimationValuePair",
231 "mozilla::ServoTraversalFlags",
232 "mozilla::StyleShapeRadius",
233 "mozilla::StyleGrid.*",
234 "mozilla::UpdateAnimationsTasks",
235 "mozilla::PointerCapabilities",
236 "mozilla::LookAndFeel",
237 "mozilla::gfx::Float",
238 "mozilla::gfx::FontVariation",
239 "mozilla::StyleImageLayerAttachment",
242 ".*ThreadSafe.*Holder",
246 "DOMIntersectionObserverEntry",
250 "mozilla::FontSizePrefs",
252 "FrameRequestCallback",
253 "GeckoParserExtraData",
255 "gfxFontFeatureValueSet",
257 "mozilla::HalfCorner",
261 "mozilla::MediumFeaturesChangedResult",
270 "nsCSSPropertyIDSet",
275 "nsCSSValueList_heap",
276 "nsCSSValuePair_heap",
277 "nsCSSValuePairList",
278 "nsCSSValuePairList_heap",
279 "nsCSSValueTriplet_heap",
289 "nsSimpleContentList",
296 "nsStyleContentData",
298 "nsStyleCounterData",
304 "nsStyleGridTemplate",
306 "nsStyleImageLayers",
314 "nsStyleSVGOpacitySource",
317 "nsStyleTableBorder",
331 "ServoComputedDataBorrowed",
332 "ServoElementSnapshot",
333 "ComputedStyleStrong",
334 "ComputedStyleBorrowed",
335 "ComputedStyleBorrowedOrNull",
339 "StyleBasicShapeType",
344 "mozilla::UniquePtr",
345 "mozilla::DeclarationBlock",
346 "mozilla::DefaultDelete",
348 "mozilla::binding_danger::AssertAndSuppressCleanupPolicy",
349 "mozilla::ParsingMode",
350 "mozilla::InheritTarget",
351 "mozilla::dom::MediaList",
352 "mozilla::StyleRuleInclusion",
353 "nsStyleTransformMatrix::MatrixTransformOperator",
354 "mozilla::profiler::detail::RacyFeatures",
357 "mozilla::StyleThinArc", # https://github.com/rust-lang/rust-bindgen/issues/1557
359 "std::namespace::atomic___base", "std::atomic__My_base",
361 "std::atomic___base",
362 # We want everything but FontVariation and Float to be opaque but we don't
363 # have negative regexes.
364 "mozilla::gfx::(.{0,4}|.{6,12}|.{14,}|([^F][^o][^n][^t][^V][^a][^r][^i][^a][^t][^i][^o][^n])|([^F][^l][^o][^a][^t]))",
365 "mozilla::dom::Sequence",
366 "mozilla::SmallPointerArray",
367 "mozilla::dom::Optional",
368 "mozilla::dom::OwningNodeOrString_Value",
369 "mozilla::dom::Nullable",
370 "mozilla::external::AtomicRefCounted",
372 "RefPtr_Proxy_member_function",
374 "nsAutoPtr_Proxy_member_function",
375 "mozilla::detail::HashTable", # <- We should be able to remove this and
377 # https://github.com/rust-lang/rust-bindgen/pull/1515
379 "mozilla::detail::PointerType",
382 "mozilla::Pair_Base",
383 "mozilla::ScrollAxis", # <- For some reason the alignment of this is 4
386 "mozilla::SupportsWeakPtr",
389 "mozilla::detail::WeakReference",
391 "nsWritingIterator_reference", "nsReadingIterator_reference",
392 "nsTObserverArray", # <- Inherits from nsAutoTObserverArray<T, 0>
393 "nsTHashtable", # <- Inheriting from inner typedefs that clang
394 # doesn't expose properly.
395 "nsBaseHashtable", "nsRefCountedHashtable", "nsClassHashtable", # <- Ditto
396 "mozilla::dom::Document_SelectorCache", # <- Inherits from nsExpirationTracker<.., 4>
397 "nsPIDOMWindow", # <- Takes the vtable from a template parameter, and we can't
398 # generate it conditionally.
401 "gfxSize", # <- union { struct { T width; T height; }; T components[2] };
402 "gfxSize_Super", # Ditto.
403 "mozilla::StyleAnimationValue",
404 "StyleAnimationValue", # pulls in a whole bunch of stuff we don't need in the bindings
405 "mozilla::dom::.*Callback", # Pulls in ErrorResult and other things that
406 # don't align properly on Linux 32-bit
407 "mozilla::SchedulerGroup", # Non-standard-layout packing of field into superclass
408 "mozilla::detail::GkAtoms", # https://bugzilla.mozilla.org/show_bug.cgi?id=1517685
409 "mozilla::detail::ThreadLocal.*",
412 # All cbindgen-types are in mod "structs::root::mozilla".
413 # FIXME(emilio): We probably want to automate this somehow...
415 { gecko = "StyleAppearance", servo = "crate::values::specified::Appearance" },
416 { gecko = "StyleAspectRatio", servo = "crate::values::computed::position::AspectRatio" },
417 { gecko = "StyleComputedFontStretchRange", servo = "crate::font_face::ComputedFontStretchRange" },
418 { gecko = "StyleComputedFontStyleDescriptor", servo = "crate::font_face::ComputedFontStyleDescriptor" },
419 { gecko = "StyleComputedFontWeightRange", servo = "crate::font_face::ComputedFontWeightRange" },
420 { gecko = "StyleComputedTimingFunction", servo = "crate::values::computed::easing::TimingFunction" },
421 { gecko = "StylePrefersContrast", servo = "crate::gecko::media_features::PrefersContrast" },
422 { gecko = "StyleCursorKind", servo = "crate::values::computed::ui::CursorKind" },
423 { gecko = "StyleDisplay", servo = "crate::values::specified::Display" },
424 { gecko = "StyleDisplayMode", servo = "crate::gecko::media_features::DisplayMode" },
425 { gecko = "StylePrefersColorScheme", servo = "crate::gecko::media_features::PrefersColorScheme" },
426 { gecko = "StyleFillRule", servo = "crate::values::generics::basic_shape::FillRule" },
427 { gecko = "StyleFontDisplay", servo = "crate::font_face::FontDisplay" },
428 { gecko = "StyleFontFaceSourceListComponent", servo = "crate::font_face::FontFaceSourceListComponent" },
429 { gecko = "StyleFontLanguageOverride", servo = "crate::values::computed::font::FontLanguageOverride" },
430 { gecko = "StyleOffsetPath", servo = "crate::values::computed::motion::OffsetPath" },
431 { gecko = "StyleGenericOffsetPath", servo = "crate::values::generics::motion::OffsetPath" },
432 { gecko = "StyleOffsetRotate", servo = "crate::values::computed::motion::OffsetRotate" },
433 { gecko = "StylePathCommand", servo = "crate::values::specified::svg_path::PathCommand" },
434 { gecko = "StyleRayFunction", servo = "crate::values::generics::motion::RayFunction" },
435 { gecko = "StyleUnicodeRange", servo = "cssparser::UnicodeRange" },
436 { gecko = "StyleOverflowWrap", servo = "crate::values::computed::OverflowWrap" },
437 { gecko = "StyleWordBreak", servo = "crate::values::computed::WordBreak" },
438 { gecko = "StyleLineBreak", servo = "crate::values::computed::LineBreak" },
439 { gecko = "StyleUserSelect", servo = "crate::values::computed::UserSelect" },
440 { gecko = "StyleBreakBetween", servo = "crate::values::computed::BreakBetween" },
441 { gecko = "StyleBreakWithin", servo = "crate::values::computed::BreakWithin" },
442 { gecko = "StyleBorderStyle", servo = "crate::values::computed::BorderStyle" },
443 { gecko = "StyleOutlineStyle", servo = "crate::values::computed::OutlineStyle" },
444 { gecko = "StyleScrollSnapAlign", servo = "crate::values::computed::ScrollSnapAlign" },
445 { gecko = "StyleScrollSnapStrictness", servo = "crate::values::computed::ScrollSnapStrictness" },
446 { gecko = "StyleScrollSnapType", servo = "crate::values::computed::ScrollSnapType" },
447 { gecko = "StyleResize", servo = "crate::values::computed::Resize" },
448 { gecko = "StyleOverflowClipBox", servo = "crate::values::computed::OverflowClipBox" },
449 { gecko = "StyleFloat", servo = "crate::values::computed::Float" },
450 { gecko = "StyleOverscrollBehavior", servo = "crate::values::computed::OverscrollBehavior" },
451 { gecko = "StyleTextAlign", servo = "crate::values::computed::TextAlign" },
452 { gecko = "StyleTextAlignLast", servo = "crate::values::computed::text::TextAlignLast" },
453 { gecko = "StyleTextOverflow", servo = "crate::values::computed::TextOverflow" },
454 { gecko = "StyleOverflow", servo = "crate::values::computed::Overflow" },
455 { gecko = "StyleOverflowAnchor", servo = "crate::values::computed::OverflowAnchor" },
456 { gecko = "StyleTextDecorationSkipInk", servo = "crate::values::computed::TextDecorationSkipInk" },
457 { gecko = "StyleTextDecorationLength", servo = "crate::values::computed::TextDecorationLength" },
458 { gecko = "StyleRubyPosition", servo = "crate::values::computed::RubyPosition" },
459 { gecko = "StyleLength", servo = "crate::values::computed::CSSPixelLength" },
460 { gecko = "StyleLengthPercentage", servo = "crate::values::computed::LengthPercentage" },
461 { gecko = "StyleNonNegativeLengthPercentage", servo = "crate::values::computed::NonNegativeLengthPercentage" },
462 { gecko = "StyleGenericLengthPercentageOrAuto", servo = "crate::values::generics::length::LengthPercentageOrAuto" },
463 { gecko = "StyleGenericLengthPercentageOrNormal", servo = "crate::values::generics::length::LengthPercentageOrNormal" },
464 { gecko = "StyleLengthPercentageOrAuto", servo = "crate::values::computed::LengthPercentageOrAuto" },
465 { gecko = "StyleNonNegativeLengthPercentageOrAuto", servo = "crate::values::computed::NonNegativeLengthPercentageOrAuto" },
466 { gecko = "StyleRect", servo = "crate::values::generics::rect::Rect" },
467 { gecko = "StyleIntersectionObserverRootMargin", servo = "crate::values::specified::gecko::IntersectionObserverRootMargin" },
468 { gecko = "StyleGenericSize", servo = "crate::values::generics::length::Size" },
469 { gecko = "StyleGenericMaxSize", servo = "crate::values::generics::length::MaxSize" },
470 { gecko = "StyleGenericFlexBasis", servo = "crate::values::generics::flex::FlexBasis" },
471 { gecko = "StyleSize", servo = "crate::values::computed::Size" },
472 { gecko = "StyleMaxSize", servo = "crate::values::computed::MaxSize" },
473 { gecko = "StyleFlexBasis", servo = "crate::values::computed::FlexBasis" },
474 { gecko = "StylePosition", servo = "crate::values::computed::Position" },
475 { gecko = "StylePositionOrAuto", servo = "crate::values::computed::PositionOrAuto" },
476 { gecko = "StyleGenericPositionOrAuto", servo = "crate::values::generics::position::PositionOrAuto" },
477 { gecko = "StyleBackgroundSize", servo = "crate::values::computed::BackgroundSize" },
478 { gecko = "StyleGenericBackgroundSize", servo = "crate::values::generics::background::BackgroundSize" },
479 { gecko = "StyleBorderImageSlice", servo = "crate::values::computed::BorderImageSlice" },
480 { gecko = "StyleGenericLengthOrNumber", servo = "crate::values::generics::length::LengthOrNumber" },
481 { gecko = "StyleCSSPixelLength", servo = "crate::values::computed::length::CSSPixelLength" },
482 { gecko = "StyleNonNegativeLength", servo = "crate::values::computed::NonNegativeLength" },
483 { gecko = "StyleNonNegativeNumber", servo = "crate::values::computed::NonNegativeNumber" },
484 { gecko = "StyleZeroToOneNumber", servo = "crate::values::computed::ZeroToOneNumber" },
485 { gecko = "StylePercentage", servo = "crate::values::computed::Percentage" },
486 { gecko = "StylePerspective", servo = "crate::values::computed::Perspective" },
487 { gecko = "StyleGenericPerspective", servo = "crate::values::generics::box_::Perspective" },
488 { gecko = "StyleZIndex", servo = "crate::values::computed::ZIndex" },
489 { gecko = "StyleGenericZIndex", servo = "crate::values::generics::position::ZIndex" },
490 { gecko = "StyleTransformOrigin", servo = "crate::values::computed::TransformOrigin" },
491 { gecko = "StyleTransformStyle", servo = "crate::values::computed::TransformStyle" },
492 { gecko = "StyleGenericBorderRadius", servo = "crate::values::generics::border::BorderRadius" },
493 { gecko = "StyleLetterSpacing", servo = "crate::values::computed::text::LetterSpacing" },
494 { gecko = "StyleGenericLineHeight", servo = "crate::values::generics::text::LineHeight" },
495 { gecko = "StyleContain", servo = "crate::values::computed::Contain" },
496 { gecko = "StyleRestyleHint", servo = "crate::invalidation::element::restyle_hints::RestyleHint" },
497 { gecko = "StyleTouchAction", servo = "crate::values::computed::TouchAction" },
498 { gecko = "StyleWillChange", servo = "crate::values::specified::box_::WillChange" },
499 { gecko = "StyleTextDecorationLine", servo = "crate::values::computed::TextDecorationLine" },
500 { gecko = "StyleTextTransform", servo = "crate::values::computed::TextTransform" },
501 { gecko = "StyleTextUnderlinePosition", servo = "crate::values::computed::TextUnderlinePosition" },
502 { gecko = "StyleMozListReversed", servo = "crate::values::computed::MozListReversed" },
503 { gecko = "StyleOwned", servo = "crate::gecko_bindings::sugar::ownership::Owned" },
504 { gecko = "StyleOwnedOrNull", servo = "crate::gecko_bindings::sugar::ownership::OwnedOrNull" },
505 { gecko = "StyleStrong", servo = "crate::gecko_bindings::sugar::ownership::Strong" },
506 { gecko = "StyleGenericFontFamily", servo = "crate::values::computed::font::GenericFontFamily" },
507 { gecko = "StyleFontFamilyNameSyntax", servo = "crate::values::computed::font::FontFamilyNameSyntax" },
508 { gecko = "StyleGenericColor", servo = "crate::values::generics::color::Color" },
509 { gecko = "StyleSystemColor", servo = "crate::values::specified::color::SystemColor" },
510 { gecko = "StyleGenericColorOrAuto", servo = "crate::values::generics::color::ColorOrAuto" },
511 { gecko = "StyleGenericScrollbarColor", servo = "crate::values::generics::ui::ScrollbarColor" },
512 { gecko = "StyleRGBA", servo = "cssparser::RGBA" },
513 { gecko = "StyleOrigin", servo = "crate::stylesheets::Origin" },
514 { gecko = "StyleGenericVerticalAlign", servo = "crate::values::generics::box_::VerticalAlign" },
515 { gecko = "StyleVerticalAlignKeyword", servo = "crate::values::generics::box_::VerticalAlignKeyword" },
516 { gecko = "StyleGenericBasicShape", servo = "crate::values::generics::basic_shape::BasicShape" },
517 { gecko = "StyleArcSlice", servo = "style_traits::arc_slice::ArcSlice" },
518 { gecko = "StyleForgottenArcSlicePtr", servo = "style_traits::arc_slice::ForgottenArcSlicePtr" },
519 { gecko = "StyleOwnedSlice", servo = "style_traits::owned_slice::OwnedSlice" },
520 { gecko = "StyleMozContextProperties", servo = "crate::values::specified::svg::MozContextProperties" },
521 { gecko = "StyleQuotes", servo = "crate::values::specified::list::Quotes" },
522 { gecko = "StyleOwnedStr", servo = "style_traits::owned_str::OwnedStr" },
523 { gecko = "StyleGenericBoxShadow", servo = "crate::values::generics::effects::BoxShadow" },
524 { gecko = "StyleGenericSimpleShadow", servo = "crate::values::generics::effects::SimpleShadow" },
525 { gecko = "StyleGenericTransformOperation", servo = "crate::values::generics::transform::TransformOperation" },
526 { gecko = "StyleGenericTransform", servo = "crate::values::generics::transform::Transform" },
527 { gecko = "StyleGenericScale", servo = "crate::values::generics::transform::Scale" },
528 { gecko = "StyleGenericRotate", servo = "crate::values::generics::transform::Rotate" },
529 { gecko = "StyleGenericTranslate", servo = "crate::values::generics::transform::Translate" },
530 { gecko = "StyleAngle", servo = "crate::values::computed::Angle" },
531 { gecko = "StyleGenericBorderImageSideWidth", servo = "crate::values::generics::border::BorderImageSideWidth" },
532 { gecko = "StyleGenericUrlOrNone", servo = "crate::values::generics::url::UrlOrNone" },
533 { gecko = "StyleCssUrl", servo = "crate::gecko::url::CssUrl" },
534 { gecko = "StyleSpecifiedUrl", servo = "crate::gecko::url::SpecifiedUrl" },
535 { gecko = "StyleSpecifiedImageUrl", servo = "crate::gecko::url::SpecifiedImageUrl" },
536 { gecko = "StyleComputedUrl", servo = "crate::gecko::url::ComputedUrl" },
537 { gecko = "StyleComputedImageUrl", servo = "crate::gecko::url::ComputedImageUrl" },
538 { gecko = "StyleLoadData", servo = "crate::gecko::url::LoadData" },
539 { gecko = "StyleGenericFilter", servo = "crate::values::generics::effects::Filter" },
540 { gecko = "StyleGenericGradient", servo = "crate::values::generics::image::Gradient" },
541 { gecko = "StyleLineDirection", servo = "crate::values::computed::image::LineDirection" },
542 { gecko = "StyleGridTemplateAreas", servo = "crate::values::computed::position::GridTemplateAreas" },
543 { gecko = "StyleGenericGridLine", servo = "crate::values::generics::grid::GridLine" },
544 { gecko = "StyleGenericTrackSize", servo = "crate::values::generics::grid::TrackSize" },
545 { gecko = "StyleGenericTrackBreadth", servo = "crate::values::generics::grid::TrackBreadth" },
546 { gecko = "StyleGenericImplicitGridTracks", servo = "crate::values::generics::grid::ImplicitGridTracks" },
547 { gecko = "StyleImplicitGridTracks", servo = "crate::values::computed::ImplicitGridTracks" },
548 { gecko = "StyleNumberOrPercentage", servo = "crate::values::computed::NumberOrPercentage" },
549 { gecko = "StyleGenericSVGPaint", servo = "crate::values::generics::svg::SVGPaint" },
550 { gecko = "StyleGenericTrackRepeat", servo = "crate::values::generics::grid::TrackRepeat" },
551 { gecko = "StyleGenericTrackListValue", servo = "crate::values::generics::grid::TrackListValue" },
552 { gecko = "StyleGenericTrackList", servo = "crate::values::generics::grid::TrackList" },
553 { gecko = "StyleGenericGridTemplateComponent", servo = "crate::values::generics::grid::GridTemplateComponent" },
554 { gecko = "StyleTextEmphasisStyle", servo = "crate::values::computed::text::TextEmphasisStyle" },
555 { gecko = "StyleVariantAlternatesList", servo = "crate::values::specified::font::VariantAlternatesList" },
556 { gecko = "StyleSVGPaintOrder", servo = "crate::values::specified::svg::SVGPaintOrder" },
557 { gecko = "StyleClipRectOrAuto", servo = "crate::values::computed::ClipRectOrAuto" },
558 { gecko = "StyleCounterSetOrReset", servo = "crate::values::computed::CounterSetOrReset" },
559 { gecko = "StyleCounterIncrement", servo = "crate::values::computed::CounterIncrement" },
560 { gecko = "StyleContent", servo = "crate::values::computed::counters::Content" },
561 { gecko = "StyleSymbolsType", servo = "crate::values::generics::SymbolsType" },
562 { gecko = "StyleCounterStyle", servo = "crate::values::generics::CounterStyle" },
563 { gecko = "StyleComputedJustifyItems", servo = "crate::values::computed::align::ComputedJustifyItems" },
564 { gecko = "StyleAlignItems", servo = "crate::values::computed::AlignItems" },
565 { gecko = "StyleJustifySelf", servo = "crate::values::computed::JustifySelf" },
566 { gecko = "StyleAlignSelf", servo = "crate::values::computed::AlignSelf" },
567 { gecko = "StyleAlignContent", servo = "crate::values::computed::align::AlignContent" },
568 { gecko = "StyleJustifyTracks", servo = "crate::values::computed::align::JustifyTracks" },
569 { gecko = "StyleAlignTracks", servo = "crate::values::computed::align::AlignTracks" },
570 { gecko = "StyleJustifyContent", servo = "crate::values::computed::align::JustifyContent" },
571 { gecko = "StyleComputedValueFlags", servo = "crate::computed_value_flags::ComputedValueFlags" },
572 { gecko = "StyleImage", servo = "crate::values::computed::Image" },
573 { gecko = "StyleShapeOutside", servo = "crate::values::computed::basic_shape::ShapeOutside" },
574 { gecko = "StyleClipPath", servo = "crate::values::computed::basic_shape::ClipPath" },
575 { gecko = "StyleGridAutoFlow", servo = "crate::values::computed::GridAutoFlow" },
576 { gecko = "StyleCursor", servo = "crate::values::computed::Cursor" },
577 { gecko = "StyleSVGStrokeDashArray", servo = "crate::values::computed::svg::SVGStrokeDashArray" },
578 { gecko = "StyleSVGWidth", servo = "crate::values::computed::svg::SVGWidth" },
579 { gecko = "StyleSVGOpacity", servo = "crate::values::computed::svg::SVGOpacity" },
580 { gecko = "StyleSVGLength", servo = "crate::values::computed::svg::SVGLength" },
581 { gecko = "StyleFontSizeKeyword", servo = "crate::values::specified::font::FontSizeKeyword" },
582 { gecko = "StyleDefaultFontSizes", servo = "crate::gecko::wrapper::DefaultFontSizes" },
583 { gecko = "StyleCaptionSide", servo = "crate::values::computed::table::CaptionSide" },
586 mapped-generic-types = [
587 { generic = true, gecko = "mozilla::RustCell", servo = "::std::cell::Cell" },
588 { generic = false, gecko = "ServoNodeData", servo = "atomic_refcell::AtomicRefCell<crate::data::ElementData>" },
589 { generic = false, gecko = "mozilla::ServoWritingMode", servo = "crate::logical_geometry::WritingMode" },
590 { generic = false, gecko = "mozilla::ServoCustomPropertiesMap", servo = "Option<servo_arc::Arc<crate::custom_properties::CustomPropertiesMap>>" },
591 { generic = false, gecko = "mozilla::ServoRuleNode", servo = "Option<crate::rule_tree::StrongRuleNode>" },
592 { generic = false, gecko = "mozilla::ServoVisitedStyle", servo = "Option<servo_arc::RawOffsetArc<crate::properties::ComputedValues>>" },
593 { generic = true, gecko = "mozilla::ServoRawOffsetArc", servo = "servo_arc::RawOffsetArc" },
594 { generic = true, gecko = "mozilla::ServoManuallyDrop", servo = "::std::mem::ManuallyDrop" },
595 { generic = false, gecko = "nsACString", servo = "nsstring::nsACString" },
596 { generic = false, gecko = "nsAString", servo = "nsstring::nsAString" },
597 { generic = false, gecko = "nsCString", servo = "nsstring::nsCString" },
598 { generic = false, gecko = "nsString", servo = "nsstring::nsString" },
601 whitelist-functions = ["Servo_.*", "Gecko_.*"]