GCC Code Coverage Report


Directory: ./
File: tasks/gutyansky_a_matrix_band_multiplication/common/include/matrix.hpp
Date: 2026-01-10 02:40:41
Exec Total Coverage
Lines: 3 3 100.0%
Functions: 0 0 -%
Branches: 9 22 40.9%

Line Branch Exec Source
1 #pragma once
2
3 #include <cmath>
4 #include <cstddef>
5 #include <cstdint>
6 #include <tuple>
7 #include <vector>
8
9 namespace gutyansky_a_matrix_band_multiplication {
10
11
3/10
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 90 times.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
✓ Branch 9 taken 81 times.
✗ Branch 10 not taken.
✓ Branch 12 taken 81 times.
✗ Branch 13 not taken.
801 struct Matrix {
12 size_t rows = 0;
13 size_t cols = 0;
14 std::vector<int32_t> data;
15
16 [[nodiscard]] bool IsValid() const {
17
6/12
✓ Branch 0 taken 81 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 81 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 81 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 81 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 81 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 9 times.
✗ Branch 11 not taken.
81 return rows > 0 && cols > 0 && data.size() == rows * cols;
18 }
19
20 friend bool operator==(const Matrix &v_left, const Matrix &v_right) {
21 81 return std::tie(v_left.rows, v_left.cols, v_left.data) == std::tie(v_right.rows, v_right.cols, v_right.data);
22 }
23 };
24
25 } // namespace gutyansky_a_matrix_band_multiplication
26