Beatsaber Rust Utilities: A Beatsaber V3 parsing library.
beatsaber beatmap
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Implemented other `From` conversion for loose enums.

+20 -6
+20 -6
src/utils.rs
··· 40 40 S: serde::Serializer, 41 41 { 42 42 match self { 43 - $( 44 - $name::$variant => str::serialize($value, serializer), 45 - )+ 43 + $( $name::$variant => str::serialize($value, serializer), )+ 46 44 $name::Unknown(val) => str::serialize(val, serializer), 47 45 } 48 46 } ··· 53 51 match value.as_str() { 54 52 $( $value => $name::$variant, )+ 55 53 other => $name::Unknown(other.to_string()), 54 + } 55 + } 56 + } 57 + 58 + impl From<$name> for String { 59 + fn from(value: $name) -> Self { 60 + match value { 61 + $( $name::$variant => $value, )+ 62 + $name::Unknown(val) => val, 56 63 } 57 64 } 58 65 } ··· 97 104 S: serde::Serializer, 98 105 { 99 106 match self { 100 - $( 101 - $name::$variant => $ty::serialize(&$value, serializer), 102 - )+ 107 + $( $name::$variant => $ty::serialize(&$value, serializer), )+ 103 108 $name::Unknown(val) => $ty::serialize(val, serializer), 104 109 } 105 110 } ··· 110 115 match value { 111 116 $( $value => $name::$variant, )+ 112 117 other => $name::Unknown(other), 118 + } 119 + } 120 + } 121 + 122 + impl From<$name> for $ty { 123 + fn from(value: $name) -> Self { 124 + match value { 125 + $( $name::$variant => $value, )+ 126 + $name::Unknown(val) => val, 113 127 } 114 128 } 115 129 }