servo/components/style
Emilio Cobos Álvarez da81d71ffa style: Make custom-property substitution only traverse variables which could have references
If a name is not in self.seen, it means we've inherited it from our
parent. That in turn means that it can't have any variable reference
(because we inherit the computed variables) and we can skip the work of
traversing it, as we'd hit the early-return in traverse() anyways.

This doesn't fix the memory usage issue of the page on the bug, which
has a giant list of properties on the root and then a custom property
specified on all elements, but should significantly reduce the time we
spend iterating over custom properties for all those elements.

Differential Revision: https://phabricator.services.mozilla.com/D140825
2023-06-09 11:18:07 +02:00
..
counter_style style: Run rustfmt on servo/components/style and servo/ports/geckolib 2023-06-09 10:22:19 +02:00
gecko style: Generalize moz-os-version into moz-platform 2023-06-09 11:18:07 +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: Shrink maps if needed after stylist rebuilds 2023-06-09 10:22:25 +02:00
media_queries style: Run rustfmt on servo/components/style and servo/ports/geckolib 2023-06-09 10:22:19 +02:00
properties Further changes required by Servo 2023-06-09 11:18:07 +02:00
rule_tree style: Remove servo/components/{hashglobe,fallible} in favor of try_reserve 2023-06-09 10:22:24 +02:00
servo Further changes required by Servo 2023-06-09 10:22:21 +02:00
sharing style: Add attributes to the rule hash 2023-05-26 21:49:57 +02:00
stylesheets style: Add style_traits::ToCss for AtomIdent 2023-06-09 11:18:06 +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-06-09 11:18:06 +02:00
animation.rs style: Add support for the revert-layer keyword 2023-06-09 10:22:22 +02:00
applicable_declarations.rs style: Fix style attribute important and revert-layer behavior 2023-06-09 10:22:23 +02:00
attr.rs Miscellaneous build / tidy fixes. 2021-02-26 17:53:55 +01:00
author_styles.rs style: Run rustfmt on servo/components/style and servo/ports/geckolib 2023-06-09 10:22:19 +02:00
bezier.rs Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
bloom.rs Further changes required by Servo 2023-05-27 05:59:01 +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: Use the mozbuild crate in servo 2023-06-09 11:18:06 +02:00
Cargo.toml style: Use the mozbuild crate in servo 2023-06-09 11:18:06 +02:00
context.rs style: Paper over a crash in non-nightly 2023-05-16 12:55:42 +02:00
custom_properties.rs style: Make custom-property substitution only traverse variables which could have references 2023-06-09 11:18:07 +02:00
data.rs style: Run rustfmt on servo/components/style and servo/ports/geckolib 2023-06-09 10:22:19 +02:00
dom.rs Further changes required by Servo 2023-05-27 05:59:01 +02:00
dom_apis.rs Miscellaneous build / tidy fixes. 2021-02-26 17:53:55 +01:00
driver.rs style: Use ThreadPool::scope_fifo in style 2023-06-09 10:22:25 +02:00
element_state.rs style: Add a Show Password button to <input type=password> controls 2023-06-09 10:22:21 +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: Run rustfmt on servo/components/style and servo/ports/geckolib 2023-06-09 10:22:19 +02:00
font_face.rs Further changes required by Servo 2023-05-16 22:58:48 +02:00
font_metrics.rs style: Add support for the 'ic' font-relative unit 2023-06-09 10:22:22 +02:00
global_style_data.rs Layout-2020: Serialize access to stylo thread pool. 2023-05-26 20:09:50 +05:30
lib.rs style: Shrink maps if needed after stylist rebuilds 2023-06-09 10:22:25 +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 Further changes required by Servo 2023-06-09 10:22:23 +02:00
parallel.rs Layout-2020: Fix debug mode crash for servo.org 2023-05-26 20:09:50 +05:30
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: Fix style attribute important and revert-layer behavior 2023-06-09 10:22:23 +02: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: Shrink maps if needed after stylist rebuilds 2023-06-09 10:22:25 +02:00
selector_parser.rs style: Shrink maps if needed after stylist rebuilds 2023-06-09 10:22:25 +02:00
shared_lock.rs style: Run rustfmt on servo/components/style and servo/ports/geckolib 2023-06-09 10:22:19 +02:00
str.rs Miscellaneous build / tidy fixes. 2021-02-26 17:53:55 +01:00
style_adjuster.rs style: Top layer elements that are display:contents should be display: block 2023-06-09 10:22:20 +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 Further changes required by Servo 2023-06-09 11:18:06 +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.