private void GetMacroData(StringBuilder s, SortedDictionary <int, Tuple <int, IMacro, string[]> > replace, ref int i, string name) { IMacro macro; bool flag1 = this.builtInValues.TryGetValue(name, out macro); IDictionary <int, IMacro> dictionary; bool flag2 = this.values.TryGetValue(name, out dictionary); if (flag2 || flag1) { int lengthInString; string[] strArray; if (i < s.Length && (int)s[i] == 40) { strArray = NewReplacer.GetParameters(s, i, out lengthInString); } else { lengthInString = 0; strArray = new string[0]; } if (flag1 && macro.IsCorrectAmountOfParameters(strArray.Length) || flag2 && dictionary.TryGetValue(strArray.Length, out macro)) { replace[i - name.Length] = new Tuple <int, IMacro, string[]>(lengthInString + name.Length, macro, strArray); } i += lengthInString; } else { ++i; } }
private static string[] GetParameters(StringBuilder s, int index) { int lengthInString; return(NewReplacer.GetParameters(s, index, out lengthInString)); }