X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Fncmul.h;h=03b47ca7ae119c9337a31045f0c509469265ba7b;hp=1b833b0b638847852a03e0e236b6e1c1d487cbc2;hb=8bcccf834ad41e94a1a4f3a0304c2945b228b4f4;hpb=6b3768e8c544739ae53321539cb4d1e3112ded1b diff --git a/ginac/ncmul.h b/ginac/ncmul.h index 1b833b0b..03b47ca7 100644 --- a/ginac/ncmul.h +++ b/ginac/ncmul.h @@ -2,12 +2,30 @@ * * Interface to GiNaC's non-commutative products of expressions. */ -#ifndef _NCMUL_H_ -#define _NCMUL_H_ +/* + * GiNaC Copyright (C) 1999 Johannes Gutenberg University Mainz, Germany + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ -#include "exprseq.h" +#ifndef __GINAC_NCMUL_H__ +#define __GINAC_NCMUL_H__ -class ncmul; +#include + +namespace GiNaC { /** Non-commutative product of expressions. */ class ncmul : public exprseq @@ -90,7 +108,12 @@ extern type_info const & typeid_ncmul; ex nonsimplified_ncmul(exvector const & v); ex simplified_ncmul(exvector const & v); -#define ex_to_ncmul(X) static_cast(*(X).bp) +// utility functions +inline const ncmul &ex_to_ncmul(const ex &e) +{ + return static_cast (*e.bp); +} -#endif // ndef _NCMUL_H_ +} // namespace GiNaC +#endif // ndef __GINAC_NCMUL_H__