Revision 13362972bb5dae606889c06ff7718502057b6b9c authored by JoostK on 30 November 2021, 20:00:59 UTC, committed by Andrew Kushnir on 02 December 2021, 17:25:45 UTC
This commit makes several changes to the implementation of `NgForOf` to reduce its code size in production builds: 1. The tailor-made message for an unsupported differ is fully tree-shaken in production builds, in favor of the exception from the differ factory itself. 2. The private `_perViewChange` method was changed into a free-standing function, to allow its name to be minimized. 3. The need for an intermediate `RecordViewTuple` was avoided by applying the operation in-place, instead of collecting all insertions into a buffer first. This is safe as the `_perViewChange` operation that used to be done on each `RecordViewTuple` is entirely local to the tuple itself. Hence, it is invariant to execution ordering which means that the `_perViewChange` can be executed directly during the `forEachOperation` loop. PR Close #44315
1 parent 99d85cb
File | Mode | Size |
---|---|---|
.circleci | ||
.devcontainer | ||
.github | ||
.husky | ||
.ng-dev | ||
.vscode | ||
.yarn | ||
aio | ||
docs | ||
goldens | ||
integration | ||
modules | ||
packages | ||
scripts | ||
third_party | ||
tools | ||
.bazelignore | -rw-r--r-- | 4.2 KB |
.bazelrc | -rw-r--r-- | 7.0 KB |
.bazelversion | -rw-r--r-- | 6 bytes |
.clang-format | -rw-r--r-- | 73 bytes |
.editorconfig | -rw-r--r-- | 245 bytes |
.gitattributes | -rw-r--r-- | 240 bytes |
.gitignore | -rw-r--r-- | 797 bytes |
.gitmessage | -rw-r--r-- | 7.2 KB |
.mailmap | -rw-r--r-- | 51 bytes |
.npmrc | -rw-r--r-- | 21 bytes |
.nvmrc | -rw-r--r-- | 8 bytes |
.prettierrc | -rw-r--r-- | 157 bytes |
.pullapprove.yml | -rw-r--r-- | 47.8 KB |
.yarnrc | -rw-r--r-- | 130 bytes |
BUILD.bazel | -rw-r--r-- | 2.0 KB |
CHANGELOG.md | -rw-r--r-- | 972.4 KB |
CODE_OF_CONDUCT.md | -rw-r--r-- | 1.1 KB |
CONTRIBUTING.md | -rw-r--r-- | 15.8 KB |
LICENSE | -rw-r--r-- | 1.1 KB |
README.md | -rw-r--r-- | 4.7 KB |
WORKSPACE | -rw-r--r-- | 2.6 KB |
browser-providers.conf.js | -rw-r--r-- | 1.8 KB |
gulpfile.js | -rw-r--r-- | 631 bytes |
karma-js.conf.js | -rw-r--r-- | 6.0 KB |
package.json | -rw-r--r-- | 8.4 KB |
renovate.json | -rw-r--r-- | 2.5 KB |
test-events.js | -rw-r--r-- | 259 bytes |
tsconfig-tslint.json | -rw-r--r-- | 149 bytes |
tslint.json | -rw-r--r-- | 4.9 KB |
yarn.lock | -rw-r--r-- | 645.3 KB |
yarn.lock.readme.md | -rw-r--r-- | 1.3 KB |
Computing file changes ...