diff --git a/src/rugby-app-window.c b/src/rugby-app-window.c index f1ca16b93ef43244bfd2703067403fab0d122c0a..9f4a1322a067c0ce36292a8b40c5ef67fcee42fe 100644 --- a/src/rugby-app-window.c +++ b/src/rugby-app-window.c @@ -90,9 +90,7 @@ header_label_cb (GtkListItem *item) if (!possibility) return NULL; - int tries = rugby_possibility_get_tries (possibility); - int utries = rugby_possibility_get_utries (possibility); - int total_tries = tries + utries; + int total_tries = rugby_possibility_total_tries (possibility); return g_strdup_printf (ngettext ("%d try", "%d tries", total_tries), total_tries); } diff --git a/src/rugby-list-store.c b/src/rugby-list-store.c index 343f627719c1810bef2e18944b6c0b6300caed7c..cdbd541205daf7a363d803ca52a7c781c827e8f2 100644 --- a/src/rugby-list-store.c +++ b/src/rugby-list-store.c @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2018-2022 Bruce Cowan <bruce@bcowan.me.uk> + * SPDX-FileCopyrightText: 2018-2024 Bruce Cowan <bruce@bcowan.me.uk> * * SPDX-License-Identifier: GPL-3.0-or-later */ @@ -106,13 +106,6 @@ process_data (RugbyListStore *self) g_list_model_get_n_items (G_LIST_MODEL (self->items))); } -static int -get_total_tries (RugbyPossibility *possibility) -{ - return rugby_possibility_get_tries (possibility) + - rugby_possibility_get_utries (possibility); -} - // GListModel implementation static GType @@ -166,13 +159,13 @@ rugby_list_store_get_section (GtkSectionModel *model, return; } - int target_tries = get_total_tries (possibility); + int target_tries = rugby_possibility_total_tries (possibility); // Find start for (unsigned i = 0; i < n_items; i++) { possibility = g_list_model_get_item (G_LIST_MODEL (self->items), i); - int total = get_total_tries (possibility); + int total = rugby_possibility_total_tries (possibility); if (total == target_tries) { @@ -185,7 +178,7 @@ rugby_list_store_get_section (GtkSectionModel *model, for (unsigned i = *out_start + 1; i < n_items; i++) { possibility = g_list_model_get_item (G_LIST_MODEL (self->items), i); - int total = get_total_tries (possibility); + int total = rugby_possibility_total_tries (possibility); if (total != target_tries) { diff --git a/src/rugby-possibility.c b/src/rugby-possibility.c index cdc10a4830bdc0e5daab790870041281f51af5b1..91a92c4025ac9ca279a0ead94f5323c1756411dc 100644 --- a/src/rugby-possibility.c +++ b/src/rugby-possibility.c @@ -123,7 +123,7 @@ rugby_possibility_new (int tries, int rugby_possibility_get_tries (RugbyPossibility *self) { - g_return_val_if_fail (RUGBY_IS_POSSIBILITY (self), 0); + g_assert (RUGBY_IS_POSSIBILITY (self)); return self->tries; } @@ -131,7 +131,7 @@ rugby_possibility_get_tries (RugbyPossibility *self) int rugby_possibility_get_utries (RugbyPossibility *self) { - g_return_val_if_fail (RUGBY_IS_POSSIBILITY (self), 0); + g_assert (RUGBY_IS_POSSIBILITY (self)); return self->utries; } @@ -139,7 +139,15 @@ rugby_possibility_get_utries (RugbyPossibility *self) int rugby_possibility_get_kicks (RugbyPossibility *self) { - g_return_val_if_fail (RUGBY_IS_POSSIBILITY (self), 0); + g_assert (RUGBY_IS_POSSIBILITY (self)); return self->kicks; } + +int +rugby_possibility_total_tries (RugbyPossibility *self) +{ + g_assert (RUGBY_IS_POSSIBILITY (self)); + + return self->tries + self->utries; +} diff --git a/src/rugby-possibility.h b/src/rugby-possibility.h index 7a036c2d68d99aa2e99fb52b35d4a072430f143c..565d21925f90ddd23b9cab69bd6ffb8b31990a48 100644 --- a/src/rugby-possibility.h +++ b/src/rugby-possibility.h @@ -22,4 +22,6 @@ int rugby_possibility_get_tries (RugbyPossibility *self); int rugby_possibility_get_utries (RugbyPossibility *self); int rugby_possibility_get_kicks (RugbyPossibility *self); +int rugby_possibility_total_tries (RugbyPossibility *self); + G_END_DECLS