+
Point of view
All features
class ITERATOR_ON_AVL_DICTIONARY [V_, K_]
Summary
Direct parents
Inherit list: ITERATOR
Insert list: AVL_TREE_ITERATOR
Class invariant
Overview
Creation features
{ABSTRACT_AVL_DICTIONARY}
  • make (a_dico: ABSTRACT_AVL_DICTIONARY[V_, K_])
Features
{ANY}
  • start
    Positions the iterator to the first object in the aggregate to be traversed.
  • is_off: BOOLEAN
    Returns True when there are no more objects in the sequence.
  • item: TUPLE 2[V_, K_]
    Returns the object at the current position in the sequence.
  • next
    Positions the iterator to the next object in the sequence.
{}
  • make (a_dico: ABSTRACT_AVL_DICTIONARY[V_, K_])
  • dico: ABSTRACT_AVL_DICTIONARY[V_, K_]
{ANY}
{ANY}
Check that the underlying traversable has not changed
{ANY}
Agent-based features:
{ANY}
Invariant on generation` dynamics
{}
{}
{RECYCLING_POOL}
  • recycle
    Do whatever needs to be done to free resources or recycle other objects when recycling this one
{}
start
effective procedure
{ANY}
Positions the iterator to the first object in the aggregate to be traversed.
ensure
  • is_valid
is_off: BOOLEAN
effective function
{ANY}
Returns True when there are no more objects in the sequence.
require
  • is_valid
ensure
  • generation = old generation
  • is_valid
item: TUPLE 2[V_, K_]
effective function
{ANY}
Returns the object at the current position in the sequence.
require
  • is_valid
  • not is_off
ensure
  • generation = old generation
  • is_valid
next
effective procedure
{ANY}
Positions the iterator to the next object in the sequence.
require
  • is_valid
  • not is_off
ensure
  • generation = old generation
  • is_valid
make (a_dico: ABSTRACT_AVL_DICTIONARY[V_, K_])
effective procedure
{}
ensure
dico: ABSTRACT_AVL_DICTIONARY[V_, K_]
writable attribute
{}
iterable_generation: INTEGER_32
effective function
{ANY}
is_valid: BOOLEAN
frozen
effective function
{ANY}
generation: INTEGER_32
deferred function
{ANY}
for_each (action: PROCEDURE[TUPLE[TUPLE 1[E_]]])
effective procedure
{ANY}
Apply action to every item of Current.
See also for_all, exists, aggregate.
for_all (test: FUNCTION[TUPLE[TUPLE 1[E_]]]): BOOLEAN
effective function
{ANY}
Do all items satisfy test?
See also for_each, exists, aggregate.
exists (test: FUNCTION[TUPLE[TUPLE 1[E_]]]): BOOLEAN
effective function
{ANY}
Does at least one item satisfy test?
See also for_each, for_all, aggregate.
aggregate (action: FUNCTION[TUPLE[TUPLE 2[E_, E_], E_]], initial: E_): E_
effective function
{ANY}
Aggregate all the elements starting from the initial value.
See also for_each, for_all, exists.
generation_for_invariant: INTEGER_32
writable attribute
{}
generation_only_grows: BOOLEAN
effective function
{}
nodes: STACK[AVL_TREE_NODE[E_]]
writable attribute
{}
cur: AVL_TREE_NODE[E_]
writable attribute
{}
go_leftmost (node: AVL_TREE_NODE[E_])
effective procedure
{}
require
go_next_node (node: AVL_TREE_NODE[E_])
effective procedure
{}
require
go_first (root: AVL_TREE_NODE[E_])
effective procedure
{}
go_next
effective procedure
{}
require
recycle
effective procedure
Do whatever needs to be done to free resources or recycle other objects when recycling this one
new_nodes: STACK[AVL_TREE_NODE[E_]]
effective function
{}
nodes_pool: RECYCLING_POOL[STACK[AVL_TREE_NODE[E_]]]
effective function
{}
nodes_pool_memory: RECYCLING_POOL[STACK[AVL_TREE_NODE[E_]]]
writable attribute
{}