This is a work-in-progress that:
* Adds support for some pseudo-elements to skip the cascade entirely, in an analogous way to Gecko's anonymous box pseudo-elements.
* Takes rid of `StylistWrapper`, and uses `Arc::get_mut` instead.
* Uses the first bullet to precompute the `-servo-details-content` pseudo's style.
I'd like @bholley to take a look before following, do you think that the aproach is the correct?
Also, @SimonSapin could want to put some eyes on it.
Depends on https://github.com/servo/rust-selectors/pull/81
Source-Repo: https://github.com/servo/servo
Source-Revision: 407f991c8aba5dcf5312bb2c34a3dd4fe12e5471
So the following PR includes bitfield support and correct `#[repr(..)]` for enum declarations (even though I was forced to add a dummy variant in order for `rustc` to be happy).
So... **That makes all of our style structs align correctly**!
The only failing test is `nsDataHashTable`, but you know, that test is ill-formed because of it being an opaque type with type parameters.
BTW, just landed on bindgen 7ee7bae788, so you can add `-raw-line "use gecko_style_structs::*;"` in `regen_bindings.sh` and stop relying on manual hacks.
r? @bholley
Source-Repo: https://github.com/servo/servo
Source-Revision: 8dd24fa783eb28f3c4f0beacae33ba1b947b1f36
This requires some new machinery on the gecko side, which I'll get up in bugzilla shortly.
Source-Repo: https://github.com/servo/servo
Source-Revision: a3b55d68a84dac301b3bc40d2444934b7df8e167
This fixes some bugs in our bindings, the most important one being that we didn't repr(C) opaque types.
r? @bholley
Source-Repo: https://github.com/servo/servo
Source-Revision: 71428b5ddaa2d9b680c5b6678917a8c5c7bf5c90
See the description of 6c851c8 to see which incorrect bindings remain. They're just nine types.
cc @bholley @SimonSapin @pcwalton
(I don't know who should review this actually)
Source-Repo: https://github.com/servo/servo
Source-Revision: d77c7b21aebb8996768bbf6215f0ec6b4440a2c8