public async ValueTask <IQsiAnalysisResult[]> Execute( QsiScript script, QsiParameter[] parameters, IQsiTreeNode tree, QsiAnalyzerOptions options, CancellationToken cancellationToken = default) { IQsiAnalysisResult[] results = await _analyzer.Execute(script, parameters, tree, options, cancellationToken); for (int i = 0; i < results.Length; i++) { var result = results[i]; if (result is QsiDataManipulationResult dmResult) { results[i] = ConvertToExplain(dmResult); } } return(results); }
public AnalyzerContext(QsiEngine engine, QsiScript script, IQsiTreeNode tree, QsiAnalyzerOptions options, CancellationToken cancellationToken) { Engine = engine; Script = script; Tree = tree; Options = options ?? throw new ArgumentNullException(nameof(options)); CancellationToken = cancellationToken; }