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
238 references to TagHelperCollection
Microsoft.CodeAnalysis.Razor.Compiler (232)
CSharp\CompilationTagHelperFeature.cs (1)
19
public
TagHelperCollection
GetTagHelpers(CancellationToken cancellationToken = default)
Language\DefaultRazorTagHelperContextDiscoveryPhase_Pooling.cs (1)
32
TagHelperCollection
tagHelpers,
Language\DefaultRazorTagHelperContextDiscoveryPhase.cs (23)
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)
209
/// <see cref="
TagHelperCollection
.TagHelperDescriptorListPool.Default"/>.
213
private
TagHelperCollection
? _tagHelpers;
234
var
tagHelpers = _tagHelpers.AssumeNotNull();
250
currentTagHelpers =
TagHelperCollection
.TagHelperDescriptorListPool.Default.Get();
263
TagHelperCollection
tagHelpers,
278
TagHelperCollection
.TagHelperDescriptorListPool.Default.Return(tagHelpers);
320
var contributed = IsSourceDocument ?
TagHelperCollection
.TagHelperDescriptorListPool.Default.Get() : null;
355
RecordDirectiveTagHelperContribution(node,
TagHelperCollection
.Create(contributed));
356
TagHelperCollection
.TagHelperDescriptorListPool.Default.Return(contributed);
425
TagHelperCollection
tagHelpers,
453
_componentsWithoutNamespace ??=
TagHelperCollection
.TagHelperDescriptorListPool.Default.Get();
460
components =
TagHelperCollection
.TagHelperDescriptorListPool.Default.Get();
481
TagHelperCollection
.TagHelperDescriptorListPool.Default.Return(_componentsWithoutNamespace);
487
TagHelperCollection
.TagHelperDescriptorListPool.Default.Return(components);
518
RecordDirectiveTagHelperContribution(node,
TagHelperCollection
.Empty);
522
var
contributedTagHelpers =
TagHelperCollection
.Empty;
541
contributedTagHelpers =
TagHelperCollection
.Create(components);
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)
143
TagHelperCollection
.Builder usedHelpers,
239
TagHelperCollection
.Builder usedHelpers,
307
TagHelperCollection
.Builder usedHelpers,
443
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;
47
TagHelperCollection
? tagHelpers,
48
TagHelperCollection
? referencedTagHelpers,
110
internal bool TryGetTagHelpers([NotNullWhen(true)] out
TagHelperCollection
? result)
116
internal
TagHelperCollection
? GetTagHelpers()
119
internal
TagHelperCollection
GetRequiredTagHelpers()
122
internal RazorCodeDocument WithTagHelpers(
TagHelperCollection
? value)
131
internal bool TryGetReferencedTagHelpers([NotNullWhen(true)] out
TagHelperCollection
? result)
137
internal
TagHelperCollection
? GetReferencedTagHelpers()
140
internal
TagHelperCollection
GetRequiredReferencedTagHelpers()
143
internal RazorCodeDocument WithReferencedTagHelpers(
TagHelperCollection
value)
Language\RazorCodeDocumentExtensions.cs (3)
188
if (!codeDocument.TryGetReferencedTagHelpers(out
var
referencedTagHelpers))
204
TagHelperCollection
contributedTagHelpers,
205
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_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\TagHelperCollection.Builder.cs (2)
71
public void AddRange(
TagHelperCollection
items)
119
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\TagHelperDiscoverer.cs (8)
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();
182
public
TagHelperCollection
GetTagHelpers(ImmutableArray<INamedTypeSymbol> types, CancellationToken cancellationToken = default)
186
return
TagHelperCollection
.Empty;
189
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\AcceptsAssetPathTagHelperProducer.cs (1)
36
ref
TagHelperCollection
.RefBuilder results,
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)
48
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 (11)
174
var
collection = tagHelperFeature.GetTagHelpers(compilation.Assembly, cancellationToken);
218
return
TagHelperCollection
.Empty;
232
return
TagHelperCollection
.Empty;
236
var
discovered = tagHelperFeature.GetTagHelpers(fallbackTypes, cancellationToken);
239
return
TagHelperCollection
.Empty;
259
var
fastOwned = fallbackTypeNames.IsEmpty
262
return
TagHelperCollection
.Merge(fastOwned, slow);
351
using var collections = new MemoryBuilder<
TagHelperCollection
>(initialCapacity: 512, clearArray: true);
357
var
collection = tagHelperFeature.GetTagHelpers(assembly, cancellationToken);
367
return
TagHelperCollection
.Merge(collections.AsMemory().Span);
375
return
TagHelperCollection
.Merge(pair.Left, pair.Right);
SourceGenerators\SourceGeneratorProjectEngine.cs (10)
77
TagHelperCollection
tagHelpers,
85
if (checkForIdempotency && codeDocument.TryGetTagHelpers(out
var
previousTagHelpers))
95
var
previousTagHelpersInScope = codeDocument.GetRequiredTagHelperContext().TagHelpers;
96
var
previousUsedTagHelpers = codeDocument.GetRequiredReferencedTagHelpers();
102
var
newTagHelpersInScope = codeDocument.GetRequiredTagHelperContext().TagHelpers;
140
TagHelperCollection
newTagHelpers,
141
TagHelperCollection
previousTagHelpers,
142
TagHelperCollection
previousUsedTagHelpers)
160
private static bool HasAnyNotIn(
TagHelperCollection
first,
TagHelperCollection
second)
SourceGenerators\StaticCompilationTagHelperFeature.cs (3)
18
public
TagHelperCollection
GetTagHelpers(IAssemblySymbol assembly, CancellationToken cancellationToken)
34
public
TagHelperCollection
GetTagHelpers(ImmutableArray<INamedTypeSymbol> types, CancellationToken cancellationToken)
50
TagHelperCollection
ITagHelperFeature.GetTagHelpers(CancellationToken cancellationToken)
rzc (6)
DiscoverCommand.cs (1)
195
var
tagHelpers = feature.GetTagHelpers();
GenerateCommand.cs (5)
193
var
tagHelpers = GetTagHelpers(tagHelperManifest);
393
private static
TagHelperCollection
GetTagHelpers(string tagHelperManifest)
404
return
TagHelperCollection
.Create(tagHelpers);
522
private sealed class StaticTagHelperFeature(
TagHelperCollection
tagHelpers) : RazorEngineFeatureBase, ITagHelperFeature
524
public
TagHelperCollection
GetTagHelpers(CancellationToken cancellationToken) => tagHelpers;