From 4f8d895154c602fb51a7694911efd96d52129f82 Mon Sep 17 00:00:00 2001 From: sigoden Date: Wed, 24 Apr 2024 07:56:24 +0800 Subject: refactor: handling of system message (#432) --- src/client/message.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/client/message.rs') diff --git a/src/client/message.rs b/src/client/message.rs index 1a454ab..f9978c5 100644 --- a/src/client/message.rs +++ b/src/client/message.rs @@ -85,6 +85,21 @@ impl MessageContent { } } } + + pub fn to_text(&self) -> String { + match self { + MessageContent::Text(text) => text.to_string(), + MessageContent::Array(list) => { + let mut parts = vec![]; + for item in list { + if let MessageContentPart::Text { text } = item { + parts.push(text.clone()) + } + } + parts.join("\n\n") + } + } + } } #[derive(Debug, Clone, Deserialize, Serialize)] -- cgit v1.2.3