servo/components/style
Emilio Cobos Álvarez 017036dba8 style: Add attributes to the rule hash
See the discussion here: https://twitter.com/Rich_Harris/status/1433153204678799365

This should make attribute selectors roughly as fast as class selectors.

I think it's worth trying and see if perf bots complain on
micro-benchmarks and stylebench and such.

I made attributes more specific than local names, but less specific than
classes, which I think makes sense. When doing something like
foo[data-bar], filtering by data-bar seems likely to yield less elements
than filtering by foo.

While at it, remove the bloom filter pref since we shipped it in
bug 1704551 for 87 and we haven't heard complaints.

Differential Revision: https://phabricator.services.mozilla.com/D124383
2023-05-26 21:49:57 +02:00
..
counter_style style: Make predefined symbolic counter styles not overridable 2023-05-24 18:32:32 +02:00
gecko style: Add attributes to the rule hash 2023-05-26 21:49:57 +02:00
gecko_bindings style: Unify font-family storage 2023-05-24 18:32:35 +02:00
gecko_string_cache Miscellaneous build / tidy fixes. 2021-02-26 17:53:55 +01:00
invalidation style: Add some scaffolding for @layer rules 2023-05-26 15:23:25 +02:00
media_queries style: Don't allow whitespace between media query operator delim tokens 2023-05-19 19:06:08 +02:00
properties style: Move image-rendering out of mako 2023-05-26 15:23:24 +02:00
rule_tree style: Export a size to fix a test that was trying to use a now-private type. 2020-04-23 05:07:02 +02:00
servo style: Garbage-collect event state bits 2023-05-19 19:06:07 +02:00
sharing style: Add attributes to the rule hash 2023-05-26 21:49:57 +02:00
stylesheets style: Remove cascade layers pref 2023-05-26 21:43:29 +02:00
use_counters style: Support css use counters for unimplemented properties. 2019-09-12 22:34:16 +02:00
values Further changes required by Servo 2023-05-26 15:23:25 +02:00
animation.rs animations: Don't convert linear easing to a bezier 2020-06-24 17:19:25 +02:00
applicable_declarations.rs style: Rustfmt recent changes. 2019-11-30 20:45:07 +01:00
attr.rs Miscellaneous build / tidy fixes. 2021-02-26 17:53:55 +01:00
author_styles.rs style: Share CascadeData instances across ShadowRoots 2023-05-16 13:00:08 +02:00
bezier.rs Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
bloom.rs style: Add attributes to the rule hash 2023-05-26 21:49:57 +02:00
build.rs Add build github actions workflows for mac/windows/linux. 2021-02-26 04:20:22 -05:00
build_gecko.rs style: Setup bindgen flags for servo similarly to cranelift and neqo 2023-05-24 18:32:40 +02:00
Cargo.toml style: Remove the unused "gecko_profiler" feature from servo 2023-05-24 18:32:41 +02:00
context.rs style: Paper over a crash in non-nightly 2023-05-16 12:55:42 +02:00
custom_properties.rs style: Fix whitespace handling inside CSS variables 2023-05-24 18:32:31 +02:00
data.rs style: More fine-grained viewport units invalidation 2023-05-24 18:32:37 +02:00
dom.rs style: Inline GeckoNode::prev_sibling 2023-05-24 18:32:37 +02:00
dom_apis.rs Miscellaneous build / tidy fixes. 2021-02-26 17:53:55 +01:00
driver.rs Further changes required by Servo 2023-05-24 18:32:40 +02:00
element_state.rs style: Garbage-collect event state bits 2023-05-19 19:06:07 +02:00
encoding_support.rs style: Remove some unused extern crate declarations now that style is in rust 2018. 2020-06-18 23:51:18 +02:00
error_reporting.rs style: Add a CSS error to the console when using non-featureless :host selectors 2023-05-17 02:12:40 +02:00
font_face.rs Further changes required by Servo 2023-05-16 22:58:48 +02:00
font_metrics.rs Simplify our setup for font metric queries from style 2023-05-11 21:02:15 +02:00
global_style_data.rs Further changes required by Servo 2023-05-24 18:32:33 +02:00
hash.rs Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
lib.rs Further changes required by Servo 2023-05-24 18:32:40 +02:00
logical_geometry.rs Rustfmt recent changes. 2019-12-16 14:23:56 +01:00
macros.rs style: Remove the old profiler label frames code in the servo codebase and replace it with the new API 2023-05-24 18:32:40 +02:00
matching.rs style: Use Option::as_deref() in style code. 2021-02-26 16:44:05 +01:00
parallel.rs Further changes required by Servo 2023-05-24 18:32:40 +02:00
parser.rs Rustfmt. 2021-02-26 16:44:05 +01:00
README.md Update link 2020-04-28 09:09:54 -07:00
rule_cache.rs style: Undo minor debugging change. 2019-11-30 20:45:07 +01:00
rule_collector.rs style: Avoid some allocations in selector serialization. 2021-02-26 16:44:05 +01:00
rustfmt.toml Disable formatting for components/style/ 2023-05-15 17:45:25 +02:00
scoped_tls.rs Replace ScopedTLS::unsafe_get by ScopedTLS::into_slots 2020-04-05 01:20:39 +02:00
selector_map.rs style: Add attributes to the rule hash 2023-05-26 21:49:57 +02:00
selector_parser.rs style: Share CascadeData instances across ShadowRoots 2023-05-16 13:00:08 +02:00
shared_lock.rs style: build / rebase fixes. 2020-06-18 23:51:17 +02:00
str.rs Miscellaneous build / tidy fixes. 2021-02-26 17:53:55 +01:00
style_adjuster.rs style: Blockify outside markers at used value time rather than at computed value time 2023-05-24 18:32:38 +02:00
style_resolver.rs Simplify our setup for font metric queries from style 2023-05-11 21:02:15 +02:00
stylesheet_set.rs style: Share CascadeData instances across ShadowRoots 2023-05-16 13:00:08 +02:00
stylist.rs style: Add attributes to the rule hash 2023-05-26 21:49:57 +02:00
thread_state.rs Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
traversal.rs style: Use Option::as_deref() in style code. 2021-02-26 16:44:05 +01:00
traversal_flags.rs style: Cleanup unused style traversal flags. 2019-04-12 12:20:07 +02:00

servo-style

Style system for Servo, using rust-cssparser for parsing.