// <summary> /// For each query in the list of queries, search for a runtime function by id. /// The method containing the runtime function gets outputted, along with the single runtime function that was searched /// </summary> /// <param name="r2r">Contains all the extracted info about the ReadyToRun image</param> /// <param name="queries">The ids to search for</param> private void QueryRuntimeFunction(R2RReader r2r, IReadOnlyList <int> queries) { if (queries.Count > 0) { _dumper.WriteDivider("Runtime Functions"); } foreach (int q in queries) { RuntimeFunction rtf = FindRuntimeFunction(r2r, q); if (rtf == null) { WriteWarning("Unable to find by id " + q); continue; } XmlNode queryNode = _dumper.DumpQueryCount(q.ToString(), "Runtime Function", 1); _dumper.DumpRuntimeFunction(rtf, queryNode); } }
// <summary> /// For each query in the list of queries, dump a runtime function by id. /// The method containing the runtime function gets outputted, along with the single runtime function that was searched /// </summary> /// <param name="r2r">Contains all the extracted info about the ReadyToRun image</param> /// <param name="queries">The ids to search for</param> private void QueryRuntimeFunction(ReadyToRunReader r2r, IEnumerable <string> queries) { if (queries.Any()) { _dumper.WriteDivider("Runtime Functions"); } foreach (string q in queries) { RuntimeFunction rtf = FindRuntimeFunction(r2r, ArgStringToInt(q)); if (rtf == null) { WriteWarning("Unable to find by id " + q); continue; } _dumper.DumpQueryCount(q.ToString(), "Runtime Function", 1); _dumper.DumpRuntimeFunction(rtf); } }