#include <ginac/expairseq.h>
+namespace GiNaC {
+
/** Product of expressions. */
class mul : public expairseq
{
unsigned return_type_tinfo(void) const;
ex thisexpairseq(epvector const & v, ex const & oc) const;
ex thisexpairseq(epvector * vp, ex const & oc) const;
- void printpair(ostream & os, expair const & p,
- unsigned upper_precedence) const;
expair split_ex_to_pair(ex const & e) const;
expair combine_ex_with_coeff_to_pair(ex const & e,
ex const & c) const;
extern const mul some_mul;
extern type_info const & typeid_mul;
-#define ex_to_mul(X) static_cast<mul const &>(*(X).bp)
+// utility functions
+inline const mul &ex_to_mul(const ex &e)
+{
+ return static_cast<const mul &>(*e.bp);
+}
+
+} // namespace GiNaC
#endif // ndef __GINAC_MUL_H__