40 lines
		
	
	
		
			1005 B
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			40 lines
		
	
	
		
			1005 B
		
	
	
	
		
			C#
		
	
	
	
|  | using UnityEngine.Scripting; | |||
|  | 
 | |||
|  | namespace SRF.Service | |||
|  | { | |||
|  |     using System; | |||
|  | 
 | |||
|  |     [AttributeUsage(AttributeTargets.Class)] | |||
|  |     public sealed class ServiceAttribute : PreserveAttribute | |||
|  |     { | |||
|  |         public ServiceAttribute(Type serviceType) | |||
|  |         { | |||
|  |             ServiceType = serviceType; | |||
|  |         } | |||
|  | 
 | |||
|  |         public Type ServiceType { get; private set; } | |||
|  |     } | |||
|  | 
 | |||
|  |     [AttributeUsage(AttributeTargets.Method)] | |||
|  |     public sealed class ServiceSelectorAttribute : PreserveAttribute | |||
|  |     { | |||
|  |         public ServiceSelectorAttribute(Type serviceType) | |||
|  |         { | |||
|  |             ServiceType = serviceType; | |||
|  |         } | |||
|  | 
 | |||
|  |         public Type ServiceType { get; private set; } | |||
|  |     } | |||
|  | 
 | |||
|  |     [AttributeUsage(AttributeTargets.Method)] | |||
|  |     public sealed class ServiceConstructorAttribute : PreserveAttribute | |||
|  |     { | |||
|  |         public ServiceConstructorAttribute(Type serviceType) | |||
|  |         { | |||
|  |             ServiceType = serviceType; | |||
|  |         } | |||
|  | 
 | |||
|  |         public Type ServiceType { get; private set; } | |||
|  |     } | |||
|  | } |