refactor: Simplify codebase by extracting modules and helpers

Extract code into focused modules for better maintainability:

New modules:
- gemini_types.rs (32 lines) - Response type definitions
- gemini_helpers.rs (51 lines) - Prompt builder and conversion helpers
- prompt.rs (130 lines) - User input and validation logic

Refactored files:
- gemini.rs: 278 -> 259 lines (-19 lines)
  * Extract response parsing into helper methods
  * Extract request building into separate methods
  * Extract retry logic into dedicated functions
  * Use PromptBuilder for cleaner prompt construction

- config.rs: 275 -> 127 lines (-148 lines)
  * Extract all prompting logic to prompt.rs module
  * Simplify with Default trait for Config
  * Cleaner API methods

Benefits:
- Better separation of concerns
- Easier to test and maintain
- Clearer module boundaries
- Reduced nesting and complexity
- All 31 tests still passing
This commit is contained in:
glitchySid
2025-12-29 00:35:14 +05:30
parent 32c1f283ac
commit 1a72116b9d
8 changed files with 405 additions and 353 deletions

View File

@@ -3,3 +3,6 @@ pub mod config;
pub mod files;
pub mod gemini;
pub mod gemini_errors;
pub mod gemini_helpers;
pub mod gemini_types;
pub mod prompt;