Closed
Bug 541519
Opened 15 years ago
Closed 15 years ago
iterators and for each loops
Categories
(Servo Graveyard :: Rust, enhancement)
Servo Graveyard
Rust
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: graydon, Assigned: dherman)
Details
Implement iterator fns and loops (those fns that 'put' to the output slot then jump back to the caller loop without destroying frame, and can be resumed, before they ret).
This requires use of 'extra args' on the function-call convention, to pass resume PC values back and forth between caller and callee. See Trans.trans_call. Will also produce some exciting interactions with unwinding and stack growth. Somewhat advanced task.
| Reporter | ||
Updated•15 years ago
|
Assignee: nobody → dherman
| Reporter | ||
Updated•15 years ago
|
Summary: iterator fns and loops → iterators and for each loops
| Reporter | ||
Comment 1•15 years ago
|
||
Appears to be working well enough now to close this (as of about rev 8ff95d43f9ef). Still plenty of details to implement (nesting, early exits, variable modes, etc.) but those can be filed as followups.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Updated•15 years ago
|
Group: servo
You need to log in
before you can comment on or make changes to this bug.
Description
•