From f78c52a2167a03967743bb26c1cb51516557c597 Mon Sep 17 00:00:00 2001 From: "N. Taylor Mullen" Date: Thu, 28 Jan 2016 11:18:00 -0800 Subject: [PATCH] Expose `IsTagHelper` as an extensibility point. - This is required for the Razor tooling that determines `TagHelperDescriptor`s. https://github.com/aspnet/RazorTooling/issues/43 --- .../Runtime/TagHelpers/TagHelperTypeResolver.cs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.AspNetCore.Razor.Runtime/Runtime/TagHelpers/TagHelperTypeResolver.cs b/src/Microsoft.AspNetCore.Razor.Runtime/Runtime/TagHelpers/TagHelperTypeResolver.cs index 4db643497f..b19eb3bc6b 100644 --- a/src/Microsoft.AspNetCore.Razor.Runtime/Runtime/TagHelpers/TagHelperTypeResolver.cs +++ b/src/Microsoft.AspNetCore.Razor.Runtime/Runtime/TagHelpers/TagHelperTypeResolver.cs @@ -83,9 +83,19 @@ namespace Microsoft.AspNetCore.Razor.Runtime.TagHelpers return assembly.ExportedTypes.Select(type => type.GetTypeInfo()); } - // Internal for testing. - internal virtual bool IsTagHelper(TypeInfo typeInfo) + /// + /// Indicates if a should be treated as a tag helper. + /// + /// The to inspect. + /// true if should be treated as a tag helper; + /// false otherwise + protected virtual bool IsTagHelper(TypeInfo typeInfo) { + if (typeInfo == null) + { + throw new ArgumentNullException(nameof(typeInfo)); + } + return !typeInfo.IsNested && typeInfo.IsPublic &&