AvalonStudio.Languages.CPlusPlus.CPlusPlusLanguageService.SignatureHelp C# (CSharp) Method

SignatureHelp() public method

public SignatureHelp ( ISourceFile file, UnsavedFile buffer, List unsavedFiles, int line, int column, int offset, string methodName ) : Task
file ISourceFile
buffer UnsavedFile
unsavedFiles List
line int
column int
offset int
methodName string
return Task
        public async Task<SignatureHelp> SignatureHelp(ISourceFile file, UnsavedFile buffer, List<UnsavedFile> unsavedFiles, int line, int column, int offset, string methodName)
        {
            SignatureHelp result = null;
            var clangUnsavedFiles = new List<ClangUnsavedFile>();

            unsavedFiles.Add(buffer);

            foreach (var unsavedFile in unsavedFiles)
            {
                if (Platform.CompareFilePath(unsavedFile.FileName, buffer.FileName) != 0)
                {
                    clangUnsavedFiles.Add(new ClangUnsavedFile(unsavedFile.FileName, unsavedFile.Contents));
                }
            }

            var symbols = await GetSymbolsAsync(file, unsavedFiles, methodName);

            if (symbols.Count > 0)
            {
                result = new SignatureHelp();
                result.Offset = offset;

                foreach (var symbol in symbols)
                {
                    result.Signatures.Add(SignatureFromSymbol(symbol));
                }
            }

            return result;
        }
    }