#include "idx.h"
#include "debugmsg.h"
-#ifndef NO_GINAC_NAMESPACE
+#ifndef NO_NAMESPACE_GINAC
namespace GiNaC {
-#endif // ndef NO_GINAC_NAMESPACE
+#endif // ndef NO_NAMESPACE_GINAC
GINAC_IMPLEMENT_REGISTERED_CLASS(indexed, exprseq)
destroy(0);
}
-indexed::indexed(indexed const & other)
+indexed::indexed(const indexed & other)
{
debugmsg("indexed copy constructor",LOGLEVEL_CONSTRUCT);
copy (other);
}
-indexed const & indexed::operator=(indexed const & other)
+const indexed & indexed::operator=(const indexed & other)
{
debugmsg("indexed operator=",LOGLEVEL_ASSIGNMENT);
if (this != &other) {
// protected
-void indexed::copy(indexed const & other)
+void indexed::copy(const indexed & other)
{
inherited::copy(other);
}
// public
-indexed::indexed(ex const & i1) : inherited(i1)
+indexed::indexed(const ex & i1) : inherited(i1)
{
debugmsg("indexed constructor from ex",LOGLEVEL_CONSTRUCT);
tinfo_key=TINFO_indexed;
GINAC_ASSERT(all_of_type_idx());
}
-indexed::indexed(ex const & i1, ex const & i2) : inherited(i1,i2)
+indexed::indexed(const ex & i1, const ex & i2) : inherited(i1,i2)
{
debugmsg("indexed constructor from ex,ex",LOGLEVEL_CONSTRUCT);
tinfo_key=TINFO_indexed;
GINAC_ASSERT(all_of_type_idx());
}
-indexed::indexed(ex const & i1, ex const & i2, ex const & i3)
+indexed::indexed(const ex & i1, const ex & i2, const ex & i3)
: inherited(i1,i2,i3)
{
debugmsg("indexed constructor from ex,ex,ex",LOGLEVEL_CONSTRUCT);
GINAC_ASSERT(all_of_type_idx());
}
-indexed::indexed(ex const & i1, ex const & i2, ex const & i3, ex const & i4)
+indexed::indexed(const ex & i1, const ex & i2, const ex & i3, const ex & i4)
: inherited(i1,i2,i3,i4)
{
debugmsg("indexed constructor from ex,ex,ex,ex",LOGLEVEL_CONSTRUCT);
GINAC_ASSERT(all_of_type_idx());
}
-indexed::indexed(exvector const & iv) : inherited(iv)
+indexed::indexed(const exvector & iv) : inherited(iv)
{
debugmsg("indexed constructor from exvector",LOGLEVEL_CONSTRUCT);
tinfo_key=TINFO_indexed;
indexed::indexed(const archive_node &n, const lst &sym_lst) : inherited(n, sym_lst)
{
debugmsg("indexed constructor from archive_node", LOGLEVEL_CONSTRUCT);
+ tinfo_key = TINFO_indexed;
}
/** Unarchive the object. */
// protected
-int indexed::compare_same_type(basic const & other) const
+/** Implementation of ex::diff() for an indexed object. It always returns 0.
+ * @see ex::diff */
+ex indexed::derivative(const symbol & s) const
+{
+ return _ex0();
+}
+
+int indexed::compare_same_type(const basic & other) const
{
GINAC_ASSERT(is_of_type(other,indexed));
return inherited::compare_same_type(other);
}
-bool indexed::is_equal_same_type(basic const & other) const
+bool indexed::is_equal_same_type(const basic & other) const
{
GINAC_ASSERT(is_of_type(other,indexed));
return inherited::is_equal_same_type(other);
return tinfo_key;
}
-ex indexed::thisexprseq(exvector const & v) const
+ex indexed::thisexprseq(const exvector & v) const
{
return indexed(v);
}
//////////
const indexed some_indexed;
-type_info const & typeid_indexed=typeid(some_indexed);
+const type_info & typeid_indexed=typeid(some_indexed);
-#ifndef NO_GINAC_NAMESPACE
+#ifndef NO_NAMESPACE_GINAC
} // namespace GiNaC
-#endif // ndef NO_GINAC_NAMESPACE
+#endif // ndef NO_NAMESPACE_GINAC