docs/vendor.js
function defineInjector(options) {
    return {
        factory: options.factory, providers: options.providers || [], imports: options.imports || [],
    };
}
function defineInjector(options) {
    return {
        factory: options.factory, providers: options.providers || [], imports: options.imports || [],
    };
}
function defineInjector ( options ) { return { factory : options . factory , providers : options . providers || [ ] , imports : options . imports || [ ] , } ; }
Construct an `InjectorDef` which configures an injector.

This should be assigned to a static `ngInjectorDef` field on a type, which will then be an
`InjectorType`.

Options:

* `factory`: an `InjectorType` is an instantiable type, so a zero argument `factory` function to
create the type must be provided. If that factory function needs to inject arguments, it can
use the `inject` function.
* `providers`: an optional array of providers to add to the injector. Each provider must
either have a factory or point to a type which has an `ngInjectableDef` static property (the
type must be an `InjectableType`).
* `imports`: an optional array of imports of other `InjectorType`s or `InjectorTypeWithModule`s
whose providers will also be added to the injector. Locally provided types will override
providers from imports.

@experimental
Construct an InjectorDef which configures an injector .