1 // aux-build:issue-85454.rs
2 // build-aux-docs
3 #![crate_name = "foo"]
4 
5 extern crate issue_85454;
6 
7 // @has foo/trait.FromResidual.html
8 // @has - '//pre[@class="rust trait"]' 'pub trait FromResidual<R = <Self as Try>::Residual> { fn from_residual(residual: R) -> Self; }'
9 pub trait FromResidual<R = <Self as Try>::Residual> {
from_residual(residual: R) -> Self10     fn from_residual(residual: R) -> Self;
11 }
12 
13 pub trait Try: FromResidual {
14     type Output;
15     type Residual;
from_output(output: Self::Output) -> Self16     fn from_output(output: Self::Output) -> Self;
branch(self) -> ControlFlow<Self::Residual, Self::Output>17     fn branch(self) -> ControlFlow<Self::Residual, Self::Output>;
18 }
19 
20 pub enum ControlFlow<B, C = ()> {
21     Continue(C),
22     Break(B),
23 }
24 
25 pub mod reexport {
26     // @has foo/reexport/trait.FromResidual.html
27     // @has - '//pre[@class="rust trait"]' 'pub trait FromResidual<R = <Self as Try>::Residual> { fn from_residual(residual: R) -> Self; }'
28     pub use issue_85454::*;
29 }
30