ratatui_toolkit/widgets/code_diff/widget/methods/total_lines.rs
1use crate::widgets::code_diff::code_diff::CodeDiff;
2
3impl CodeDiff {
4 /// Returns the total number of lines to display.
5 ///
6 /// This includes all lines from all hunks plus hunk header lines.
7 ///
8 /// # Returns
9 ///
10 /// The total line count for rendering
11 ///
12 /// # Example
13 ///
14 /// ```rust
15 /// use ratatui_toolkit::code_diff::CodeDiff;
16 ///
17 /// let diff = CodeDiff::new();
18 /// assert_eq!(diff.total_lines(), 0);
19 /// ```
20 pub fn total_lines(&self) -> usize {
21 self.hunks
22 .iter()
23 .map(|h| h.lines.len() + 1) // +1 for hunk header
24 .sum()
25 }
26}