sqlx_sqlserver/
query_result.rs1#[derive(Debug, Default, Clone, Copy, PartialEq, Eq)]
3pub struct MssqlQueryResult {
4 rows_affected: u64,
5}
6
7impl MssqlQueryResult {
8 pub const fn new(rows_affected: u64) -> Self {
10 Self { rows_affected }
11 }
12
13 pub const fn rows_affected(&self) -> u64 {
15 self.rows_affected
16 }
17}
18
19impl Extend<Self> for MssqlQueryResult {
20 fn extend<T: IntoIterator<Item = Self>>(&mut self, iter: T) {
21 self.rows_affected += iter
22 .into_iter()
23 .map(|result| result.rows_affected)
24 .sum::<u64>();
25 }
26}
27
28#[cfg(test)]
29mod tests {
30 use super::*;
31
32 #[test]
33 fn query_results_sum_rows_affected() {
34 let mut result = MssqlQueryResult::new(2);
35 result.extend([MssqlQueryResult::new(3), MssqlQueryResult::new(5)]);
36
37 assert_eq!(10, result.rows_affected());
38 }
39}