From 8a4f311c1d1fa4d978c93e58d95bf59a8a38b587 Mon Sep 17 00:00:00 2001 From: Kevin Hoerr Date: Wed, 25 Feb 2026 22:28:26 +0000 Subject: Add context and initialization --- src/main/rust/main.rs | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'src/main/rust/main.rs') diff --git a/src/main/rust/main.rs b/src/main/rust/main.rs index e231aae..0805796 100644 --- a/src/main/rust/main.rs +++ b/src/main/rust/main.rs @@ -1,3 +1,5 @@ +pub mod store; + use crossterm::event::{self, Event, KeyCode, KeyEvent, KeyEventKind}; use miette::{Diagnostic, IntoDiagnostic, Result}; use ratatui::{ @@ -9,10 +11,12 @@ use ratatui::{ text::{Line, Text}, widgets::{Block, Paragraph, Widget}, }; +use store::{Context, Store}; use thiserror::Error; -#[derive(Debug, Default)] +#[derive(Default)] pub struct App { + context: Context, counter: u8, exit: bool, } @@ -27,10 +31,20 @@ pub struct OverflowError { #[cfg(not(tarpaulin_include))] fn main() -> Result<()> { - ratatui::run(|term| App::default().run(term)) + ratatui::run(|term| App::default().init_context()?.run(term)) } impl App { + // Initializes context + pub fn init_context(&mut self) -> Result<&mut Self> { + match &mut self.context { + Context::SQLite(s) => { + s.init()?; + } + } + Ok(self) + } + /// runs the application's main loop until the user quits #[cfg(not(tarpaulin_include))] pub fn run(&mut self, terminal: &mut DefaultTerminal) -> Result<()> { -- cgit v1.3