2015-04-19 13:53:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								p.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  <span class="location-badge">exported from <a href="/angular2/di_annotations">angular2/di_annotations</a></span>
							 
						 
					
						
							
								
									
										
										
										
											2015-04-20 13:57:43 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								  defined in <a href="https://github.com/angular/angular/tree/master/modules/angular2/src/di/annotations.js#L110">angular2/src/di/annotations.js (line 110)</a>
							 
						 
					
						
							
								
									
										
										
										
											2015-04-19 13:53:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								:markdown
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  `DependencyAnnotation` is used by the framework to extend DI.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
									
										
										
										
											2015-04-20 13:57:43 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								  Only annotations implementing `DependencyAnnotation` are added to the list of dependency properties.
							 
						 
					
						
							
								
									
										
										
										
											2015-04-19 13:53:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  For example:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  ```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  class Parent extends DependencyAnnotation {}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  class NotDependencyProperty {}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  class AComponent {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    constructor(@Parent @NotDependencyProperty aService:AService) {}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  ```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  will create the following dependency:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  ```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  new Dependency(Key.get(AService), [new Parent()])
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  ```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  The framework can use `new Parent()` to handle the `aService` dependency
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  in a specific way.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								.l-main-section
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  h2 Members
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .l-sub-section
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    h3 constructor
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    pre.prettyprint
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								      code.
							 
						 
					
						
							
								
									
										
										
										
											2015-04-20 13:57:43 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        constructor()
							 
						 
					
						
							
								
									
										
										
										
											2015-04-19 13:53:18 -07:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    :markdown
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								      
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .l-sub-section
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    h3 token
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    :markdown