ProjectManager.FilterFiles Method

Definition

For all files, verifies that a file with the corresponding full path exists, and returns a sequence containing the absolute path for all files that do.

public static System.Collections.Generic.IEnumerable<Uri> FilterFiles (System.Collections.Generic.IEnumerable<string> files, Microsoft.Quantum.QsCompiler.Diagnostics.WarningCode duplicateFileWarning, Func<string,string,Microsoft.VisualStudio.LanguageServer.Protocol.Diagnostic> fileNotFoundDiagnostic, out System.Collections.Generic.IEnumerable<Uri> notFound, out System.Collections.Generic.IEnumerable<Uri> duplicates, out System.Collections.Generic.IEnumerable<(string, Exception)> invalidPaths, Action<Microsoft.VisualStudio.LanguageServer.Protocol.Diagnostic>? onDiagnostic = default, Action<Exception>? onException = default);
static member FilterFiles : seq<string> * Microsoft.Quantum.QsCompiler.Diagnostics.WarningCode * Func<string, string, Microsoft.VisualStudio.LanguageServer.Protocol.Diagnostic> * seq * seq * seq * Action<Microsoft.VisualStudio.LanguageServer.Protocol.Diagnostic> * Action<Exception> -> seq<Uri>
Public Shared Function FilterFiles (files As IEnumerable(Of String), duplicateFileWarning As WarningCode, fileNotFoundDiagnostic As Func(Of String, String, Diagnostic), ByRef notFound As IEnumerable(Of Uri), ByRef duplicates As IEnumerable(Of Uri), ByRef invalidPaths As IEnumerable(Of ValueTuple(Of String, Exception)), Optional onDiagnostic As Action(Of Diagnostic) = Nothing, Optional onException As Action(Of Exception) = Nothing) As IEnumerable(Of Uri)

Parameters

files
IEnumerable<String>

The sequence of file names.

duplicateFileWarning
WarningCode

The Code value to use for warning diagnostics generated for duplicate files.

fileNotFoundDiagnostic
Func<String,String,Diagnostic>

A function used to create diagnostics generated for missing files.

notFound
IEnumerable<Uri>

All file names from files for which no such file exists.

duplicates
IEnumerable<Uri>

All duplicate file names from files.

invalidPaths
IEnumerable<ValueTuple<String,Exception>>

All file names from files for which an exception was thrown while creating the full path uri.

onDiagnostic
Action<Diagnostic>

Called to log generated diagnostics, if not null.

onException
Action<Exception>

Called to log path errors, if not null.

Returns

IEnumerable<Uri>

Remarks

Filters all file names that are null or only consist of whitespace.

Generates suitable diagnostics for duplicate and not found files, and for invalid paths.

Applies to