Skip to content

Commit e1a6ae6

Browse files
Transform the inner expression of yield expressions (#66)
1 parent cb8a508 commit e1a6ae6

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

async-stream-impl/src/lib.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,8 @@ impl VisitMut for Scrub<'_> {
114114
syn::Expr::Yield(yield_expr) => {
115115
self.has_yielded = true;
116116

117+
syn::visit_mut::visit_expr_yield_mut(self, yield_expr);
118+
117119
let value_expr = yield_expr.expr.as_ref().unwrap_or(&self.unit);
118120

119121
// let ident = &self.yielder;

async-stream/tests/try_stream.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,3 +78,10 @@ async fn multi_try() {
7878
values
7979
);
8080
}
81+
82+
#[allow(unused)]
83+
fn issue_65() -> impl Stream<Item = Result<u32, ()>> {
84+
try_stream! {
85+
yield Err(())?;
86+
}
87+
}

0 commit comments

Comments
 (0)