예제 #1
0
 internal static bool InheritFromCompositeExtensionBuilderInterface(
     this TypeConstrainedResolvable eb, ResolutionResult resolutionResult, ResolutionContext ctx, out TypeResolution extensionType)
 {
     return(eb.Type.ImplementsCompositeExtensionBuilderInterface(resolutionResult, ctx, out extensionType));
 }
예제 #2
0
 /// <summary>
 /// The addin activator type must implement the IAddinActivator interface.
 /// </summary>
 internal static bool InheritFromAddinActivatorInterface(
     this TypeConstrainedResolvable resolvable, ResolutionResult resolutionResult, ResolutionContext ctx)
 {
     return(resolvable.Type.ImplementsAddinActivatorInterface(resolutionResult, ctx));
 }
예제 #3
0
 /// <summary>
 /// The extension point type must implement the IExtensionPoint{TExtension, TRoot} interface (with 2 generic parameters).
 /// </summary>
 internal static bool InheritFromExtensionPointInterface(
     this TypeConstrainedResolvable resolvable, ResolutionResult resolutionResult, ResolutionContext ctx, out TypeResolution extensionType)
 {
     return(resolvable.Type.ImplementsExtensionPointInterface(resolutionResult, ctx, out extensionType));
 }
예제 #4
0
 /// <summary>
 /// The extension builder or extension point must be declared in the addin that defined its type.
 /// </summary>
 internal static bool DeclaresInSameAddin(this TypeConstrainedResolvable resolvable)
 {
     return(ReferenceEquals(resolvable.DeclaringAddin, resolvable.Type.Assembly.DeclaringAddin));
 }