public void AnalyzeAndUpdateSingle(Document document) { var codeResult = ThreadHelper.JoinableTaskFactory.Run(async() => await CodeFileAnalyzer.BuildFromDocumentAsync(document)); CodeQueries.UpdateStatmentForFileWihoutKey(new List <List <CSharpQuery> > { codeResult.Queries }); foreach (var generic in codeResult.Generics) { GenericMethods.Update(generic.NodeInformation.MethodInfo, generic); } OnStoreChangeHandler(ChangedFileTypeFlag.CSharp); }
public async System.Threading.Tasks.Task AnalyzeAndUpdateSingleAsync(Document document) { var codeResult = await CodeFileAnalyzer.BuildFromDocumentAsync(document); CodeQueries.UpdateStatmentForFileWihoutKey(new List <List <CSharpQuery> > { codeResult.Queries }); foreach (var generic in codeResult.Generics) { await GenericMethods.UpdateAsync(generic.NodeInformation.MethodInfo, generic); } OnStoreChangeHandler(ChangedFileTypeFlag.CSharp); }
public async System.Threading.Tasks.Task AnalyzeAndStoreAsync(List <Document> documents) { using (MiniProfiler.Current.Step(nameof(AnalyzeAndStoreAsync))) { var codeResults = await CodeFileAnalyzer.BuildIndexerAsync(documents); var generics = codeResults.SelectMany(e => e.Generics).Select(e => new KeyValuePair <MethodInfo, ExpressionResult>(e.NodeInformation.MethodInfo, e)); await GenericMethods.AddMultipleAsync(generics.Where(e => e.Value.CanBeUsedAsQuery)); CodeQueries.AddMultipleWithoutKey(codeResults.Select(e => e.Queries).ToList()); OnStoreChangeHandler(ChangedFileTypeFlag.CSharp); } }
public async System.Threading.Tasks.Task AnalyzeAndStoreSingleAsync(Document document) { await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); Debug.WriteLine($"AnalyzeAndStoreSingleAsync for file {document.Name}"); using (MiniProfiler.Current.Step(nameof(AnalyzeAndStoreSingleAsync))) { var codeResult = await CodeFileAnalyzer.BuildAsync(document); await GenericMethods.AddMultipleAsync(codeResult.Generics.Select(e => new KeyValuePair <MethodInfo, ExpressionResult>(e.NodeInformation.MethodInfo, e))); CodeQueries.AddWithoutKey(codeResult.Queries); OnStoreChangeHandler(ChangedFileTypeFlag.CSharp); } }