pub struct Profile {
pub filename: String,
pub shell: String,
pub total_duration_us: u64,
pub entries: Vec<ProfileEntry>,
pub errors: Vec<ProfileErrorRecord>,
}Expand description
A whole profile file, post-parse.
Fields§
§filename: StringSource filename (basename only). Useful for showing “which run am I looking at” in the rendered report.
shell: Stringbash 5.3.9 etc; empty if the preamble was missing.
total_duration_us: u64Whole-script wall time in microseconds, from # start_t to
# end_t. 0 if either marker is missing (e.g. crashed shell).
entries: Vec<ProfileEntry>§errors: Vec<ProfileErrorRecord>Stderr records loaded from the sibling *.errors.log file, if
any. Empty when no errors were captured for this run, when the
log is missing, or when running with an older profile that
pre-dates the errors-log feature.
Implementations§
Source§impl Profile
impl Profile
Sourcepub fn entries_duration_us(&self) -> u64
pub fn entries_duration_us(&self) -> u64
Convenience: total time spent in the entry rows. Lets the
renderer show “user-sourced time” vs “dodot framing” by
subtracting this from total_duration_us.
Sourcepub fn framing_duration_us(&self) -> u64
pub fn framing_duration_us(&self) -> u64
total_duration_us - entries_duration_us, saturating at zero.
Represents the shell-side overhead of dodot’s wrapper itself
(and any work between wrapper invocations).