chore: audit @angular/core API classification (#8808)

This commit is contained in:
Miško Hevery
2016-05-25 15:00:05 -07:00
parent 5e0f8cf3f0
commit 39ecd01b86
72 changed files with 245 additions and 561 deletions

View File

@ -5,6 +5,7 @@ export 'metadata.dart';
/**
* {@link InjectMetadata}.
* @stable
*/
class Inject extends InjectMetadata {
const Inject(dynamic token) : super(token);
@ -12,6 +13,7 @@ class Inject extends InjectMetadata {
/**
* {@link OptionalMetadata}.
* @stable
*/
class Optional extends OptionalMetadata {
const Optional() : super();
@ -19,6 +21,7 @@ class Optional extends OptionalMetadata {
/**
* {@link InjectableMetadata}.
* @stable
*/
class Injectable extends InjectableMetadata {
const Injectable() : super();
@ -26,6 +29,7 @@ class Injectable extends InjectableMetadata {
/**
* {@link SelfMetadata}.
* @stable
*/
class Self extends SelfMetadata {
const Self() : super();
@ -33,6 +37,7 @@ class Self extends SelfMetadata {
/**
* {@link HostMetadata}.
* @stable
*/
class Host extends HostMetadata {
const Host() : super();
@ -40,6 +45,7 @@ class Host extends HostMetadata {
/**
* {@link SkipSelfMetadata}.
* @stable
*/
class SkipSelf extends SkipSelfMetadata {
const SkipSelf() : super();

View File

@ -10,6 +10,7 @@ import {makeDecorator, makeParamDecorator} from '../util/decorators';
/**
* Factory for creating {@link InjectMetadata}.
* @stable
*/
export interface InjectMetadataFactory {
(token: any): any;
@ -18,6 +19,7 @@ export interface InjectMetadataFactory {
/**
* Factory for creating {@link OptionalMetadata}.
* @stable
*/
export interface OptionalMetadataFactory {
(): any;
@ -26,6 +28,7 @@ export interface OptionalMetadataFactory {
/**
* Factory for creating {@link InjectableMetadata}.
* @stable
*/
export interface InjectableMetadataFactory {
(): any;
@ -34,6 +37,7 @@ export interface InjectableMetadataFactory {
/**
* Factory for creating {@link SelfMetadata}.
* @stable
*/
export interface SelfMetadataFactory {
(): any;
@ -42,6 +46,7 @@ export interface SelfMetadataFactory {
/**
* Factory for creating {@link HostMetadata}.
* @stable
*/
export interface HostMetadataFactory {
(): any;
@ -50,6 +55,7 @@ export interface HostMetadataFactory {
/**
* Factory for creating {@link SkipSelfMetadata}.
* @stable
*/
export interface SkipSelfMetadataFactory {
(): any;
@ -58,31 +64,37 @@ export interface SkipSelfMetadataFactory {
/**
* Factory for creating {@link InjectMetadata}.
* @stable
*/
export var Inject: InjectMetadataFactory = makeParamDecorator(InjectMetadata);
/**
* Factory for creating {@link OptionalMetadata}.
* @stable
*/
export var Optional: OptionalMetadataFactory = makeParamDecorator(OptionalMetadata);
/**
* Factory for creating {@link InjectableMetadata}.
* @stable
*/
export var Injectable: InjectableMetadataFactory =
<InjectableMetadataFactory>makeDecorator(InjectableMetadata);
/**
* Factory for creating {@link SelfMetadata}.
* @stable
*/
export var Self: SelfMetadataFactory = makeParamDecorator(SelfMetadata);
/**
* Factory for creating {@link HostMetadata}.
* @stable
*/
export var Host: HostMetadataFactory = makeParamDecorator(HostMetadata);
/**
* Factory for creating {@link SkipSelfMetadata}.
* @stable
*/
export var SkipSelf: SkipSelfMetadataFactory = makeParamDecorator(SkipSelfMetadata);

View File

@ -19,6 +19,7 @@ export interface ForwardRefFn { (): any; }
*
* ### Example
* {@example core/di/ts/forward_ref/forward_ref.ts region='forward_ref'}
* @experimental
*/
export function forwardRef(forwardRefFn: ForwardRefFn): Type {
(<any>forwardRefFn).__forward_ref__ = forwardRef;
@ -40,6 +41,7 @@ export function forwardRef(forwardRefFn: ForwardRefFn): Type {
* ```
*
* See: {@link forwardRef}
* @experimental
*/
export function resolveForwardRef(type: any): any {
if (isFunction(type) && type.hasOwnProperty('__forward_ref__') &&

View File

@ -3,6 +3,9 @@ import {unimplemented} from '../../src/facade/exceptions';
const _THROW_IF_NOT_FOUND = /*@ts2dart_const*/ new Object();
export const THROW_IF_NOT_FOUND = /*@ts2dart_const*/ _THROW_IF_NOT_FOUND;
/**
* @stable
*/
export abstract class Injector {
static THROW_IF_NOT_FOUND = _THROW_IF_NOT_FOUND;

View File

@ -40,6 +40,7 @@ import {stringify} from '../../src/facade/lang';
* expect(injector.get(Car).engine instanceof Engine).toBe(true);
* ```
* @ts2dart_const
* @stable
*/
export class InjectMetadata {
constructor(public token) {}
@ -67,6 +68,7 @@ export class InjectMetadata {
* expect(injector.get(Car).engine).toBeNull();
* ```
* @ts2dart_const
* @stable
*/
export class OptionalMetadata {
toString(): string { return `@Optional()`; }
@ -76,6 +78,7 @@ export class OptionalMetadata {
* `DependencyMetadata` is used by the framework to extend DI.
* This is internal to Angular and should not be used directly.
* @ts2dart_const
* @stable
*/
export class DependencyMetadata {
get token() { return null; }
@ -112,6 +115,7 @@ export class DependencyMetadata {
* expect(() => injector.get(NeedsService)).toThrowError();
* ```
* @ts2dart_const
* @stable
*/
export class InjectableMetadata {
constructor() {}
@ -144,6 +148,7 @@ export class InjectableMetadata {
* expect(() => child.get(NeedsDependency)).toThrowError();
* ```
* @ts2dart_const
* @stable
*/
export class SelfMetadata {
toString(): string { return `@Self()`; }
@ -174,6 +179,7 @@ export class SelfMetadata {
* expect(() => inj.get(NeedsDependency)).toThrowError();
* ```
* @ts2dart_const
* @stable
*/
export class SkipSelfMetadata {
toString(): string { return `@SkipSelf()`; }
@ -233,6 +239,7 @@ export class SkipSelfMetadata {
* bootstrap(App);
*```
* @ts2dart_const
* @stable
*/
export class HostMetadata {
toString(): string { return `@Host()`; }

View File

@ -19,6 +19,7 @@
* Using an `OpaqueToken` is preferable to using an `Object` as tokens because it provides better
* error messages.
* @ts2dart_const
* @stable
*/
export class OpaqueToken {
constructor(private _desc: string) {}

View File

@ -16,6 +16,7 @@ import {BaseException} from '../../src/facade/exceptions';
* expect(injector.get("message")).toEqual('Hello');
* ```
* @ts2dart_const
* @deprecated
*/
export class Provider {
/**
@ -259,6 +260,7 @@ export function bind(token): ProviderBuilder {
/**
* Helper class for the {@link bind} function.
* @deprecated
*/
export class ProviderBuilder {
constructor(public token) {}
@ -384,6 +386,7 @@ export class ProviderBuilder {
* See {@link Provider} for more details.
*
* <!-- TODO: improve the docs -->
* @deprecated
*/
export function provide(token, {useClass, useValue, useExisting, useFactory, deps, multi}: {
useClass?: Type,

View File

@ -30,6 +30,7 @@ function constructResolvingPath(keys: any[]): string {
/**
* Base class for all errors arising from misconfigured providers.
* @stable
*/
export class AbstractProviderError extends BaseException {
/** @internal */
@ -75,6 +76,7 @@ export class AbstractProviderError extends BaseException {
*
* expect(() => Injector.resolveAndCreate([A])).toThrowError();
* ```
* @stable
*/
export class NoProviderError extends AbstractProviderError {
constructor(injector: ReflectiveInjector, key: ReflectiveKey) {
@ -100,6 +102,7 @@ export class NoProviderError extends AbstractProviderError {
* ```
*
* Retrieving `A` or `B` throws a `CyclicDependencyError` as the graph above cannot be constructed.
* @stable
*/
export class CyclicDependencyError extends AbstractProviderError {
constructor(injector: ReflectiveInjector, key: ReflectiveKey) {
@ -134,6 +137,7 @@ export class CyclicDependencyError extends AbstractProviderError {
* expect(e.originalStack).toBeDefined();
* }
* ```
* @stable
*/
export class InstantiationError extends WrappedException {
/** @internal */
@ -172,6 +176,7 @@ export class InstantiationError extends WrappedException {
* ```typescript
* expect(() => Injector.resolveAndCreate(["not a type"])).toThrowError();
* ```
* @stable
*/
export class InvalidProviderError extends BaseException {
constructor(provider) {
@ -206,6 +211,7 @@ export class InvalidProviderError extends BaseException {
*
* expect(() => Injector.resolveAndCreate([A,B])).toThrowError();
* ```
* @stable
*/
export class NoAnnotationError extends BaseException {
constructor(typeOrFunc, params: any[][]) {
@ -241,6 +247,7 @@ export class NoAnnotationError extends BaseException {
*
* expect(() => injector.getAt(100)).toThrowError();
* ```
* @stable
*/
export class OutOfBoundsError extends BaseException {
constructor(index) { super(`Index ${index} is out-of-bounds.`); }

View File

@ -448,6 +448,7 @@ export abstract class ReflectiveInjector implements Injector {
* var injector = ReflectiveInjector.fromResolvedProviders(providers);
* expect(injector.get(Car) instanceof Car).toBe(true);
* ```
* @experimental
*/
static fromResolvedProviders(providers: ResolvedReflectiveProvider[],
parent: Injector = null): ReflectiveInjector {

View File

@ -16,6 +16,7 @@ import {resolveForwardRef} from './forward_ref';
* `Key` should not be created directly. {@link ReflectiveInjector} creates keys automatically when
* resolving
* providers.
* @experimental
*/
export class ReflectiveKey {
/**

View File

@ -88,6 +88,7 @@ export class ResolvedReflectiveProvider_ implements ResolvedReflectiveBinding {
/**
* An internal resolved representation of a factory function created by resolving {@link Provider}.
* @experimental
*/
export class ResolvedReflectiveFactory {
constructor(