@@ -138,8 +138,7 @@ cdef extern from "<symengine/symengine_rcp.h>" namespace "SymEngine":
138138 RCP[const Add] rcp_static_cast_Add " SymEngine::rcp_static_cast<const SymEngine::Add>" (RCP[const Basic] & b) nogil
139139 RCP[const Mul] rcp_static_cast_Mul " SymEngine::rcp_static_cast<const SymEngine::Mul>" (RCP[const Basic] & b) nogil
140140 RCP[const Pow] rcp_static_cast_Pow " SymEngine::rcp_static_cast<const SymEngine::Pow>" (RCP[const Basic] & b) nogil
141- RCP[const TrigFunction] rcp_static_cast_TrigFunction " SymEngine::rcp_static_cast<const SymEngine::TrigFunction>" (RCP[const Basic] & b) nogil
142- RCP[const HyperbolicFunction] rcp_static_cast_HyperbolicFunction " SymEngine::rcp_static_cast<const SymEngine::HyperbolicFunction>" (RCP[const Basic] & b) nogil
141+ RCP[const OneArgFunction] rcp_static_cast_OneArgFunction " SymEngine::rcp_static_cast<const SymEngine::OneArgFunction>" (RCP[const Basic] & b) nogil
143142 RCP[const FunctionSymbol] rcp_static_cast_FunctionSymbol " SymEngine::rcp_static_cast<const SymEngine::FunctionSymbol>" (RCP[const Basic] & b) nogil
144143 RCP[const FunctionWrapper] rcp_static_cast_FunctionWrapper " SymEngine::rcp_static_cast<const SymEngine::FunctionWrapper>" (RCP[const Basic] & b) nogil
145144 RCP[const Abs] rcp_static_cast_Abs " SymEngine::rcp_static_cast<const SymEngine::Abs>" (RCP[const Basic] & b) nogil
@@ -445,9 +444,12 @@ cdef extern from "<symengine/functions.h>" namespace "SymEngine":
445444 cdef cppclass Function(Basic):
446445 pass
447446
448- cdef cppclass TrigFunction (Function):
447+ cdef cppclass OneArgFunction (Function):
449448 RCP[const Basic] get_arg() nogil
450449
450+ cdef cppclass TrigFunction(OneArgFunction):
451+ pass
452+
451453 cdef cppclass Sin(TrigFunction):
452454 pass
453455
@@ -484,8 +486,8 @@ cdef extern from "<symengine/functions.h>" namespace "SymEngine":
484486 cdef cppclass ASec(TrigFunction):
485487 pass
486488
487- cdef cppclass HyperbolicFunction(Function ):
488- RCP[const Basic] get_arg() nogil
489+ cdef cppclass HyperbolicFunction(OneArgFunction ):
490+ pass
489491
490492 cdef cppclass Sinh(HyperbolicFunction):
491493 pass
@@ -542,16 +544,16 @@ cdef extern from "<symengine/functions.h>" namespace "SymEngine":
542544 vec_basic get_variables() nogil
543545 vec_basic get_point() nogil
544546
545- cdef cppclass Abs(Function ):
546- RCP[const Basic] get_arg() nogil
547+ cdef cppclass Abs(OneArgFunction ):
548+ pass
547549
548550 cdef cppclass Max(Function):
549551 pass
550552
551553 cdef cppclass Min(Function):
552554 pass
553555
554- cdef cppclass Gamma(Function ):
556+ cdef cppclass Gamma(OneArgFunction ):
555557 pass
556558
557559 cdef cppclass ATan2(Function):
@@ -656,17 +658,17 @@ cdef extern from "<symengine/matrix.h>" namespace "SymEngine":
656658 bool is_a_DenseMatrix " SymEngine::is_a<SymEngine::DenseMatrix>" (const MatrixBase & b) nogil
657659 DenseMatrix* static_cast_DenseMatrix " static_cast<SymEngine::DenseMatrix*>" (const MatrixBase * a)
658660 void inverse_FFLU " SymEngine::inverse_fraction_free_LU" (const DenseMatrix & A,
659- DenseMatrix & B) nogil
660- void pivoted_LU (const DenseMatrix & A, DenseMatrix & L, DenseMatrix & U, vector[int ] & P) nogil
661- void pivoted_LU_solve (const DenseMatrix & A, const DenseMatrix & b, DenseMatrix & x) nogil
661+ DenseMatrix & B) nogil except +
662+ void pivoted_LU (const DenseMatrix & A, DenseMatrix & L, DenseMatrix & U, vector[int ] & P) nogil except +
663+ void pivoted_LU_solve (const DenseMatrix & A, const DenseMatrix & b, DenseMatrix & x) nogil except +
662664 void inverse_GJ " SymEngine::inverse_gauss_jordan" (const DenseMatrix & A,
663- DenseMatrix & B) nogil
665+ DenseMatrix & B) nogil except +
664666 void FFLU_solve " SymEngine::fraction_free_LU_solve" (const DenseMatrix & A,
665- const DenseMatrix & b, DenseMatrix & x) nogil
667+ const DenseMatrix & b, DenseMatrix & x) nogil except +
666668 void FFGJ_solve " SymEngine::fraction_free_gauss_jordan_solve" (const DenseMatrix & A,
667- const DenseMatrix & b, DenseMatrix & x) nogil
669+ const DenseMatrix & b, DenseMatrix & x) nogil except +
668670 void LDL_solve " SymEngine::LDL_solve" (const DenseMatrix & A, const DenseMatrix & b,
669- DenseMatrix & x) nogil
671+ DenseMatrix & x) nogil except +
670672 void jacobian " SymEngine::sjacobian" (const DenseMatrix & A,
671673 const DenseMatrix & x, DenseMatrix & result) nogil except +
672674 void diff " SymEngine::sdiff" (const DenseMatrix & A,
0 commit comments