pub struct TursoClient { /* private fields */ }Expand description
Turso/libSQL database client for persistent storage
Supports both remote Turso databases and local SQLite files. Handles connection pooling and schema initialization automatically.
Implementations§
Source§impl TursoClient
impl TursoClient
Sourcepub async fn new_remote(url: String, auth_token: String) -> Result<Self>
pub async fn new_remote(url: String, auth_token: String) -> Result<Self>
Create a new TursoClient with remote Turso database
Sourcepub async fn new_local(path: &str) -> Result<Self>
pub async fn new_local(path: &str) -> Result<Self>
Create a new TursoClient with local SQLite database
Sourcepub async fn new_memory() -> Result<Self>
pub async fn new_memory() -> Result<Self>
Create a new TursoClient with in-memory database (useful for testing)
Sourcepub async fn new(url: String, auth_token: String) -> Result<Self>
pub async fn new(url: String, auth_token: String) -> Result<Self>
Create client based on URL format - routes to local or remote
Sourcepub fn connection(&self) -> Result<Connection>
pub fn connection(&self) -> Result<Connection>
Get a raw database connection (prefer operation_conn for most uses)
Sourcepub async fn operation_conn(&self) -> Result<Connection>
pub async fn operation_conn(&self) -> Result<Connection>
Get the connection to use for operations (handles in-memory vs file-based)
Sourcepub async fn create_user(
&self,
id: &str,
email: &str,
password_hash: &str,
name: &str,
) -> Result<()>
pub async fn create_user( &self, id: &str, email: &str, password_hash: &str, name: &str, ) -> Result<()>
Creates a new user account
§Arguments
id- Unique user identifieremail- User’s email address (must be unique)password_hash- Argon2 hashed passwordname- User’s display name
Sourcepub async fn get_user_by_email(&self, email: &str) -> Result<Option<User>>
pub async fn get_user_by_email(&self, email: &str) -> Result<Option<User>>
Retrieves a user by email address
Sourcepub async fn create_session(
&self,
id: &str,
user_id: &str,
token_hash: &str,
expires_at: i64,
) -> Result<()>
pub async fn create_session( &self, id: &str, user_id: &str, token_hash: &str, expires_at: i64, ) -> Result<()>
Creates a new authentication session
§Arguments
id- Unique session identifieruser_id- ID of the authenticated usertoken_hash- Hash of the JWT refresh tokenexpires_at- Unix timestamp when session expires
Sourcepub async fn create_conversation(
&self,
id: &str,
user_id: &str,
title: Option<&str>,
) -> Result<()>
pub async fn create_conversation( &self, id: &str, user_id: &str, title: Option<&str>, ) -> Result<()>
Creates a new conversation for a user
Sourcepub async fn conversation_exists(&self, conversation_id: &str) -> Result<bool>
pub async fn conversation_exists(&self, conversation_id: &str) -> Result<bool>
Checks if a conversation exists by ID
Sourcepub async fn add_message(
&self,
id: &str,
conversation_id: &str,
role: MessageRole,
content: &str,
) -> Result<()>
pub async fn add_message( &self, id: &str, conversation_id: &str, role: MessageRole, content: &str, ) -> Result<()>
Adds a message to a conversation
Sourcepub async fn get_conversation_history(
&self,
conversation_id: &str,
) -> Result<Vec<Message>>
pub async fn get_conversation_history( &self, conversation_id: &str, ) -> Result<Vec<Message>>
Retrieves all messages in a conversation, ordered by timestamp
Sourcepub async fn get_conversation(
&self,
conversation_id: &str,
) -> Result<Conversation>
pub async fn get_conversation( &self, conversation_id: &str, ) -> Result<Conversation>
Get a conversation by ID
Sourcepub async fn get_user_conversations(
&self,
user_id: &str,
) -> Result<Vec<Conversation>>
pub async fn get_user_conversations( &self, user_id: &str, ) -> Result<Vec<Conversation>>
Get all conversations for a user
Sourcepub async fn update_conversation_title(
&self,
conversation_id: &str,
title: Option<&str>,
) -> Result<()>
pub async fn update_conversation_title( &self, conversation_id: &str, title: Option<&str>, ) -> Result<()>
Update conversation title
Sourcepub async fn delete_conversation(&self, conversation_id: &str) -> Result<()>
pub async fn delete_conversation(&self, conversation_id: &str) -> Result<()>
Delete a conversation and all its messages
Sourcepub async fn store_memory_fact(&self, fact: &MemoryFact) -> Result<()>
pub async fn store_memory_fact(&self, fact: &MemoryFact) -> Result<()>
Stores a memory fact for a user (upserts on id)
Sourcepub async fn get_user_memory(&self, user_id: &str) -> Result<Vec<MemoryFact>>
pub async fn get_user_memory(&self, user_id: &str) -> Result<Vec<MemoryFact>>
Retrieves all memory facts for a user
Sourcepub async fn store_preference(
&self,
user_id: &str,
preference: &Preference,
) -> Result<()>
pub async fn store_preference( &self, user_id: &str, preference: &Preference, ) -> Result<()>
Stores a user preference (upserts on user_id + category + key)
Sourcepub async fn get_user_preferences(
&self,
user_id: &str,
) -> Result<Vec<Preference>>
pub async fn get_user_preferences( &self, user_id: &str, ) -> Result<Vec<Preference>>
Retrieves all preferences for a user
Sourcepub async fn create_user_agent(&self, agent: &UserAgent) -> Result<()>
pub async fn create_user_agent(&self, agent: &UserAgent) -> Result<()>
Create a new user-defined agent
Sourcepub async fn get_user_agent(&self, id: &str) -> Result<Option<UserAgent>>
pub async fn get_user_agent(&self, id: &str) -> Result<Option<UserAgent>>
Get a user agent by ID
Sourcepub async fn get_user_agent_by_name(
&self,
user_id: &str,
name: &str,
) -> Result<Option<UserAgent>>
pub async fn get_user_agent_by_name( &self, user_id: &str, name: &str, ) -> Result<Option<UserAgent>>
Get a user agent by user_id and name
Sourcepub async fn get_public_agent_by_name(
&self,
name: &str,
) -> Result<Option<UserAgent>>
pub async fn get_public_agent_by_name( &self, name: &str, ) -> Result<Option<UserAgent>>
Get a public agent by name (for community discovery)
Sourcepub async fn list_user_agents(&self, user_id: &str) -> Result<Vec<UserAgent>>
pub async fn list_user_agents(&self, user_id: &str) -> Result<Vec<UserAgent>>
List all agents for a user
Sourcepub async fn list_public_agents(
&self,
limit: u32,
offset: u32,
) -> Result<Vec<UserAgent>>
pub async fn list_public_agents( &self, limit: u32, offset: u32, ) -> Result<Vec<UserAgent>>
List public agents (community/marketplace)
Sourcepub async fn update_user_agent(&self, agent: &UserAgent) -> Result<()>
pub async fn update_user_agent(&self, agent: &UserAgent) -> Result<()>
Update a user agent
Sourcepub async fn delete_user_agent(&self, id: &str, user_id: &str) -> Result<bool>
pub async fn delete_user_agent(&self, id: &str, user_id: &str) -> Result<bool>
Delete a user agent
Sourcepub async fn increment_agent_usage(&self, id: &str) -> Result<()>
pub async fn increment_agent_usage(&self, id: &str) -> Result<()>
Increment usage count for an agent
Sourcepub async fn log_agent_execution(
&self,
execution: &AgentExecution,
) -> Result<()>
pub async fn log_agent_execution( &self, execution: &AgentExecution, ) -> Result<()>
Log an agent execution for analytics
Sourcepub async fn get_user_executions(
&self,
user_id: &str,
limit: u32,
) -> Result<Vec<AgentExecution>>
pub async fn get_user_executions( &self, user_id: &str, limit: u32, ) -> Result<Vec<AgentExecution>>
Get execution history for a user
Trait Implementations§
Source§impl DatabaseClient for TursoClient
impl DatabaseClient for TursoClient
Source§fn create_user<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
id: &'life1 str,
email: &'life2 str,
password_hash: &'life3 str,
name: &'life4 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn create_user<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
id: &'life1 str,
email: &'life2 str,
password_hash: &'life3 str,
name: &'life4 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Source§fn get_user_by_email<'life0, 'life1, 'async_trait>(
&'life0 self,
email: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<User>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_by_email<'life0, 'life1, 'async_trait>(
&'life0 self,
email: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<User>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn get_user_by_id<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<User>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_by_id<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<User>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn create_session<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
id: &'life1 str,
user_id: &'life2 str,
token_hash: &'life3 str,
expires_at: i64,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn create_session<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
id: &'life1 str,
user_id: &'life2 str,
token_hash: &'life3 str,
expires_at: i64,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Source§fn validate_session<'life0, 'life1, 'async_trait>(
&'life0 self,
token_hash: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn validate_session<'life0, 'life1, 'async_trait>(
&'life0 self,
token_hash: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn delete_session<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn delete_session<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn delete_session_by_token_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
token_hash: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn delete_session_by_token_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
token_hash: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn create_conversation<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
id: &'life1 str,
user_id: &'life2 str,
title: Option<&'life3 str>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn create_conversation<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
id: &'life1 str,
user_id: &'life2 str,
title: Option<&'life3 str>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Source§fn conversation_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
conversation_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn conversation_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
conversation_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn get_user_conversations<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<ConversationSummary>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_conversations<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<ConversationSummary>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn add_message<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
id: &'life1 str,
conversation_id: &'life2 str,
role: MessageRole,
content: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn add_message<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
id: &'life1 str,
conversation_id: &'life2 str,
role: MessageRole,
content: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Source§fn get_conversation_history<'life0, 'life1, 'async_trait>(
&'life0 self,
conversation_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_conversation_history<'life0, 'life1, 'async_trait>(
&'life0 self,
conversation_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn store_memory_fact<'life0, 'life1, 'async_trait>(
&'life0 self,
fact: &'life1 MemoryFact,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn store_memory_fact<'life0, 'life1, 'async_trait>(
&'life0 self,
fact: &'life1 MemoryFact,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn get_user_memory<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<MemoryFact>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_memory<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<MemoryFact>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn get_memory_by_category<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
category: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<MemoryFact>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn get_memory_by_category<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
category: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<MemoryFact>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§fn store_preference<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
preference: &'life2 Preference,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn store_preference<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
preference: &'life2 Preference,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§fn get_user_preferences<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<Preference>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_preferences<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<Preference>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn get_preference<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
category: &'life2 str,
key: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<Option<Preference>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn get_preference<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
user_id: &'life1 str,
category: &'life2 str,
key: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<Option<Preference>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Auto Trait Implementations§
impl !Freeze for TursoClient
impl !RefUnwindSafe for TursoClient
impl Send for TursoClient
impl Sync for TursoClient
impl Unpin for TursoClient
impl !UnwindSafe for TursoClient
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::RequestSource§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more