public object GetLocalVariableIndex(int typeToken, int memberToken, string name) { if (DebugInformation == null || !DebugInformation.ContainsKey(typeToken)) { return(null); } var externalData = DebugInformation[typeToken]; IEnumerable <ILVariable> list; if (externalData.LocalVariables.TryGetValue(memberToken, out list)) { foreach (var local in list) { if (local.IsParameter) { continue; } if (local.Name == name) { return new[] { local.OriginalVariable.Index } } ; } } return(null); }
public IEnumerable <string> GetLocalVariables(int typeToken, int memberToken) { if (DebugInformation == null || !DebugInformation.ContainsKey(typeToken)) { yield break; } var externalData = DebugInformation[typeToken]; IEnumerable <ILVariable> list; if (externalData.LocalVariables.TryGetValue(memberToken, out list)) { foreach (var local in list) { if (local.IsParameter) { continue; } if (string.IsNullOrEmpty(local.Name)) { continue; } yield return(local.Name); } } }