From d87316e4febf2a0f81ead796dd5eabd10313888a Mon Sep 17 00:00:00 2001 From: GarandPLG Date: Tue, 12 May 2026 10:48:48 +0200 Subject: [PATCH] Remove unused lifetimes from app structs --- src/app/app.rs | 10 +++++----- src/app/state.rs | 6 +++--- src/app/states/skirmish.rs | 6 +++--- src/app/states/skirmish_states/board.rs | 9 +++++---- src/app/states/skirmish_states/marked_cells.rs | 8 ++++---- src/app/view.rs | 2 +- src/app/widgets/board.rs | 2 +- 7 files changed, 22 insertions(+), 21 deletions(-) diff --git a/src/app/app.rs b/src/app/app.rs index 5dd47a2..7939a6c 100644 --- a/src/app/app.rs +++ b/src/app/app.rs @@ -10,16 +10,16 @@ use std::{ time::Duration, }; -pub struct App<'a> { +pub struct App { pub exit: bool, pub view: View, pub window_area: Rect, pub args: Cli, - pub states: Option>, + pub states: Option, pub audio_tx: Sender, } -impl<'a> App<'a> { +impl App { pub fn new(args: Cli, audio_tx: Sender) -> Self { Self { exit: false, @@ -31,11 +31,11 @@ impl<'a> App<'a> { } } - pub fn states_ref(&self) -> Option<&GameStates<'a>> { + pub fn states_ref(&self) -> Option<&GameStates> { self.states.as_ref() } - pub fn states_mut(&mut self) -> Option<&mut GameStates<'a>> { + pub fn states_mut(&mut self) -> Option<&mut GameStates> { self.states.as_mut() } diff --git a/src/app/state.rs b/src/app/state.rs index 5e1c78a..8eed5ba 100644 --- a/src/app/state.rs +++ b/src/app/state.rs @@ -8,15 +8,15 @@ use crate::{ use ratatui::layout::Rect; #[derive(Debug, Clone, PartialEq)] -pub struct GameStates<'a> { +pub struct GameStates { pub main_menu: MainMenuState, - pub skirmish: SkirmishState<'a>, + pub skirmish: SkirmishState, pub perk_decks: PerkDecksState, pub skills_config: SkillsConfigState, pub settings: SettingsState, } -impl GameStates<'_> { +impl GameStates { pub fn new(args: &Cli, area: &Rect) -> Self { Self { main_menu: MainMenuState { diff --git a/src/app/states/skirmish.rs b/src/app/states/skirmish.rs index 0d98b81..4e89fc0 100644 --- a/src/app/states/skirmish.rs +++ b/src/app/states/skirmish.rs @@ -1,15 +1,15 @@ use crate::app::states::skirmish_states::BoardState; #[derive(Debug, Clone, PartialEq)] -pub struct SkirmishState<'a> { +pub struct SkirmishState { pub id: usize, pub name: &'static str, - pub board: BoardState<'a>, + pub board: BoardState, pub side_panel: bool, pub turn_counter: u64, } -impl SkirmishState<'_> { +impl SkirmishState { pub fn tick_update(&mut self) { // self.board.advance_turn(); diff --git a/src/app/states/skirmish_states/board.rs b/src/app/states/skirmish_states/board.rs index b2a0f23..083502f 100644 --- a/src/app/states/skirmish_states/board.rs +++ b/src/app/states/skirmish_states/board.rs @@ -14,7 +14,7 @@ use ratatui::layout::Rect; use std::collections::VecDeque; #[derive(Debug, Clone, PartialEq)] -pub struct BoardState<'a> { +pub struct BoardState { cells_area: Rect, pub cell_width: usize, pub cell_height: usize, @@ -31,10 +31,10 @@ pub struct BoardState<'a> { enemy_base_coords: (usize, usize), // pub marking_cells: bool, // marked_cells: VecDeque<(usize, usize)>, - pub marked_cells: MarkedCells<'a>, + pub marked_cells: MarkedCells, } -impl BoardState<'_> { +impl BoardState { pub fn new( area: &Rect, map_width: usize, @@ -106,7 +106,7 @@ impl BoardState<'_> { cells.push(rows); } - let marked_cells: MarkedCells<'_> = MarkedCells::new(); + let marked_cells: MarkedCells = MarkedCells::new(); Self { cells_area, @@ -204,6 +204,7 @@ impl BoardState<'_> { let cell: &mut CellWidget = self.get_mut_cell(row, col); cell.set_marked(true); + self.marked_cells.selected_unit = cell.get_option_unit(); self.marked_cells.marked_cells.push_back((row, col)); } diff --git a/src/app/states/skirmish_states/marked_cells.rs b/src/app/states/skirmish_states/marked_cells.rs index c8245b9..1b0d6c2 100644 --- a/src/app/states/skirmish_states/marked_cells.rs +++ b/src/app/states/skirmish_states/marked_cells.rs @@ -2,18 +2,18 @@ use crate::app::states::skirmish_states::units::Units; use std::collections::VecDeque; #[derive(Debug, Clone, PartialEq)] -pub struct MarkedCells<'a> { +pub struct MarkedCells { pub marking_cells: bool, pub marked_cells: VecDeque<(usize, usize)>, - pub selected_unit: &'a Option, + pub selected_unit: Option, } -impl MarkedCells<'_> { +impl MarkedCells { pub fn new() -> Self { Self { marking_cells: false, marked_cells: VecDeque::new(), - selected_unit: &None, + selected_unit: None, } } } diff --git a/src/app/view.rs b/src/app/view.rs index a2c8f2a..b7d29b5 100644 --- a/src/app/view.rs +++ b/src/app/view.rs @@ -13,7 +13,7 @@ pub enum View { SkillsConfig, } -impl Widget for &mut App<'_> { +impl Widget for &mut App { fn render(self, area: Rect, buf: &mut Buffer) where Self: Sized, diff --git a/src/app/widgets/board.rs b/src/app/widgets/board.rs index 303d798..d4bdb85 100644 --- a/src/app/widgets/board.rs +++ b/src/app/widgets/board.rs @@ -7,7 +7,7 @@ use ratatui::{ use std::rc::Rc; pub struct BoardWidget<'a> { - state: &'a BoardState<'a>, + state: &'a BoardState, } impl<'a> BoardWidget<'a> {