NEXT
Another PDT Application:
Printing Template Instantiations
#include
#include "pdb.h"
#include "pdbRoutine.h"
#include "pdbClass.h"
#include "pdbClassField.h"
int main(int argc, char *argv[]) {
PDB p(argv[1]);
if ( !p ) return 1;
for (PDB::routinevec::iterator r = p.getRoutineVec().begin();
r != p.getRoutineVec().end(); ++r) {
if ((*r)->isTemplate())
cout << (*r)->fullName() << endl;
}
for (PDB::classvec::iterator c = p.getClassVec().begin();
c != p.getClassVec().end(); ++c) {
if ((*c)->isTemplate())
cout << (*c)->fullName() << endl;
pdbClass::fieldvec f = (*c)->dataMembers();
for (pdbClass::fieldvec::iterator m = f.begin();
m != f.end(); ++m) {
if ((*m)->isTemplate())
cout << (*m)->fullName() << endl;
}
}
return 0;
}