4 instantiations of ProjectImportElement
Microsoft.Build (4)
Construction\ProjectImportElement.cs (2)
148return new ProjectImportElement(element, containingProject) { Project = project }; 163return new ProjectImportElement(element, containingProject)
Evaluation\ProjectParser.cs (1)
488return new ProjectImportElement(element, parent, _project, sdk);
ObjectModelRemoting\LinkedObjectFactory.cs (1)
145return new ProjectImportElement(link);
69 references to ProjectImportElement
Microsoft.Build (69)
Construction\ProjectImportElement.cs (2)
145internal static ProjectImportElement CreateDisconnected(string project, ProjectRootElement containingProject) 155internal static ProjectImportElement CreateImplicit(
Construction\ProjectImportGroupElement.cs (4)
53public ICollection<ProjectImportElement> Imports => GetChildrenOfType<ProjectImportElement>(); 63public ProjectImportElement AddImport(string project) 67ProjectImportElement newImport = ContainingProject.CreateImportElement(project);
Construction\ProjectRootElement.cs (14)
340public ICollection<ProjectImportElement> Imports => new ReadOnlyCollection<ProjectImportElement>(GetAllChildrenOfType<ProjectImportElement>()); 954public ProjectImportElement AddImport(string project) 961ProjectImportElement import; 1274public ProjectImportElement CreateImportElement(string project) 1276return Link != null ? RootLink.CreateImportElement(project) : ProjectImportElement.CreateDisconnected(project, this); 1902/// Creates and returns a list of <see cref="ProjectImportElement"/> nodes which are implicitly 1907internal List<ProjectImportElement> GetImplicitImportNodes(ProjectRootElement currentProjectOrImport) 1909var nodes = new List<ProjectImportElement>(); 1916nodes.Add(ProjectImportElement.CreateImplicit("Sdk.props", currentProjectOrImport, ImplicitImportLocation.Top, referencedSdk, this)); 1917nodes.Add(ProjectImportElement.CreateImplicit("Sdk.targets", currentProjectOrImport, ImplicitImportLocation.Bottom, referencedSdk, this)); 1930nodes.Add(ProjectImportElement.CreateImplicit("Sdk.props", currentProjectOrImport, ImplicitImportLocation.Top, referencedSdk, sdkNode)); 1931nodes.Add(ProjectImportElement.CreateImplicit("Sdk.targets", currentProjectOrImport, ImplicitImportLocation.Bottom, referencedSdk, sdkNode));
Construction\Solution\SolutionProjectGenerator.cs (10)
939ProjectImportElement importBefore = traversalProject.CreateImportElement(@"$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\SolutionFile\ImportBefore\*"); 942ProjectImportElement importAfter = traversalProject.CreateImportElement(@"$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\SolutionFile\ImportAfter\*"); 982ProjectImportElement directorySolutionPropsImport = traversalProject.CreateImportElement("$(DirectorySolutionPropsPath)"); 1000ProjectImportElement directorySolutionTargetsImport = traversalProject.CreateImportElement("$(DirectorySolutionTargetsPath)"); 1006(ProjectImportElement importBeforeLocal, ProjectImportElement importAfterLocal) = CreateBeforeAndAfterSolutionImports(traversalProject); 1075private (ProjectImportElement ImportBeforeSln, ProjectImportElement ImportAfterSln) CreateBeforeAndAfterSolutionImports(ProjectRootElement traversalProject) 1086ProjectImportElement importBeforeLocal = traversalProject.CreateImportElement(localFile); 1090ProjectImportElement importAfterLocal = traversalProject.CreateImportElement(localFile);
Definition\Project.cs (3)
3806if (!(element is ProjectImportElement import)) 4406public void RecordImport(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated, SdkResult sdkResult) 4415public void RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated)
Definition\ResolvedImport.cs (3)
21internal ResolvedImport(ProjectImportElement importingElement, ProjectRootElement importedProject, int versionEvaluated, SdkResult sdkResult, bool isImported) 35internal ResolvedImport(Project project, ProjectImportElement importingElement, ProjectRootElement importedProject, int versionEvaluated, SdkResult sdkResult) 50public ProjectImportElement ImportingElement { get; }
Evaluation\Evaluator.cs (16)
119private readonly Dictionary<string, ProjectImportElement> _importsSeen; 126private List<(ProjectRootElement ImportedProject, ProjectImportElement ImportingElement, SdkResult SdkResult)> _resolvedImports; 281_importsSeen = new Dictionary<string, ProjectImportElement>(StringComparer.OrdinalIgnoreCase); 1041List<ProjectImportElement> implicitImports = currentProjectOrImport.GetImplicitImportNodes(currentProjectOrImport); 1044foreach (var import in implicitImports) 1072case ProjectImportElement import: 1094foreach (var import in implicitImports) 1552private void EvaluateImportElement(string directoryOfImportingFile, ProjectImportElement importElement) 1586foreach (ProjectImportElement importElement in importGroupElement.Imports) 1666private List<ProjectRootElement> ExpandAndLoadImports(string directoryOfImportingFile, ProjectImportElement importElement, out SdkResult sdkResult) 1848ProjectImportElement importElement, 2168private LoadImportsResult ExpandAndLoadImportsFromUnescapedImportExpression(string directoryOfImportingFile, ProjectImportElement importElement, string unescapedExpression, 2315ProjectImportElement previouslyImportedAt; 2541private bool IntroducesCircularity(string importFileUnescaped, ProjectImportElement importElement) 2650if (element is ProjectPropertyGroupElement || element is ProjectImportElement || element is ProjectImportGroupElement) 2678private void ThrowForImportedProjectWithSearchPathsNotFound(ProjectImportPathMatch searchPathMatch, ProjectImportElement importElement)
Evaluation\IEvaluatorData.cs (2)
303void RecordImport(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated, SdkResult sdkResult); 308void RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated);
Evaluation\LazyItemEvaluator.cs (1)
109if (element is ProjectPropertyGroupElement || element is ProjectImportElement || element is ProjectImportGroupElement)
Evaluation\LazyItemEvaluator.EvaluatorData.cs (2)
219public void RecordImport(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated, SdkResult sdkResult) 224public void RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated)
Evaluation\ProjectParser.cs (2)
455ProjectImportElement item = ParseProjectImportElement(childElement, importGroup); 466private ProjectImportElement ParseProjectImportElement(XmlElementWithLocation element, ProjectElementContainer parent)
Evaluation\PropertyTrackingEvaluatorDataWrapper.cs (2)
181public void RecordImport(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated, SdkResult sdkResult) => _wrapped.RecordImport(importElement, import, versionEvaluated, sdkResult); 182public void RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated) => _wrapped.RecordImportWithDuplicates(importElement, import, versionEvaluated);
Instance\ProjectInstance.cs (2)
1977ProjectImportElement importElement, 1996void IEvaluatorData<ProjectPropertyInstance, ProjectItemInstance, ProjectMetadataInstance, ProjectItemDefinitionInstance>.RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated)
ObjectModelRemoting\ConstructionObjectLinks\ProjectImportElementLink.cs (3)
10/// Allow for creating a local representation to external object of type <see cref="ProjectImportElement"/> 15/// Access to remote <see cref="ProjectImportElement.ImplicitImportLocation"/>. 20/// Access to remote <see cref="ProjectImportElement.OriginalElement"/>.
ObjectModelRemoting\ConstructionObjectLinks\ProjectRootElementLink.cs (1)
76public abstract ProjectImportElement CreateImportElement(string project);
ObjectModelRemoting\LinkedObjectFactory.cs (2)
119public ResolvedImport Create(ProjectImportElement importingElement, ProjectRootElement importedProject, int versionEvaluated, SdkResult sdkResult, bool isImported) 143public ProjectImportElement Create(ProjectImportElementLink link)