/** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ import {Compiler, CompilerOptions, Component, ComponentFactory, Directive, Injectable, Injector, NgModule, Pipe, Type} from '@angular/core'; import {MetadataOverride} from './metadata_override'; function unimplemented(): any { throw Error('unimplemented'); } /** * Special interface to the compiler only used by testing * * @publicApi */ @Injectable() export class TestingCompiler extends Compiler { get injector(): Injector { throw unimplemented(); } overrideModule(module: Type, overrides: MetadataOverride): void { throw unimplemented(); } overrideDirective(directive: Type, overrides: MetadataOverride): void { throw unimplemented(); } overrideComponent(component: Type, overrides: MetadataOverride): void { throw unimplemented(); } overridePipe(directive: Type, overrides: MetadataOverride): void { throw unimplemented(); } /** * Allows to pass the compile summary from AOT compilation to the JIT compiler, * so that it can use the code generated by AOT. */ loadAotSummaries(summaries: () => any[]) { throw unimplemented(); } /** * Gets the component factory for the given component. * This assumes that the component has been compiled before calling this call using * `compileModuleAndAllComponents*`. */ getComponentFactory(component: Type): ComponentFactory { throw unimplemented(); } /** * Returns the component type that is stored in the given error. * This can be used for errors created by compileModule... */ getComponentFromError(error: Error): Type|null { throw unimplemented(); } } /** * A factory for creating a Compiler * * @publicApi */ export abstract class TestingCompilerFactory { abstract createTestingCompiler(options?: CompilerOptions[]): TestingCompiler; }