pub(crate) fn deserialize_obj<I: lightning::util::ser::Readable>(s: u8slice) -> Result<I, lightning::ln::msgs::DecodeError> {
I::read(&mut s.to_slice())
}
+pub(crate) fn maybe_deserialize_obj<I: lightning::util::ser::MaybeReadable>(s: u8slice) -> Result<Option<I>, lightning::ln::msgs::DecodeError> {
+ I::read(&mut s.to_slice())
+}
pub(crate) fn deserialize_obj_arg<A, I: lightning::util::ser::ReadableArgs<A>>(s: u8slice, args: A) -> Result<I, lightning::ln::msgs::DecodeError> {
I::read(&mut s.to_slice(), args)
}
Str { chars: self.as_ptr(), len: self.len(), chars_is_owned: false }
}
}
+impl Into<Str> for &mut &'static str {
+ fn into(self) -> Str {
+ let us: &'static str = *self;
+ us.into()
+ }
+}
+
impl Str {
pub(crate) fn into_str(&self) -> &'static str {
if self.len == 0 { return ""; }