X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Ffunction.hppy;h=a5605115164e97cd8e8982c1abb0790abb1dfea6;hp=5d7ca098c9ece9fc7a241c95f664798191db961f;hb=acae7ab5a4dc94d1f54ba794f32f5764cdb4d704;hpb=798d53ebb4da4e8e3865ed7bd7f31412fe2be3a7 diff --git a/ginac/function.hppy b/ginac/function.hppy index 5d7ca098..a5605115 100644 --- a/ginac/function.hppy +++ b/ginac/function.hppy @@ -6,7 +6,7 @@ * This file was generated automatically from function.hppy. * Please do not modify it directly, edit function.hppy instead! * - * GiNaC Copyright (C) 1999-2010 Johannes Gutenberg University Mainz, Germany + * GiNaC Copyright (C) 1999-2015 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 @@ -59,6 +59,7 @@ typedef ex (* real_part_funcp)(); typedef ex (* imag_part_funcp)(); typedef ex (* expand_funcp)(); typedef ex (* derivative_funcp)(); +typedef ex (* expl_derivative_funcp)(); typedef ex (* power_funcp)(); typedef ex (* series_funcp)(); typedef void (* print_funcp)(); @@ -73,6 +74,7 @@ typedef ex (* real_part_funcp_@N@)( @args@ ); typedef ex (* imag_part_funcp_@N@)( @args@ ); typedef ex (* expand_funcp_@N@)( @args@, unsigned ); typedef ex (* derivative_funcp_@N@)( @args@, unsigned ); +typedef ex (* expl_derivative_funcp_@N@)( @args@, const symbol & ); typedef ex (* power_funcp_@N@)( @args@, const ex & ); typedef ex (* series_funcp_@N@)( @args@, const relational &, int, unsigned ); typedef void (* print_funcp_@N@)( @args@, const print_context & ); @@ -87,6 +89,7 @@ typedef ex (* @fp@_funcp_exvector)(const exvector &); --- typedef ex (* expand_funcp_exvector)(const exvector &, unsigned); typedef ex (* derivative_funcp_exvector)(const exvector &, unsigned); +typedef ex (* expl_derivative_funcp_exvector)(const exvector &, const symbol &); typedef ex (* power_funcp_exvector)(const exvector &, const ex &); typedef ex (* series_funcp_exvector)(const exvector &, const relational &, int, unsigned); typedef void (* print_funcp_exvector)(const exvector &, const print_context &); @@ -142,8 +145,8 @@ public: unsigned get_nparams() const { return nparams; } protected: - bool has_derivative() const { return derivative_f != NULL; } - bool has_power() const { return power_f != NULL; } + bool has_derivative() const { return derivative_f != nullptr; } + bool has_power() const { return power_f != nullptr; } void test_and_set_nparams(unsigned n); void set_print_func(unsigned id, print_funcp f); @@ -159,6 +162,7 @@ protected: imag_part_funcp imag_part_f; expand_funcp expand_f; derivative_funcp derivative_f; + expl_derivative_funcp expl_derivative_f; power_funcp power_f; series_funcp series_f; std::vector print_dispatch_table; @@ -182,6 +186,7 @@ protected: bool imag_part_use_exvector_args; bool expand_use_exvector_args; bool derivative_use_exvector_args; + bool expl_derivative_use_exvector_args; bool power_use_exvector_args; bool series_use_exvector_args; bool print_use_exvector_args; @@ -218,7 +223,7 @@ public: // end of generated lines function(unsigned ser, const exprseq & es); function(unsigned ser, const exvector & v, bool discardable = false); - function(unsigned ser, std::auto_ptr vp); + function(unsigned ser, exvector && v); // functions overriding virtual functions from base classes public: @@ -231,7 +236,7 @@ public: unsigned calchash() const; ex series(const relational & r, int order, unsigned options = 0) const; ex thiscontainer(const exvector & v) const; - ex thiscontainer(std::auto_ptr vp) const; + ex thiscontainer(exvector && v) const; ex conjugate() const; ex real_part() const; ex imag_part() const; @@ -251,6 +256,7 @@ protected: // non-virtual functions in this class protected: ex pderivative(unsigned diff_param) const; // partial differentiation + ex expl_derivative(const symbol & s) const; // partial differentiation static std::vector & registered_functions(); bool lookup_remember_table(ex & result) const; void store_remember_table(ex const & result) const;