Go to file
Bartosz Dziewoński a29cecdf73 ImmutableRange: Skip redundant calls to isFullyContainedNode()
It's an expensive method, and we previously called it for
every child of the common ancestor, completely unnecessarily.

These changes follow from two observations:
* If there is a $firstPartiallyContainedChild, then the
  first fully contained child must follow it; similarly,
  if there is a $lastPartiallyContainedChild, then the
  last fully contained child must precede it.
* All nodes between the first and last fully contained
  children are also fully contained.

Maybe it can be made cleverer still, but it's a lot better.

Change-Id: I4e596c62274c2c0be115f0ddec42629115b430a4
2020-10-22 23:31:21 +02:00
.phan build: Add mediawiki/mediawiki-phan-config 2020-06-10 22:21:07 +02:00
i18n Localisation updates from https://translatewiki.net. 2020-10-19 08:35:40 +02:00
images Add beta feature preference 2020-02-21 15:20:48 +00:00
includes ImmutableRange: Skip redundant calls to isFullyContainedNode() 2020-10-22 23:31:21 +02:00
maintenance Defensive use of dynamic paths in maintenance script 2020-02-20 19:51:07 +01:00
modules Enable DT server side via a cookie to preserve user enable hack 2020-10-19 21:42:58 +01:00
tests Merge "Correctly generate timezone abbreviations for parsing" 2020-10-15 15:24:14 +00:00
.eslintrc.json build: Update devDependencies 2020-06-09 19:42:05 +01:00
.gitignore Remove extra blank line from .gitignore file 2020-08-31 15:24:56 +01:00
.gitreview Add .gitreview 2019-10-09 21:18:34 +00:00
.phpcs.xml build: Updating mediawiki/mediawiki-phan-config to 0.10.3 2020-09-25 00:22:53 +00:00
.stylelintrc.json build: Updating mediawiki/mediawiki-codesniffer to 29.0.0 2020-01-14 04:55:38 +00:00
CODE_OF_CONDUCT.md build: Updating npm dependencies 2020-01-09 06:43:15 +00:00
composer.json build: Updating mediawiki/mediawiki-phan-config to 0.10.3 2020-09-25 00:22:53 +00:00
COPYING Add required files for an extension 2019-10-10 19:42:56 +01:00
extension.json Enable DT server side via a cookie to preserve user enable hack 2020-10-19 21:42:58 +01:00
Gruntfile.js build: Update devDependencies 2020-06-09 19:42:05 +01:00
package-lock.json build: Update eslint-config-wikimedia to 0.17.0 2020-08-26 23:46:34 +01:00
package.json build: Update eslint-config-wikimedia to 0.17.0 2020-08-26 23:46:34 +01:00