From 39f88451191d7bb4ebec49464eeee8759fb6fb52 Mon Sep 17 00:00:00 2001 From: Mikhail Mitrofanov Date: Wed, 19 Aug 2026 18:49:32 +0300 Subject: [PATCH] Rewrite for dictionary rw indexer --- src/dictionary.rs | 2 +- src/import.rs | 20 +++++++------------- 2 files changed, 8 insertions(+), 14 deletions(-) diff --git a/src/dictionary.rs b/src/dictionary.rs index 00febfd..fdfddae 100644 --- a/src/dictionary.rs +++ b/src/dictionary.rs @@ -154,7 +154,7 @@ impl NavigatedPage for DictionaryState { v.remove(index); } - dict.get_mut(i).unwrap().tags = v; + dict[i].tags = v; } self.update_tags(); diff --git a/src/import.rs b/src/import.rs index 78d051f..958801b 100644 --- a/src/import.rs +++ b/src/import.rs @@ -1,15 +1,15 @@ -use crate::AppState; -use crate::data_provider::import::{ImportData, ImportGroup, get_words_of_group, load_groups}; +use crate::data_provider::import::{get_words_of_group, load_groups, ImportData, ImportGroup}; use crate::data_provider::words::{add_group, add_words}; use crate::dictionary::app_data_dir; use crate::import::ImportMessage::*; use crate::lang::{WordData, WordGroup}; use crate::navigation::{NavigatedPage, Page, RootMessage}; use crate::styling::*; +use crate::AppState; use iced::widget::button::danger; use iced::widget::container::success; use iced::widget::{ - Row, button, checkbox, column, container, progress_bar, row, rule, text, text_input, + button, checkbox, column, container, progress_bar, row, rule, text, text_input, Row, }; use iced::widget::{scrollable, space}; use iced::{Element, Task}; @@ -130,13 +130,7 @@ impl NavigatedPage for ImportState { } ImportFinished => { self.progress = None; - let group = self - .import_data - .as_mut() - .unwrap() - .0 - .get_mut(self.selected_index) - .unwrap(); + let group = &mut self.import_data.as_mut().unwrap().0[self.selected_index]; group.imported = true; } } @@ -409,7 +403,7 @@ impl ImportState { } fn setup_mapping(&mut self, property_name: String) { let group = self.import_data.as_mut().unwrap(); - let group = group.0.get_mut(self.selected_index).unwrap(); + let group = &mut group.0[self.selected_index]; group .mapping .insert(self.selected_property.clone().unwrap(), property_name); @@ -418,7 +412,7 @@ impl ImportState { } fn remove_mapping(&mut self, property_name: String) { let group = self.import_data.as_mut().unwrap(); - let group = group.0.get_mut(self.selected_index).unwrap(); + let group = &mut group.0[self.selected_index]; let remove_key = group .mapping .keys() @@ -523,7 +517,7 @@ impl ImportState { .iter() .position(|(name, _)| name == endpoint) .unwrap(); - result.get_mut(group_index).unwrap().1.push(property_index); + result[group_index].1.push(property_index); } result