ladybird/Libraries/LibWeb/SVG
Ali Mohammad Pur eea81738cd AK+Everywhere: Recognise that surrogates in utf16 aren't all that common
For the slight cost of counting code points when converting between
encodings and a teeny bit of memory, this commit adds a fast path for
all-happy utf-16 substrings and code point operations.

This seems to be a significant chunk of time spent in many regex
benchmarks.
2025-04-23 07:56:02 -06:00
..
AttributeNames.cpp LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
AttributeNames.h LibWeb/SVG: Respect script element type attribute 2025-02-26 16:08:35 +01:00
AttributeParser.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
AttributeParser.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Default.css LibWeb/SVG: Rename text-space-collapse to white-space-collapse 2025-02-04 12:25:08 +01:00
SVGAElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGAElement.h LibWeb: Add more fast_is<T> helpers for DOM::Node subclasses 2025-04-18 14:45:56 +02:00
SVGAElement.idl LibWeb/SVG: Remove SVGAElement.text attribute 2025-04-02 17:28:45 +01:00
SVGAnimatedEnumeration.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGAnimatedEnumeration.h LibWeb: Add SVGAnimatedEnumeration 2025-02-22 10:14:29 +01:00
SVGAnimatedEnumeration.idl LibWeb: Add SVGAnimatedEnumeration 2025-02-22 10:14:29 +01:00
SVGAnimatedLength.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGAnimatedLength.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGAnimatedLength.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGAnimatedNumber.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGAnimatedNumber.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGAnimatedNumber.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGAnimatedRect.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGAnimatedRect.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGAnimatedRect.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGAnimatedString.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGAnimatedString.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGAnimatedString.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGAnimatedTransformList.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGAnimatedTransformList.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGAnimatedTransformList.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGCircleElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGCircleElement.h LibWeb: Avoid many style invalidations on DOM attribute mutation 2024-12-24 17:17:09 +01:00
SVGCircleElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGClipPathElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGClipPathElement.h LibWeb/SVG: Make SVGClipPathElement inherit from SVGGraphicsElement 2025-02-01 13:38:56 +01:00
SVGClipPathElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGDecodedImageData.cpp LibWeb: Save ScrollState snapshot in DisplayList to avoid race condition 2025-04-12 02:55:18 +02:00
SVGDecodedImageData.h LibWeb: Avoid dynamic_cast in DOM::Document::is_decoded_svg() 2025-04-18 14:45:56 +02:00
SVGDefsElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGDefsElement.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGDefsElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGDescElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGDescElement.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGDescElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGElement.h LibWeb: Add metadata to children update steps invocation 2025-01-30 13:55:40 -07:00
SVGElement.idl LibWeb: Add CanvasImageSource to ImageBitmapSource typedef 2024-12-06 13:10:27 +00:00
SVGEllipseElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGEllipseElement.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGEllipseElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGFilterElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGFilterElement.h LibWeb: Add SVGFilterElement 2025-02-22 10:14:29 +01:00
SVGFilterElement.idl LibWeb: Add SVGFilterElement 2025-02-22 10:14:29 +01:00
SVGFitToViewBox.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGForeignObjectElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGForeignObjectElement.h LibWeb: Add more fast_is<T> helpers for DOM::Node subclasses 2025-04-18 14:45:56 +02:00
SVGForeignObjectElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGGElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGGElement.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGGElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGGeometryElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGGeometryElement.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGGeometryElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGGradientElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGGradientElement.h LibWeb: Apply the paint transformation in SVGGradientElement 2024-11-15 23:21:13 +01:00
SVGGradientElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGGraphicsElement.cpp LibWeb: Add debug logging of reasons for layout tree update 2025-04-21 00:31:08 +02:00
SVGGraphicsElement.h LibWeb/SVG: Skip unwanted transformations on clip-path 2025-02-01 13:38:56 +01:00
SVGGraphicsElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGImageElement.cpp LibWeb: Move "needs layout update" flag from DOM to layout tree 2025-04-21 00:31:08 +02:00
SVGImageElement.h LibWeb: Port Document encoding_parse_url and parse_url to Optional<URL> 2025-01-27 00:03:07 +00:00
SVGImageElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGLength.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGLength.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGLength.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGLinearGradientElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGLinearGradientElement.h AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
SVGLinearGradientElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGLineElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGLineElement.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGLineElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGMaskElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGMaskElement.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGMaskElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGMetadataElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGMetadataElement.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGMetadataElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGPathElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGPathElement.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGPathElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGPolygonElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGPolygonElement.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGPolygonElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGPolylineElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGPolylineElement.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGPolylineElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGRadialGradientElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGRadialGradientElement.h AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
SVGRadialGradientElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGRectElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGRectElement.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGRectElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGScriptElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGScriptElement.h LibWeb/SVG: Process script element when href attribute changes 2025-02-26 16:08:35 +01:00
SVGScriptElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGStopElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGStopElement.h LibWeb: Avoid many style invalidations on DOM attribute mutation 2024-12-24 17:17:09 +01:00
SVGStopElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGStyleElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGStyleElement.h LibWeb: Add metadata to children update steps invocation 2025-01-30 13:55:40 -07:00
SVGStyleElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGSVGElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGSVGElement.h LibWeb: Make storage of CSS::StyleValues const-correct 2025-04-16 10:41:44 -06:00
SVGSVGElement.idl LibWeb/SVG: Mark SVG factory functions as [NewObject] 2025-04-02 17:28:45 +01:00
SVGSymbolElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGSymbolElement.h LibWeb: Avoid many style invalidations on DOM attribute mutation 2024-12-24 17:17:09 +01:00
SVGSymbolElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGTextContentElement.cpp AK+Everywhere: Recognise that surrogates in utf16 aren't all that common 2025-04-23 07:56:02 -06:00
SVGTextContentElement.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGTextContentElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGTextElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGTextElement.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGTextElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGTextPathElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGTextPathElement.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGTextPathElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGTextPositioningElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGTextPositioningElement.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGTextPositioningElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGTitleElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGTitleElement.h LibWeb: Add metadata to children update steps invocation 2025-01-30 13:55:40 -07:00
SVGTitleElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGTransform.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGTransform.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGTransform.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGTransformList.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGTransformList.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGTransformList.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGTSpanElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGTSpanElement.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGTSpanElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGURIReference.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
SVGURIReference.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGUseElement.cpp LibWeb: Only set prototype once for object with IDL interface 2025-04-20 18:43:11 +02:00
SVGUseElement.h LibWeb: Fix typos - act II 2025-04-09 15:05:20 +01:00
SVGUseElement.idl Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
SVGViewport.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
TagNames.cpp LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
TagNames.h LibWeb: Add SVGFilterElement 2025-02-22 10:14:29 +01:00
ViewBox.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
ViewBox.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00