servo/components/style
Emilio Cobos Álvarez 490db1e2bd style: Reduce the amount of code generated by UnparsedValues::substitute_variables.
This reduces the amount of assembly instructions generated by this
function from 18k+ to ~800.

This should make reasoning about its stack space usage sane, and should
fix the ASAN stack overflows, but also we should take this regardless,
because it's saner and makes reading it simpler.

I also think that the writing_mode shenanigans is fixing a bug (I think
before this, we'd pick the first physical value which mapped to any of
the properties, which is wrong), but I haven't bothered looking for a
test-case that fails before my patch. The relevant WPTs
(css/css-logical/animation*) still pass.

Differential Revision: https://phabricator.services.mozilla.com/D105342
2021-02-26 16:44:05 +01:00
..
counter_style Standardize on Black for Python code in mozilla-central. 2021-02-26 16:44:05 +01:00
gecko style: Remove focus-visible feature flag. 2021-02-26 16:44:05 +01:00
gecko_bindings style: Inline nsTArray::deref. 2021-02-26 16:44:05 +01:00
gecko_string_cache style: Avoid some allocations in selector serialization. 2021-02-26 16:44:05 +01:00
invalidation style: Remove layout.css.moz-any-is-is.enabled. 2021-02-26 16:44:05 +01:00
media_queries style: Remove all references to the preference 'layout.css.moz-touch-enabled.enabled'. 2021-02-26 16:44:05 +01:00
properties style: Reduce the amount of code generated by UnparsedValues::substitute_variables. 2021-02-26 16:44:05 +01: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: Speed up custom property diffing. 2021-02-26 16:44:05 +01:00
sharing style: Avoid some allocations in selector serialization. 2021-02-26 16:44:05 +01:00
stylesheets style: Add dark mode to plaintext.css, and a document rule to target plaintext documents. 2021-02-26 16:44:05 +01:00
use_counters style: Support css use counters for unimplemented properties. 2019-09-12 22:34:16 +02:00
values style: Hide non-standard values of caption-side. 2021-02-26 16:44:05 +01: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 Update parse_length to match spec 2020-04-03 21:32:02 +02:00
author_styles.rs
bezier.rs
bloom.rs style: Update smallvec to 1.0. 2019-12-16 14:23:56 +01:00
build.rs style: Remove some unused extern crate declarations now that style is in rust 2018. 2020-06-18 23:51:18 +02:00
build_gecko.rs style: Port the style crate to rust 2018. 2020-06-18 23:51:15 +02:00
Cargo.toml style: Update cssparser to get ParserState in rule parser. 2021-02-26 16:44:05 +01:00
context.rs Add DocumentAnimationSet and AnimationSetKey 2020-06-15 10:28:30 +02:00
custom_properties.rs style: Shrink custom property maps before making them immutable. 2021-02-26 16:44:05 +01:00
data.rs
dom.rs style: Make next_in_preorder generate slightly better code. 2021-02-26 16:44:05 +01:00
dom_apis.rs style: Avoid some allocations in selector serialization. 2021-02-26 16:44:05 +01:00
driver.rs Implement concept of dirty root 2020-05-19 16:26:36 +02:00
element_state.rs style: Remove some dead plugins code. 2021-02-26 16:44:05 +01: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
font_face.rs style: Make @font-face and @counter-style serialization closer other browsers and style rules. 2021-02-26 16:44:05 +01:00
font_metrics.rs Rustfmt recent changes. 2019-12-16 14:23:56 +01:00
global_style_data.rs Fix num_threads to avoid divide by zero error when running without a thread pool 2020-12-28 11:01:38 +00:00
hash.rs
lib.rs style: Avoid some allocations in selector serialization. 2021-02-26 16:44:05 +01:00
logical_geometry.rs Rustfmt recent changes. 2019-12-16 14:23:56 +01:00
macros.rs style: Avoid some allocations in selector serialization. 2021-02-26 16:44:05 +01:00
matching.rs style: Use Option::as_deref() in style code. 2021-02-26 16:44:05 +01:00
parallel.rs style: Update smallvec to 1.0. 2019-12-16 14:23:56 +01:00
parser.rs style: Allow resource:// stylesheets to use chrome-only rules. 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
scoped_tls.rs Replace ScopedTLS::unsafe_get by ScopedTLS::into_slots 2020-04-05 01:20:39 +02:00
selector_map.rs style: Make stylesheet invalidation faster. 2021-02-26 16:44:05 +01:00
selector_parser.rs style: Allow resource:// stylesheets to use chrome-only rules. 2021-02-26 16:44:05 +01:00
shared_lock.rs style: build / rebase fixes. 2020-06-18 23:51:17 +02:00
str.rs style: Avoid UTF-8 -> UTF-16 conversion during CSSOM serialization. 2021-02-26 16:44:05 +01:00
style_adjuster.rs style: Avoid some allocations in selector serialization. 2021-02-26 16:44:05 +01:00
style_resolver.rs style: Don't optimize ::before/::after away if content/display have been specified via custom properties. 2021-02-26 16:44:05 +01:00
stylesheet_set.rs style: Use document quirks mode rather than sheet quirks mode for stylesheet invalidation. 2021-02-26 16:44:05 +01:00
stylist.rs style: Minor cleanup of our @page rule setup. 2021-02-26 16:44:05 +01:00
thread_state.rs
traversal.rs style: Use Option::as_deref() in style code. 2021-02-26 16:44:05 +01:00
traversal_flags.rs

servo-style

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