2 types derived from TagHelperCollection
Microsoft.CodeAnalysis.Razor.Compiler (2)
Language\TagHelperCollection.EmptyCollection.cs (1)
14
private sealed class EmptyCollection :
TagHelperCollection
Language\TagHelperCollection.SegmentCollectionBase.cs (1)
24
private abstract class SegmentCollectionBase :
TagHelperCollection
218 references to TagHelperCollection
Microsoft.CodeAnalysis.Razor.Compiler (212)
CSharp\CompilationTagHelperFeature.cs (1)
19
public
TagHelperCollection
GetTagHelpers(CancellationToken cancellationToken = default)
Language\DefaultRazorTagHelperContextDiscoveryPhase.cs (14)
25
if (!codeDocument.TryGetTagHelpers(out
var
tagHelpers))
84
private
TagHelperCollection
.Builder? _matches;
87
private
TagHelperCollection
.Builder Matches => _matches ??= [];
108
public
TagHelperCollection
GetResults() => _matches?.ToCollection() ?? [];
137
protected void RecordDirectiveTagHelperContribution(BaseRazorDirectiveSyntax directive,
TagHelperCollection
contributedTagHelpers)
219
private
TagHelperCollection
? _tagHelpers;
240
var
tagHelpers = _tagHelpers.AssumeNotNull();
269
TagHelperCollection
tagHelpers,
361
RecordDirectiveTagHelperContribution(node,
TagHelperCollection
.Create(contributed));
431
TagHelperCollection
tagHelpers,
563
RecordDirectiveTagHelperContribution(node,
TagHelperCollection
.Empty);
567
var
contributedTagHelpers =
TagHelperCollection
.Empty;
586
contributedTagHelpers =
TagHelperCollection
.Create(components);
Language\DefaultRazorTagHelperContextDiscoveryPhase_Pooling.cs (1)
32
TagHelperCollection
tagHelpers,
Language\DefaultRazorTagHelperRewritePhase.cs (1)
30
using var usedHelpers = new
TagHelperCollection
.Builder();
Language\DefaultTagHelperResolutionPhase.cs (6)
70
using var usedHelpers = new
TagHelperCollection
.Builder();
106
private void ResolveElements(IntermediateNode node, TagHelperBinder binder, string prefix,
TagHelperCollection
.Builder usedHelpers, in ResolutionContext context)
142
TagHelperCollection
.Builder usedHelpers,
214
TagHelperCollection
.Builder usedHelpers,
282
TagHelperCollection
.Builder usedHelpers,
383
TagHelperCollection
.Builder usedHelpers,
Language\DirectiveTagHelperContribution.cs (1)
14
TagHelperCollection
ContributedTagHelpers);
Language\Intermediate\TagHelperIntermediateNode.cs (1)
18
public
TagHelperCollection
TagHelpers { get; init => field = value ?? []; } = [];
Language\ITagHelperDiscoveryService.cs (2)
12
TagHelperCollection
GetTagHelpers(Compilation compilation, TagHelperDiscoveryOptions options, CancellationToken cancellationToken = default);
13
TagHelperCollection
GetTagHelpers(Compilation compilation, CancellationToken cancellationToken = default);
Language\ITagHelperFeature.cs (1)
10
TagHelperCollection
GetTagHelpers(CancellationToken cancellationToken = default);
Language\Legacy\TagHelperBlockRewriter.cs (4)
226
TagHelperCollection
tagHelpers,
263
TagHelperCollection
tagHelpers,
475
private static string GetPropertyType(string name,
TagHelperCollection
tagHelpers)
493
TagHelperCollection
tagHelpers,
Language\Legacy\TagHelperParseTreeRewriter.cs (3)
21
TagHelperCollection
.Builder? usedDescriptors = null,
60
TagHelperCollection
.Builder? usedDescriptors,
72
private readonly
TagHelperCollection
.Builder? _usedDescriptors = usedDescriptors;
Language\Legacy\TagHelperSpanInternal.cs (1)
8
public
TagHelperCollection
TagHelpers => Binding.TagHelpers;
Language\RazorCodeDocument.cs (12)
24
private readonly
TagHelperCollection
? _tagHelpers;
25
private readonly
TagHelperCollection
? _referencedTagHelpers;
45
TagHelperCollection
? tagHelpers,
46
TagHelperCollection
? referencedTagHelpers,
102
internal bool TryGetTagHelpers([NotNullWhen(true)] out
TagHelperCollection
? result)
108
internal
TagHelperCollection
? GetTagHelpers()
111
internal
TagHelperCollection
GetRequiredTagHelpers()
114
internal RazorCodeDocument WithTagHelpers(
TagHelperCollection
? value)
123
internal bool TryGetReferencedTagHelpers([NotNullWhen(true)] out
TagHelperCollection
? result)
129
internal
TagHelperCollection
? GetReferencedTagHelpers()
132
internal
TagHelperCollection
GetRequiredReferencedTagHelpers()
135
internal RazorCodeDocument WithReferencedTagHelpers(
TagHelperCollection
value)
Language\RazorCodeDocumentExtensions.cs (3)
179
if (!codeDocument.TryGetReferencedTagHelpers(out
var
referencedTagHelpers))
195
TagHelperCollection
contributedTagHelpers,
196
TagHelperCollection
referencedTagHelpers)
Language\RazorProjectEngine.cs (4)
73
TagHelperCollection
? tagHelpers,
99
TagHelperCollection
? tagHelpers,
124
TagHelperCollection
? tagHelpers,
148
TagHelperCollection
? tagHelpers,
Language\RazorProjectEngineExtensions.cs (5)
34
TagHelperCollection
tagHelpers)
41
TagHelperCollection
tagHelpers)
48
TagHelperCollection
tagHelpers)
56
TagHelperCollection
tagHelpers)
64
TagHelperCollection
? tagHelpers = null)
Language\SymbolCache.AssemblySymbolData.cs (4)
18
private readonly ConcurrentDictionary<int,
TagHelperCollection
> _tagHelpers = [];
20
public bool TryGetTagHelpers(int key, [NotNullWhen(true)] out
TagHelperCollection
? value)
23
public
TagHelperCollection
AddTagHelpers(int key,
TagHelperCollection
value)
Language\TagHelperBinder.cs (3)
22
public
TagHelperCollection
TagHelpers { get; }
30
public TagHelperBinder(string? tagNamePrefix,
TagHelperCollection
tagHelpers)
39
TagHelperCollection
descriptors,
Language\TagHelperBinding.cs (4)
18
private LazyValue<ImmutableArray<TagHelperBoundRulesInfo>,
TagHelperCollection
> _lazyTagHelpers = new(static allBoundRules =>
19
TagHelperCollection
.Build(allBoundRules, initialCapacity: allBoundRules.Length, static (ref builder, allBoundRules) =>
43
public
TagHelperCollection
TagHelpers => _lazyTagHelpers.GetValue(AllBoundRules);
64
static bool ComputeIsAttributeMatch(
TagHelperCollection
tagHelpers)
Language\TagHelperCollection.Builder.cs (2)
82
public void AddRange(
TagHelperCollection
items)
130
public
TagHelperCollection
ToCollection()
Language\TagHelperCollection.cs (17)
18
/// <see cref="
TagHelperCollection
"/> provides high-performance access to tag helper descriptors with
34
[CollectionBuilder(typeof(
TagHelperCollection
), methodName: "Create")]
35
public abstract partial class TagHelperCollection : IEquatable<
TagHelperCollection
>, IReadOnlyList<TagHelperDescriptor>
38
/// Gets an empty <see cref="
TagHelperCollection
"/>.
43
public static
TagHelperCollection
Empty => EmptyCollection.Instance;
101
/// Determines whether the specified object is equal to the current <see cref="
TagHelperCollection
"/>.
105
/// <see langword="true"/> if the specified object is a <see cref="
TagHelperCollection
"/> that contains
109
=> obj is
TagHelperCollection
other && Equals(other);
112
/// Determines whether the specified <see cref="
TagHelperCollection
"/> is equal to the current collection.
123
public bool Equals(
TagHelperCollection
? other)
144
/// Returns a hash code for the current <see cref="
TagHelperCollection
"/>.
227
/// Filters the collection based on a predicate and returns a new <see cref="
TagHelperCollection
"/>
234
/// A new <see cref="
TagHelperCollection
"/> that contains the tag helper descriptors from the
251
public
TagHelperCollection
Where<TState>(TState state, Func<TagHelperDescriptor, TState, bool> predicate)
308
/// Filters the collection based on a predicate and returns a new <see cref="
TagHelperCollection
"/>
313
/// A new <see cref="
TagHelperCollection
"/> that contains the tag helper descriptors from the
326
public
TagHelperCollection
Where(Predicate<TagHelperDescriptor> predicate)
Language\TagHelperCollection.Enumerator.cs (2)
12
public struct Enumerator(
TagHelperCollection
collection) : IDisposable
67
private sealed class EnumeratorImpl(
TagHelperCollection
collection) : IEnumerator<TagHelperDescriptor>
Language\TagHelperCollection.FixedSizeBuilder.cs (2)
58
public void AddRange(
TagHelperCollection
collection)
99
public readonly
TagHelperCollection
ToCollection()
Language\TagHelperCollection.RefBuilder.cs (2)
80
public void AddRange(
TagHelperCollection
collection)
116
public readonly
TagHelperCollection
ToCollection()
Language\TagHelperCollection.SegmentAccessor.cs (3)
11
/// Provides read-only access to segments within a <see cref="
TagHelperCollection
"/>,
17
private readonly ref struct SegmentAccessor(
TagHelperCollection
collection)
28
private struct SegmentEnumerator(
TagHelperCollection
collection)
Language\TagHelperCollection.SegmentBuilder.cs (1)
97
public readonly
TagHelperCollection
ToCollection()
Language\TagHelperCollection.SegmentCollectionBase.cs (2)
26
private LazyValue<
TagHelperCollection
, Dictionary<Checksum, int>> _lazyLookupTable = new(collection =>
42
private LazyValue<
TagHelperCollection
, Checksum> _lazyChecksum = new(collection =>
Language\TagHelperCollection_Factories.cs (56)
18
/// Creates a new <see cref="
TagHelperCollection
"/> from the specified span of tag helper descriptors.
22
/// A new <see cref="
TagHelperCollection
"/> containing the specified descriptors with automatic
33
public static
TagHelperCollection
Create(ReadOnlySpan<TagHelperDescriptor> span)
42
static
TagHelperCollection
BuildCollection(ReadOnlySpan<TagHelperDescriptor> span)
53
/// Creates a new <see cref="
TagHelperCollection
"/> from the specified immutable array of tag helper descriptors.
57
/// A new <see cref="
TagHelperCollection
"/> containing the specified descriptors with automatic
77
public static
TagHelperCollection
Create(params ImmutableArray<TagHelperDescriptor> array)
91
static
TagHelperCollection
BuildCollection(ReadOnlyMemory<TagHelperDescriptor> segment)
102
/// Creates a new <see cref="
TagHelperCollection
"/> from the specified enumerable of tag helper descriptors.
106
/// A new <see cref="
TagHelperCollection
"/> containing the specified descriptors with automatic
121
public static
TagHelperCollection
Create(IEnumerable<TagHelperDescriptor> source)
152
/// Merges multiple <see cref="
TagHelperCollection
"/> instances into a single collection.
156
/// A new <see cref="
TagHelperCollection
"/> containing all unique tag helper descriptors from
171
public static
TagHelperCollection
Merge(params ReadOnlySpan<
TagHelperCollection
> collections)
192
static PooledArray<
TagHelperCollection
> CollectMergeableCollections(
193
ReadOnlySpan<
TagHelperCollection
> collections, out ReadOnlySpan<
TagHelperCollection
> result)
195
var pooledArray = ArrayPool<
TagHelperCollection
>.Shared.GetPooledArraySpan(
201
foreach (
var
collection in collections)
214
static
TagHelperCollection
MergeMultipleCollections(ReadOnlySpan<
TagHelperCollection
> collections)
221
foreach (
var
collection in collections)
228
foreach (
var
collection in collections)
241
/// Merges multiple <see cref="
TagHelperCollection
"/> instances into a single collection.
245
/// A new <see cref="
TagHelperCollection
"/> containing all unique tag helper descriptors from
249
/// This method delegates to <see cref="Merge(ReadOnlySpan{
TagHelperCollection
})"/> for efficient
252
public static
TagHelperCollection
Merge(ImmutableArray<
TagHelperCollection
> collections)
256
/// Merges multiple <see cref="
TagHelperCollection
"/> instances into a single collection.
260
/// A new <see cref="
TagHelperCollection
"/> containing all unique tag helper descriptors from
274
public static
TagHelperCollection
Merge(IEnumerable<
TagHelperCollection
> source)
278
using var _ = ArrayPool<
TagHelperCollection
>.Shared.GetPooledArraySpan(
287
using var builder = new MemoryBuilder<
TagHelperCollection
>(clearArray: true);
289
foreach (
var
collection in source)
298
/// Merges two <see cref="
TagHelperCollection
"/> instances into a single collection.
303
/// A new <see cref="
TagHelperCollection
"/> containing all unique tag helper descriptors from
316
public static
TagHelperCollection
Merge(
TagHelperCollection
first,
TagHelperCollection
second)
333
using var _ = ArrayPool<
TagHelperCollection
>.Shared.GetPooledArraySpan(
346
/// Builds a new <see cref="
TagHelperCollection
"/> using a builder pattern with state.
352
/// A new <see cref="
TagHelperCollection
"/> built according to the specified action.
365
public static
TagHelperCollection
Build<TState>(TState state, BuildAction<TState> action)
373
/// Builds a new <see cref="
TagHelperCollection
"/> using a builder pattern with state and initial capacity.
380
/// A new <see cref="
TagHelperCollection
"/> built according to the specified action.
392
public static
TagHelperCollection
Build<TState>(TState state, int initialCapacity, BuildAction<TState> action)
399
private static
TagHelperCollection
BuildCore<TState>(ref RefBuilder builder, TState state, BuildAction<TState> action)
413
/// Builds a new <see cref="
TagHelperCollection
"/> using a builder pattern.
417
/// A new <see cref="
TagHelperCollection
"/> built according to the specified action.
424
public static
TagHelperCollection
Build(BuildAction action)
432
/// Builds a new <see cref="
TagHelperCollection
"/> using a builder pattern with initial capacity.
437
/// A new <see cref="
TagHelperCollection
"/> built according to the specified action.
443
public static
TagHelperCollection
Build(int initialCapacity, BuildAction action)
450
private static
TagHelperCollection
BuildCore(ref RefBuilder builder, BuildAction action)
Language\TagHelperDiscoverer.cs (5)
49
public
TagHelperCollection
GetTagHelpers(IAssemblySymbol assembly, CancellationToken cancellationToken = default)
53
return
TagHelperCollection
.Empty;
60
return
TagHelperCollection
.Empty;
68
if (assemblySymbolData.TryGetTagHelpers(_cacheKey, out
var
tagHelpers))
74
var builder = new
TagHelperCollection
.RefBuilder();
Language\TagHelperDiscoveryService.cs (8)
22
public
TagHelperCollection
GetTagHelpers(
28
public
TagHelperCollection
GetTagHelpers(
33
private
TagHelperCollection
GetTagHelpersForCompilation(
42
return
TagHelperCollection
.Empty;
45
using var collections = new MemoryBuilder<
TagHelperCollection
>(initialCapacity: 512, clearArray: true);
49
var
collection = discoverer.GetTagHelpers(compilationAssembly, cancellationToken);
62
var
collection = discoverer.GetTagHelpers(referenceAssembly, cancellationToken);
70
return
TagHelperCollection
.Merge(collections.AsMemory().Span);
Language\TagHelperDocumentContext.cs (4)
17
public
TagHelperCollection
TagHelpers { get; }
21
private TagHelperDocumentContext(string? prefix,
TagHelperCollection
tagHelpers)
27
public static TagHelperDocumentContext GetOrCreate(
TagHelperCollection
tagHelpers)
30
public static TagHelperDocumentContext GetOrCreate(string? prefix,
TagHelperCollection
tagHelpers)
Language\TagHelperMatchingConventions.cs (2)
183
public static bool HasAttributeMatches(
TagHelperCollection
tagHelpers, string name)
207
TagHelperCollection
tagHelpers,
Language\TagHelpers\Producers\BindTagHelperProducer.cs (3)
101
public override void AddStaticTagHelpers(IAssemblySymbol assembly, ref
TagHelperCollection
.RefBuilder results)
121
ref
TagHelperCollection
.RefBuilder results,
391
public void AddTagHelpersForComponent(TagHelperDescriptor tagHelper, ref
TagHelperCollection
.RefBuilder results)
Language\TagHelpers\Producers\ComponentTagHelperProducer.cs (1)
37
ref
TagHelperCollection
.RefBuilder results,
Language\TagHelpers\Producers\DefaultTagHelperProducer.cs (1)
30
ref
TagHelperCollection
.RefBuilder results,
Language\TagHelpers\Producers\EventHandlerTagHelperProducer.cs (1)
31
ref
TagHelperCollection
.RefBuilder results,
Language\TagHelpers\Producers\FormNameTagHelperProducer.cs (1)
25
public override void AddStaticTagHelpers(IAssemblySymbol assembly, ref
TagHelperCollection
.RefBuilder results)
Language\TagHelpers\Producers\KeyTagHelperProducer.cs (1)
25
public override void AddStaticTagHelpers(IAssemblySymbol assembly, ref
TagHelperCollection
.RefBuilder results)
Language\TagHelpers\Producers\RefTagHelperProducer.cs (1)
25
public override void AddStaticTagHelpers(IAssemblySymbol assembly, ref
TagHelperCollection
.RefBuilder results)
Language\TagHelpers\Producers\RenderModeTagHelperProducer.cs (1)
25
public override void AddStaticTagHelpers(IAssemblySymbol assembly, ref
TagHelperCollection
.RefBuilder results)
Language\TagHelpers\Producers\SplatTagHelperProducer.cs (1)
25
public override void AddStaticTagHelpers(IAssemblySymbol assembly, ref
TagHelperCollection
.RefBuilder results)
Language\TagHelpers\Producers\TagHelperProducer.cs (2)
28
public virtual void AddStaticTagHelpers(IAssemblySymbol assembly, ref
TagHelperCollection
.RefBuilder results)
40
ref
TagHelperCollection
.RefBuilder results,
Mvc.Version1_X\ViewComponentTagHelperProducer.cs (1)
37
ref
TagHelperCollection
.RefBuilder results,
Mvc.Version2_X\ViewComponentTagHelperProducer.cs (1)
37
ref
TagHelperCollection
.RefBuilder results,
Mvc\ViewComponentTagHelperProducer.cs (1)
37
ref
TagHelperCollection
.RefBuilder results,
SourceGenerators\RazorGeneratorResult.cs (2)
9
internal sealed class RazorGeneratorResult(
TagHelperCollection
tagHelpers, ImmutableDictionary<string, (string hintName, RazorCodeDocument document)> filePathToDocument, ImmutableDictionary<string, string> hintNameToFilePath)
11
public
TagHelperCollection
TagHelpers => tagHelpers;
SourceGenerators\RazorSourceGenerator.cs (5)
128
var
collection = tagHelperFeature.GetTagHelpers(compilation.Assembly, cancellationToken);
222
using var collections = new MemoryBuilder<
TagHelperCollection
>(initialCapacity: 512, clearArray: true);
228
var
collection = tagHelperFeature.GetTagHelpers(assembly, cancellationToken);
238
return
TagHelperCollection
.Merge(collections.AsMemory().Span);
246
return
TagHelperCollection
.Merge(pair.Left, pair.Right);
SourceGenerators\SourceGeneratorProjectEngine.cs (10)
69
TagHelperCollection
tagHelpers,
78
if (checkForIdempotency && codeDocument.TryGetTagHelpers(out
var
previousTagHelpers))
88
var
previousTagHelpersInScope = codeDocument.GetRequiredTagHelperContext().TagHelpers;
89
var
previousUsedTagHelpers = codeDocument.GetRequiredReferencedTagHelpers();
95
var
newTagHelpersInScope = codeDocument.GetRequiredTagHelperContext().TagHelpers;
120
TagHelperCollection
newTagHelpers,
121
TagHelperCollection
previousTagHelpers,
122
TagHelperCollection
previousUsedTagHelpers)
140
private static bool HasAnyNotIn(
TagHelperCollection
first,
TagHelperCollection
second)
SourceGenerators\StaticCompilationTagHelperFeature.cs (2)
18
public
TagHelperCollection
GetTagHelpers(IAssemblySymbol assembly, CancellationToken cancellationToken)
34
TagHelperCollection
ITagHelperFeature.GetTagHelpers(CancellationToken cancellationToken)
rzc (6)
DiscoverCommand.cs (1)
181
var
tagHelpers = feature.GetTagHelpers();
GenerateCommand.cs (5)
179
var
tagHelpers = GetTagHelpers(tagHelperManifest);
300
private static
TagHelperCollection
GetTagHelpers(string tagHelperManifest)
311
return
TagHelperCollection
.Create(tagHelpers);
429
private sealed class StaticTagHelperFeature(
TagHelperCollection
tagHelpers) : RazorEngineFeatureBase, ITagHelperFeature
431
public
TagHelperCollection
GetTagHelpers(CancellationToken cancellationToken) => tagHelpers;