1010import { CompilerFacade , CoreEnvironment , ExportedCompilerFacade , OpaqueValue , R3ComponentMetadataFacade , R3DeclareComponentFacade , R3DeclareDependencyMetadataFacade , R3DeclareDirectiveFacade , R3DeclareFactoryFacade , R3DeclareInjectableFacade , R3DeclareInjectorFacade , R3DeclareNgModuleFacade , R3DeclarePipeFacade , R3DeclareQueryMetadataFacade , R3DeclareUsedDirectiveFacade , R3DependencyMetadataFacade , R3DirectiveMetadataFacade , R3FactoryDefMetadataFacade , R3InjectableMetadataFacade , R3InjectorMetadataFacade , R3NgModuleMetadataFacade , R3PipeMetadataFacade , R3QueryMetadataFacade , StringMap , StringMapWithRename } from './compiler_facade_interface' ;
1111import { ConstantPool } from './constant_pool' ;
1212import { ChangeDetectionStrategy , HostBinding , HostListener , Input , Output , ViewEncapsulation } from './core' ;
13- import { compileInjectable , createR3ProviderExpression , R3ProviderExpression } from './injectable_compiler_2' ;
13+ import { compileInjectable } from './injectable_compiler_2' ;
1414import { DEFAULT_INTERPOLATION_CONFIG , InterpolationConfig } from './ml_parser/interpolation_config' ;
1515import { DeclareVarStmt , Expression , literal , LiteralExpr , Statement , StmtModifier , WrappedNodeExpr } from './output/output_ast' ;
1616import { JitEvaluator } from './output/output_jit' ;
@@ -20,7 +20,7 @@ import {compileInjector, R3InjectorMetadata} from './render3/r3_injector_compile
2020import { R3JitReflector } from './render3/r3_jit' ;
2121import { compileNgModule , compileNgModuleDeclarationExpression , R3NgModuleMetadata } from './render3/r3_module_compiler' ;
2222import { compilePipeFromMetadata , R3PipeMetadata } from './render3/r3_pipe_compiler' ;
23- import { getSafePropertyAccessString , wrapReference } from './render3/util' ;
23+ import { createMayBeForwardRefExpression , getSafePropertyAccessString , MaybeForwardRefExpression , wrapReference } from './render3/util' ;
2424import { DeclarationListEmitMode , R3ComponentMetadata , R3DirectiveMetadata , R3HostMetadata , R3QueryMetadata , R3UsedDirectiveMetadata } from './render3/view/api' ;
2525import { compileComponentFromMetadata , compileDirectiveFromMetadata , ParsedHostBindings , parseHostBindings , verifyHostBindings } from './render3/view/compiler' ;
2626import { makeBindingParser , parseTemplate } from './render3/view/template' ;
@@ -478,9 +478,11 @@ type R3DirectiveMetadataFacadeNoPropAndWhitespace =
478478 * a `forwardRef()` - either by the application developer or during partial-compilation. Thus we can
479479 * set `isForwardRef` to `false`.
480480 */
481- function convertToProviderExpression ( obj : any , property : string ) : R3ProviderExpression | undefined {
481+ function convertToProviderExpression ( obj : any , property : string ) : MaybeForwardRefExpression |
482+ undefined {
482483 if ( obj . hasOwnProperty ( property ) ) {
483- return createR3ProviderExpression ( new WrappedNodeExpr ( obj [ property ] ) , /* isForwardRef */ false ) ;
484+ return createMayBeForwardRefExpression (
485+ new WrappedNodeExpr ( obj [ property ] ) , /* isForwardRef */ false ) ;
484486 } else {
485487 return undefined ;
486488 }
@@ -494,12 +496,12 @@ function wrapExpression(obj: any, property: string): WrappedNodeExpr<any>|undefi
494496 }
495497}
496498
497- function computeProvidedIn ( providedIn : Function | string | null | undefined ) : R3ProviderExpression {
499+ function computeProvidedIn ( providedIn : Function | string | null | undefined ) : MaybeForwardRefExpression {
498500 const expression = ( providedIn == null || typeof providedIn === 'string' ) ?
499501 new LiteralExpr ( providedIn ?? null ) :
500502 new WrappedNodeExpr ( providedIn ) ;
501503 // See `convertToProviderExpression()` for why `isForwardRef` is false.
502- return createR3ProviderExpression ( expression , /* isForwardRef */ false ) ;
504+ return createMayBeForwardRefExpression ( expression , /* isForwardRef */ false ) ;
503505}
504506
505507function convertR3DependencyMetadataArray ( facades : R3DependencyMetadataFacade [ ] | null |
0 commit comments