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