sdd / kiddo

Kiddo
Apache License 2.0
91 stars 14 forks source link

upgrade generator to 0.8.1 (required some changes) #177

Closed cormacrelf closed 2 months ago

cormacrelf commented 3 months ago

Supersedes #157.

The main change was that yield_ is now only available for Scope<'scope, 'static, ...>. Is replacement for Scope<'scope, 'a, ...> is yield_unsafe, but the safety requirements are hard to evaluate, not having written this code. So now we call yield_with, because we didn't need the return value anyway (which is "the current para", whatever that means) and it's not unsafe.

The resulting code has one fewer compiler fence, which may have a very slight perf bonus but I don't think you'll be able to measure it.