+
Point of view
All features
class LOOP_STACK
Summary
Manage LOOP_ITEM. When a new loop is pushed, all jobs in the currently running loop are suspended until the new loop ends (all jobs end or break).
Direct parents
Insert list: ANY
Overview
Creation features
{ANY}
Features
{}
{ANY}
loop_stack: FAST_ARRAY[LOOP_ITEM]
writable attribute
{}
make
effective procedure
{}
ensure
stop: BOOLEAN
writable attribute
{ANY}
new_loop
effective procedure
{ANY}
create new empty loop (ie without job) and push it on the stack
push_loop (l: LOOP_ITEM)
effective procedure
{ANY}
l is restarted and pushed on the stack
require
  • l /= Void
ensure
run
effective procedure
{ANY}
run current_loop (ie execute it's jobs)
require ensure
add_job (j: JOB)
effective procedure
{ANY}
Add a job to the current loop
require
  • j /= Void
break
effective procedure
{ANY}
Exit current loop
require ensure
exit_all
effective procedure
{ANY}
TODO: Really needed feature ?
require ensure
current_loop: LOOP_ITEM
effective function
{ANY}
TODO: change this function into an attribute to be more efficient