mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
For injectables, we currently generate a factory function in the
injectable def (prov) that delegates to the factory function in
the factory def (fac). It looks something like this:
```
factory: function(t) { return Svc.fac(t); }
```
The extra wrapper function is unnecessary since the args for
the factory functions are the same. This commit changes the
compiler to generate this instead:
```
factory: Svc.fac
```
Because we are generating less code for each injectable, we
should see some modest code size savings. AIO's main bundle
is about 1 KB smaller.
PR Close #34076
|
||
|---|---|---|
| .. | ||
| BUILD.bazel | ||
| mock_compile.ts | ||
| mock_compiler_spec.ts | ||
| r3_compiler_compliance_spec.ts | ||
| r3_view_compiler_binding_spec.ts | ||
| r3_view_compiler_di_spec.ts | ||
| r3_view_compiler_directives_spec.ts | ||
| r3_view_compiler_i18n_spec.ts | ||
| r3_view_compiler_input_outputs_spec.ts | ||
| r3_view_compiler_listener_spec.ts | ||
| r3_view_compiler_providers_spec.ts | ||
| r3_view_compiler_spec.ts | ||
| r3_view_compiler_styling_spec.ts | ||
| r3_view_compiler_template_spec.ts | ||
| README.md | ||
Tests in this directory should be run with:
yarn bazel test --config=ivy packages/compiler-cli/test/compliance:compliance