cbor_core/value/
string.rs1use super::*;
2
3impl<'a> From<char> for Value<'a> {
4 fn from(value: char) -> Self {
5 Self::TextString(value.to_string().into())
6 }
7}
8
9impl<'a> From<&'a str> for Value<'a> {
10 fn from(value: &'a str) -> Self {
11 Self::TextString(value.into())
12 }
13}
14
15impl<'a> From<String> for Value<'a> {
16 fn from(value: String) -> Self {
17 Self::TextString(value.into())
18 }
19}
20
21impl<'a> From<&'a String> for Value<'a> {
22 fn from(value: &'a String) -> Self {
23 Self::TextString(value.as_str().into())
24 }
25}
26
27impl<'a> From<Box<str>> for Value<'a> {
28 fn from(value: Box<str>) -> Self {
29 Self::TextString(String::from(value).into())
30 }
31}
32
33impl<'a> From<Cow<'a, str>> for Value<'a> {
34 fn from(value: Cow<'a, str>) -> Self {
35 Self::TextString(value)
36 }
37}
38
39impl<'a> TryFrom<Value<'a>> for String {
40 type Error = Error;
41 fn try_from(value: Value<'a>) -> Result<Self> {
42 value.into_string()
43 }
44}
45
46impl<'a> TryFrom<&'a Value<'a>> for &'a str {
47 type Error = Error;
48 fn try_from(value: &'a Value<'a>) -> Result<Self> {
49 value.as_str()
50 }
51}
52
53impl<'a> TryFrom<&'a mut Value<'a>> for &'a mut String {
54 type Error = Error;
55 fn try_from(value: &'a mut Value<'a>) -> Result<Self> {
56 value.as_string_mut()
57 }
58}