lm_studio_api/chat/role.rs
1use crate::prelude::*;
2
3// A message role
4#[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq)]
5pub enum Role {
6 #[serde(rename = "system")]
7 System,
8 #[serde(rename = "user")]
9 User,
10 #[serde(rename = "assistant")]
11 Assistant,
12}
13
14impl Role {
15 /// Returns true if it's the system role
16 pub fn is_system(&self) -> bool {
17 self == &Self::System
18 }
19
20 /// Returns true if it's the user role
21 pub fn is_user(&self) -> bool {
22 self == &Self::User
23 }
24
25 /// Returns true if it's the assistant role
26 pub fn is_assist(&self) -> bool {
27 self == &Self::Assistant
28 }
29}