1use crate::message::Message;
2
3pub trait IntoMessage {
5 fn into_message(self) -> Message;
6}
7
8impl IntoMessage for Message {
9 fn into_message(self) -> Message { self }
10}
11
12impl IntoMessage for &str {
13 fn into_message(self) -> Message { Message::text(self) }
14}
15
16impl IntoMessage for String {
17 fn into_message(self) -> Message { Message::text(self) }
18}
19
20impl IntoMessage for i64 {
21 fn into_message(self) -> Message { Message::int(self) }
22}
23
24impl IntoMessage for i32 {
25 fn into_message(self) -> Message { Message::int(self as i64) }
26}
27
28impl IntoMessage for f64 {
29 fn into_message(self) -> Message { Message::float(self) }
30}
31
32impl IntoMessage for f32 {
33 fn into_message(self) -> Message { Message::float(self as f64) }
34}
35
36impl IntoMessage for bool {
37 fn into_message(self) -> Message { Message::bool(self) }
38}
39
40impl IntoMessage for Vec<u8> {
41 fn into_message(self) -> Message { Message::bytes(self) }
42}
43
44impl IntoMessage for () {
45 fn into_message(self) -> Message { Message::nil() }
46}