diff options
| author | sigoden <sigoden@gmail.com> | 2024-05-11 09:23:59 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-05-11 09:23:59 +0800 |
| commit | 1e8fc5d269985048d8d3023a615b94a8908571cf (patch) | |
| tree | e1e43a67bf1e7b5d878d2a7cac5d25a07cda8bdc /src/config/input.rs | |
| parent | 058299e500af86adbc065eced542e108ae325458 (diff) | |
| download | aichat-1e8fc5d269985048d8d3023a615b94a8908571cf.tar.gz | |
refactor: list roles includeing builtin roles (#499)
Diffstat (limited to 'src/config/input.rs')
| -rw-r--r-- | src/config/input.rs | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/config/input.rs b/src/config/input.rs index b7b896c..0527b49 100644 --- a/src/config/input.rs +++ b/src/config/input.rs @@ -106,7 +106,7 @@ impl Input { } pub fn session<'a>(&self, session: &'a Option<Session>) -> Option<&'a Session> { - if self.context.in_session { + if self.context.session { session.as_ref() } else { None @@ -114,7 +114,7 @@ impl Input { } pub fn session_mut<'a>(&self, session: &'a mut Option<Session>) -> Option<&'a mut Session> { - if self.context.in_session { + if self.context.session { session.as_mut() } else { None @@ -199,12 +199,19 @@ impl Input { #[derive(Debug, Clone, Default)] pub struct InputContext { role: Option<Role>, - in_session: bool, + session: bool, } impl InputContext { - pub fn new(role: Option<Role>, in_session: bool) -> Self { - Self { role, in_session } + pub fn new(role: Option<Role>, session: bool) -> Self { + Self { role, session } + } + + pub fn role(role: Role) -> Self { + Self { + role: Some(role), + session: false, + } } } |
