From e2dfcc04457840f3ab569490e995aa5acbca2d49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=93=D1=80=D0=B8=D0=B3=D0=BE=D1=80=D0=B8=D0=B9=20=D0=A1?= =?UTF-8?q?=D0=B0=D1=84=D1=80=D0=BE=D0=BD=D0=BE=D0=B2?= Date: Thu, 15 Jan 2026 19:38:16 +0000 Subject: [PATCH] Delete src/core/index.rs --- src/core/index.rs | 58 ----------------------------------------------- 1 file changed, 58 deletions(-) delete mode 100644 src/core/index.rs diff --git a/src/core/index.rs b/src/core/index.rs deleted file mode 100644 index 4f884d8..0000000 --- a/src/core/index.rs +++ /dev/null @@ -1,58 +0,0 @@ -//! Модуль управления индексами - -use std::collections::{HashMap, HashSet}; -use crate::parser::sql::Value; - -/// Индекс для быстрого поиска -#[derive(Debug, Clone)] -pub struct Index { - name: String, - data: HashMap>, -} - -impl Index { - /// Создание нового индекса - pub fn new(name: &str) -> Self { - Self { - name: name.to_string(), - data: HashMap::new(), - } - } - - /// Вставка значения в индекс - pub fn insert(&mut self, value: Value, record_id: u64) { - self.data.entry(value) - .or_insert_with(HashSet::new) - .insert(record_id); - } - - /// Поиск по значению - pub fn search(&self, value: &Value) -> Option> { - self.data.get(value).cloned() - } - - /// Удаление значения из индекса - pub fn remove(&mut self, value: &Value, record_id: u64) { - if let Some(set) = self.data.get_mut(value) { - set.remove(&record_id); - if set.is_empty() { - self.data.remove(value); - } - } - } - - /// Получение всех значений индекса - pub fn get_all(&self) -> Vec<&Value> { - self.data.keys().collect() - } - - /// Очистка индекса - pub fn clear(&mut self) { - self.data.clear(); - } - - /// Получение имени индекса - pub fn name(&self) -> &str { - &self.name - } -}