Corretto errore sui record array e aggiunti TContainer

git-svn-id: svn://10.65.10.50/trunk@2197 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
matteo 1995-11-22 13:55:07 +00:00
parent 5508be2558
commit 13108c8c4a
2 changed files with 10 additions and 6 deletions

View File

@ -1,4 +1,4 @@
// $Id: relation.cpp,v 1.69 1995-11-13 12:08:51 guy Exp $
// $Id: relation.cpp,v 1.70 1995-11-22 13:55:00 matteo Exp $
// relation.cpp
// fv 12/8/93
// relation class for isam files
@ -1757,7 +1757,7 @@ int TRecord_array::read(TRectype* filter)
for (int e = err; e == NOERR && good(*rec); e = rec->next(f))
{
add_row(rec);
rec = (TRectype*)filter->dup();
rec = (TRectype*)(key().dup());
}
delete rec;
}

View File

@ -1,4 +1,4 @@
/* $Id: relation.h,v 1.29 1995-11-13 12:08:55 guy Exp $ */
/* $Id: relation.h,v 1.30 1995-11-22 13:55:07 matteo Exp $ */
// join.h
// fv 12/8/93
// join class for isam files
@ -185,7 +185,7 @@ class TExpression;
typedef bool (*FILTERFUNCTION)(const TRelation* r);
class TCursor : public TObject
class TCursor : public TContainer
{
TRelation* _if;
int _nkey;
@ -222,8 +222,12 @@ public:
TRecnotype operator =(const TRecnotype nr); // Va alla posizione nr
TRecnotype operator +=(const TRecnotype nr);
TRecnotype operator -=(const TRecnotype npos) { return operator +=(-npos); }
TRecnotype operator ++() { return operator +=(1); }
TRecnotype operator --() { return operator -=(1); }
TObject* first_item( ){ operator =( 0 ); return &curr( ); }
TObject* succ_item( ){ operator +=( 1 ); return &curr( ); }
TObject* pred_item( ){ operator -=( 1 ); return &curr( );}
TObject* last_item( ){ operator =( items( ) -1 ); return &curr( ); }
long objects( ) { return items( ); }
TRecnotype& pos() { return _pos; }
TRecnotype items();
TRecnotype size() const { return file().eod(); }