protected override GDBResponse <string> Decode(string response) { var result = new GDBResponse <string>(DecodeResponseCode(response)); if (result.Response == ResponseCode.Done) { result.Value = response.Substring(6).ToNameValuePair().Value; } return(result); }
protected override GDBResponse <VariableObject> Decode(string response) { var result = new GDBResponse <VariableObject>(DecodeResponseCode(response)); if (result.Response == ResponseCode.Done) { result.Value = response.Substring(6).VariableObjectFromDataString(null, expression); } return(result); }
protected override GDBResponse <LiveBreakPoint> Decode(string response) { var result = new GDBResponse <LiveBreakPoint>(DecodeResponseCode(response)); if (result.Response == ResponseCode.Done) { var split = response.Split(new[] { ',' }, 2); if (split[1].Substring(0, 4) == "bkpt") { // TODO if breakpoint may come back with multiple addresses. result.Value = split[1].Substring(6, split[1].Length - 6 - 1).ToNameValuePairs().LiveBreakPointFromArgumentList(); } } return(result); }