152 references to PathUtilities
Microsoft.CodeAnalysis.CSharp.Features (7)
Completion\CompletionProviders\FileBasedPrograms\IncludeAppDirectiveCompletionProvider.cs (4)
50
var documentDirectory =
PathUtilities
.GetDirectoryName(context.Document.FilePath);
51
var baseDirectory =
PathUtilities
.IsAbsolute(documentDirectory) ? documentDirectory : null;
63
var contentDirectory =
PathUtilities
.GetDirectoryName(contentPrefix.ToString());
66
if (baseDirectory != null ||
PathUtilities
.IsAbsolute(contentDirectory))
Completion\CompletionProviders\FileBasedPrograms\ProjectAppDirectiveCompletionProvider.cs (3)
48
var documentDirectory =
PathUtilities
.GetDirectoryName(context.Document.FilePath);
53
baseDirectory:
PathUtilities
.IsAbsolute(documentDirectory) ? documentDirectory : null,
57
var contentDirectory =
PathUtilities
.GetDirectoryName(contentPrefix.ToString());
Microsoft.CodeAnalysis.Features (64)
AddImport\AbstractAddImportFeatureService.cs (1)
417
return
PathUtilities
.ContainsPathComponent(reference.FilePath, pathComponent, ignoreCase: true);
CodeFixes\Configuration\ConfigurationUpdater.cs (5)
303
var analyzerConfigDirectory =
PathUtilities
.GetDirectoryName(analyzerConfigPath) ?? throw ExceptionUtilities.Unreachable();
421
var editorConfigDirectory =
PathUtilities
.GetDirectoryName(editorConfigDocument.FilePath);
436
relativePath =
PathUtilities
.GetRelativePath(editorConfigDirectory.ToLowerInvariant(), diagnosticFilePath);
437
relativePath =
PathUtilities
.NormalizeWithForwardSlash(relativePath);
606
if (matchWithoutExtension.Contains(
PathUtilities
.GetFileName(diagnosticFilePath, false)))
CodeFixes\Suppression\AbstractSuppressionCodeFixProvider.AbstractGlobalSuppressMessageCodeAction.cs (2)
52
var directory =
PathUtilities
.GetDirectoryName(fullPath);
55
var suppressionsFilePath =
PathUtilities
.CombinePossiblyRelativeAndRelativePaths(directory, suppressionsFileName);
CodeRefactorings\MoveType\AbstractMoveTypeService.Editor.cs (2)
56
=>
PathUtilities
.GetDirectoryName(SemanticDocument.Document.FilePath) is { } dir
57
?
PathUtilities
.CombinePaths(dir, FileName)
CodeRefactorings\SyncNamespace\AbstractChangeNamespaceService.cs (2)
357
!
PathUtilities
.PathsEqual(arg.solution.GetRequiredDocument(id).Project.FilePath!, arg.document.Project.FilePath!), (solution, document)))
464
Debug.Assert(!
PathUtilities
.PathsEqual(refLocation.Document.FilePath, document.FilePath));
CodeRefactorings\SyncNamespace\AbstractSyncNamespaceCodeRefactoringProvider.MoveFileCodeAction.cs (4)
33
? string.Format(FeaturesResources.Move_file_to_0, string.Join(
PathUtilities
.DirectorySeparatorStr, _newfolders))
93
.ToImmutableDictionary(t => t.foldername, t => t.index,
PathUtilities
.Comparer);
116
if (builder.All(folders => !folders.SequenceEqual(defaultPathBasedOnCurrentFolder,
PathUtilities
.Comparer)))
167
if (handledFolders.Add(string.Join(
PathUtilities
.DirectorySeparatorStr, folders)))
CodeRefactorings\SyncNamespace\AbstractSyncNamespaceCodeRefactoringProvider.State.cs (4)
153
var absoluteDirectoryPath =
PathUtilities
.GetDirectoryName(document.FilePath);
157
var projectRoot =
PathUtilities
.GetDirectoryName(document.Project.FilePath);
162
var logicalDirectoryPath =
PathUtilities
.CombineAbsoluteAndRelativePaths(projectRoot, folderPath);
166
return
PathUtilities
.PathsEqual(absoluteDirectoryPath, logicalDirectoryPath);
Common\AbstractProjectExtensionProvider.cs (1)
106
Array.IndexOf(extensionInfo.DocumentExtensions,
PathUtilities
.GetExtension(document.FilePath)) < 0)
Completion\FileSystemCompletionHelper.cs (15)
43
Debug.Assert(searchPaths.All(
PathUtilities
.IsAbsolute));
44
Debug.Assert(baseDirectory == null ||
PathUtilities
.IsAbsolute(baseDirectory));
61
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
68
Debug.Assert(
PathUtilities
.IsAbsolute(fullDirectoryPath));
75
Debug.Assert(
PathUtilities
.IsAbsolute(fullDirectoryPath));
82
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
104
PathUtilities
.GetFileName(fullPath),
123
if (!
PathUtilities
.IsUnixLikePlatform && directoryPath == "\\")
131
var pathKind =
PathUtilities
.GetPathKind(directoryPath);
142
if (
PathUtilities
.IsUnixLikePlatform)
186
result.AddRange(GetItemsInDirectory(
PathUtilities
.CombineAbsoluteAndRelativePaths(_baseDirectory, directoryPath)!, cancellationToken));
192
result.AddRange(GetItemsInDirectory(
PathUtilities
.CombineAbsoluteAndRelativePaths(searchPath, directoryPath)!, cancellationToken));
216
Debug.Assert(
PathUtilities
.IsAbsolute(fullDirectoryPath));
241
PathUtilities
.GetExtension(file),
242
PathUtilities
.IsUnixLikePlatform ? StringComparer.Ordinal : StringComparer.OrdinalIgnoreCase))
Completion\Providers\Scripting\AbstractDirectivePathCompletionProvider.cs (5)
22
=> ch == '/' || (ch == '\\' && !
PathUtilities
.IsUnixLikePlatform);
149
!
PathUtilities
.IsUnixLikePlatform && (index = text.LastIndexOf('\\', position)) >= 0)
189
var result =
PathUtilities
.GetDirectoryName(document.FilePath);
190
if (!
PathUtilities
.IsAbsolute(result))
193
Debug.Assert(result == null ||
PathUtilities
.IsAbsolute(result));
Completion\Providers\Scripting\AbstractLoadDirectiveCompletionProvider.cs (1)
25
if (
PathUtilities
.IsUnixLikePlatform)
Completion\Providers\Scripting\AbstractReferenceDirectiveCompletionProvider.cs (2)
32
if (
PathUtilities
.IsUnixLikePlatform)
57
context.AddItem(CommonCompletionItem.Create(
PathUtilities
.GetFileName(path, includeExtension: true), displayTextSuffix: "", glyph: Glyph.Assembly, rules: s_rules));
EditAndContinue\EditSession.cs (2)
1617
PathUtilities
.GetFileName(oldCompilationOutputs.AssemblyDisplayPath) ?? oldProject.Name + ".dll",
1624
PathUtilities
.GetFileName(oldCompilationOutputs.PdbDisplayPath) ?? oldProject.Name + ".pdb",
EditAndContinue\TraceLog.cs (6)
66
var projectDir =
PathUtilities
.GetDirectoryName(document.Project.FilePath)!;
67
var documentDir =
PathUtilities
.GetDirectoryName(document.FilePath)!;
68
var extension =
PathUtilities
.GetExtension(document.FilePath);
69
var fileName =
PathUtilities
.GetFileName(document.FilePath, includeExtension: false);
71
var relativeDir =
PathUtilities
.IsSameDirectoryOrChildOf(documentDir, projectDir) ?
PathUtilities
.GetRelativePath(projectDir, documentDir) : documentDir;
EditAndContinue\Utilities\Extensions.cs (2)
77
if (!
PathUtilities
.IsAbsolute(project.FilePath))
122
if (!
PathUtilities
.IsAbsolute(textDocumentState.FilePath))
Emit\CompilationOutputFilesWithImplicitPdbPath.cs (1)
75
TryOpenFileStream(Path.Combine(Path.GetDirectoryName(AssemblyFilePath)!,
PathUtilities
.GetFileName(pdbPath)));
PdbSourceDocument\PdbSourceDocumentLoaderService.cs (1)
166
if (
PathUtilities
.IsAbsolute(sourceDocument.FilePath) && File.Exists(sourceDocument.FilePath))
Shared\Utilities\ExtractTypeHelpers.cs (2)
61
var newDocumentPath =
PathUtilities
.CombinePaths(
PathUtilities
.GetDirectoryName(hintDocument.FilePath), fileName);
src\roslyn\src\Analyzers\Core\Analyzers\MatchFolderAndNamespace\AbstractMatchFolderAndNamespaceDiagnosticAnalyzer.cs (3)
141
if (!
PathUtilities
.IsChildPath(projectDir, namespaceDeclaration.SyntaxTree.FilePath))
148
var relativeDirectoryPath =
PathUtilities
.GetRelativePath(
150
PathUtilities
.GetDirectoryName(namespaceDeclaration.SyntaxTree.FilePath));
Workspace\MiscellaneousFileUtilities.cs (3)
21
&&
PathUtilities
.GetExtension(filePath) == languageInformation.ScriptExtension;
35
var fileName =
PathUtilities
.GetFileName(filePath);
115
var baseDirectory =
PathUtilities
.GetDirectoryName(filePath);
Microsoft.CodeAnalysis.Workspaces (66)
Diagnostics\DiagnosticDataLocation.cs (2)
87
var combined =
PathUtilities
.CombinePaths(
PathUtilities
.GetDirectoryName(original), mapped);
Diagnostics\DocumentAnalysisScope.cs (1)
54
return TextDocument.Project.AnalyzerOptions.AdditionalFiles.First(a =>
PathUtilities
.Comparer.Equals(a.Path, filePath));
Serialization\SerializationExtensions.cs (6)
49
if (!
PathUtilities
.IsAbsolute(filePath))
56
return new XmlFileResolver(
PathUtilities
.GetDirectoryName(filePath));
74
if (
PathUtilities
.IsAbsolute(info.FilePath))
77
builder.Add(
PathUtilities
.GetDirectoryName(info.FilePath));
80
if (
PathUtilities
.IsAbsolute(info.OutputFilePath))
83
builder.Add(
PathUtilities
.GetDirectoryName(info.OutputFilePath));
src\roslyn\src\Compilers\Core\Portable\AssemblyUtilitiesCore.cs (1)
29
RoslynDebug.Assert(
PathUtilities
.IsAbsolute(filePath));
src\roslyn\src\Compilers\Core\Portable\DiagnosticAnalyzer\AnalyzerAssemblyLoader.cs (1)
157
var simpleName =
PathUtilities
.GetFileName(originalPath, includeExtension: false);
src\roslyn\src\Compilers\Core\Portable\FileSystem\FileUtilities.cs (26)
49
Debug.Assert(baseDirectory == null || searchPaths != null ||
PathUtilities
.IsAbsolute(baseDirectory));
54
var kind =
PathUtilities
.GetPathKind(path);
61
combinedPath =
PathUtilities
.CombinePathsUnchecked(baseDirectory, path);
62
Debug.Assert(
PathUtilities
.IsAbsolute(combinedPath));
72
combinedPath =
PathUtilities
.CombinePathsUnchecked(searchPath, path);
73
Debug.Assert(
PathUtilities
.IsAbsolute(combinedPath));
86
Debug.Assert(
PathUtilities
.IsAbsolute(combinedPath));
103
Debug.Assert(baseDirectory == null ||
PathUtilities
.IsAbsolute(baseDirectory));
104
return ResolveRelativePath(
PathUtilities
.GetPathKind(path), path, basePath, baseDirectory);
109
Debug.Assert(
PathUtilities
.GetPathKind(path) == kind);
124
return
PathUtilities
.CombinePathsUnchecked(baseDirectory, path);
141
return
PathUtilities
.CombinePathsUnchecked(baseDirectory, path);
152
return
PathUtilities
.CombinePathsUnchecked(baseDirectory, path);
158
baseRoot =
PathUtilities
.GetPathRoot(basePath);
162
baseRoot =
PathUtilities
.GetPathRoot(baseDirectory);
174
Debug.Assert(
PathUtilities
.IsDirectorySeparator(path![0]));
175
Debug.Assert(path.Length == 1 || !
PathUtilities
.IsDirectorySeparator(path[1]));
176
return
PathUtilities
.CombinePathsUnchecked(baseRoot, path.Substring(1));
200
Debug.Assert(
PathUtilities
.IsAbsolute(resolvedBasePath));
250
Debug.Assert(
PathUtilities
.IsAbsolute(path));
277
if (!
PathUtilities
.IsAbsolute(path))
294
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
312
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
396
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
414
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
437
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
src\roslyn\src\Compilers\Core\Portable\FileSystem\PathUtilities.cs (1)
944
=>
PathUtilities
.GetDirectoryName(path, isUnixLike);
src\roslyn\src\Compilers\Core\Portable\FileSystem\RelativePathResolver.cs (3)
29
Debug.Assert(searchPaths.All(
PathUtilities
.IsAbsolute));
30
Debug.Assert(baseDirectory == null ||
PathUtilities
.GetPathKind(baseDirectory) == PathKind.Absolute);
50
Debug.Assert(
PathUtilities
.IsAbsolute(fullPath));
src\roslyn\src\Compilers\Core\Portable\SourceGeneration\GeneratedCodeUtilities.cs (3)
65
var fileName =
PathUtilities
.GetFileName(filePath);
71
var extension =
PathUtilities
.GetExtension(fileName);
74
var fileNameWithoutExtension =
PathUtilities
.GetFileName(filePath, includeExtension: false);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\EditorConfig\Parsing\Sections\Section.cs (1)
159
var relativePath =
PathUtilities
.GetRelativePath(directoryContainingEditorconfig, codeFilePath);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\CompilerUtilities\CompilerPathUtilities.cs (1)
19
if (!
PathUtilities
.IsAbsolute(path))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ProjectExtensions.cs (7)
42
var diagnosticFilePath =
PathUtilities
.GetDirectoryName(diagnostic?.Location.SourceTree?.FilePath ?? project.FilePath);
43
if (!
PathUtilities
.IsAbsolute(diagnosticFilePath))
58
var analyzerConfigDirectory =
PathUtilities
.GetDirectoryName(analyzerConfigDocument.FilePath)!;
76
if (!
PathUtilities
.IsAbsolute(solutionOrProjectFilePath))
81
var solutionOrProjectDirectoryPath =
PathUtilities
.GetDirectoryName(solutionOrProjectFilePath);
83
return
PathUtilities
.CombineAbsoluteAndRelativePaths(solutionOrProjectDirectoryPath!, ".editorconfig");
89
Debug.Assert(
PathUtilities
.IsAbsolute(analyzerConfigPath));
Utilities\Documentation\XmlDocumentationProvider.cs (1)
156
Debug.Assert(
PathUtilities
.IsAbsolute(filePath));
Workspace\CommandLineProject.cs (2)
155
var relativePath =
PathUtilities
.GetRelativePath(projectDirectory, absolutePath);
156
var isWithinProject =
PathUtilities
.IsChildPath(projectDirectory, absolutePath);
Workspace\Solution\CompilationOutputInfo.cs (3)
41
if (path != null && !
PathUtilities
.IsAbsolute(path))
56
=>
PathUtilities
.IsAbsolute(GeneratedFilesOutputDirectory ?? AssemblyPath);
62
=> HasEffectiveGeneratedFilesOutputDirectory ? GeneratedFilesOutputDirectory ??
PathUtilities
.GetDirectoryName(AssemblyPath) : null;
Workspace\Solution\FileTextLoader.cs (1)
249
m["Ext"] =
PathUtilities
.GetExtension(path);
Workspace\Solution\ProjectState.cs (6)
360
if (!
PathUtilities
.IsAbsolute(ProjectInfo.FilePath))
371
var projectDirectory =
PathUtilities
.GetDirectoryName(ProjectInfo.FilePath);
374
var sourceFilePath =
PathUtilities
.CombinePathsUnchecked(projectDirectory, "\0" + extension);
400
var projectPath =
PathUtilities
.GetDirectoryName(projectFilePath);
403
PathUtilities
.GetDirectoryName(projectFilePath) is string directory)
405
return
PathUtilities
.CombinePathsUnchecked(directory, documentState.Name);
Microsoft.CodeAnalysis.Workspaces.MSBuild (15)
MSBuild\MSBuildProjectLoader.cs (3)
134
var solutionDirectory =
PathUtilities
.GetDirectoryName(solutionFilePath) +
PathUtilities
.DirectorySeparatorChar;
294
Debug.Assert(projectFilePaths.All(
PathUtilities
.IsAbsolute));
MSBuild\MSBuildProjectLoader.Worker.cs (4)
92
_pathToDiscoveredProjectInfosMap = new Dictionary<string, ImmutableArray<ProjectInfo>>(
PathUtilities
.Comparer);
99
var processedPaths = new HashSet<string>(
PathUtilities
.Comparer);
332
if (
PathUtilities
.IsAbsolute(path))
391
var paths = new HashSet<string>(
PathUtilities
.Comparer);
MSBuild\MSBuildProjectLoader.Worker_ResolveReferences.cs (2)
69
var builder = ImmutableDictionary.CreateBuilder<string, HashSet<int>>(
PathUtilities
.Comparer);
191
var projectDirectory =
PathUtilities
.GetDirectoryName(projectFileInfo.FilePath);
MSBuild\MSBuildWorkspace.cs (3)
556
return GlobalAssemblyCacheLocation.RootLocations.Any(static (gloc, filePath) =>
PathUtilities
.IsChildPath(gloc, filePath), filePath);
576
return
PathUtilities
.IsChildPath(FrameworkRoot, filePath);
606
var relativePath =
PathUtilities
.GetRelativePath(Path.GetDirectoryName(CurrentSolution.GetRequiredProject(projectId).FilePath)!, peRef.FilePath);
MSBuild\ProjectMap.cs (3)
44
_projectPathToProjectIdsMap = new Dictionary<string, HashSet<ProjectId>>(
PathUtilities
.Comparer);
45
_projectPathToProjectInfosMap = new Dictionary<string, ImmutableArray<ProjectInfo>>(
PathUtilities
.Comparer);
174
if (
PathUtilities
.Comparer.Equals(p, path))