Boost logo

Boost :

From: Darryl Green (green_at_[hidden])
Date: 2002-11-15 02:03:14

> From: Arkadiy Vertleyb [mailto:vertleyb_at_[hidden]]
> > - RTL does not seem to automatically update it's views (or
> whatever it is
> > known as in RTL terminology); when a record is added to a
> table (or view),
> > it is not immediately available in all other views based on
> that table.
> This is true, although we did have an idea to address this in
> the future. I
> have to admit, at this point this is only an idea.

I'm not entirely clear on what this means in practice. If I instantiate an
operator using a table then add or delete elements from the table, I have
violated the concept that all relations are constant objects. However,
according to the (very good) docs all (?) that instantiating an operator
does is to store references to its parameters (the tables). It is only when
I obtain and dereference (?) a relation iterator (using print, or calling
begin() then dereferencing) that iteration over the tables occurs.

If I have tables which are not in fact const must I:

a) Modify the tables and create new relation iterators
b) Modify the tables and create new relation operators as well as iterators
c) Create the tables, operators and iterators from scratch whenever a table

How concrete is the idea? As a potential user of some form of in-memory
database that definitely needs relations/views based on multiple tables and
that will have insertions and deletions (not necessarily vast numbers of
them) I'm very interested in this.

Darryl Green.
