5 types derived from RazorProjectItem
Microsoft.AspNetCore.Razor.Test.Common (1)
Language\TestRazorProjectItem.cs (1)
17
Func<Stream>? onRead = null) :
RazorProjectItem
Microsoft.CodeAnalysis.Razor.Compiler (4)
Language\DefaultImportProjectItem.cs (1)
9
internal sealed class DefaultImportProjectItem(string name, string content) :
RazorProjectItem
Language\DefaultRazorProjectItem.cs (1)
10
internal class DefaultRazorProjectItem :
RazorProjectItem
Language\NotFoundProjectItem.cs (1)
15
internal class NotFoundProjectItem(string path, RazorFileKind? fileKind) :
RazorProjectItem
SourceGenerators\SourceGeneratorProjectItem.cs (1)
12
internal class SourceGeneratorProjectItem :
RazorProjectItem
, IEquatable<SourceGeneratorProjectItem>
222 references to RazorProjectItem
Microsoft.AspNetCore.Mvc.Razor.Extensions.UnitTests (52)
IntegrationTests\CodeGenerationIntegrationTest.cs (48)
39
var
projectItem = CreateProjectItemFromFile();
57
var
projectItem = CreateProjectItemFromFile();
83
var
projectItem = CreateProjectItemFromFile();
120
var
projectItem = CreateProjectItemFromFile();
155
var
projectItem = CreateProjectItemFromFile();
170
var
projectItem = CreateProjectItemFromFile();
193
var
projectItem = CreateProjectItemFromFile();
211
var
projectItem = CreateProjectItemFromFile();
226
var
projectItem = CreateProjectItemFromFile(fileKind: RazorFileKind.Component);
251
var
projectItem = CreateProjectItemFromFile();
266
var
projectItem = CreateProjectItemFromFile();
290
var
projectItem = CreateProjectItemFromFile();
324
var
projectItem = CreateProjectItemFromFile();
359
var
projectItem = CreateProjectItemFromFile();
375
var
projectItem = CreateProjectItemFromFile();
400
var
projectItem = CreateProjectItemFromFile();
422
var
projectItem = CreateProjectItemFromFile();
437
var
projectItem = CreateProjectItemFromFile();
460
var
projectItem = CreateProjectItemFromFile();
475
var
projectItem = CreateProjectItemFromFile();
490
var
projectItem = CreateProjectItemFromFile();
521
var
projectItem = CreateProjectItemFromFile();
569
var
projectItem = CreateProjectItemFromFile();
584
var
projectItem = CreateProjectItemFromFile();
937
var
projectItem = CreateProjectItemFromFile();
957
var
projectItem = CreateProjectItemFromFile();
985
var
projectItem = CreateProjectItemFromFile();
1024
var
projectItem = CreateProjectItemFromFile();
1062
var
projectItem = CreateProjectItemFromFile();
1079
var
projectItem = CreateProjectItemFromFile();
1104
var
projectItem = CreateProjectItemFromFile();
1124
var
projectItem = CreateProjectItemFromFile();
1141
var
projectItem = CreateProjectItemFromFile(fileKind: RazorFileKind.Component);
1167
var
projectItem = CreateProjectItemFromFile();
1184
var
projectItem = CreateProjectItemFromFile();
1210
var
projectItem = CreateProjectItemFromFile();
1245
var
projectItem = CreateProjectItemFromFile();
1281
var
projectItem = CreateProjectItemFromFile();
1298
var
projectItem = CreateProjectItemFromFile();
1323
var
projectItem = CreateProjectItemFromFile();
1352
var
projectItem = CreateProjectItemFromFile();
1376
var
projectItem = CreateProjectItemFromFile();
1393
var
projectItem = CreateProjectItemFromFile();
1417
var
projectItem = CreateProjectItemFromFile();
1434
var
projectItem = CreateProjectItemFromFile();
1451
var
projectItem = CreateProjectItemFromFile();
1484
var
projectItem = CreateProjectItemFromFile();
1501
var
projectItem = CreateProjectItemFromFile();
MvcImportProjectFeatureTest.cs (4)
16
using var imports = new PooledArrayBuilder<
RazorProjectItem
>();
22
var
import = Assert.Single(imports.ToImmutable());
30
using var imports = new PooledArrayBuilder<
RazorProjectItem
>();
57
using var imports = new PooledArrayBuilder<
RazorProjectItem
>();
Microsoft.AspNetCore.Razor.Language.UnitTests (48)
DefaultRazorProjectFileSystemTest.cs (3)
260
var
item = fileSystem.GetItem(filePath, fileKind: null);
280
var
item = fileSystem.GetItem(filePath, fileKind: null);
298
var
item = fileSystem.GetItem(path, fileKind: null);
IntegrationTests\BasicIntegrationTest.cs (3)
15
var
projectItem = CreateProjectItemFromFile();
29
var
projectItem = CreateProjectItemFromFile();
47
var
projectItem = CreateProjectItemFromFile();
IntegrationTests\CodeGenerationIntegrationTest.cs (6)
342
var
projectItem = CreateProjectItemFromFile(testName: testName);
361
var
projectItem = CreateProjectItemFromFile(testName: testName);
390
var
projectItem = CreateProjectItemFromFile(testName: testName);
409
var
projectItem = CreateProjectItemFromFile(testName: testName);
425
private static ImmutableArray<RazorSourceDocument> GetImports(RazorProjectEngine projectEngine,
RazorProjectItem
projectItem)
429
foreach (
var
import in projectEngine.GetImports(projectItem, static i => i.Exists))
IntegrationTests\ComponentCodeGenerationTestBase.cs (5)
10796
var
importItem = CreateProjectItem("_Imports.razor", importContent, RazorFileKind.ComponentImport);
10924
var
importItem = CreateProjectItem("_Imports.razor", importContent, RazorFileKind.ComponentImport);
10958
var
importItem = CreateProjectItem("_Imports.razor", importContent, RazorFileKind.ComponentImport);
11003
var
importItem = CreateProjectItem("_Imports.razor", importContent, RazorFileKind.ComponentImport);
11028
var
importItem = CreateProjectItem("_Imports.razor", importContent, RazorFileKind.ComponentImport);
IntegrationTests\ExtensibleDirectiveTest.cs (1)
27
var
projectItem = CreateProjectItemFromFile();
IntegrationTests\FindTokenIntegrationTest.cs (1)
16
var
projectItem = CreateProjectItemFromFile();
IntegrationTests\HtmlAttributeIntegrationTest.cs (2)
14
var
projectItem = CreateProjectItemFromFile();
27
var
projectItem = CreateProjectItemFromFile();
IntegrationTests\TagHelpersIntegrationTest.cs (6)
27
var
projectItem = CreateProjectItemFromFile();
56
var
projectItem = CreateProjectItemFromFile();
93
var
projectItem = CreateProjectItemFromFile();
115
var
projectItem = AddProjectItemFromText("""
141
var
projectItem = AddProjectItemFromText("""
167
var
projectItem = AddProjectItemFromText("""
RazorProjectEngineTest.cs (5)
129
var
nonExistentItem = new MockRepository(MockBehavior.Strict).OneOf<
RazorProjectItem
>(item => item.Exists == false);
130
using PooledArrayBuilder<
RazorProjectItem
> items = [existingItem, nonExistentItem];
149
using PooledArrayBuilder<
RazorProjectItem
> items = [projectItem];
165
using PooledArrayBuilder<
RazorProjectItem
> items = [projectItem];
RazorProjectFileSystemTest.cs (7)
303
private static
RazorProjectItem
CreateProjectItem(string path)
305
var projectItem = new Mock<
RazorProjectItem
>();
311
public sealed class TestRazorProjectFileSystem(params IEnumerable<
RazorProjectItem
> items) : RazorProjectFileSystem
313
private readonly Dictionary<string,
RazorProjectItem
> _lookup = items.ToDictionary(item => item.FilePath);
320
public override IEnumerable<
RazorProjectItem
> EnumerateItems(string basePath)
325
public override
RazorProjectItem
GetItem(string path, RazorFileKind? fileKind)
327
if (!_lookup.TryGetValue(path, out
var
value))
VirtualRazorProjectFileSystemTest.cs (9)
23
var
result = projectSystem.GetItem(path, fileKind: null);
39
var
actual = projectSystem.GetItem(path, fileKind: null);
57
var
actual = projectSystem.GetItem(path, fileKind: null);
70
var
actual = projectSystem.GetItem("/subDirectory/dir3/file.cshtml", fileKind: null);
85
var
actual = projectSystem.GetItem("/subDirectory/dir3/file.cshtml", fileKind: null);
100
var
actual = projectSystem.GetItem("/subDirectory/dir2/file2.cshtml", fileKind: null);
351
var
result = root.GetItem(projectItem.FilePath);
368
var
result = root.GetItem(projectItem1.FilePath);
396
var
result = root.GetItem(projectItem1.FilePath);
Microsoft.AspNetCore.Razor.Microbenchmarks.Compiler (2)
CodeGenerationBenchmark.cs (1)
34
public
RazorProjectItem
MSN { get; }
SyntaxTreeGenerationBenckmark.cs (1)
31
var
projectItem = fileSystem.GetItem(Path.Combine(root.FullName, "MSN.cshtml"), RazorFileKind.Legacy);
Microsoft.AspNetCore.Razor.Test.Common (35)
Language\IntegrationTests\IntegrationTestBase.cs (11)
137
protected
RazorProjectItem
AddProjectItemFromText(string text, string filePath = "_ViewImports.cshtml", [CallerMemberName] string testName = "")
139
var
projectItem = CreateProjectItemFromText(text, filePath, GetTestFileName(testName));
144
private
RazorProjectItem
CreateProjectItemFromText(string text, string filePath, string testFileName, string? cssScope = null)
179
protected
RazorProjectItem
CreateProjectItemFromFile(
226
var
projectItem = CreateProjectItemFromText(text, path, GetTestFileName(testName), cssScope);
230
protected CompiledCSharpCode CompileToCSharp(
RazorProjectItem
projectItem, bool? designTime = null)
247
protected CompiledAssembly CompileToAssembly(
RazorProjectItem
projectItem, bool? designTime = null, bool throwOnFailure = true)
777
public void CollectImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
779
using var innerImports = new PooledArrayBuilder<
RazorProjectItem
>();
787
foreach (
var
import in innerImports)
Language\IntegrationTests\RazorIntegrationTestBase.cs (9)
70
AdditionalRazorItems = new List<
RazorProjectItem
>();
71
ImportItems = ImmutableArray.CreateBuilder<
RazorProjectItem
>();
83
internal List<
RazorProjectItem
> AdditionalRazorItems { get; }
85
internal ImmutableArray<
RazorProjectItem
>.Builder ImportItems { get; }
172
internal
RazorProjectItem
CreateProjectItem(
273
foreach (
var
item in AdditionalRazorItems)
284
var
projectItem = CreateProjectItem(cshtmlRelativePath, cshtmlContent, fileKind, cssScope);
303
foreach (
var
item in AdditionalRazorItems)
332
var
projectItem = CreateProjectItem(cshtmlRelativePath, cshtmlContent, fileKind, cssScope);
Language\RazorProjectEngineBuilderExtensions.cs (5)
18
/// Adds the provided <see cref="
RazorProjectItem
" />s as imports to all project items processed
98
private readonly ImmutableArray<
RazorProjectItem
> _imports = imports.SelectAsArray(
99
static import => (
RazorProjectItem
)new DefaultImportProjectItem("Additional default imports", import));
101
public void CollectImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
Language\TestImportProjectFeature.cs (5)
20
params ImmutableArray<
RazorProjectItem
> imports) : RazorProjectEngineFeatureBase, IImportProjectFeature
26
private readonly ImmutableArray<
RazorProjectItem
> _imports = imports;
28
public TestImportProjectFeature(params ImmutableArray<
RazorProjectItem
> imports)
33
public void CollectImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
Language\TestRazorProjectFileSystem.cs (5)
10
internal sealed class TestRazorProjectFileSystem(params IEnumerable<
RazorProjectItem
> items) : DefaultRazorProjectFileSystem("/")
14
private readonly Dictionary<string,
RazorProjectItem
> _lookup = items.ToDictionary(item => item.FilePath);
16
public override IEnumerable<
RazorProjectItem
> EnumerateItems(string basePath)
19
public override
RazorProjectItem
GetItem(string path, RazorFileKind? fileKind)
20
=> _lookup.TryGetValue(path, out
var
value)
Microsoft.AspNetCore.Razor.Test.Common.Tooling (9)
Language\IntegrationTests\RazorToolingIntegrationTestBase.cs (9)
53
AdditionalRazorItems = new List<
RazorProjectItem
>();
54
ImportItems = ImmutableArray.CreateBuilder<
RazorProjectItem
>();
66
internal List<
RazorProjectItem
> AdditionalRazorItems { get; }
68
internal ImmutableArray<
RazorProjectItem
>.Builder ImportItems { get; }
142
internal
RazorProjectItem
CreateProjectItem(string cshtmlRelativePath, string cshtmlContent, RazorFileKind? fileKind = null)
188
foreach (
var
item in AdditionalRazorItems)
199
var
projectItem = CreateProjectItem(cshtmlRelativePath, cshtmlContent, fileKind);
217
foreach (
var
item in AdditionalRazorItems)
245
var
projectItem = CreateProjectItem(cshtmlRelativePath, cshtmlContent, fileKind);
Microsoft.CodeAnalysis.Razor.Compiler (76)
Language\Components\ComponentImportProjectFeature.cs (4)
22
public void CollectImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
38
private static ImmutableArray<
RazorProjectItem
> GetHierarchicalImports(RazorProjectFileSystem fileSystem,
RazorProjectItem
projectItem)
Language\DefaultImportProjectFeature.cs (2)
10
public void CollectImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
Language\DefaultRazorProjectFileSystem.cs (3)
41
public override IEnumerable<
RazorProjectItem
> EnumerateItems(string basePath)
61
public override
RazorProjectItem
GetItem(string path, RazorFileKind? fileKind)
68
return ThrowHelper.ThrowInvalidOperationException<
RazorProjectItem
>($"The file '{absolutePath}' is not a descendent of the base path '{absoluteBasePath}'.");
Language\IImportProjectFeature.cs (2)
10
void CollectImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports);
Language\NotFoundProjectItem.cs (1)
10
/// A <see cref="
RazorProjectItem
"/> that does not exist.
Language\RazorProjectEngine.cs (21)
61
public RazorCodeDocument Process(
RazorProjectItem
projectItem, CancellationToken cancellationToken = default)
83
public RazorCodeDocument ProcessDeclarationOnly(
RazorProjectItem
projectItem, CancellationToken cancellationToken = default)
113
public RazorCodeDocument ProcessDesignTime(
RazorProjectItem
projectItem, CancellationToken cancellationToken = default)
135
internal RazorCodeDocument CreateCodeDocument(
RazorProjectItem
projectItem)
166
RazorProjectItem
projectItem,
195
RazorProjectItem
projectItem,
453
internal void CollectImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> importItems)
461
internal ImmutableArray<
RazorProjectItem
> GetImports(
RazorProjectItem
projectItem)
463
using var imports = new PooledArrayBuilder<
RazorProjectItem
>();
469
internal ImmutableArray<
RazorProjectItem
> GetImports(
RazorProjectItem
projectItem, Func<
RazorProjectItem
, bool> predicate)
471
using var imports = new PooledArrayBuilder<
RazorProjectItem
>();
479
using var result = new PooledArrayBuilder<
RazorProjectItem
>(capacity: imports.Count);
481
foreach (
var
import in imports)
492
private ImmutableArray<RazorSourceDocument> GetImportSources(
RazorProjectItem
projectItem, bool designTime)
494
using var importItems = new PooledArrayBuilder<
RazorProjectItem
>();
508
ref readonly PooledArrayBuilder<
RazorProjectItem
> importItems,
513
foreach (
var
importItem in importItems)
Language\RazorProjectFileSystem.cs (15)
22
/// Gets a sequence of <see cref="
RazorProjectItem
"/> under the specific path in the project.
25
/// <returns>The sequence of <see cref="
RazorProjectItem
"/>.</returns>
29
public abstract IEnumerable<
RazorProjectItem
> EnumerateItems(string basePath);
32
/// Gets a <see cref="
RazorProjectItem
"/> for the specified path.
35
/// <returns>The <see cref="
RazorProjectItem
"/>.</returns>
36
public
RazorProjectItem
GetItem(string path)
40
/// Gets a <see cref="
RazorProjectItem
"/> for the specified path.
44
/// <returns>The <see cref="
RazorProjectItem
"/>.</returns>
45
public abstract
RazorProjectItem
GetItem(string path, RazorFileKind? fileKind);
52
/// <returns>A sequence of applicable <see cref="
RazorProjectItem
"/> instances.</returns>
61
internal ImmutableArray<
RazorProjectItem
> FindHierarchicalItems(string path, string fileName)
72
/// <returns>A sequence of applicable <see cref="
RazorProjectItem
"/> instances.</returns>
81
internal ImmutableArray<
RazorProjectItem
> FindHierarchicalItems(string basePath, string path, string fileName)
115
using var result = new PooledArrayBuilder<
RazorProjectItem
>();
137
var
item = GetItem(itemPath, fileKind: null);
Language\RazorProjectFileSystem.EmptyFileSystem.cs (2)
12
public override IEnumerable<
RazorProjectItem
> EnumerateItems(string basePath)
18
public override
RazorProjectItem
GetItem(string path, RazorFileKind? fileKind)
Language\RazorSourceDocument.cs (2)
125
/// <param name="projectItem">The <see cref="
RazorProjectItem
"/> to read from.</param>
127
public static RazorSourceDocument ReadFrom(
RazorProjectItem
projectItem)
Language\VirtualRazorProjectFileSystem.cs (8)
14
public override IEnumerable<
RazorProjectItem
> EnumerateItems(string basePath)
21
public override
RazorProjectItem
GetItem(string path, RazorFileKind? fileKind)
27
public void Add(
RazorProjectItem
projectItem)
71
public IEnumerable<
RazorProjectItem
> EnumerateItems()
80
foreach (
var
file in directory.EnumerateItems())
87
public
RazorProjectItem
? GetItem(string path)
190
internal readonly struct FileNode(string path,
RazorProjectItem
projectItem)
193
public
RazorProjectItem
ProjectItem => projectItem;
Mvc.Version1_X\MvcImportProjectFeature.cs (5)
30
public void CollectImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
47
internal static void AddDefaultDirectivesImport(ref PooledArrayBuilder<
RazorProjectItem
> imports)
53
internal void AddHierarchicalImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
Mvc.Version2_X\MvcImportProjectFeature.cs (5)
32
public void CollectImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
49
internal static void AddDefaultDirectivesImport(ref PooledArrayBuilder<
RazorProjectItem
> imports)
55
internal void AddHierarchicalImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
Mvc\MvcImportProjectFeature.cs (5)
32
public void CollectImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
49
internal static void AddDefaultDirectivesImport(ref PooledArrayBuilder<
RazorProjectItem
> imports)
55
internal void AddHierarchicalImports(
RazorProjectItem
projectItem, ref PooledArrayBuilder<
RazorProjectItem
> imports)
SourceGenerators\SourceGeneratorProjectEngine.cs (1)
55
public SourceGeneratorRazorCodeDocument ProcessInitialParse(
RazorProjectItem
projectItem, CancellationToken cancellationToken)