pub struct ConfigRegistry { /* private fields */ }Expand description
Central registry for all loaded configurations
Provides thread-safe storage and retrieval of agent, mode, and command configurations. Uses RwLock for concurrent access patterns where reads are more frequent than writes.
Implementations§
Source§impl ConfigRegistry
impl ConfigRegistry
Sourcepub fn register_agent(&self, config: AgentConfig) -> MarkdownConfigResult<()>
pub fn register_agent(&self, config: AgentConfig) -> MarkdownConfigResult<()>
Sourcepub fn get_agent(&self, name: &str) -> MarkdownConfigResult<Option<AgentConfig>>
pub fn get_agent(&self, name: &str) -> MarkdownConfigResult<Option<AgentConfig>>
Sourcepub fn get_all_agents(&self) -> MarkdownConfigResult<Vec<AgentConfig>>
pub fn get_all_agents(&self) -> MarkdownConfigResult<Vec<AgentConfig>>
Get all registered agents
Sourcepub fn has_agent(&self, name: &str) -> MarkdownConfigResult<bool>
pub fn has_agent(&self, name: &str) -> MarkdownConfigResult<bool>
Check if an agent is registered
Sourcepub fn remove_agent(
&self,
name: &str,
) -> MarkdownConfigResult<Option<AgentConfig>>
pub fn remove_agent( &self, name: &str, ) -> MarkdownConfigResult<Option<AgentConfig>>
Remove an agent configuration
Sourcepub fn register_mode(&self, config: ModeConfig) -> MarkdownConfigResult<()>
pub fn register_mode(&self, config: ModeConfig) -> MarkdownConfigResult<()>
Sourcepub fn get_mode(&self, name: &str) -> MarkdownConfigResult<Option<ModeConfig>>
pub fn get_mode(&self, name: &str) -> MarkdownConfigResult<Option<ModeConfig>>
Sourcepub fn get_all_modes(&self) -> MarkdownConfigResult<Vec<ModeConfig>>
pub fn get_all_modes(&self) -> MarkdownConfigResult<Vec<ModeConfig>>
Get all registered modes
Sourcepub fn has_mode(&self, name: &str) -> MarkdownConfigResult<bool>
pub fn has_mode(&self, name: &str) -> MarkdownConfigResult<bool>
Check if a mode is registered
Sourcepub fn remove_mode(
&self,
name: &str,
) -> MarkdownConfigResult<Option<ModeConfig>>
pub fn remove_mode( &self, name: &str, ) -> MarkdownConfigResult<Option<ModeConfig>>
Remove a mode configuration
Sourcepub fn register_command(
&self,
config: CommandConfig,
) -> MarkdownConfigResult<()>
pub fn register_command( &self, config: CommandConfig, ) -> MarkdownConfigResult<()>
Sourcepub fn get_command(
&self,
name: &str,
) -> MarkdownConfigResult<Option<CommandConfig>>
pub fn get_command( &self, name: &str, ) -> MarkdownConfigResult<Option<CommandConfig>>
Sourcepub fn get_all_commands(&self) -> MarkdownConfigResult<Vec<CommandConfig>>
pub fn get_all_commands(&self) -> MarkdownConfigResult<Vec<CommandConfig>>
Get all registered commands
Sourcepub fn has_command(&self, name: &str) -> MarkdownConfigResult<bool>
pub fn has_command(&self, name: &str) -> MarkdownConfigResult<bool>
Check if a command is registered
Sourcepub fn remove_command(
&self,
name: &str,
) -> MarkdownConfigResult<Option<CommandConfig>>
pub fn remove_command( &self, name: &str, ) -> MarkdownConfigResult<Option<CommandConfig>>
Remove a command configuration
Sourcepub fn clear(&self) -> MarkdownConfigResult<()>
pub fn clear(&self) -> MarkdownConfigResult<()>
Clear all registered configurations
Trait Implementations§
Source§impl Debug for ConfigRegistry
impl Debug for ConfigRegistry
Auto Trait Implementations§
impl !Freeze for ConfigRegistry
impl RefUnwindSafe for ConfigRegistry
impl Send for ConfigRegistry
impl Sync for ConfigRegistry
impl Unpin for ConfigRegistry
impl UnwindSafe for ConfigRegistry
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more