reformatted

This commit is contained in:
Jeff Hill
2000-04-27 17:24:44 +00:00
parent 2d8fb10ef9
commit 93f840f146

View File

@@ -7,96 +7,105 @@
class fred : public tsDLNode<fred> {
public:
fred(const char * const pNameIn) : pName(pNameIn){}
void show () {printf("%s\n", pName);}
fred(const char * const pNameIn) : pName(pNameIn){}
void show () {printf("%s\n", pName);}
private:
const char * const pName;
const char * const pName;
};
class jane : public fred, public tsDLNode<jane> {
public:
jane(const char * const pNameIn) : fred(pNameIn){}
jane(const char * const pNameIn) : fred(pNameIn){}
private:
};
int main ()
{
tsDLList<fred> list;
tsDLFwdIter<fred> iter(list);
fred *pFred;
fred *pFredII;
fred *pFredBack;
tsDLList<jane> janeList;
tsDLFwdIter<jane> janeFwdIter(janeList);
tsDLBwdIter<jane> janeBwdIter(janeList);
jane *pJane;
unsigned i;
tsDLList<fred> list;
tsDLFwdIter<fred> iter(list);
fred *pFred;
fred *pFredII;
fred *pFredBack;
tsDLList<jane> janeList;
tsDLFwdIter<jane> janeFwdIter(janeList);
tsDLBwdIter<jane> janeBwdIter(janeList);
jane *pJane;
pFred = new fred("A");
pFredII = new fred("B");
pFred = new fred ("A");
pFredII = new fred ("B");
list.add(*pFred);
list.add(*pFredII);
pFredBack = iter();
assert(pFredBack == pFred);
pFredBack = iter();
assert(pFredBack == pFredII);
list.remove(*pFred);
list.add(*pFred);
pFredBack = list.get();
assert (pFredBack == pFredII);
pFredBack = list.get();
assert (pFredBack == pFred);
assert (list.count() == 0u);
list.add(*pFred);
list.add(*pFredII);
list.add(* new fred("C"));
list.add(* new fred("D"));
list.add (*pFred);
list.add (*pFredII);
pFredBack = iter ();
assert (pFredBack == pFred);
pFredBack = iter ();
assert (pFredBack == pFredII);
list.remove(*pFred);
list.add(*pFred);
pFredBack = list.get();
assert (pFredBack == pFredII);
pFredBack = list.get();
assert (pFredBack == pFred);
assert (list.count() == 0u);
list.add(*pFred);
list.add(*pFredII);
list.add(* new fred("C"));
list.add(* new fred("D"));
iter.reset();
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
iter.reset();
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
pJane = new jane("JA");
janeList.add(*pJane);
pJane = new jane("JB");
janeList.add(*pJane);
pJane = new jane("JA");
janeList.add(*pJane);
pJane = new jane("JB");
janeList.add(*pJane);
while ( (pJane = janeFwdIter()) ) {
pJane->show();
}
while ( (pJane = janeFwdIter()) ) {
pJane->show();
}
while ( (pJane = janeBwdIter()) ) {
pJane->show();
}
while ( (pJane = janeBwdIter()) ) {
pJane->show();
}
iter.reset();
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
iter.reset();
while ( (pFredBack = iter()) ) {
pFredBack->show();
}
iter.reset();
while ( (pFredBack = iter()) ) {
iter.remove();
}
assert(list.count()==0);
tsDLIterConstBD<jane> bdIter ( janeList.first () );
i = 0;
while ( bdIter != bdIter.eol () ) {
i++;
bdIter++;
}
assert ( i == janeList.count () );
janeFwdIter.reset();
while ( (pFredBack = janeFwdIter()) ) {
janeFwdIter.remove();
}
assert(janeList.count()==0);
iter.reset();
while ( ( pFredBack = iter () ) ) {
iter.remove();
}
assert(list.count()==0);
pJane = new jane("JA");
janeList.add(*pJane);
pJane = new jane("JB");
janeList.add(*pJane);
janeBwdIter.reset();
while ( (pFredBack = janeBwdIter()) ) {
janeBwdIter.remove();
}
assert(janeList.count()==0);
janeFwdIter.reset();
while ( (pFredBack = janeFwdIter()) ) {
janeFwdIter.remove();
}
assert(janeList.count()==0);
return 0;
pJane = new jane("JA");
janeList.add(*pJane);
pJane = new jane("JB");
janeList.add(*pJane);
janeBwdIter.reset();
while ( (pFredBack = janeBwdIter()) ) {
janeBwdIter.remove();
}
assert(janeList.count()==0);
return 0;
}