angular-docs-cn/packages/core/test/render3/compiler_canonical
Misko Hevery b64a276d4b refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383)
Ivy definition looks something like this:

```
class MyService {
  static ngInjectableDef = defineInjectable({
    …
  });
}
```

Here the argument to `defineInjectable` is well known public contract which needs
to be honored in backward compatible way between versions. The type of the
return value of `defineInjectable` on the other hand is private and can change
shape drastically between versions without effecting backwards compatibility of
libraries publish to NPM. To our users it is effectively an opaque token.
For this reson why declare the return value of `defineInjectable` as `never`.

PR Close #23383
2018-04-14 20:40:14 -07:00
..
back_patch_types_specs.ts refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383) 2018-04-14 20:40:14 -07:00
component_directives_spec.ts refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383) 2018-04-14 20:40:14 -07:00
content_projection_spec.ts fix(ivy): support separate creation mode and update mode execution in runtime (#23292) 2018-04-11 15:30:39 -07:00
elements_spec.ts refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383) 2018-04-14 20:40:14 -07:00
injection_spec.ts refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383) 2018-04-14 20:40:14 -07:00
life_cycle_spec.ts refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383) 2018-04-14 20:40:14 -07:00
local_reference_spec.ts fix(ivy): support separate creation mode and update mode execution in runtime (#23292) 2018-04-11 15:30:39 -07:00
ng_module_spec.ts feat(ivy): support injection even if no injector present (#23345) 2018-04-13 14:29:52 -07:00
normative.md refactor(ivy): break compiler canonical test into smaller files (#22510) 2018-03-05 10:10:32 -08:00
patch_types_spec.ts refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383) 2018-04-14 20:40:14 -07:00
pipes_spec.ts refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383) 2018-04-14 20:40:14 -07:00
query_spec.ts refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383) 2018-04-14 20:40:14 -07:00
sanitize_spec.ts fix(ivy): support separate creation mode and update mode execution in runtime (#23292) 2018-04-11 15:30:39 -07:00
small_app_spec.ts refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383) 2018-04-14 20:40:14 -07:00
template_variables_spec.ts refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private (#23371) (#23383) 2018-04-14 20:40:14 -07:00