public string Format(int syscall_index, Syscall syscall, SyscallVisibleField field) { switch (field) { case SyscallVisibleField.None: return null; case SyscallVisibleField.Process: return Util.FormatProcess (syscall.pid, syscall.tid, syscall.execname); case SyscallVisibleField.Timestamp: return Util.FormatTimestamp (syscall.timestamp); case SyscallVisibleField.Name: return syscall.name; case SyscallVisibleField.Arguments: return syscall.arguments; case SyscallVisibleField.ExtraInfo: return syscall.extra_info; case SyscallVisibleField.Result: return Util.FormatResult (syscall.have_result, syscall.result); default: Debug.Assert (false, "Not reached"); return null; } }
public string Format(int syscall_index, Syscall syscall, SyscallVisibleField field) { string text; switch (field) { case SyscallVisibleField.None: return null; case SyscallVisibleField.Process: text = Util.FormatProcess (syscall.pid, syscall.tid, syscall.execname); break; case SyscallVisibleField.Timestamp: text = Util.FormatTimestamp (syscall.timestamp); break; case SyscallVisibleField.Name: text = syscall.name; break; case SyscallVisibleField.Arguments: text = syscall.arguments; break; case SyscallVisibleField.ExtraInfo: text = syscall.extra_info; break; case SyscallVisibleField.Result: text = Util.FormatResult (syscall.have_result, syscall.result); break; default: Debug.Assert (false, "Not reached"); return null; } return highlight_matches (field, syscall_index, text); }
public SyscallMatch(SyscallVisibleField field, int start_pos, int length) { this.field = field; this.start_pos = start_pos; this.length = length; }
string highlight_matches(SyscallVisibleField field, int syscall_index, string plain_text) { foreach (SyscallMatch match in log.GetMatches (syscall_index)) { if (match.field == field) return highlight_in_string (plain_text, match); } return GLib.Markup.EscapeText (plain_text); }