perf(logging): avoid extra heap allocations

This commit is contained in:
LGUG2Z
2022-05-26 09:48:42 -07:00
parent bc22ab699f
commit 8594e72d31
2 changed files with 6 additions and 5 deletions

View File

@@ -1,6 +1,7 @@
use std::convert::TryFrom;
use std::fmt::Display;
use std::fmt::Formatter;
use std::fmt::Write as _;
use color_eyre::eyre::anyhow;
use color_eyre::Result;
@@ -36,18 +37,18 @@ impl Display for Window {
let mut display = format!("(hwnd: {}", self.hwnd);
if let Ok(title) = self.title() {
display.push_str(&format!(", title: {}", title));
write!(display, ", title: {}", title)?;
}
if let Ok(exe) = self.exe() {
display.push_str(&format!(", exe: {}", exe));
write!(display, ", exe: {}", exe)?;
}
if let Ok(class) = self.class() {
display.push_str(&format!(", class: {}", class));
write!(display, ", class: {}", class)?;
}
display.push(')');
write!(display, ")")?;
write!(f, "{}", display)
}

View File

@@ -88,7 +88,7 @@ use windows::Win32::UI::WindowsAndMessaging::EVENT_UIA_EVENTID_START;
use windows::Win32::UI::WindowsAndMessaging::EVENT_UIA_PROPID_END;
use windows::Win32::UI::WindowsAndMessaging::EVENT_UIA_PROPID_START;
#[derive(Clone, Copy, PartialEq, Debug, Serialize, Display, JsonSchema)]
#[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Display, JsonSchema)]
#[repr(u32)]
#[allow(dead_code)]
pub enum WinEvent {