public void UpdateVariable(string name, AnalysisUnit unit, IEnumerable<AnalysisValue> values) { Dictionary<IPythonProjectEntry, ValuesAndVersion> entryMappedValues; if (!_values.TryGetValue(name, out entryMappedValues)) { _values[name] = entryMappedValues = new Dictionary<IPythonProjectEntry, ValuesAndVersion>(); } foreach (var value in values) { var module = value.DeclaringModule ?? unit.Project; ValuesAndVersion valsAndVersion; if (!entryMappedValues.TryGetValue(module, out valsAndVersion) || valsAndVersion.DeclaringVersion != module.AnalysisVersion) { entryMappedValues[module] = valsAndVersion = new ValuesAndVersion(module.AnalysisVersion); } valsAndVersion.Values.Add(value); } }
public void UpdateVariable(string name, AnalysisUnit unit, IEnumerable <AnalysisValue> values) { if (!_values.TryGetValue(name, out Dictionary <IPythonProjectEntry, ValuesAndVersion> entryMappedValues)) { _values[name] = entryMappedValues = new Dictionary <IPythonProjectEntry, ValuesAndVersion>(); } foreach (var value in values) { var module = value.DeclaringModule ?? unit.ProjectEntry; if (!entryMappedValues.TryGetValue(module, out ValuesAndVersion valsAndVersion) || valsAndVersion.DeclaringVersion != module.AnalysisVersion) { entryMappedValues[module] = valsAndVersion = new ValuesAndVersion(module.AnalysisVersion); } valsAndVersion.Values.Add(value); } }