MCPcopy Index your code
hub / github.com/angular/angular / compilePipe

Function compilePipe

packages/core/src/render3/jit/pipe.ts:21–68  ·  view source on GitHub ↗
(type: Type<any>, meta: Pipe)

Source from the content-addressed store, hash-verified

19import {angularCoreEnv} from './environment';
20
21export function compilePipe(type: Type<any>, meta: Pipe): void {
22 let ngPipeDef: any = null;
23 let ngFactoryDef: any = null;
24
25 Object.defineProperty(type, NG_FACTORY_DEF, {
26 get: () => {
27 if (ngFactoryDef === null) {
28 const metadata = getPipeMetadata(type, meta);
29 const compiler = getCompilerFacade({
30 usage: JitCompilerUsage.Decorator,
31 kind: 'pipe',
32 type: metadata.type,
33 });
34 ngFactoryDef = compiler.compileFactory(angularCoreEnv, `ng:///${metadata.name}/ɵfac.js`, {
35 name: metadata.name,
36 type: metadata.type,
37 typeArgumentCount: 0,
38 deps: reflectDependencies(type),
39 target: compiler.FactoryTarget.Pipe,
40 });
41 }
42 return ngFactoryDef;
43 },
44 // Make the property configurable in dev mode to allow overriding in tests
45 configurable: !!ngDevMode,
46 });
47
48 Object.defineProperty(type, NG_PIPE_DEF, {
49 get: () => {
50 if (ngPipeDef === null) {
51 const metadata = getPipeMetadata(type, meta);
52 const compiler = getCompilerFacade({
53 usage: JitCompilerUsage.Decorator,
54 kind: 'pipe',
55 type: metadata.type,
56 });
57 ngPipeDef = compiler.compilePipe(
58 angularCoreEnv,
59 `ng:///${metadata.name}/ɵpipe.js`,
60 metadata,
61 );
62 }
63 return ngPipeDef;
64 },
65 // Make the property configurable in dev mode to allow overriding in tests
66 configurable: !!ngDevMode,
67 });
68}
69
70function getPipeMetadata(type: Type<any>, meta: Pipe): R3PipeMetadataFacade {
71 return {

Callers 2

directives.tsFile · 0.90
compileTypesSyncMethod · 0.85

Calls 5

getCompilerFacadeFunction · 0.90
reflectDependenciesFunction · 0.90
getPipeMetadataFunction · 0.85
compileFactoryMethod · 0.65
compilePipeMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…