portsage 0.1.0

A TUI tool to monitor processes and their listening ports
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use crate::process::ProcessInfo;

pub fn filter_processes_by_name<'a>(
    processes: &'a [ProcessInfo],
    keyword: &str,
) -> Vec<&'a ProcessInfo> {
    let keyword_lower = keyword.to_lowercase();
    processes
        .iter()
        .filter(|p| {
            p.name.to_lowercase().contains(&keyword_lower)
                || p.cmd
                    .iter()
                    .any(|arg| arg.to_lowercase().contains(&keyword_lower))
        })
        .collect()
}