Lines Matching refs:state
37 // 3.Let state be generator.[[GeneratorState]].
39 JSGeneratorState state = generator->GetGeneratorState();
40 // 4.If state is executing, throw a TypeError exception.
41 if (state == JSGeneratorState::EXECUTING) {
44 // 5.Return state.
45 return state;
51 // 1.Let state be ? GeneratorValidate(generator).
53 JSGeneratorState state = GeneratorValidate(thread, gen);
56 // 2.If state is completed, return CreateIterResultObject(undefined, true).
57 if (state == JSGeneratorState::COMPLETED) {
62 // 3.Assert: state is either suspendedStart or suspendedYield.
63 ASSERT_PRINT(state == JSGeneratorState::SUSPENDED_START ||
64 state == JSGeneratorState::SUSPENDED_YIELD,
65 "state is neither suspendedStart nor suspendedYield");
90 // 1.Let state be ? GeneratorValidate(generator).
92 JSGeneratorState state = GeneratorValidate(thread, gen);
95 // 2.If state is suspendedStart, then
97 // b.Once a generator enters the completed state it never leaves it and its associated execution context is
98 // never resumed. Any execution state associated with generator can be discarded at this point.
99 // c.Set state to completed.
100 if (state == JSGeneratorState::SUSPENDED_START) {
101 state = JSGeneratorState::COMPLETED;
102 generator->SetGeneratorState(state);
105 // 3.If state is completed, then
109 if (state == JSGeneratorState::COMPLETED) {
118 // 4.Assert: state is suspendedYield.
119 ASSERT_PRINT(state == JSGeneratorState::SUSPENDED_YIELD, "state is not suspendedYield");