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)
469return 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)
338public ICollection<ProjectImportElement> Imports => new ReadOnlyCollection<ProjectImportElement>(GetAllChildrenOfType<ProjectImportElement>()); 952public ProjectImportElement AddImport(string project) 959ProjectImportElement import; 1272public ProjectImportElement CreateImportElement(string project) 1274return Link != null ? RootLink.CreateImportElement(project) : ProjectImportElement.CreateDisconnected(project, this); 1900/// Creates and returns a list of <see cref="ProjectImportElement"/> nodes which are implicitly 1905internal List<ProjectImportElement> GetImplicitImportNodes(ProjectRootElement currentProjectOrImport) 1907var nodes = new List<ProjectImportElement>(); 1914nodes.Add(ProjectImportElement.CreateImplicit("Sdk.props", currentProjectOrImport, ImplicitImportLocation.Top, referencedSdk, this)); 1915nodes.Add(ProjectImportElement.CreateImplicit("Sdk.targets", currentProjectOrImport, ImplicitImportLocation.Bottom, referencedSdk, this)); 1928nodes.Add(ProjectImportElement.CreateImplicit("Sdk.props", currentProjectOrImport, ImplicitImportLocation.Top, referencedSdk, sdkNode)); 1929nodes.Add(ProjectImportElement.CreateImplicit("Sdk.targets", currentProjectOrImport, ImplicitImportLocation.Bottom, referencedSdk, sdkNode));
Construction\Solution\SolutionProjectGenerator.cs (10)
936ProjectImportElement importBefore = traversalProject.CreateImportElement(@"$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\SolutionFile\ImportBefore\*"); 939ProjectImportElement importAfter = traversalProject.CreateImportElement(@"$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\SolutionFile\ImportAfter\*"); 979ProjectImportElement directorySolutionPropsImport = traversalProject.CreateImportElement("$(DirectorySolutionPropsPath)"); 997ProjectImportElement directorySolutionTargetsImport = traversalProject.CreateImportElement("$(DirectorySolutionTargetsPath)"); 1003(ProjectImportElement importBeforeLocal, ProjectImportElement importAfterLocal) = CreateBeforeAndAfterSolutionImports(traversalProject); 1072private (ProjectImportElement ImportBeforeSln, ProjectImportElement ImportAfterSln) CreateBeforeAndAfterSolutionImports(ProjectRootElement traversalProject) 1083ProjectImportElement importBeforeLocal = traversalProject.CreateImportElement(localFile); 1087ProjectImportElement importAfterLocal = traversalProject.CreateImportElement(localFile);
Definition\Project.cs (3)
3972if (!(element is ProjectImportElement import)) 4572public void RecordImport(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated, SdkResult sdkResult) 4581public 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)
106private readonly Dictionary<string, ProjectImportElement> _importsSeen; 113private List<(ProjectRootElement ImportedProject, ProjectImportElement ImportingElement, SdkResult SdkResult)> _resolvedImports; 267_importsSeen = new Dictionary<string, ProjectImportElement>(StringComparer.OrdinalIgnoreCase); 939List<ProjectImportElement> implicitImports = currentProjectOrImport.GetImplicitImportNodes(currentProjectOrImport); 942foreach (var import in implicitImports) 970case ProjectImportElement import: 992foreach (var import in implicitImports) 1450private void EvaluateImportElement(string directoryOfImportingFile, ProjectImportElement importElement) 1484foreach (ProjectImportElement importElement in importGroupElement.Imports) 1564private List<ProjectRootElement> ExpandAndLoadImports(string directoryOfImportingFile, ProjectImportElement importElement, out SdkResult sdkResult) 1746ProjectImportElement importElement, 2068private LoadImportsResult ExpandAndLoadImportsFromUnescapedImportExpression(string directoryOfImportingFile, ProjectImportElement importElement, string unescapedExpression, 2215ProjectImportElement previouslyImportedAt; 2441private bool IntroducesCircularity(string importFileUnescaped, ProjectImportElement importElement) 2550if (element is ProjectPropertyGroupElement || element is ProjectImportElement || element is ProjectImportGroupElement) 2573private 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)
436ProjectImportElement item = ParseProjectImportElement(childElement, importGroup); 447private 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)