]> www.ginac.de Git - ginac.git/blobdiff - ginac/fderivative.cpp
Remove 'level' argument of evalf().
[ginac.git] / ginac / fderivative.cpp
index bb8dbd44fe988de887027062eaa1b38a3dd9f30f..b8ad07a8ada48b63b4c316445b622805026dc1a8 100644 (file)
@@ -3,7 +3,7 @@
  *  Implementation of abstract derivatives of functions. */
 
 /*
- *  GiNaC Copyright (C) 1999-2011 Johannes Gutenberg University Mainz, Germany
+ *  GiNaC Copyright (C) 1999-2016 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
@@ -55,7 +55,7 @@ fderivative::fderivative(unsigned ser, const paramset & params, const exvector &
 {
 }
 
-fderivative::fderivative(unsigned ser, const paramset & params, std::auto_ptr<exvector> vp) : function(ser, vp), parameter_set(params)
+fderivative::fderivative(unsigned ser, const paramset & params, exvector && v) : function(ser, std::move(v)), parameter_set(params)
 {
 }
 
@@ -139,13 +139,8 @@ void fderivative::do_print_tree(const print_tree & c, unsigned level) const
        c.s << std::string(level + c.delta_indent, ' ') << "=====" << std::endl;
 }
 
-ex fderivative::eval(int level) const
+ex fderivative::eval() const
 {
-       if (level > 1) {
-               // first evaluate children, then we will end up here again
-               return fderivative(serial, parameter_set, evalchildren(level));
-       }
-
        // No parameters specified? Then return the function itself
        if (parameter_set.empty())
                return function(serial, seq);
@@ -157,13 +152,6 @@ ex fderivative::eval(int level) const
        return this->hold();
 }
 
-/** Numeric evaluation falls back to evaluation of arguments.
- *  @see basic::evalf */
-ex fderivative::evalf(int level) const
-{
-       return basic::evalf(level);
-}
-
 /** The series expansion of derivatives falls back to Taylor expansion.
  *  @see basic::series */
 ex fderivative::series(const relational & r, int order, unsigned options) const
@@ -176,9 +164,9 @@ ex fderivative::thiscontainer(const exvector & v) const
        return fderivative(serial, parameter_set, v);
 }
 
-ex fderivative::thiscontainer(std::auto_ptr<exvector> vp) const
+ex fderivative::thiscontainer(exvector && v) const
 {
-       return fderivative(serial, parameter_set, vp);
+       return fderivative(serial, parameter_set, std::move(v));
 }
 
 /** Implementation of ex::diff() for derivatives. It applies the chain rule.