LibJS: Implement the IteratorClose abstract op and use it where needed

This commit is contained in:
Idan Horowitz 2021-06-14 13:46:02 +03:00 committed by Linus Groh
commit 2100b46d02
Notes: sideshowbarker 2024-07-18 12:14:04 +09:00
4 changed files with 46 additions and 8 deletions

View file

@ -27,6 +27,10 @@ void iterator_close(Object& iterator);
MarkedValueList iterable_to_list(GlobalObject&, Value iterable, Value method = {});
void get_iterator_values(GlobalObject&, Value value, AK::Function<IterationDecision(Value)> callback, Value method = {});
enum class CloseOnAbrupt {
No,
Yes
};
void get_iterator_values(GlobalObject&, Value value, AK::Function<IterationDecision(Value)> callback, Value method = {}, CloseOnAbrupt close_on_abrupt = CloseOnAbrupt::Yes);
}