Rust: fix tests

This commit is contained in:
Paolo Tranquilli
2025-06-11 17:32:43 +02:00
parent bea5381420
commit 97c2dfe23f
5 changed files with 101 additions and 388 deletions

View File

@@ -1,4 +1,2 @@
unexpectedModel
| Unexpected summary found: repo::test;<crate::option::MyOption as crate::clone::Clone>::clone;Argument[self].Field[core::option::MyOption::MySome(0)].Reference;ReturnValue.Field[core::option::MyOption::MySome(0)];value;dfc-generated |
expectedModel
| Expected summary missing: repo::test;<crate::option::MyOption as crate::clone::Clone>::clone;Argument[self].Reference.Field[core::option::MyOption::MySome(0)];ReturnValue.Field[core::option::MyOption::MySome(0)];value;dfc-generated |

View File

@@ -35,7 +35,7 @@ impl<T> MyOption<T> {
}
// summary=repo::test;<crate::option::MyOption>::is_some_and;Argument[0].ReturnValue;ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::is_some_and;Argument[self].Field[core::option::MyOption::MySome(0)];Argument[0].Parameter[0];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::is_some_and;Argument[self].Field[test::option::MyOption::MySome(0)];Argument[0].Parameter[0];value;dfc-generated
pub fn is_some_and(self, f: impl FnOnce(T) -> bool) -> bool {
match self {
MyNone => false,
@@ -48,7 +48,7 @@ impl<T> MyOption<T> {
}
// summary=repo::test;<crate::option::MyOption>::is_none_or;Argument[0].ReturnValue;ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::is_none_or;Argument[self].Field[core::option::MyOption::MySome(0)];Argument[0].Parameter[0];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::is_none_or;Argument[self].Field[test::option::MyOption::MySome(0)];Argument[0].Parameter[0];value;dfc-generated
pub fn is_none_or(self, f: impl FnOnce(T) -> bool) -> bool {
match self {
MyNone => true,
@@ -56,7 +56,7 @@ impl<T> MyOption<T> {
}
}
// summary=repo::test;<crate::option::MyOption>::as_ref;Argument[self].Reference.Field[core::option::MyOption::MySome(0)];ReturnValue.Field[core::option::MyOption::MySome(0)].Reference;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::as_ref;Argument[self].Reference.Field[test::option::MyOption::MySome(0)];ReturnValue.Field[test::option::MyOption::MySome(0)].Reference;value;dfc-generated
pub fn as_ref(&self) -> MyOption<&T> {
match *self {
MySome(ref x) => MySome(x),
@@ -64,7 +64,7 @@ impl<T> MyOption<T> {
}
}
// summary=repo::test;<crate::option::MyOption>::as_mut;Argument[self].Reference.Field[core::option::MyOption::MySome(0)];ReturnValue.Field[core::option::MyOption::MySome(0)].Reference;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::as_mut;Argument[self].Reference.Field[test::option::MyOption::MySome(0)];ReturnValue.Field[test::option::MyOption::MySome(0)].Reference;value;dfc-generated
pub fn as_mut(&mut self) -> MyOption<&mut T> {
match *self {
MySome(ref mut x) => MySome(x),
@@ -96,7 +96,7 @@ impl<T> MyOption<T> {
}
}
// summary=repo::test;<crate::option::MyOption>::unwrap;Argument[self].Field[core::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::unwrap;Argument[self].Field[test::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
pub fn unwrap(self) -> T {
match self {
MySome(val) => val,
@@ -105,7 +105,7 @@ impl<T> MyOption<T> {
}
// summary=repo::test;<crate::option::MyOption>::unwrap_or;Argument[0];ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::unwrap_or;Argument[self].Field[core::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::unwrap_or;Argument[self].Field[test::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
pub fn unwrap_or(self, default: T) -> T {
match self {
MySome(x) => x,
@@ -113,7 +113,7 @@ impl<T> MyOption<T> {
}
}
// summary=repo::test;<crate::option::MyOption>::unwrap_or_else;Argument[self].Field[core::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::unwrap_or_else;Argument[self].Field[test::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::unwrap_or_else;Argument[0].ReturnValue;ReturnValue;value;dfc-generated
pub fn unwrap_or_else<F>(self, f: F) -> T
where
@@ -125,7 +125,7 @@ impl<T> MyOption<T> {
}
}
// summary=repo::test;<crate::option::MyOption>::unwrap_or_default;Argument[self].Field[core::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::unwrap_or_default;Argument[self].Field[test::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
pub fn unwrap_or_default(self) -> T
where
T: Default,
@@ -135,7 +135,7 @@ impl<T> MyOption<T> {
MyNone => T::default(),
}
}
// summary=repo::test;<crate::option::MyOption>::unwrap_unchecked;Argument[self].Field[core::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::unwrap_unchecked;Argument[self].Field[test::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
#[track_caller]
pub unsafe fn unwrap_unchecked(self) -> T {
match self {
@@ -147,8 +147,8 @@ impl<T> MyOption<T> {
// Transforming contained values
// summary=repo::test;<crate::option::MyOption>::map;Argument[0].ReturnValue;ReturnValue.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::map;Argument[self].Field[core::option::MyOption::MySome(0)];Argument[0].Parameter[0];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::map;Argument[0].ReturnValue;ReturnValue.Field[test::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::map;Argument[self].Field[test::option::MyOption::MySome(0)];Argument[0].Parameter[0];value;dfc-generated
pub fn map<U, F>(self, f: F) -> MyOption<U>
where
F: FnOnce(T) -> U,
@@ -171,7 +171,7 @@ impl<T> MyOption<T> {
// summary=repo::test;<crate::option::MyOption>::map_or;Argument[0];ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::map_or;Argument[1].ReturnValue;ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::map_or;Argument[self].Field[core::option::MyOption::MySome(0)];Argument[1].Parameter[0];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::map_or;Argument[self].Field[test::option::MyOption::MySome(0)];Argument[1].Parameter[0];value;dfc-generated
pub fn map_or<U, F>(self, default: U, f: F) -> U
where
F: FnOnce(T) -> U,
@@ -184,7 +184,7 @@ impl<T> MyOption<T> {
// summary=repo::test;<crate::option::MyOption>::map_or_else;Argument[0].ReturnValue;ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::map_or_else;Argument[1].ReturnValue;ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::map_or_else;Argument[self].Field[core::option::MyOption::MySome(0)];Argument[1].Parameter[0];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::map_or_else;Argument[self].Field[test::option::MyOption::MySome(0)];Argument[1].Parameter[0];value;dfc-generated
pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
where
D: FnOnce() -> U,
@@ -196,7 +196,7 @@ impl<T> MyOption<T> {
}
}
// summary=repo::test;<crate::option::MyOption>::ok_or;Argument[self].Field[core::option::MyOption::MySome(0)];ReturnValue.Field[core::result::Result::Ok(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::ok_or;Argument[self].Field[test::option::MyOption::MySome(0)];ReturnValue.Field[core::result::Result::Ok(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::ok_or;Argument[0];ReturnValue.Field[core::result::Result::Err(0)];value;dfc-generated
pub fn ok_or<E>(self, err: E) -> Result<T, E> {
match self {
@@ -205,7 +205,7 @@ impl<T> MyOption<T> {
}
}
// summary=repo::test;<crate::option::MyOption>::ok_or_else;Argument[self].Field[core::option::MyOption::MySome(0)];ReturnValue.Field[core::result::Result::Ok(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::ok_or_else;Argument[self].Field[test::option::MyOption::MySome(0)];ReturnValue.Field[core::result::Result::Ok(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::ok_or_else;Argument[0].ReturnValue;ReturnValue.Field[core::result::Result::Err(0)];value;dfc-generated
pub fn ok_or_else<E, F>(self, err: F) -> Result<T, E>
where
@@ -242,7 +242,7 @@ impl<T> MyOption<T> {
}
// summary=repo::test;<crate::option::MyOption>::and_then;Argument[0].ReturnValue;ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::and_then;Argument[self].Field[core::option::MyOption::MySome(0)];Argument[0].Parameter[0];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::and_then;Argument[self].Field[test::option::MyOption::MySome(0)];Argument[0].Parameter[0];value;dfc-generated
pub fn and_then<U, F>(self, f: F) -> MyOption<U>
where
F: FnOnce(T) -> MyOption<U>,
@@ -297,10 +297,10 @@ impl<T> MyOption<T> {
}
}
// summary=repo::test;<crate::option::MyOption>::insert;Argument[0];Argument[self].Reference.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::insert;Argument[0];Argument[self].Reference.Field[test::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::insert;Argument[0];ReturnValue.Reference;value;dfc-generated
// The content of `self` is overwritten so it does not flow to the return value.
// SPURIOUS-summary=repo::test;<crate::option::MyOption>::insert;Argument[self].Reference.Field[core::option::MyOption::MySome(0)];ReturnValue.Reference;value;dfc-generated
// SPURIOUS-summary=repo::test;<crate::option::MyOption>::insert;Argument[self].Reference.Field[test::option::MyOption::MySome(0)];ReturnValue.Reference;value;dfc-generated
pub fn insert(&mut self, value: T) -> &mut T {
*self = MySome(value);
@@ -308,14 +308,14 @@ impl<T> MyOption<T> {
unsafe { self.as_mut().unwrap_unchecked() }
}
// summary=repo::test;<crate::option::MyOption>::get_or_insert;Argument[0];Argument[self].Reference.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::get_or_insert;Argument[0];Argument[self].Reference.Field[test::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::get_or_insert;Argument[0];ReturnValue.Reference;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::get_or_insert;Argument[self].Reference.Field[core::option::MyOption::MySome(0)];ReturnValue.Reference;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::get_or_insert;Argument[self].Reference.Field[test::option::MyOption::MySome(0)];ReturnValue.Reference;value;dfc-generated
pub fn get_or_insert(&mut self, value: T) -> &mut T {
self.get_or_insert_with(|| value)
}
// summary=repo::test;<crate::option::MyOption>::get_or_insert_default;Argument[self].Reference.Field[core::option::MyOption::MySome(0)];ReturnValue.Reference;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::get_or_insert_default;Argument[self].Reference.Field[test::option::MyOption::MySome(0)];ReturnValue.Reference;value;dfc-generated
pub fn get_or_insert_default(&mut self) -> &mut T
where
T: Default,
@@ -323,7 +323,7 @@ impl<T> MyOption<T> {
self.get_or_insert_with(T::default)
}
// summary=repo::test;<crate::option::MyOption>::get_or_insert_with;Argument[self].Reference.Field[core::option::MyOption::MySome(0)];ReturnValue.Reference;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::get_or_insert_with;Argument[self].Reference.Field[test::option::MyOption::MySome(0)];ReturnValue.Reference;value;dfc-generated
// MISSING: Mutating `self` parameter.
pub fn get_or_insert_with<F>(&mut self, f: F) -> &mut T
where
@@ -345,7 +345,7 @@ impl<T> MyOption<T> {
replace(self, MyNone)
}
// summary=repo::test;<crate::option::MyOption>::take_if;Argument[self].Reference.Field[core::option::MyOption::MySome(0)];Argument[0].Parameter[0].Reference;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::take_if;Argument[self].Reference.Field[test::option::MyOption::MySome(0)];Argument[0].Parameter[0].Reference;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::take_if;Argument[self].Reference;ReturnValue;value;dfc-generated
// sink=repo::test;<crate::option::MyOption>::take_if;Argument[self];pointer-access;df-generated
pub fn take_if<P>(&mut self, predicate: P) -> MyOption<T>
@@ -359,15 +359,15 @@ impl<T> MyOption<T> {
}
}
// summary=repo::test;<crate::option::MyOption>::replace;Argument[0];Argument[self].Reference.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::replace;Argument[0];Argument[self].Reference.Field[test::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::replace;Argument[self].Reference;ReturnValue;value;dfc-generated
// sink=repo::test;<crate::option::MyOption>::replace;Argument[self];pointer-access;df-generated
pub fn replace(&mut self, value: T) -> MyOption<T> {
replace(self, MySome(value))
}
// summary=repo::test;<crate::option::MyOption>::zip;Argument[0].Field[core::option::MyOption::MySome(0)];ReturnValue.Field[core::option::MyOption::MySome(0)].Field[1];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::zip;Argument[self].Field[core::option::MyOption::MySome(0)];ReturnValue.Field[core::option::MyOption::MySome(0)].Field[0];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::zip;Argument[0].Field[test::option::MyOption::MySome(0)];ReturnValue.Field[test::option::MyOption::MySome(0)].Field[1];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::zip;Argument[self].Field[test::option::MyOption::MySome(0)];ReturnValue.Field[test::option::MyOption::MySome(0)].Field[0];value;dfc-generated
pub fn zip<U>(self, other: MyOption<U>) -> MyOption<(T, U)> {
match (self, other) {
(MySome(a), MySome(b)) => MySome((a, b)),
@@ -375,9 +375,9 @@ impl<T> MyOption<T> {
}
}
// summary=repo::test;<crate::option::MyOption>::zip_with;Argument[self].Field[core::option::MyOption::MySome(0)];Argument[1].Parameter[0];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::zip_with;Argument[0].Field[core::option::MyOption::MySome(0)];Argument[1].Parameter[1];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::zip_with;Argument[1].ReturnValue;ReturnValue.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::zip_with;Argument[self].Field[test::option::MyOption::MySome(0)];Argument[1].Parameter[0];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::zip_with;Argument[0].Field[test::option::MyOption::MySome(0)];Argument[1].Parameter[1];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::zip_with;Argument[1].ReturnValue;ReturnValue.Field[test::option::MyOption::MySome(0)];value;dfc-generated
pub fn zip_with<U, F, R>(self, other: MyOption<U>, f: F) -> MyOption<R>
where
F: FnOnce(T, U) -> R,
@@ -390,8 +390,8 @@ impl<T> MyOption<T> {
}
impl<T, U> MyOption<(T, U)> {
// summary=repo::test;<crate::option::MyOption>::unzip;Argument[self].Field[core::option::MyOption::MySome(0)].Field[0];ReturnValue.Field[0].Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::unzip;Argument[self].Field[core::option::MyOption::MySome(0)].Field[1];ReturnValue.Field[1].Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::unzip;Argument[self].Field[test::option::MyOption::MySome(0)].Field[0];ReturnValue.Field[0].Field[test::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::unzip;Argument[self].Field[test::option::MyOption::MySome(0)].Field[1];ReturnValue.Field[1].Field[test::option::MyOption::MySome(0)];value;dfc-generated
pub fn unzip(self) -> (MyOption<T>, MyOption<U>) {
match self {
MySome((a, b)) => (MySome(a), MySome(b)),
@@ -401,7 +401,7 @@ impl<T, U> MyOption<(T, U)> {
}
impl<T> MyOption<&T> {
// summary=repo::test;<crate::option::MyOption>::copied;Argument[self].Field[core::option::MyOption::MySome(0)].Reference;ReturnValue.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::copied;Argument[self].Field[test::option::MyOption::MySome(0)].Reference;ReturnValue.Field[test::option::MyOption::MySome(0)];value;dfc-generated
pub fn copied(self) -> MyOption<T>
where
T: Copy,
@@ -414,7 +414,7 @@ impl<T> MyOption<&T> {
}
}
// summary=repo::test;<crate::option::MyOption>::cloned;Argument[self].Field[core::option::MyOption::MySome(0)].Reference;ReturnValue.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::cloned;Argument[self].Field[test::option::MyOption::MySome(0)].Reference;ReturnValue.Field[test::option::MyOption::MySome(0)];value;dfc-generated
pub fn cloned(self) -> MyOption<T>
where
T: Clone,
@@ -427,7 +427,7 @@ impl<T> MyOption<&T> {
}
impl<T> MyOption<&mut T> {
// summary=repo::test;<crate::option::MyOption>::copied;Argument[self].Field[core::option::MyOption::MySome(0)].Reference;ReturnValue.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::copied;Argument[self].Field[test::option::MyOption::MySome(0)].Reference;ReturnValue.Field[test::option::MyOption::MySome(0)];value;dfc-generated
pub fn copied(self) -> MyOption<T>
where
T: Copy,
@@ -438,7 +438,7 @@ impl<T> MyOption<&mut T> {
}
}
// summary=repo::test;<crate::option::MyOption>::cloned;Argument[self].Field[core::option::MyOption::MySome(0)].Reference;ReturnValue.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::cloned;Argument[self].Field[test::option::MyOption::MySome(0)].Reference;ReturnValue.Field[test::option::MyOption::MySome(0)];value;dfc-generated
pub fn cloned(self) -> MyOption<T>
where
T: Clone,
@@ -451,8 +451,8 @@ impl<T> MyOption<&mut T> {
}
impl<T, E> MyOption<Result<T, E>> {
// summary=repo::test;<crate::option::MyOption>::transpose;Argument[self].Field[core::option::MyOption::MySome(0)].Field[core::result::Result::Err(0)];ReturnValue.Field[core::result::Result::Err(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::transpose;Argument[self].Field[core::option::MyOption::MySome(0)].Field[core::result::Result::Ok(0)];ReturnValue.Field[core::result::Result::Ok(0)].Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::transpose;Argument[self].Field[test::option::MyOption::MySome(0)].Field[core::result::Result::Err(0)];ReturnValue.Field[core::result::Result::Err(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::transpose;Argument[self].Field[test::option::MyOption::MySome(0)].Field[core::result::Result::Ok(0)];ReturnValue.Field[core::result::Result::Ok(0)].Field[test::option::MyOption::MySome(0)];value;dfc-generated
pub fn transpose(self) -> Result<MyOption<T>, E> {
match self {
MySome(Ok(x)) => Ok(MySome(x)),
@@ -466,7 +466,7 @@ impl<T> Clone for MyOption<T>
where
T: Clone,
{
// summary=repo::test;<crate::option::MyOption as crate::clone::Clone>::clone;Argument[self].Reference.Field[core::option::MyOption::MySome(0)];ReturnValue.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption as crate::clone::Clone>::clone;Argument[self].Field[test::option::MyOption::MySome(0)].Reference;ReturnValue.Field[test::option::MyOption::MySome(0)];value;dfc-generated
fn clone(&self) -> Self {
match self {
MySome(x) => MySome(x.clone()),
@@ -490,21 +490,21 @@ impl<T> Default for MyOption<T> {
}
impl<T> From<T> for MyOption<T> {
// summary=repo::test;<crate::option::MyOption as crate::convert::From>::from;Argument[0];ReturnValue.Field[core::option::MyOption::MySome(0)];value;dfc-generated
// summary=repo::test;<crate::option::MyOption as crate::convert::From>::from;Argument[0];ReturnValue.Field[test::option::MyOption::MySome(0)];value;dfc-generated
fn from(val: T) -> MyOption<T> {
MySome(val)
}
}
impl<'a, T> From<&'a MyOption<T>> for MyOption<&'a T> {
// summary=repo::test;<crate::option::MyOption as crate::convert::From>::from;Argument[0].Reference.Field[core::option::MyOption::MySome(0)];ReturnValue.Field[core::option::MyOption::MySome(0)].Reference;value;dfc-generated
// summary=repo::test;<crate::option::MyOption as crate::convert::From>::from;Argument[0].Reference.Field[test::option::MyOption::MySome(0)];ReturnValue.Field[test::option::MyOption::MySome(0)].Reference;value;dfc-generated
fn from(o: &'a MyOption<T>) -> MyOption<&'a T> {
o.as_ref()
}
}
impl<'a, T> From<&'a mut MyOption<T>> for MyOption<&'a mut T> {
// summary=repo::test;<crate::option::MyOption as crate::convert::From>::from;Argument[0].Reference.Field[core::option::MyOption::MySome(0)];ReturnValue.Field[core::option::MyOption::MySome(0)].Reference;value;dfc-generated
// summary=repo::test;<crate::option::MyOption as crate::convert::From>::from;Argument[0].Reference.Field[test::option::MyOption::MySome(0)];ReturnValue.Field[test::option::MyOption::MySome(0)].Reference;value;dfc-generated
fn from(o: &'a mut MyOption<T>) -> MyOption<&'a mut T> {
o.as_mut()
}
@@ -524,7 +524,7 @@ impl<T: PartialEq> PartialEq for MyOption<T> {
}
impl<T> MyOption<MyOption<T>> {
// summary=repo::test;<crate::option::MyOption>::flatten;Argument[self].Field[core::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
// summary=repo::test;<crate::option::MyOption>::flatten;Argument[self].Field[test::option::MyOption::MySome(0)];ReturnValue;value;dfc-generated
pub fn flatten(self) -> MyOption<T> {
// FIXME(const-hack): could be written with `and_then`
match self {