[GiNaC-list] var list
Ralf Stephan
ralf at ark.in-berlin.de
Tue Oct 5 12:21:03 CEST 2004
This must be a faq:
Is there a function that returns a lst of all variables in an ex?
Or, what's wrong with the following (which leaves symbols empty)?
class CollectSymbols_Visitor
: public visitor,
public symbol::visitor
{
public:
lst symbols;
CollectSymbols_Visitor() {}
void visit (const symbol& x)
{
for (lst::const_iterator i = symbols.begin(); i != symbols.end(); i++)
if (*i == x)
return;
symbols.append(x);
}
};
int main()
{
symbol x("x");
ex e = x - 2;
CollectSymbols_Visitor collector;
e.accept (collector);
const lst& sym = collector.symbols;
cout << sym << endl;
}
More information about the GiNaC-list
mailing list