Skip to content

Instantly share code, notes, and snippets.

@isuruf
Created July 12, 2015 16:07
Show Gist options
  • Save isuruf/ab8b43da7f0e27364e0d to your computer and use it in GitHub Desktop.
Save isuruf/ab8b43da7f0e27364e0d to your computer and use it in GitHub Desktop.
symengine_conversions
/* Generated by Cython 0.22 */
/* BEGIN: Cython Metadata
{
"distutils": {
"language": "c++",
"libraries": [
"symengine",
"gmpxx",
"gmp"
],
"depends": [
"/home/isuru/projects/sage/src/setup.py",
"/home/isuru/projects/sage/src/sage/ext/ccobject.h",
"/home/isuru/projects/sage/local/include/gmp.h",
"/home/isuru/projects/sage/local/include/symengine/basic.h",
"/home/isuru/projects/sage/local/include/gmpxx.h",
"/home/isuru/projects/sage/local/include/mpc.h",
"/home/isuru/projects/sage/src/sage/libs/ntl/ntlwrap.cpp",
"/home/isuru/projects/sage/src/sage/libs/ntl/ntlwrap.h",
"/home/isuru/projects/sage/local/include/mpfr.h",
"/home/isuru/projects/sage/local/include/pari/pari.h",
"/home/isuru/projects/sage/local/include/python2.7/pythread.h",
"/home/isuru/projects/sage/local/include/python2.7/Python.h",
"setup.py"
],
"extra_compile_args": [
"-std=c++0x",
"-fno-strict-aliasing",
"-w"
],
"library_dirs": [
"/home/isuru/projects/sage/local/lib"
],
"include_dirs": [
"/home/isuru/projects/sage/local/include",
"/home/isuru/projects/sage/local/include/python2.7",
"/home/isuru/projects/sage/local/lib/python2.7/site-packages/numpy/core/include",
"/home/isuru/projects/sage/src",
"/home/isuru/projects/sage/src/sage/ext",
"/home/isuru/projects/sage/src/build/cythonized/sage/ext"
]
}
}
END: Cython Metadata */
#define PY_SSIZE_T_CLEAN
#ifndef CYTHON_USE_PYLONG_INTERNALS
#ifdef PYLONG_BITS_IN_DIGIT
#define CYTHON_USE_PYLONG_INTERNALS 0
#else
#include "pyconfig.h"
#ifdef PYLONG_BITS_IN_DIGIT
#define CYTHON_USE_PYLONG_INTERNALS 1
#else
#define CYTHON_USE_PYLONG_INTERNALS 0
#endif
#endif
#endif
#include "Python.h"
#ifndef Py_PYTHON_H
#error Python headers needed to compile C extensions, please install development version of Python.
#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03020000)
#error Cython requires Python 2.6+ or Python 3.2+.
#else
#define CYTHON_ABI "0_22"
#include <stddef.h>
#ifndef offsetof
#define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
#endif
#if !defined(WIN32) && !defined(MS_WINDOWS)
#ifndef __stdcall
#define __stdcall
#endif
#ifndef __cdecl
#define __cdecl
#endif
#ifndef __fastcall
#define __fastcall
#endif
#endif
#ifndef DL_IMPORT
#define DL_IMPORT(t) t
#endif
#ifndef DL_EXPORT
#define DL_EXPORT(t) t
#endif
#ifndef PY_LONG_LONG
#define PY_LONG_LONG LONG_LONG
#endif
#ifndef Py_HUGE_VAL
#define Py_HUGE_VAL HUGE_VAL
#endif
#ifdef PYPY_VERSION
#define CYTHON_COMPILING_IN_PYPY 1
#define CYTHON_COMPILING_IN_CPYTHON 0
#else
#define CYTHON_COMPILING_IN_PYPY 0
#define CYTHON_COMPILING_IN_CPYTHON 1
#endif
#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag)
#define Py_OptimizeFlag 0
#endif
#define __PYX_BUILD_PY_SSIZE_T "n"
#define CYTHON_FORMAT_SSIZE_T "z"
#if PY_MAJOR_VERSION < 3
#define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
#define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) \
PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
#define __Pyx_DefaultClassType PyClass_Type
#else
#define __Pyx_BUILTIN_MODULE_NAME "builtins"
#define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) \
PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
#define __Pyx_DefaultClassType PyType_Type
#endif
#if PY_MAJOR_VERSION >= 3
#define Py_TPFLAGS_CHECKTYPES 0
#define Py_TPFLAGS_HAVE_INDEX 0
#define Py_TPFLAGS_HAVE_NEWBUFFER 0
#endif
#if PY_VERSION_HEX < 0x030400a1 && !defined(Py_TPFLAGS_HAVE_FINALIZE)
#define Py_TPFLAGS_HAVE_FINALIZE 0
#endif
#if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND)
#define CYTHON_PEP393_ENABLED 1
#define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ? \
0 : _PyUnicode_Ready((PyObject *)(op)))
#define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u)
#define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
#define __Pyx_PyUnicode_KIND(u) PyUnicode_KIND(u)
#define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u)
#define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i)
#else
#define CYTHON_PEP393_ENABLED 0
#define __Pyx_PyUnicode_READY(op) (0)
#define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u)
#define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i]))
#define __Pyx_PyUnicode_KIND(u) (sizeof(Py_UNICODE))
#define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u))
#define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i]))
#endif
#if CYTHON_COMPILING_IN_PYPY
#define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b)
#define __Pyx_PyUnicode_ConcatSafe(a, b) PyNumber_Add(a, b)
#define __Pyx_PyFrozenSet_Size(s) PyObject_Size(s)
#else
#define __Pyx_PyUnicode_Concat(a, b) PyUnicode_Concat(a, b)
#define __Pyx_PyUnicode_ConcatSafe(a, b) ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ? \
PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b))
#define __Pyx_PyFrozenSet_Size(s) PySet_Size(s)
#endif
#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b))
#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyString_Format(a, b) PyUnicode_Format(a, b)
#else
#define __Pyx_PyString_Format(a, b) PyString_Format(a, b)
#endif
#if PY_MAJOR_VERSION >= 3
#define PyBaseString_Type PyUnicode_Type
#define PyStringObject PyUnicodeObject
#define PyString_Type PyUnicode_Type
#define PyString_Check PyUnicode_Check
#define PyString_CheckExact PyUnicode_CheckExact
#endif
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj)
#define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj)
#else
#define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj))
#define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj))
#endif
#ifndef PySet_CheckExact
#define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type)
#endif
#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
#if PY_MAJOR_VERSION >= 3
#define PyIntObject PyLongObject
#define PyInt_Type PyLong_Type
#define PyInt_Check(op) PyLong_Check(op)
#define PyInt_CheckExact(op) PyLong_CheckExact(op)
#define PyInt_FromString PyLong_FromString
#define PyInt_FromUnicode PyLong_FromUnicode
#define PyInt_FromLong PyLong_FromLong
#define PyInt_FromSize_t PyLong_FromSize_t
#define PyInt_FromSsize_t PyLong_FromSsize_t
#define PyInt_AsLong PyLong_AsLong
#define PyInt_AS_LONG PyLong_AS_LONG
#define PyInt_AsSsize_t PyLong_AsSsize_t
#define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask
#define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
#define PyNumber_Int PyNumber_Long
#endif
#if PY_MAJOR_VERSION >= 3
#define PyBoolObject PyLongObject
#endif
#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY
#ifndef PyUnicode_InternFromString
#define PyUnicode_InternFromString(s) PyUnicode_FromString(s)
#endif
#endif
#if PY_VERSION_HEX < 0x030200A4
typedef long Py_hash_t;
#define __Pyx_PyInt_FromHash_t PyInt_FromLong
#define __Pyx_PyInt_AsHash_t PyInt_AsLong
#else
#define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t
#define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t
#endif
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func))
#else
#define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass)
#endif
#ifndef CYTHON_INLINE
#if defined(__GNUC__)
#define CYTHON_INLINE __inline__
#elif defined(_MSC_VER)
#define CYTHON_INLINE __inline
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#define CYTHON_INLINE inline
#else
#define CYTHON_INLINE
#endif
#endif
#ifndef CYTHON_RESTRICT
#if defined(__GNUC__)
#define CYTHON_RESTRICT __restrict__
#elif defined(_MSC_VER) && _MSC_VER >= 1400
#define CYTHON_RESTRICT __restrict
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#define CYTHON_RESTRICT restrict
#else
#define CYTHON_RESTRICT
#endif
#endif
#ifdef NAN
#define __PYX_NAN() ((float) NAN)
#else
static CYTHON_INLINE float __PYX_NAN() {
/* Initialize NaN. The sign is irrelevant, an exponent with all bits 1 and
a nonzero mantissa means NaN. If the first bit in the mantissa is 1, it is
a quiet NaN. */
float value;
memset(&value, 0xFF, sizeof(value));
return value;
}
#endif
#define __Pyx_void_to_None(void_result) (void_result, Py_INCREF(Py_None), Py_None)
#ifdef __cplusplus
template<typename T>
void __Pyx_call_destructor(T* x) {
x->~T();
}
template<typename T>
class __Pyx_FakeReference {
public:
__Pyx_FakeReference() : ptr(NULL) { }
__Pyx_FakeReference(T& ref) : ptr(&ref) { }
T *operator->() { return ptr; }
operator T&() { return *ptr; }
private:
T *ptr;
};
#endif
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y)
#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y)
#else
#define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y)
#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y)
#endif
#ifndef __PYX_EXTERN_C
#ifdef __cplusplus
#define __PYX_EXTERN_C extern "C"
#else
#define __PYX_EXTERN_C extern
#endif
#endif
#if defined(WIN32) || defined(MS_WINDOWS)
#define _USE_MATH_DEFINES
#endif
#include <math.h>
#define __PYX_HAVE__sage__symbolic__symengine_conversions
#define __PYX_HAVE_API__sage__symbolic__symengine_conversions
#include "string.h"
#include "stdio.h"
#include "gmp.h"
#include "ccobject.h"
#include "sage/libs/ntl/ntlwrap.cpp"
#include "sage/libs/ntl/ntlwrap.h"
#include "stdint.h"
#include "pythread.h"
#include "mpfr.h"
#include <symengine/symengine_rcp.h>
#include <symengine/basic.h>
#include <symengine/symbol.h>
#include <symengine/number.h>
#include <symengine/integer.h>
#include <symengine/rational.h>
#include <symengine/complex.h>
#include <symengine/real_double.h>
#include <symengine/complex_double.h>
#include <symengine/constants.h>
#include <symengine/add.h>
#include <symengine/mul.h>
#include <symengine/pow.h>
#include <symengine/functions.h>
#include <symengine/real_mpfr.h>
#include <symengine/complex_mpc.h>
#include <symengine/matrix.h>
#include <symengine/ntheory.h>
#include <symengine/visitor.h>
#include <symengine/eval_double.h>
#include <symengine/eval_mpfr.h>
#include <symengine/eval_mpc.h>
#include <symengine/symengine_rcp.h>
#include <symengine/basic.h>
#include <symengine/symbol.h>
#include <symengine/number.h>
#include <symengine/integer.h>
#include <symengine/rational.h>
#include <symengine/complex.h>
#include <symengine/real_double.h>
#include <symengine/complex_double.h>
#include <symengine/constants.h>
#include <symengine/add.h>
#include <symengine/mul.h>
#include <symengine/pow.h>
#include <symengine/functions.h>
#include <symengine/real_mpfr.h>
#include <symengine/complex_mpc.h>
#include <symengine/matrix.h>
#include <symengine/ntheory.h>
#include <symengine/visitor.h>
#include <symengine/eval_double.h>
#include <symengine/eval_mpfr.h>
#include <symengine/eval_mpc.h>
#include "pari/pari.h"
#include "mpc.h"
#include <string>
#include "ios"
#include "new"
#include "stdexcept"
#include "typeinfo"
#include <utility>
#include <map>
#include <vector>
#include "gmpxx.h"
#include <set>
#ifdef _OPENMP
#include <omp.h>
#endif /* _OPENMP */
#ifdef PYREX_WITHOUT_ASSERTIONS
#define CYTHON_WITHOUT_ASSERTIONS
#endif
#ifndef CYTHON_UNUSED
# if defined(__GNUC__)
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
# define CYTHON_UNUSED __attribute__ ((__unused__))
# else
# define CYTHON_UNUSED
# endif
# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
# define CYTHON_UNUSED __attribute__ ((__unused__))
# else
# define CYTHON_UNUSED
# endif
#endif
typedef struct {PyObject **p; char *s; const Py_ssize_t n; const char* encoding;
const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;
#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0
#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT 0
#define __PYX_DEFAULT_STRING_ENCODING ""
#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString
#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#define __Pyx_fits_Py_ssize_t(v, type, is_signed) ( \
(sizeof(type) < sizeof(Py_ssize_t)) || \
(sizeof(type) > sizeof(Py_ssize_t) && \
likely(v < (type)PY_SSIZE_T_MAX || \
v == (type)PY_SSIZE_T_MAX) && \
(!is_signed || likely(v > (type)PY_SSIZE_T_MIN || \
v == (type)PY_SSIZE_T_MIN))) || \
(sizeof(type) == sizeof(Py_ssize_t) && \
(is_signed || likely(v < (type)PY_SSIZE_T_MAX || \
v == (type)PY_SSIZE_T_MAX))) )
static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject*);
static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s))
#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
#define __Pyx_PyBytes_FromString PyBytes_FromString
#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
#if PY_MAJOR_VERSION < 3
#define __Pyx_PyStr_FromString __Pyx_PyBytes_FromString
#define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#else
#define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString
#define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize
#endif
#define __Pyx_PyObject_AsSString(s) ((signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s)
#define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s)
#define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s)
#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s)
#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
#if PY_MAJOR_VERSION < 3
static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
{
const Py_UNICODE *u_end = u;
while (*u_end++) ;
return (size_t)(u_end - u - 1);
}
#else
#define __Pyx_Py_UNICODE_strlen Py_UNICODE_strlen
#endif
#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u))
#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode
#define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode
#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None)
#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False))
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x);
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
#if CYTHON_COMPILING_IN_CPYTHON
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#else
#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
#endif
#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x))
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
static int __Pyx_sys_getdefaultencoding_not_ascii;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
PyObject* sys;
PyObject* default_encoding = NULL;
PyObject* ascii_chars_u = NULL;
PyObject* ascii_chars_b = NULL;
const char* default_encoding_c;
sys = PyImport_ImportModule("sys");
if (!sys) goto bad;
default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL);
Py_DECREF(sys);
if (!default_encoding) goto bad;
default_encoding_c = PyBytes_AsString(default_encoding);
if (!default_encoding_c) goto bad;
if (strcmp(default_encoding_c, "ascii") == 0) {
__Pyx_sys_getdefaultencoding_not_ascii = 0;
} else {
char ascii_chars[128];
int c;
for (c = 0; c < 128; c++) {
ascii_chars[c] = c;
}
__Pyx_sys_getdefaultencoding_not_ascii = 1;
ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL);
if (!ascii_chars_u) goto bad;
ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL);
if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) {
PyErr_Format(
PyExc_ValueError,
"This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.",
default_encoding_c);
goto bad;
}
Py_DECREF(ascii_chars_u);
Py_DECREF(ascii_chars_b);
}
Py_DECREF(default_encoding);
return 0;
bad:
Py_XDECREF(default_encoding);
Py_XDECREF(ascii_chars_u);
Py_XDECREF(ascii_chars_b);
return -1;
}
#endif
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL)
#else
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL)
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
static char* __PYX_DEFAULT_STRING_ENCODING;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
PyObject* sys;
PyObject* default_encoding = NULL;
char* default_encoding_c;
sys = PyImport_ImportModule("sys");
if (!sys) goto bad;
default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL);
Py_DECREF(sys);
if (!default_encoding) goto bad;
default_encoding_c = PyBytes_AsString(default_encoding);
if (!default_encoding_c) goto bad;
__PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c));
if (!__PYX_DEFAULT_STRING_ENCODING) goto bad;
strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c);
Py_DECREF(default_encoding);
return 0;
bad:
Py_XDECREF(default_encoding);
return -1;
}
#endif
#endif
/* Test for GCC > 2.95 */
#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)))
#define likely(x) __builtin_expect(!!(x), 1)
#define unlikely(x) __builtin_expect(!!(x), 0)
#else /* !__GNUC__ or GCC < 2.95 */
#define likely(x) (x)
#define unlikely(x) (x)
#endif /* __GNUC__ */
static PyObject *__pyx_m;
static PyObject *__pyx_d;
static PyObject *__pyx_b;
static PyObject *__pyx_empty_tuple;
static PyObject *__pyx_empty_bytes;
static int __pyx_lineno;
static int __pyx_clineno = 0;
static const char * __pyx_cfilenm= __FILE__;
static const char *__pyx_filename;
#if !defined(CYTHON_CCOMPLEX)
#if defined(__cplusplus)
#define CYTHON_CCOMPLEX 1
#elif defined(_Complex_I)
#define CYTHON_CCOMPLEX 1
#else
#define CYTHON_CCOMPLEX 0
#endif
#endif
#if CYTHON_CCOMPLEX
#ifdef __cplusplus
#include <complex>
#else
#include <complex.h>
#endif
#endif
#if CYTHON_CCOMPLEX && !defined(__cplusplus) && defined(__sun__) && defined(__GNUC__)
#undef _Complex_I
#define _Complex_I 1.0fj
#endif
static const char *__pyx_f[] = {
"sage/symbolic/symengine_conversions.pyx",
"sage/structure/element.pxd",
"type.pxd",
"bool.pxd",
"complex.pxd",
"sage/structure/sage_object.pxd",
"sage/structure/generators.pxd",
"sage/structure/category_object.pxd",
"sage/structure/coerce_dict.pxd",
"sage/structure/parent_old.pxd",
"sage/structure/parent_base.pxd",
"sage/structure/parent_gens.pxd",
"sage/rings/ring.pxd",
"sage/structure/parent.pxd",
"sage/categories/map.pxd",
"sage/categories/morphism.pxd",
"sage/rings/integer.pxd",
"sage/rings/rational.pxd",
"sage/rings/real_mpfr.pxd",
"sage/rings/complex_mpc.pxd",
"symengine_wrapper.pxd",
};
#if CYTHON_CCOMPLEX
#ifdef __cplusplus
typedef ::std::complex< double > __pyx_t_double_complex;
#else
typedef double _Complex __pyx_t_double_complex;
#endif
#else
typedef struct { double real, imag; } __pyx_t_double_complex;
#endif
/*--- Type declarations ---*/
struct __pyx_obj_4sage_9structure_11sage_object_SageObject;
struct __pyx_obj_4sage_9structure_10generators_Generators;
struct __pyx_obj_4sage_9structure_10generators_Generators_finite;
struct __pyx_obj_4sage_9structure_10generators_Generators_list;
struct __pyx_obj_4sage_9structure_10generators_Generators_naturals;
struct __pyx_obj_4sage_9structure_10generators_Generators_none;
struct __pyx_obj_4sage_9structure_10generators_Generators_lazy_all;
struct __pyx_obj_4sage_9structure_15category_object_CategoryObject;
struct __pyx_obj_4sage_9structure_11coerce_dict_MonoDict;
struct __pyx_obj_4sage_9structure_11coerce_dict_TripleDict;
struct __pyx_obj_4sage_9structure_6parent_Parent;
struct __pyx_obj_4sage_9structure_10parent_old_Parent;
struct __pyx_obj_4sage_9structure_11parent_base_ParentWithBase;
struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithGens;
struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens;
struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens;
struct __pyx_obj_4sage_5rings_4ring_Ring;
struct __pyx_obj_4sage_5rings_4ring_CommutativeRing;
struct __pyx_obj_4sage_5rings_4ring_IntegralDomain;
struct __pyx_obj_4sage_5rings_4ring_DedekindDomain;
struct __pyx_obj_4sage_5rings_4ring_PrincipalIdealDomain;
struct __pyx_obj_4sage_5rings_4ring_EuclideanDomain;
struct __pyx_obj_4sage_5rings_4ring_Field;
struct __pyx_obj_4sage_5rings_4ring_Algebra;
struct __pyx_obj_4sage_5rings_4ring_CommutativeAlgebra;
struct __pyx_obj_4sage_9structure_7element_Element;
struct __pyx_obj_4sage_9structure_7element_ElementWithCachedMethod;
struct __pyx_obj_4sage_9structure_7element_ModuleElement;
struct __pyx_obj_4sage_9structure_7element_MonoidElement;
struct __pyx_obj_4sage_9structure_7element_MultiplicativeGroupElement;
struct __pyx_obj_4sage_9structure_7element_AdditiveGroupElement;
struct __pyx_obj_4sage_9structure_7element_RingElement;
struct __pyx_obj_4sage_9structure_7element_CommutativeRingElement;
struct __pyx_obj_4sage_9structure_7element_IntegralDomainElement;
struct __pyx_obj_4sage_9structure_7element_DedekindDomainElement;
struct __pyx_obj_4sage_9structure_7element_PrincipalIdealDomainElement;
struct __pyx_obj_4sage_9structure_7element_EuclideanDomainElement;
struct __pyx_obj_4sage_9structure_7element_FieldElement;
struct __pyx_obj_4sage_9structure_7element_AlgebraElement;
struct __pyx_obj_4sage_9structure_7element_CommutativeAlgebraElement;
struct __pyx_obj_4sage_9structure_7element_CommutativeAlgebra;
struct __pyx_obj_4sage_9structure_7element_InfinityElement;
struct __pyx_obj_4sage_9structure_7element_Vector;
struct __pyx_obj_4sage_9structure_7element_Matrix;
struct __pyx_obj_4sage_9structure_7element_CoercionModel;
struct __pyx_obj_4sage_10categories_3map_Map;
struct __pyx_obj_4sage_10categories_3map_Section;
struct __pyx_obj_4sage_10categories_3map_FormalCompositeMap;
struct __pyx_obj_4sage_10categories_8morphism_Morphism;
struct __pyx_obj_4sage_10categories_8morphism_SetMorphism;
struct __pyx_obj_4sage_5rings_7integer_Integer;
struct __pyx_obj_4sage_5rings_7integer_int_to_Z;
struct __pyx_obj_4sage_5rings_8rational_Rational;
struct __pyx_obj_4sage_5rings_9real_mpfr_RealField_class;
struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber;
struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber;
struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexField_class;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Number;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Integer;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Rational;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Complex;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealDouble;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexDouble;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealMPFR;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexMPC;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Add;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Mul;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Pow;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Function;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Sin;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Cos;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Tan;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Cot;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Csc;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Sec;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ASin;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ACos;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ATan;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ACot;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ACsc;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ASec;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_FunctionSymbol;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_FunctionWrapper;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Abs;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Derivative;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Subs;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_MatrixBase;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_DenseMatrix;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Log;
struct __pyx_opt_args_4sage_9structure_6parent_6Parent_init_coerce;
struct __pyx_opt_args_4sage_9structure_6parent_6Parent_get_action;
struct __pyx_opt_args_4sage_9structure_6parent_6Parent_discover_action;
/* "parent.pxd":35
*
* # Called from the __init__ method to set up coercion.
* cdef int init_coerce(self, bint warn=*) except -1 # <<<<<<<<<<<<<<
*
* # returns whether or not there is a Morphism from S to self
*/
struct __pyx_opt_args_4sage_9structure_6parent_6Parent_init_coerce {
int __pyx_n;
int warn;
};
/* "parent.pxd":52
* # returns the Action by/on self on/by S
* # corresponding to op and self_on_left
* cpdef get_action(self, S, op=*, bint self_on_left=*, self_el=*, S_el=*) # <<<<<<<<<<<<<<
* cpdef _get_action_(self, S, op, bint self_on_left)
*
*/
struct __pyx_opt_args_4sage_9structure_6parent_6Parent_get_action {
int __pyx_n;
PyObject *op;
int self_on_left;
PyObject *self_el;
PyObject *S_el;
};
/* "parent.pxd":66
* cdef discover_coerce_map_from(self, S)
* cdef discover_convert_map_from(self, S)
* cdef discover_action(self, S, op, bint self_on_left, self_el=*, S_el=*) # <<<<<<<<<<<<<<
*
* # List consisting of Morphisms (from anything to self)
*/
struct __pyx_opt_args_4sage_9structure_6parent_6Parent_discover_action {
int __pyx_n;
PyObject *self_el;
PyObject *S_el;
};
struct __pyx_opt_args_4sage_10categories_3map_3Map__call_with_args;
/* "map.pxd":13
* # these methods require x is an element of domain, and returns an element with parent codomain
* cpdef Element _call_(self, x)
* cpdef Element _call_with_args(self, x, args=*, kwds=*) # <<<<<<<<<<<<<<
*
* cdef public domain # will be either a weakref or a constant map
*/
struct __pyx_opt_args_4sage_10categories_3map_3Map__call_with_args {
int __pyx_n;
PyObject *args;
PyObject *kwds;
};
struct __pyx_opt_args_4sage_5rings_8rational_rational_power_parts;
/* "sage/rings/rational.pxd":6
* cimport integer
*
* cpdef rational_power_parts(a, b, factor_limit=?) # <<<<<<<<<<<<<<
*
* cdef class Rational(sage.structure.element.FieldElement):
*/
struct __pyx_opt_args_4sage_5rings_8rational_rational_power_parts {
int __pyx_n;
PyObject *factor_limit;
};
struct __pyx_opt_args_4sage_5rings_9real_mpfr_RealField;
/* "sage/rings/real_mpfr.pxd":28
* cdef RealNumber abs(RealNumber self)
*
* cpdef RealField(int prec=*, int sci_not=*, rnd=*) # <<<<<<<<<<<<<<
*/
struct __pyx_opt_args_4sage_5rings_9real_mpfr_RealField {
int __pyx_n;
int prec;
int sci_not;
PyObject *rnd;
};
/* "sage_object.pxd":5
*
*
* cdef class SageObject: # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_11sage_object_SageObject {
PyObject_HEAD
};
/* "sage/structure/generators.pxd":3
* from sage.structure.sage_object cimport SageObject
*
* cdef class Generators(SageObject): # <<<<<<<<<<<<<<
*
* cdef readonly _obj
*/
struct __pyx_obj_4sage_9structure_10generators_Generators {
struct __pyx_obj_4sage_9structure_11sage_object_SageObject __pyx_base;
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators *__pyx_vtab;
PyObject *_obj;
PyObject *_index_set;
PyObject *_category;
};
/* "sage/structure/generators.pxd":16
* cpdef list(self)
*
* cdef class Generators_finite(Generators): # <<<<<<<<<<<<<<
* cdef Py_ssize_t _n
*
*/
struct __pyx_obj_4sage_9structure_10generators_Generators_finite {
struct __pyx_obj_4sage_9structure_10generators_Generators __pyx_base;
Py_ssize_t _n;
};
/* "sage/structure/generators.pxd":19
* cdef Py_ssize_t _n
*
* cdef class Generators_list(Generators_finite): # <<<<<<<<<<<<<<
* cdef _List
*
*/
struct __pyx_obj_4sage_9structure_10generators_Generators_list {
struct __pyx_obj_4sage_9structure_10generators_Generators_finite __pyx_base;
PyObject *_List;
};
/* "sage/structure/generators.pxd":22
* cdef _List
*
* cdef class Generators_naturals(Generators): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_10generators_Generators_naturals {
struct __pyx_obj_4sage_9structure_10generators_Generators __pyx_base;
};
/* "sage/structure/generators.pxd":25
* pass
*
* cdef class Generators_none(Generators): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_10generators_Generators_none {
struct __pyx_obj_4sage_9structure_10generators_Generators __pyx_base;
};
/* "sage/structure/generators.pxd":28
* pass
*
* cdef class Generators_lazy_all(Generators): # <<<<<<<<<<<<<<
* cdef _f
* cdef int _compute_gens(self) except -1
*/
struct __pyx_obj_4sage_9structure_10generators_Generators_lazy_all {
struct __pyx_obj_4sage_9structure_10generators_Generators __pyx_base;
PyObject *_f;
};
/* "sage/structure/category_object.pxd":16
* cpdef inline check_default_category(default_category, category)
*
* cdef class CategoryObject(SageObject): # <<<<<<<<<<<<<<
* cdef _generators
* cdef _category
*/
struct __pyx_obj_4sage_9structure_15category_object_CategoryObject {
struct __pyx_obj_4sage_9structure_11sage_object_SageObject __pyx_base;
PyObject *_generators;
PyObject *_category;
PyObject *_base;
PyObject *_names;
PyObject *_factory_data;
PyObject *__weakref__;
long _hash_value;
};
/* "sage/structure/coerce_dict.pxd":7
*
* @cython.final
* cdef class MonoDict: # <<<<<<<<<<<<<<
* cdef __weakref__
* cdef size_t mask
*/
struct __pyx_obj_4sage_9structure_11coerce_dict_MonoDict {
PyObject_HEAD
struct __pyx_vtabstruct_4sage_9structure_11coerce_dict_MonoDict *__pyx_vtab;
PyObject *__weakref__;
size_t mask;
size_t used;
size_t fill;
struct __pyx_t_4sage_9structure_11coerce_dict_mono_cell *table;
int weak_values;
PyObject *eraser;
};
/* "sage/structure/coerce_dict.pxd":23
*
* @cython.final
* cdef class TripleDict: # <<<<<<<<<<<<<<
* cdef __weakref__
* cdef size_t mask
*/
struct __pyx_obj_4sage_9structure_11coerce_dict_TripleDict {
PyObject_HEAD
struct __pyx_vtabstruct_4sage_9structure_11coerce_dict_TripleDict *__pyx_vtab;
PyObject *__weakref__;
size_t mask;
size_t used;
size_t fill;
struct __pyx_t_4sage_9structure_11coerce_dict_triple_cell *table;
int weak_values;
PyObject *eraser;
};
/* "parent.pxd":12
* from sage.structure.coerce_dict cimport MonoDict, TripleDict
*
* cdef class Parent(category_object.CategoryObject): # <<<<<<<<<<<<<<
*
* cdef public _element_constructor
*/
struct __pyx_obj_4sage_9structure_6parent_Parent {
struct __pyx_obj_4sage_9structure_15category_object_CategoryObject __pyx_base;
struct __pyx_vtabstruct_4sage_9structure_6parent_Parent *__pyx_vtab;
PyObject *_element_constructor;
PyObject *_convert_method_name;
int _element_init_pass_parent;
PyObject *__cached_methods;
PyObject *_initial_coerce_list;
PyObject *_initial_action_list;
PyObject *_initial_convert_list;
int _coercions_used;
PyObject *_cache_an_element;
PyObject *_coerce_from_list;
PyObject *_registered_domains;
struct __pyx_obj_4sage_9structure_11coerce_dict_MonoDict *_coerce_from_hash;
PyObject *_action_list;
struct __pyx_obj_4sage_9structure_11coerce_dict_TripleDict *_action_hash;
PyObject *_convert_from_list;
struct __pyx_obj_4sage_9structure_11coerce_dict_MonoDict *_convert_from_hash;
PyObject *_embedding;
};
/* "parent_old.pxd":11
* cimport parent
* from sage.structure.coerce_dict cimport MonoDict
* cdef class Parent(parent.Parent): # <<<<<<<<<<<<<<
*
* # returns a Morphism from S to self, or None
*/
struct __pyx_obj_4sage_9structure_10parent_old_Parent {
struct __pyx_obj_4sage_9structure_6parent_Parent __pyx_base;
struct __pyx_obj_4sage_9structure_11coerce_dict_MonoDict *_has_coerce_map_from;
};
struct __pyx_obj_4sage_9structure_11parent_base_ParentWithBase {
struct __pyx_obj_4sage_9structure_10parent_old_Parent __pyx_base;
};
/* "sage/structure/parent_gens.pxd":15
* cimport parent_base
*
* cdef class ParentWithGens(parent_base.ParentWithBase): # <<<<<<<<<<<<<<
* cdef public object _gens
* cdef public object _latex_names
*/
struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithGens {
struct __pyx_obj_4sage_9structure_11parent_base_ParentWithBase __pyx_base;
PyObject *_gens;
PyObject *_latex_names;
PyObject *_list;
};
/* "sage/structure/parent_gens.pxd":21
*
*
* cdef class ParentWithMultiplicativeAbelianGens(ParentWithGens): # <<<<<<<<<<<<<<
* cdef public object _generator_orders
*
*/
struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens {
struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithGens __pyx_base;
PyObject *_generator_orders;
};
/* "sage/structure/parent_gens.pxd":24
* cdef public object _generator_orders
*
* cdef class ParentWithAdditiveAbelianGens(ParentWithGens): # <<<<<<<<<<<<<<
* cdef public object _generator_orders
*/
struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens {
struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithGens __pyx_base;
PyObject *_generator_orders;
};
/* "sage/rings/ring.pxd":5
* cpdef bint _is_Field(x) except -2
*
* cdef class Ring(ParentWithGens): # <<<<<<<<<<<<<<
* cdef public object _zero_element
* cdef public object _one_element
*/
struct __pyx_obj_4sage_5rings_4ring_Ring {
struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithGens __pyx_base;
PyObject *_zero_element;
PyObject *_one_element;
PyObject *_zero_ideal;
PyObject *_unit_ideal;
PyObject *__ideal_monoid;
};
/* "sage/rings/ring.pxd":13
* cdef _an_element_c_impl(self)
*
* cdef class CommutativeRing(Ring): # <<<<<<<<<<<<<<
* cdef public object __fraction_field
*
*/
struct __pyx_obj_4sage_5rings_4ring_CommutativeRing {
struct __pyx_obj_4sage_5rings_4ring_Ring __pyx_base;
PyObject *__fraction_field;
};
/* "sage/rings/ring.pxd":16
* cdef public object __fraction_field
*
* cdef class IntegralDomain(CommutativeRing): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_5rings_4ring_IntegralDomain {
struct __pyx_obj_4sage_5rings_4ring_CommutativeRing __pyx_base;
};
/* "sage/rings/ring.pxd":19
* pass
*
* cdef class DedekindDomain(IntegralDomain): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_5rings_4ring_DedekindDomain {
struct __pyx_obj_4sage_5rings_4ring_IntegralDomain __pyx_base;
};
/* "sage/rings/ring.pxd":23
*
*
* cdef class PrincipalIdealDomain(IntegralDomain): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_5rings_4ring_PrincipalIdealDomain {
struct __pyx_obj_4sage_5rings_4ring_IntegralDomain __pyx_base;
};
/* "sage/rings/ring.pxd":26
* pass
*
* cdef class EuclideanDomain(PrincipalIdealDomain): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_5rings_4ring_EuclideanDomain {
struct __pyx_obj_4sage_5rings_4ring_PrincipalIdealDomain __pyx_base;
};
/* "sage/rings/ring.pxd":29
* pass
*
* cdef class Field(PrincipalIdealDomain): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_5rings_4ring_Field {
struct __pyx_obj_4sage_5rings_4ring_PrincipalIdealDomain __pyx_base;
};
/* "sage/rings/ring.pxd":32
* pass
*
* cdef class Algebra(Ring): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_5rings_4ring_Algebra {
struct __pyx_obj_4sage_5rings_4ring_Ring __pyx_base;
};
/* "sage/rings/ring.pxd":35
* pass
*
* cdef class CommutativeAlgebra(CommutativeRing): # <<<<<<<<<<<<<<
* pass
*/
struct __pyx_obj_4sage_5rings_4ring_CommutativeAlgebra {
struct __pyx_obj_4sage_5rings_4ring_CommutativeRing __pyx_base;
};
struct __pyx_obj_4sage_9structure_7element_Element {
struct __pyx_obj_4sage_9structure_11sage_object_SageObject __pyx_base;
struct __pyx_vtabstruct_4sage_9structure_7element_Element *__pyx_vtab;
struct __pyx_obj_4sage_9structure_6parent_Parent *_parent;
};
/* "sage/structure/element.pxd":47
* cpdef _acted_upon_(self, x, bint self_on_left)
*
* cdef class ElementWithCachedMethod(Element): # <<<<<<<<<<<<<<
* cdef public dict __cached_methods
*
*/
struct __pyx_obj_4sage_9structure_7element_ElementWithCachedMethod {
struct __pyx_obj_4sage_9structure_7element_Element __pyx_base;
PyObject *__cached_methods;
};
/* "sage/structure/element.pxd":50
* cdef public dict __cached_methods
*
* cdef class ModuleElement(Element) # forward declaration # <<<<<<<<<<<<<<
*
* cdef class RingElement(ModuleElement) # forward declaration
*/
struct __pyx_obj_4sage_9structure_7element_ModuleElement {
struct __pyx_obj_4sage_9structure_7element_Element __pyx_base;
};
/* "sage/structure/element.pxd":74
* cdef RingElement coerce_to_base_ring(self, x)
*
* cdef class MonoidElement(Element): # <<<<<<<<<<<<<<
* cpdef MonoidElement _mul_(self, MonoidElement right)
*
*/
struct __pyx_obj_4sage_9structure_7element_MonoidElement {
struct __pyx_obj_4sage_9structure_7element_Element __pyx_base;
};
/* "sage/structure/element.pxd":77
* cpdef MonoidElement _mul_(self, MonoidElement right)
*
* cdef class MultiplicativeGroupElement(MonoidElement): # <<<<<<<<<<<<<<
* cpdef MultiplicativeGroupElement _div_(self, MultiplicativeGroupElement right)
*
*/
struct __pyx_obj_4sage_9structure_7element_MultiplicativeGroupElement {
struct __pyx_obj_4sage_9structure_7element_MonoidElement __pyx_base;
};
/* "sage/structure/element.pxd":81
*
*
* cdef class AdditiveGroupElement(ModuleElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_AdditiveGroupElement {
struct __pyx_obj_4sage_9structure_7element_ModuleElement __pyx_base;
};
/* "sage/structure/element.pxd":52
* cdef class ModuleElement(Element) # forward declaration
*
* cdef class RingElement(ModuleElement) # forward declaration # <<<<<<<<<<<<<<
*
* cdef class ModuleElement(Element):
*/
struct __pyx_obj_4sage_9structure_7element_RingElement {
struct __pyx_obj_4sage_9structure_7element_ModuleElement __pyx_base;
};
/* "sage/structure/element.pxd":94
* cdef RingElement _add_long(self, long n)
*
* cdef class CommutativeRingElement(RingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_CommutativeRingElement {
struct __pyx_obj_4sage_9structure_7element_RingElement __pyx_base;
};
/* "sage/structure/element.pxd":97
* pass
*
* cdef class IntegralDomainElement(CommutativeRingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_IntegralDomainElement {
struct __pyx_obj_4sage_9structure_7element_CommutativeRingElement __pyx_base;
};
/* "sage/structure/element.pxd":100
* pass
*
* cdef class DedekindDomainElement(IntegralDomainElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_DedekindDomainElement {
struct __pyx_obj_4sage_9structure_7element_IntegralDomainElement __pyx_base;
};
/* "sage/structure/element.pxd":103
* pass
*
* cdef class PrincipalIdealDomainElement(DedekindDomainElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_PrincipalIdealDomainElement {
struct __pyx_obj_4sage_9structure_7element_DedekindDomainElement __pyx_base;
};
/* "sage/structure/element.pxd":106
* pass
*
* cdef class EuclideanDomainElement(PrincipalIdealDomainElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_EuclideanDomainElement {
struct __pyx_obj_4sage_9structure_7element_PrincipalIdealDomainElement __pyx_base;
};
/* "sage/structure/element.pxd":109
* pass
*
* cdef class FieldElement(CommutativeRingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_FieldElement {
struct __pyx_obj_4sage_9structure_7element_CommutativeRingElement __pyx_base;
};
/* "sage/structure/element.pxd":112
* pass
*
* cdef class AlgebraElement(RingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_AlgebraElement {
struct __pyx_obj_4sage_9structure_7element_RingElement __pyx_base;
};
/* "sage/structure/element.pxd":115
* pass
*
* cdef class CommutativeAlgebraElement(CommutativeRingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_CommutativeAlgebraElement {
struct __pyx_obj_4sage_9structure_7element_CommutativeRingElement __pyx_base;
};
/* "sage/structure/element.pxd":118
* pass
*
* cdef class CommutativeAlgebra(AlgebraElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_CommutativeAlgebra {
struct __pyx_obj_4sage_9structure_7element_AlgebraElement __pyx_base;
};
/* "sage/structure/element.pxd":121
* pass
*
* cdef class InfinityElement(RingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_9structure_7element_InfinityElement {
struct __pyx_obj_4sage_9structure_7element_RingElement __pyx_base;
};
/* "sage/structure/element.pxd":125
*
*
* cdef class Vector(ModuleElement): # <<<<<<<<<<<<<<
* cdef Py_ssize_t _degree
*
*/
struct __pyx_obj_4sage_9structure_7element_Vector {
struct __pyx_obj_4sage_9structure_7element_ModuleElement __pyx_base;
Py_ssize_t _degree;
};
/* "sage/structure/element.pxd":140
*
*
* cdef class Matrix(ModuleElement): # <<<<<<<<<<<<<<
* # All matrix classes must be written in Cython
* cdef Py_ssize_t _nrows
*/
struct __pyx_obj_4sage_9structure_7element_Matrix {
struct __pyx_obj_4sage_9structure_7element_ModuleElement __pyx_base;
Py_ssize_t _nrows;
Py_ssize_t _ncols;
};
/* "sage/structure/element.pxd":155
*
*
* cdef class CoercionModel: # <<<<<<<<<<<<<<
* cpdef canonical_coercion(self, x, y)
* cpdef bin_op(self, x, y, op)
*/
struct __pyx_obj_4sage_9structure_7element_CoercionModel {
PyObject_HEAD
struct __pyx_vtabstruct_4sage_9structure_7element_CoercionModel *__pyx_vtab;
};
/* "map.pxd":4
* from sage.structure.element cimport Element
*
* cdef class Map(Element): # <<<<<<<<<<<<<<
* cdef public int _coerce_cost # a rough measure of the cost of using this morphism in the coercion system.
* # 10 by default, 100 if a DefaultCoercionMorphism, 10000 if inexact.
*/
struct __pyx_obj_4sage_10categories_3map_Map {
struct __pyx_obj_4sage_9structure_7element_Element __pyx_base;
int _coerce_cost;
PyObject *domain;
PyObject *codomain;
struct __pyx_obj_4sage_9structure_6parent_Parent *_codomain;
PyObject *_category_for;
PyObject *_repr_type_str;
};
/* "map.pxd":23
*
*
* cdef class Section(Map): # <<<<<<<<<<<<<<
* cdef Map _inverse
*
*/
struct __pyx_obj_4sage_10categories_3map_Section {
struct __pyx_obj_4sage_10categories_3map_Map __pyx_base;
struct __pyx_obj_4sage_10categories_3map_Map *_inverse;
};
/* "map.pxd":26
* cdef Map _inverse
*
* cdef class FormalCompositeMap(Map): # <<<<<<<<<<<<<<
* cdef __list
*/
struct __pyx_obj_4sage_10categories_3map_FormalCompositeMap {
struct __pyx_obj_4sage_10categories_3map_Map __pyx_base;
PyObject *__pyx___list;
};
/* "sage/categories/morphism.pxd":5
* from map cimport Map
*
* cdef class Morphism(Map): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_4sage_10categories_8morphism_Morphism {
struct __pyx_obj_4sage_10categories_3map_Map __pyx_base;
};
/* "sage/categories/morphism.pxd":8
* pass
*
* cdef class SetMorphism(Morphism): # <<<<<<<<<<<<<<
* cdef object _function
* cpdef bint _eq_c_impl(left, Element right)
*/
struct __pyx_obj_4sage_10categories_8morphism_SetMorphism {
struct __pyx_obj_4sage_10categories_8morphism_Morphism __pyx_base;
PyObject *_function;
};
/* "sage/rings/integer.pxd":7
* from sage.categories.morphism cimport Morphism
*
* cdef class Integer(EuclideanDomainElement): # <<<<<<<<<<<<<<
* cdef mpz_t value
*
*/
struct __pyx_obj_4sage_5rings_7integer_Integer {
struct __pyx_obj_4sage_9structure_7element_EuclideanDomainElement __pyx_base;
mpz_t value;
};
/* "sage/rings/integer.pxd":36
* cdef Integer smallInteger(long value)
*
* cdef class int_to_Z(Morphism): # <<<<<<<<<<<<<<
* pass
*/
struct __pyx_obj_4sage_5rings_7integer_int_to_Z {
struct __pyx_obj_4sage_10categories_8morphism_Morphism __pyx_base;
};
/* "sage/rings/rational.pxd":8
* cpdef rational_power_parts(a, b, factor_limit=?)
*
* cdef class Rational(sage.structure.element.FieldElement): # <<<<<<<<<<<<<<
* cdef mpq_t value
*
*/
struct __pyx_obj_4sage_5rings_8rational_Rational {
struct __pyx_obj_4sage_9structure_7element_FieldElement __pyx_base;
mpq_t value;
};
/* "sage/rings/real_mpfr.pxd":12
* cdef class RealNumber(sage.structure.element.RingElement) # forward decl
*
* cdef class RealField_class(sage.rings.ring.Field): # <<<<<<<<<<<<<<
* cdef int __prec
* cdef bint sci_not
*/
struct __pyx_obj_4sage_5rings_9real_mpfr_RealField_class {
struct __pyx_obj_4sage_5rings_4ring_Field __pyx_base;
int __pyx___prec;
int sci_not;
mpfr_rnd_t rnd;
PyObject *rnd_str;
};
/* "sage/rings/real_mpfr.pxd":10
*
*
* cdef class RealNumber(sage.structure.element.RingElement) # forward decl # <<<<<<<<<<<<<<
*
* cdef class RealField_class(sage.rings.ring.Field):
*/
struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber {
struct __pyx_obj_4sage_9structure_7element_RingElement __pyx_base;
mpfr_t value;
char init;
};
/* "sage/rings/complex_mpc.pxd":5
* cimport sage.rings.ring
*
* cdef class MPComplexNumber(sage.structure.element.FieldElement): # <<<<<<<<<<<<<<
* cdef mpc_t value
* cdef char init
*/
struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber {
struct __pyx_obj_4sage_9structure_7element_FieldElement __pyx_base;
mpc_t value;
char init;
};
/* "sage/rings/complex_mpc.pxd":10
* cdef MPComplexNumber _new(self)
*
* cdef class MPComplexField_class(sage.rings.ring.Field): # <<<<<<<<<<<<<<
* cdef readonly int __prec
* cdef mpc_rnd_t __rnd
*/
struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexField_class {
struct __pyx_obj_4sage_5rings_4ring_Field __pyx_base;
int __prec;
mpc_rnd_t __pyx___rnd;
PyObject *__pyx___rnd_str;
PyObject *__pyx___real_field;
PyObject *__pyx___imag_field;
};
/* "symengine/lib/symengine_wrapper.pxd":4
* from symengine cimport RCP
*
* cdef class Basic(object): # <<<<<<<<<<<<<<
* cdef RCP[const symengine.Basic] thisptr
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic {
PyObject_HEAD
SymEngine::RCP<SymEngine::Basic const > thisptr;
};
/* "symengine/lib/symengine_wrapper.pxd":7
* cdef RCP[const symengine.Basic] thisptr
*
* cdef class Number(Basic): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Number {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":10
* pass
*
* cdef class Integer(Number): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Integer {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Number __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":13
* pass
*
* cdef class Rational(Number): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Rational {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Number __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":16
* pass
*
* cdef class Complex(Number): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Complex {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Number __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":19
* pass
*
* cdef class RealDouble(Number): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealDouble {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Number __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":22
* pass
*
* cdef class ComplexDouble(Number): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexDouble {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Number __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":25
* pass
*
* cdef class RealMPFR(Number): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealMPFR {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Number __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":28
* pass
*
* cdef class ComplexMPC(Number): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexMPC {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Number __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":31
* pass
*
* cdef class Add(Basic): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Add {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":34
* pass
*
* cdef class Mul(Basic): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Mul {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":37
* pass
*
* cdef class Pow(Basic): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Pow {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":40
* pass
*
* cdef class Function(Basic): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Function {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":43
* pass
*
* cdef class TrigFunction(Basic): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":46
* pass
*
* cdef class Sin(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Sin {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":49
* pass
*
* cdef class Cos(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Cos {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":52
* pass
*
* cdef class Tan(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Tan {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":55
* pass
*
* cdef class Cot(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Cot {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":58
* pass
*
* cdef class Csc(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Csc {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":61
* pass
*
* cdef class Sec(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Sec {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":64
* pass
*
* cdef class ASin(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ASin {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":67
* pass
*
* cdef class ACos(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ACos {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":70
* pass
*
* cdef class ATan(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ATan {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":73
* pass
*
* cdef class ACot(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ACot {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":76
* pass
*
* cdef class ACsc(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ACsc {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":79
* pass
*
* cdef class ASec(TrigFunction): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ASec {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":82
* pass
*
* cdef class FunctionSymbol(Function): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_FunctionSymbol {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Function __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":85
* pass
*
* cdef class FunctionWrapper(FunctionSymbol): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_FunctionWrapper {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_FunctionSymbol __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":88
* pass
*
* cdef class Abs(Function): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Abs {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Function __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":91
* pass
*
* cdef class Derivative(Basic): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Derivative {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":94
* pass
*
* cdef class Subs(Basic): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Subs {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":97
* pass
*
* cdef class MatrixBase(object): # <<<<<<<<<<<<<<
* cdef symengine.MatrixBase* thisptr
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_MatrixBase {
PyObject_HEAD
SymEngine::MatrixBase *thisptr;
};
/* "symengine/lib/symengine_wrapper.pxd":100
* cdef symengine.MatrixBase* thisptr
*
* cdef class DenseMatrix(MatrixBase): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_DenseMatrix {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_MatrixBase __pyx_base;
};
/* "symengine/lib/symengine_wrapper.pxd":103
* pass
*
* cdef class Log(Basic): # <<<<<<<<<<<<<<
* pass
*/
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Log {
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic __pyx_base;
};
/* "sage/structure/generators.pxd":3
* from sage.structure.sage_object cimport SageObject
*
* cdef class Generators(SageObject): # <<<<<<<<<<<<<<
*
* cdef readonly _obj
*/
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators {
PyObject *(*get_from_index)(struct __pyx_obj_4sage_9structure_10generators_Generators *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*index_set)(struct __pyx_obj_4sage_9structure_10generators_Generators *, int __pyx_skip_dispatch);
PyObject *(*category)(struct __pyx_obj_4sage_9structure_10generators_Generators *, int __pyx_skip_dispatch);
PyObject *(*obj)(struct __pyx_obj_4sage_9structure_10generators_Generators *, int __pyx_skip_dispatch);
PyObject *(*count)(struct __pyx_obj_4sage_9structure_10generators_Generators *, int __pyx_skip_dispatch);
PyObject *(*list)(struct __pyx_obj_4sage_9structure_10generators_Generators *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_4sage_9structure_10generators_Generators *__pyx_vtabptr_4sage_9structure_10generators_Generators;
/* "sage/structure/generators.pxd":16
* cpdef list(self)
*
* cdef class Generators_finite(Generators): # <<<<<<<<<<<<<<
* cdef Py_ssize_t _n
*
*/
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_finite {
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_finite *__pyx_vtabptr_4sage_9structure_10generators_Generators_finite;
/* "sage/structure/generators.pxd":19
* cdef Py_ssize_t _n
*
* cdef class Generators_list(Generators_finite): # <<<<<<<<<<<<<<
* cdef _List
*
*/
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_list {
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_finite __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_list *__pyx_vtabptr_4sage_9structure_10generators_Generators_list;
/* "sage/structure/generators.pxd":22
* cdef _List
*
* cdef class Generators_naturals(Generators): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_naturals {
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_naturals *__pyx_vtabptr_4sage_9structure_10generators_Generators_naturals;
/* "sage/structure/generators.pxd":25
* pass
*
* cdef class Generators_none(Generators): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_none {
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_none *__pyx_vtabptr_4sage_9structure_10generators_Generators_none;
/* "sage/structure/generators.pxd":28
* pass
*
* cdef class Generators_lazy_all(Generators): # <<<<<<<<<<<<<<
* cdef _f
* cdef int _compute_gens(self) except -1
*/
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_lazy_all {
struct __pyx_vtabstruct_4sage_9structure_10generators_Generators __pyx_base;
int (*_compute_gens)(struct __pyx_obj_4sage_9structure_10generators_Generators_lazy_all *);
};
static struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_lazy_all *__pyx_vtabptr_4sage_9structure_10generators_Generators_lazy_all;
/* "sage/structure/coerce_dict.pxd":7
*
* @cython.final
* cdef class MonoDict: # <<<<<<<<<<<<<<
* cdef __weakref__
* cdef size_t mask
*/
struct __pyx_vtabstruct_4sage_9structure_11coerce_dict_MonoDict {
struct __pyx_t_4sage_9structure_11coerce_dict_mono_cell *(*lookup)(struct __pyx_obj_4sage_9structure_11coerce_dict_MonoDict *, PyObject *);
PyObject *(*get)(struct __pyx_obj_4sage_9structure_11coerce_dict_MonoDict *, PyObject *);
PyObject *(*set)(struct __pyx_obj_4sage_9structure_11coerce_dict_MonoDict *, PyObject *, PyObject *);
int (*resize)(struct __pyx_obj_4sage_9structure_11coerce_dict_MonoDict *);
};
static struct __pyx_vtabstruct_4sage_9structure_11coerce_dict_MonoDict *__pyx_vtabptr_4sage_9structure_11coerce_dict_MonoDict;
/* "sage/structure/coerce_dict.pxd":23
*
* @cython.final
* cdef class TripleDict: # <<<<<<<<<<<<<<
* cdef __weakref__
* cdef size_t mask
*/
struct __pyx_vtabstruct_4sage_9structure_11coerce_dict_TripleDict {
struct __pyx_t_4sage_9structure_11coerce_dict_triple_cell *(*lookup)(struct __pyx_obj_4sage_9structure_11coerce_dict_TripleDict *, PyObject *, PyObject *, PyObject *);
PyObject *(*get)(struct __pyx_obj_4sage_9structure_11coerce_dict_TripleDict *, PyObject *, PyObject *, PyObject *);
PyObject *(*set)(struct __pyx_obj_4sage_9structure_11coerce_dict_TripleDict *, PyObject *, PyObject *, PyObject *, PyObject *);
int (*resize)(struct __pyx_obj_4sage_9structure_11coerce_dict_TripleDict *);
};
static struct __pyx_vtabstruct_4sage_9structure_11coerce_dict_TripleDict *__pyx_vtabptr_4sage_9structure_11coerce_dict_TripleDict;
/* "parent.pxd":12
* from sage.structure.coerce_dict cimport MonoDict, TripleDict
*
* cdef class Parent(category_object.CategoryObject): # <<<<<<<<<<<<<<
*
* cdef public _element_constructor
*/
struct __pyx_vtabstruct_4sage_9structure_6parent_Parent {
int (*is_coercion_cached)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
int (*is_conversion_cached)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*register_coercion)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*register_action)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*register_conversion)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*register_embedding)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
int (*_richcmp)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int, int __pyx_skip_dispatch);
int (*_cmp_)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
int (*is_exact)(struct __pyx_obj_4sage_9structure_6parent_Parent *, int __pyx_skip_dispatch);
int (*init_coerce)(struct __pyx_obj_4sage_9structure_6parent_Parent *, struct __pyx_opt_args_4sage_9structure_6parent_6Parent_init_coerce *__pyx_optional_args);
int (*has_coerce_map_from)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*coerce_map_from)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*_internal_coerce_map_from)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*_coerce_map_from_)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*convert_map_from)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*_internal_convert_map_from)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*_convert_map_from_)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*get_action)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch, struct __pyx_opt_args_4sage_9structure_6parent_6Parent_get_action *__pyx_optional_args);
PyObject *(*_get_action_)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, PyObject *, int, int __pyx_skip_dispatch);
PyObject *(*coerce)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*an_element)(struct __pyx_obj_4sage_9structure_6parent_Parent *, int __pyx_skip_dispatch);
PyObject *(*_generic_convert_map)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*discover_coerce_map_from)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *);
PyObject *(*discover_convert_map_from)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *);
PyObject *(*discover_action)(struct __pyx_obj_4sage_9structure_6parent_Parent *, PyObject *, PyObject *, int, struct __pyx_opt_args_4sage_9structure_6parent_6Parent_discover_action *__pyx_optional_args);
};
static struct __pyx_vtabstruct_4sage_9structure_6parent_Parent *__pyx_vtabptr_4sage_9structure_6parent_Parent;
/* "parent_old.pxd":11
* cimport parent
* from sage.structure.coerce_dict cimport MonoDict
* cdef class Parent(parent.Parent): # <<<<<<<<<<<<<<
*
* # returns a Morphism from S to self, or None
*/
struct __pyx_vtabstruct_4sage_9structure_10parent_old_Parent {
struct __pyx_vtabstruct_4sage_9structure_6parent_Parent __pyx_base;
PyObject *(*coerce_map_from_c)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*coerce_map_from_c_impl)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *, PyObject *);
PyObject *(*get_action_c)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *, PyObject *, PyObject *, int, int __pyx_skip_dispatch);
PyObject *(*get_action_c_impl)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *, PyObject *, PyObject *, int);
PyObject *(*has_coerce_map_from_c)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*has_coerce_map_from_c_impl)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *, PyObject *);
PyObject *(*_coerce_c)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*_coerce_c_impl)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *, PyObject *);
PyObject *(*_coerce_self_c)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *, PyObject *);
PyObject *(*_an_element_c_impl)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *);
PyObject *(*_an_element_c)(struct __pyx_obj_4sage_9structure_10parent_old_Parent *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_4sage_9structure_10parent_old_Parent *__pyx_vtabptr_4sage_9structure_10parent_old_Parent;
struct __pyx_vtabstruct_4sage_9structure_11parent_base_ParentWithBase {
struct __pyx_vtabstruct_4sage_9structure_10parent_old_Parent __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_11parent_base_ParentWithBase *__pyx_vtabptr_4sage_9structure_11parent_base_ParentWithBase;
/* "sage/structure/parent_gens.pxd":15
* cimport parent_base
*
* cdef class ParentWithGens(parent_base.ParentWithBase): # <<<<<<<<<<<<<<
* cdef public object _gens
* cdef public object _latex_names
*/
struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithGens {
struct __pyx_vtabstruct_4sage_9structure_11parent_base_ParentWithBase __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithGens *__pyx_vtabptr_4sage_9structure_11parent_gens_ParentWithGens;
/* "sage/structure/parent_gens.pxd":21
*
*
* cdef class ParentWithMultiplicativeAbelianGens(ParentWithGens): # <<<<<<<<<<<<<<
* cdef public object _generator_orders
*
*/
struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens {
struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithGens __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens *__pyx_vtabptr_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens;
/* "sage/structure/parent_gens.pxd":24
* cdef public object _generator_orders
*
* cdef class ParentWithAdditiveAbelianGens(ParentWithGens): # <<<<<<<<<<<<<<
* cdef public object _generator_orders
*/
struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens {
struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithGens __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens *__pyx_vtabptr_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens;
/* "sage/rings/ring.pxd":5
* cpdef bint _is_Field(x) except -2
*
* cdef class Ring(ParentWithGens): # <<<<<<<<<<<<<<
* cdef public object _zero_element
* cdef public object _one_element
*/
struct __pyx_vtabstruct_4sage_5rings_4ring_Ring {
struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithGens __pyx_base;
};
static struct __pyx_vtabstruct_4sage_5rings_4ring_Ring *__pyx_vtabptr_4sage_5rings_4ring_Ring;
/* "sage/rings/ring.pxd":13
* cdef _an_element_c_impl(self)
*
* cdef class CommutativeRing(Ring): # <<<<<<<<<<<<<<
* cdef public object __fraction_field
*
*/
struct __pyx_vtabstruct_4sage_5rings_4ring_CommutativeRing {
struct __pyx_vtabstruct_4sage_5rings_4ring_Ring __pyx_base;
};
static struct __pyx_vtabstruct_4sage_5rings_4ring_CommutativeRing *__pyx_vtabptr_4sage_5rings_4ring_CommutativeRing;
/* "sage/rings/ring.pxd":16
* cdef public object __fraction_field
*
* cdef class IntegralDomain(CommutativeRing): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_5rings_4ring_IntegralDomain {
struct __pyx_vtabstruct_4sage_5rings_4ring_CommutativeRing __pyx_base;
};
static struct __pyx_vtabstruct_4sage_5rings_4ring_IntegralDomain *__pyx_vtabptr_4sage_5rings_4ring_IntegralDomain;
/* "sage/rings/ring.pxd":19
* pass
*
* cdef class DedekindDomain(IntegralDomain): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_5rings_4ring_DedekindDomain {
struct __pyx_vtabstruct_4sage_5rings_4ring_IntegralDomain __pyx_base;
};
static struct __pyx_vtabstruct_4sage_5rings_4ring_DedekindDomain *__pyx_vtabptr_4sage_5rings_4ring_DedekindDomain;
/* "sage/rings/ring.pxd":23
*
*
* cdef class PrincipalIdealDomain(IntegralDomain): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_5rings_4ring_PrincipalIdealDomain {
struct __pyx_vtabstruct_4sage_5rings_4ring_IntegralDomain __pyx_base;
};
static struct __pyx_vtabstruct_4sage_5rings_4ring_PrincipalIdealDomain *__pyx_vtabptr_4sage_5rings_4ring_PrincipalIdealDomain;
/* "sage/rings/ring.pxd":26
* pass
*
* cdef class EuclideanDomain(PrincipalIdealDomain): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_5rings_4ring_EuclideanDomain {
struct __pyx_vtabstruct_4sage_5rings_4ring_PrincipalIdealDomain __pyx_base;
};
static struct __pyx_vtabstruct_4sage_5rings_4ring_EuclideanDomain *__pyx_vtabptr_4sage_5rings_4ring_EuclideanDomain;
/* "sage/rings/ring.pxd":29
* pass
*
* cdef class Field(PrincipalIdealDomain): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_5rings_4ring_Field {
struct __pyx_vtabstruct_4sage_5rings_4ring_PrincipalIdealDomain __pyx_base;
};
static struct __pyx_vtabstruct_4sage_5rings_4ring_Field *__pyx_vtabptr_4sage_5rings_4ring_Field;
/* "sage/rings/ring.pxd":32
* pass
*
* cdef class Algebra(Ring): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_5rings_4ring_Algebra {
struct __pyx_vtabstruct_4sage_5rings_4ring_Ring __pyx_base;
};
static struct __pyx_vtabstruct_4sage_5rings_4ring_Algebra *__pyx_vtabptr_4sage_5rings_4ring_Algebra;
/* "sage/rings/ring.pxd":35
* pass
*
* cdef class CommutativeAlgebra(CommutativeRing): # <<<<<<<<<<<<<<
* pass
*/
struct __pyx_vtabstruct_4sage_5rings_4ring_CommutativeAlgebra {
struct __pyx_vtabstruct_4sage_5rings_4ring_CommutativeRing __pyx_base;
};
static struct __pyx_vtabstruct_4sage_5rings_4ring_CommutativeAlgebra *__pyx_vtabptr_4sage_5rings_4ring_CommutativeAlgebra;
struct __pyx_vtabstruct_4sage_9structure_7element_Element {
PyObject *(*_richcmp_)(struct __pyx_obj_4sage_9structure_7element_Element *, struct __pyx_obj_4sage_9structure_7element_Element *, int, int __pyx_skip_dispatch);
int (*_cmp_)(struct __pyx_obj_4sage_9structure_7element_Element *, struct __pyx_obj_4sage_9structure_7element_Element *, int __pyx_skip_dispatch);
PyObject *(*_richcmp)(struct __pyx_obj_4sage_9structure_7element_Element *, PyObject *, int);
int (*_cmp)(struct __pyx_obj_4sage_9structure_7element_Element *, PyObject *);
PyObject *(*_set_parent_c)(struct __pyx_obj_4sage_9structure_7element_Element *, struct __pyx_obj_4sage_9structure_6parent_Parent *);
PyObject *(*base_extend)(struct __pyx_obj_4sage_9structure_7element_Element *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*_act_on_)(struct __pyx_obj_4sage_9structure_7element_Element *, PyObject *, int, int __pyx_skip_dispatch);
PyObject *(*_acted_upon_)(struct __pyx_obj_4sage_9structure_7element_Element *, PyObject *, int, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_4sage_9structure_7element_Element *__pyx_vtabptr_4sage_9structure_7element_Element;
/* "sage/structure/element.pxd":47
* cpdef _acted_upon_(self, x, bint self_on_left)
*
* cdef class ElementWithCachedMethod(Element): # <<<<<<<<<<<<<<
* cdef public dict __cached_methods
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_ElementWithCachedMethod {
struct __pyx_vtabstruct_4sage_9structure_7element_Element __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_ElementWithCachedMethod *__pyx_vtabptr_4sage_9structure_7element_ElementWithCachedMethod;
/* "sage/structure/element.pxd":50
* cdef public dict __cached_methods
*
* cdef class ModuleElement(Element) # forward declaration # <<<<<<<<<<<<<<
*
* cdef class RingElement(ModuleElement) # forward declaration
*/
struct __pyx_vtabstruct_4sage_9structure_7element_ModuleElement {
struct __pyx_vtabstruct_4sage_9structure_7element_Element __pyx_base;
struct __pyx_obj_4sage_9structure_7element_ModuleElement *(*_add_)(struct __pyx_obj_4sage_9structure_7element_ModuleElement *, struct __pyx_obj_4sage_9structure_7element_ModuleElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_ModuleElement *(*_sub_)(struct __pyx_obj_4sage_9structure_7element_ModuleElement *, struct __pyx_obj_4sage_9structure_7element_ModuleElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_ModuleElement *(*_neg_)(struct __pyx_obj_4sage_9structure_7element_ModuleElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_ModuleElement *(*_lmul_)(struct __pyx_obj_4sage_9structure_7element_ModuleElement *, struct __pyx_obj_4sage_9structure_7element_RingElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_ModuleElement *(*_rmul_)(struct __pyx_obj_4sage_9structure_7element_ModuleElement *, struct __pyx_obj_4sage_9structure_7element_RingElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_ModuleElement *(*_mul_long)(struct __pyx_obj_4sage_9structure_7element_ModuleElement *, long);
struct __pyx_obj_4sage_9structure_7element_ModuleElement *(*_iadd_)(struct __pyx_obj_4sage_9structure_7element_ModuleElement *, struct __pyx_obj_4sage_9structure_7element_ModuleElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_ModuleElement *(*_isub_)(struct __pyx_obj_4sage_9structure_7element_ModuleElement *, struct __pyx_obj_4sage_9structure_7element_ModuleElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_ModuleElement *(*_ilmul_)(struct __pyx_obj_4sage_9structure_7element_ModuleElement *, struct __pyx_obj_4sage_9structure_7element_RingElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_RingElement *(*coerce_to_base_ring)(struct __pyx_obj_4sage_9structure_7element_ModuleElement *, PyObject *);
};
static struct __pyx_vtabstruct_4sage_9structure_7element_ModuleElement *__pyx_vtabptr_4sage_9structure_7element_ModuleElement;
/* "sage/structure/element.pxd":52
* cdef class ModuleElement(Element) # forward declaration
*
* cdef class RingElement(ModuleElement) # forward declaration # <<<<<<<<<<<<<<
*
* cdef class ModuleElement(Element):
*/
struct __pyx_vtabstruct_4sage_9structure_7element_RingElement {
struct __pyx_vtabstruct_4sage_9structure_7element_ModuleElement __pyx_base;
struct __pyx_obj_4sage_9structure_7element_RingElement *(*_mul_)(struct __pyx_obj_4sage_9structure_7element_RingElement *, struct __pyx_obj_4sage_9structure_7element_RingElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_RingElement *(*_div_)(struct __pyx_obj_4sage_9structure_7element_RingElement *, struct __pyx_obj_4sage_9structure_7element_RingElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_RingElement *(*_imul_)(struct __pyx_obj_4sage_9structure_7element_RingElement *, struct __pyx_obj_4sage_9structure_7element_RingElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_RingElement *(*_idiv_)(struct __pyx_obj_4sage_9structure_7element_RingElement *, struct __pyx_obj_4sage_9structure_7element_RingElement *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_RingElement *(*_add_long)(struct __pyx_obj_4sage_9structure_7element_RingElement *, long);
};
static struct __pyx_vtabstruct_4sage_9structure_7element_RingElement *__pyx_vtabptr_4sage_9structure_7element_RingElement;
/* "sage/structure/element.pxd":74
* cdef RingElement coerce_to_base_ring(self, x)
*
* cdef class MonoidElement(Element): # <<<<<<<<<<<<<<
* cpdef MonoidElement _mul_(self, MonoidElement right)
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_MonoidElement {
struct __pyx_vtabstruct_4sage_9structure_7element_Element __pyx_base;
struct __pyx_obj_4sage_9structure_7element_MonoidElement *(*_mul_)(struct __pyx_obj_4sage_9structure_7element_MonoidElement *, struct __pyx_obj_4sage_9structure_7element_MonoidElement *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_4sage_9structure_7element_MonoidElement *__pyx_vtabptr_4sage_9structure_7element_MonoidElement;
/* "sage/structure/element.pxd":77
* cpdef MonoidElement _mul_(self, MonoidElement right)
*
* cdef class MultiplicativeGroupElement(MonoidElement): # <<<<<<<<<<<<<<
* cpdef MultiplicativeGroupElement _div_(self, MultiplicativeGroupElement right)
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_MultiplicativeGroupElement {
struct __pyx_vtabstruct_4sage_9structure_7element_MonoidElement __pyx_base;
struct __pyx_obj_4sage_9structure_7element_MultiplicativeGroupElement *(*_div_)(struct __pyx_obj_4sage_9structure_7element_MultiplicativeGroupElement *, struct __pyx_obj_4sage_9structure_7element_MultiplicativeGroupElement *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_4sage_9structure_7element_MultiplicativeGroupElement *__pyx_vtabptr_4sage_9structure_7element_MultiplicativeGroupElement;
/* "sage/structure/element.pxd":81
*
*
* cdef class AdditiveGroupElement(ModuleElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_AdditiveGroupElement {
struct __pyx_vtabstruct_4sage_9structure_7element_ModuleElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_AdditiveGroupElement *__pyx_vtabptr_4sage_9structure_7element_AdditiveGroupElement;
/* "sage/structure/element.pxd":94
* cdef RingElement _add_long(self, long n)
*
* cdef class CommutativeRingElement(RingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeRingElement {
struct __pyx_vtabstruct_4sage_9structure_7element_RingElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeRingElement *__pyx_vtabptr_4sage_9structure_7element_CommutativeRingElement;
/* "sage/structure/element.pxd":97
* pass
*
* cdef class IntegralDomainElement(CommutativeRingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_IntegralDomainElement {
struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeRingElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_IntegralDomainElement *__pyx_vtabptr_4sage_9structure_7element_IntegralDomainElement;
/* "sage/structure/element.pxd":100
* pass
*
* cdef class DedekindDomainElement(IntegralDomainElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_DedekindDomainElement {
struct __pyx_vtabstruct_4sage_9structure_7element_IntegralDomainElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_DedekindDomainElement *__pyx_vtabptr_4sage_9structure_7element_DedekindDomainElement;
/* "sage/structure/element.pxd":103
* pass
*
* cdef class PrincipalIdealDomainElement(DedekindDomainElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_PrincipalIdealDomainElement {
struct __pyx_vtabstruct_4sage_9structure_7element_DedekindDomainElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_PrincipalIdealDomainElement *__pyx_vtabptr_4sage_9structure_7element_PrincipalIdealDomainElement;
/* "sage/structure/element.pxd":106
* pass
*
* cdef class EuclideanDomainElement(PrincipalIdealDomainElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_EuclideanDomainElement {
struct __pyx_vtabstruct_4sage_9structure_7element_PrincipalIdealDomainElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_EuclideanDomainElement *__pyx_vtabptr_4sage_9structure_7element_EuclideanDomainElement;
/* "sage/structure/element.pxd":109
* pass
*
* cdef class FieldElement(CommutativeRingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_FieldElement {
struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeRingElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_FieldElement *__pyx_vtabptr_4sage_9structure_7element_FieldElement;
/* "sage/structure/element.pxd":112
* pass
*
* cdef class AlgebraElement(RingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_AlgebraElement {
struct __pyx_vtabstruct_4sage_9structure_7element_RingElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_AlgebraElement *__pyx_vtabptr_4sage_9structure_7element_AlgebraElement;
/* "sage/structure/element.pxd":115
* pass
*
* cdef class CommutativeAlgebraElement(CommutativeRingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeAlgebraElement {
struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeRingElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeAlgebraElement *__pyx_vtabptr_4sage_9structure_7element_CommutativeAlgebraElement;
/* "sage/structure/element.pxd":118
* pass
*
* cdef class CommutativeAlgebra(AlgebraElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeAlgebra {
struct __pyx_vtabstruct_4sage_9structure_7element_AlgebraElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeAlgebra *__pyx_vtabptr_4sage_9structure_7element_CommutativeAlgebra;
/* "sage/structure/element.pxd":121
* pass
*
* cdef class InfinityElement(RingElement): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_InfinityElement {
struct __pyx_vtabstruct_4sage_9structure_7element_RingElement __pyx_base;
};
static struct __pyx_vtabstruct_4sage_9structure_7element_InfinityElement *__pyx_vtabptr_4sage_9structure_7element_InfinityElement;
/* "sage/structure/element.pxd":125
*
*
* cdef class Vector(ModuleElement): # <<<<<<<<<<<<<<
* cdef Py_ssize_t _degree
*
*/
struct __pyx_vtabstruct_4sage_9structure_7element_Vector {
struct __pyx_vtabstruct_4sage_9structure_7element_ModuleElement __pyx_base;
struct __pyx_obj_4sage_9structure_7element_Element *(*_dot_product_)(struct __pyx_obj_4sage_9structure_7element_Vector *, struct __pyx_obj_4sage_9structure_7element_Vector *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_Element *(*_dot_product_coerce_)(struct __pyx_obj_4sage_9structure_7element_Vector *, struct __pyx_obj_4sage_9structure_7element_Vector *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_Vector *(*_pairwise_product_)(struct __pyx_obj_4sage_9structure_7element_Vector *, struct __pyx_obj_4sage_9structure_7element_Vector *, int __pyx_skip_dispatch);
int (*is_sparse_c)(struct __pyx_obj_4sage_9structure_7element_Vector *);
int (*is_dense_c)(struct __pyx_obj_4sage_9structure_7element_Vector *);
};
static struct __pyx_vtabstruct_4sage_9structure_7element_Vector *__pyx_vtabptr_4sage_9structure_7element_Vector;
/* "sage/structure/element.pxd":140
*
*
* cdef class Matrix(ModuleElement): # <<<<<<<<<<<<<<
* # All matrix classes must be written in Cython
* cdef Py_ssize_t _nrows
*/
struct __pyx_vtabstruct_4sage_9structure_7element_Matrix {
struct __pyx_vtabstruct_4sage_9structure_7element_ModuleElement __pyx_base;
struct __pyx_obj_4sage_9structure_7element_Vector *(*_vector_times_matrix_)(struct __pyx_obj_4sage_9structure_7element_Matrix *, struct __pyx_obj_4sage_9structure_7element_Vector *);
struct __pyx_obj_4sage_9structure_7element_Vector *(*_matrix_times_vector_)(struct __pyx_obj_4sage_9structure_7element_Matrix *, struct __pyx_obj_4sage_9structure_7element_Vector *);
struct __pyx_obj_4sage_9structure_7element_Matrix *(*_matrix_times_matrix_)(struct __pyx_obj_4sage_9structure_7element_Matrix *, struct __pyx_obj_4sage_9structure_7element_Matrix *);
int (*is_sparse_c)(struct __pyx_obj_4sage_9structure_7element_Matrix *);
int (*is_dense_c)(struct __pyx_obj_4sage_9structure_7element_Matrix *);
};
static struct __pyx_vtabstruct_4sage_9structure_7element_Matrix *__pyx_vtabptr_4sage_9structure_7element_Matrix;
/* "sage/structure/element.pxd":155
*
*
* cdef class CoercionModel: # <<<<<<<<<<<<<<
* cpdef canonical_coercion(self, x, y)
* cpdef bin_op(self, x, y, op)
*/
struct __pyx_vtabstruct_4sage_9structure_7element_CoercionModel {
PyObject *(*canonical_coercion)(struct __pyx_obj_4sage_9structure_7element_CoercionModel *, PyObject *, PyObject *, int __pyx_skip_dispatch);
PyObject *(*bin_op)(struct __pyx_obj_4sage_9structure_7element_CoercionModel *, PyObject *, PyObject *, PyObject *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_4sage_9structure_7element_CoercionModel *__pyx_vtabptr_4sage_9structure_7element_CoercionModel;
/* "map.pxd":4
* from sage.structure.element cimport Element
*
* cdef class Map(Element): # <<<<<<<<<<<<<<
* cdef public int _coerce_cost # a rough measure of the cost of using this morphism in the coercion system.
* # 10 by default, 100 if a DefaultCoercionMorphism, 10000 if inexact.
*/
struct __pyx_vtabstruct_4sage_10categories_3map_Map {
struct __pyx_vtabstruct_4sage_9structure_7element_Element __pyx_base;
PyObject *(*_update_slots)(struct __pyx_obj_4sage_10categories_3map_Map *, PyObject *);
PyObject *(*_extra_slots)(struct __pyx_obj_4sage_10categories_3map_Map *, PyObject *);
struct __pyx_obj_4sage_9structure_7element_Element *(*_call_)(struct __pyx_obj_4sage_10categories_3map_Map *, PyObject *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_Element *(*_call_with_args)(struct __pyx_obj_4sage_10categories_3map_Map *, PyObject *, int __pyx_skip_dispatch, struct __pyx_opt_args_4sage_10categories_3map_3Map__call_with_args *__pyx_optional_args);
};
static struct __pyx_vtabstruct_4sage_10categories_3map_Map *__pyx_vtabptr_4sage_10categories_3map_Map;
/* "map.pxd":23
*
*
* cdef class Section(Map): # <<<<<<<<<<<<<<
* cdef Map _inverse
*
*/
struct __pyx_vtabstruct_4sage_10categories_3map_Section {
struct __pyx_vtabstruct_4sage_10categories_3map_Map __pyx_base;
};
static struct __pyx_vtabstruct_4sage_10categories_3map_Section *__pyx_vtabptr_4sage_10categories_3map_Section;
/* "map.pxd":26
* cdef Map _inverse
*
* cdef class FormalCompositeMap(Map): # <<<<<<<<<<<<<<
* cdef __list
*/
struct __pyx_vtabstruct_4sage_10categories_3map_FormalCompositeMap {
struct __pyx_vtabstruct_4sage_10categories_3map_Map __pyx_base;
};
static struct __pyx_vtabstruct_4sage_10categories_3map_FormalCompositeMap *__pyx_vtabptr_4sage_10categories_3map_FormalCompositeMap;
/* "sage/categories/morphism.pxd":5
* from map cimport Map
*
* cdef class Morphism(Map): # <<<<<<<<<<<<<<
* pass
*
*/
struct __pyx_vtabstruct_4sage_10categories_8morphism_Morphism {
struct __pyx_vtabstruct_4sage_10categories_3map_Map __pyx_base;
};
static struct __pyx_vtabstruct_4sage_10categories_8morphism_Morphism *__pyx_vtabptr_4sage_10categories_8morphism_Morphism;
/* "sage/categories/morphism.pxd":8
* pass
*
* cdef class SetMorphism(Morphism): # <<<<<<<<<<<<<<
* cdef object _function
* cpdef bint _eq_c_impl(left, Element right)
*/
struct __pyx_vtabstruct_4sage_10categories_8morphism_SetMorphism {
struct __pyx_vtabstruct_4sage_10categories_8morphism_Morphism __pyx_base;
int (*_eq_c_impl)(struct __pyx_obj_4sage_10categories_8morphism_SetMorphism *, struct __pyx_obj_4sage_9structure_7element_Element *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_4sage_10categories_8morphism_SetMorphism *__pyx_vtabptr_4sage_10categories_8morphism_SetMorphism;
/* "sage/rings/integer.pxd":7
* from sage.categories.morphism cimport Morphism
*
* cdef class Integer(EuclideanDomainElement): # <<<<<<<<<<<<<<
* cdef mpz_t value
*
*/
struct __pyx_vtabstruct_4sage_5rings_7integer_Integer {
struct __pyx_vtabstruct_4sage_9structure_7element_EuclideanDomainElement __pyx_base;
void (*_to_ZZ)(struct __pyx_obj_4sage_5rings_7integer_Integer *, struct ZZ *);
void (*set_from_mpz)(struct __pyx_obj_4sage_5rings_7integer_Integer *, __mpz_struct *);
PyObject *(*hash_c)(struct __pyx_obj_4sage_5rings_7integer_Integer *);
PyObject *(*_pari_)(struct __pyx_obj_4sage_5rings_7integer_Integer *, int __pyx_skip_dispatch);
PyObject *(*_shift_helper)(struct __pyx_obj_4sage_5rings_7integer_Integer *, PyObject *, int, int __pyx_skip_dispatch);
PyObject *(*_and)(struct __pyx_obj_4sage_5rings_7integer_Integer *, struct __pyx_obj_4sage_5rings_7integer_Integer *);
PyObject *(*_or)(struct __pyx_obj_4sage_5rings_7integer_Integer *, struct __pyx_obj_4sage_5rings_7integer_Integer *);
PyObject *(*_xor)(struct __pyx_obj_4sage_5rings_7integer_Integer *, struct __pyx_obj_4sage_5rings_7integer_Integer *);
size_t (*_exact_log_log2_iter)(struct __pyx_obj_4sage_5rings_7integer_Integer *, struct __pyx_obj_4sage_5rings_7integer_Integer *, int __pyx_skip_dispatch);
size_t (*_exact_log_mpfi_log)(struct __pyx_obj_4sage_5rings_7integer_Integer *, PyObject *, int __pyx_skip_dispatch);
struct __pyx_obj_4sage_9structure_7element_RingElement *(*_valuation)(struct __pyx_obj_4sage_5rings_7integer_Integer *, struct __pyx_obj_4sage_5rings_7integer_Integer *, int __pyx_skip_dispatch);
PyObject *(*_val_unit)(struct __pyx_obj_4sage_5rings_7integer_Integer *, struct __pyx_obj_4sage_5rings_7integer_Integer *);
struct __pyx_obj_4sage_5rings_7integer_Integer *(*_divide_knowing_divisible_by)(struct __pyx_obj_4sage_5rings_7integer_Integer *, struct __pyx_obj_4sage_5rings_7integer_Integer *);
int (*_is_power_of)(struct __pyx_obj_4sage_5rings_7integer_Integer *, struct __pyx_obj_4sage_5rings_7integer_Integer *);
int (*_pseudoprime_is_prime)(struct __pyx_obj_4sage_5rings_7integer_Integer *, PyObject *);
PyObject *(*_reduce_set)(struct __pyx_obj_4sage_5rings_7integer_Integer *, PyObject *);
};
static struct __pyx_vtabstruct_4sage_5rings_7integer_Integer *__pyx_vtabptr_4sage_5rings_7integer_Integer;
/* "sage/rings/integer.pxd":36
* cdef Integer smallInteger(long value)
*
* cdef class int_to_Z(Morphism): # <<<<<<<<<<<<<<
* pass
*/
struct __pyx_vtabstruct_4sage_5rings_7integer_int_to_Z {
struct __pyx_vtabstruct_4sage_10categories_8morphism_Morphism __pyx_base;
};
static struct __pyx_vtabstruct_4sage_5rings_7integer_int_to_Z *__pyx_vtabptr_4sage_5rings_7integer_int_to_Z;
/* "sage/rings/rational.pxd":8
* cpdef rational_power_parts(a, b, factor_limit=?)
*
* cdef class Rational(sage.structure.element.FieldElement): # <<<<<<<<<<<<<<
* cdef mpq_t value
*
*/
struct __pyx_vtabstruct_4sage_5rings_8rational_Rational {
struct __pyx_vtabstruct_4sage_9structure_7element_FieldElement __pyx_base;
PyObject *(*__pyx___set_value)(struct __pyx_obj_4sage_5rings_8rational_Rational *, PyObject *, unsigned int);
void (*set_from_mpq)(struct __pyx_obj_4sage_5rings_8rational_Rational *, __mpq_struct *);
PyObject *(*_lshift)(struct __pyx_obj_4sage_5rings_8rational_Rational *, long);
PyObject *(*_rshift)(struct __pyx_obj_4sage_5rings_8rational_Rational *, long);
PyObject *(*_val_unit)(struct __pyx_obj_4sage_5rings_8rational_Rational *, struct __pyx_obj_4sage_5rings_7integer_Integer *);
};
static struct __pyx_vtabstruct_4sage_5rings_8rational_Rational *__pyx_vtabptr_4sage_5rings_8rational_Rational;
/* "sage/rings/real_mpfr.pxd":10
*
*
* cdef class RealNumber(sage.structure.element.RingElement) # forward decl # <<<<<<<<<<<<<<
*
* cdef class RealField_class(sage.rings.ring.Field):
*/
struct __pyx_vtabstruct_4sage_5rings_9real_mpfr_RealNumber {
struct __pyx_vtabstruct_4sage_9structure_7element_RingElement __pyx_base;
struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *(*_new)(struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *);
PyObject *(*_set)(struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *, PyObject *, int);
PyObject *(*_set_from_GEN_REAL)(struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *, GEN);
struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *(*abs)(struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *);
};
static struct __pyx_vtabstruct_4sage_5rings_9real_mpfr_RealNumber *__pyx_vtabptr_4sage_5rings_9real_mpfr_RealNumber;
/* "sage/rings/real_mpfr.pxd":12
* cdef class RealNumber(sage.structure.element.RingElement) # forward decl
*
* cdef class RealField_class(sage.rings.ring.Field): # <<<<<<<<<<<<<<
* cdef int __prec
* cdef bint sci_not
*/
struct __pyx_vtabstruct_4sage_5rings_9real_mpfr_RealField_class {
struct __pyx_vtabstruct_4sage_5rings_4ring_Field __pyx_base;
struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *(*_new)(struct __pyx_obj_4sage_5rings_9real_mpfr_RealField_class *);
};
static struct __pyx_vtabstruct_4sage_5rings_9real_mpfr_RealField_class *__pyx_vtabptr_4sage_5rings_9real_mpfr_RealField_class;
/* "sage/rings/complex_mpc.pxd":5
* cimport sage.rings.ring
*
* cdef class MPComplexNumber(sage.structure.element.FieldElement): # <<<<<<<<<<<<<<
* cdef mpc_t value
* cdef char init
*/
struct __pyx_vtabstruct_4sage_5rings_11complex_mpc_MPComplexNumber {
struct __pyx_vtabstruct_4sage_9structure_7element_FieldElement __pyx_base;
struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber *(*_new)(struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber *);
};
static struct __pyx_vtabstruct_4sage_5rings_11complex_mpc_MPComplexNumber *__pyx_vtabptr_4sage_5rings_11complex_mpc_MPComplexNumber;
/* "sage/rings/complex_mpc.pxd":10
* cdef MPComplexNumber _new(self)
*
* cdef class MPComplexField_class(sage.rings.ring.Field): # <<<<<<<<<<<<<<
* cdef readonly int __prec
* cdef mpc_rnd_t __rnd
*/
struct __pyx_vtabstruct_4sage_5rings_11complex_mpc_MPComplexField_class {
struct __pyx_vtabstruct_4sage_5rings_4ring_Field __pyx_base;
struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber *(*_new)(struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexField_class *);
PyObject *(*_an_element_)(struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexField_class *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_4sage_5rings_11complex_mpc_MPComplexField_class *__pyx_vtabptr_4sage_5rings_11complex_mpc_MPComplexField_class;
/* --- Runtime support code (head) --- */
#ifndef CYTHON_REFNANNY
#define CYTHON_REFNANNY 0
#endif
#if CYTHON_REFNANNY
typedef struct {
void (*INCREF)(void*, PyObject*, int);
void (*DECREF)(void*, PyObject*, int);
void (*GOTREF)(void*, PyObject*, int);
void (*GIVEREF)(void*, PyObject*, int);
void* (*SetupContext)(const char*, int, const char*);
void (*FinishContext)(void**);
} __Pyx_RefNannyAPIStruct;
static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;
static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname);
#define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL;
#ifdef WITH_THREAD
#define __Pyx_RefNannySetupContext(name, acquire_gil) \
if (acquire_gil) { \
PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure(); \
__pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__); \
PyGILState_Release(__pyx_gilstate_save); \
} else { \
__pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__); \
}
#else
#define __Pyx_RefNannySetupContext(name, acquire_gil) \
__pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__)
#endif
#define __Pyx_RefNannyFinishContext() \
__Pyx_RefNanny->FinishContext(&__pyx_refnanny)
#define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
#define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
#define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
#define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
#define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0)
#define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0)
#define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0)
#define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0)
#else
#define __Pyx_RefNannyDeclarations
#define __Pyx_RefNannySetupContext(name, acquire_gil)
#define __Pyx_RefNannyFinishContext()
#define __Pyx_INCREF(r) Py_INCREF(r)
#define __Pyx_DECREF(r) Py_DECREF(r)
#define __Pyx_GOTREF(r)
#define __Pyx_GIVEREF(r)
#define __Pyx_XINCREF(r) Py_XINCREF(r)
#define __Pyx_XDECREF(r) Py_XDECREF(r)
#define __Pyx_XGOTREF(r)
#define __Pyx_XGIVEREF(r)
#endif
#define __Pyx_XDECREF_SET(r, v) do { \
PyObject *tmp = (PyObject *) r; \
r = v; __Pyx_XDECREF(tmp); \
} while (0)
#define __Pyx_DECREF_SET(r, v) do { \
PyObject *tmp = (PyObject *) r; \
r = v; __Pyx_DECREF(tmp); \
} while (0)
#define __Pyx_CLEAR(r) do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0)
#define __Pyx_XCLEAR(r) do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0)
static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed,
const char *name, int exact);
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw);
#else
#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw)
#endif
#define __Pyx_tp_new(type_obj, args) __Pyx_tp_new_kwargs(type_obj, args, NULL)
static CYTHON_INLINE PyObject* __Pyx_tp_new_kwargs(PyObject* type_obj, PyObject* args, PyObject* kwargs) {
return (PyObject*) (((PyTypeObject*)type_obj)->tp_new((PyTypeObject*)type_obj, args, kwargs));
}
static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type);
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {
PyTypeObject* tp = Py_TYPE(obj);
if (likely(tp->tp_getattro))
return tp->tp_getattro(obj, attr_name);
#if PY_MAJOR_VERSION < 3
if (likely(tp->tp_getattr))
return tp->tp_getattr(obj, PyString_AS_STRING(attr_name));
#endif
return PyObject_GetAttr(obj, attr_name);
}
#else
#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n)
#endif
static PyObject *__Pyx_GetBuiltinName(PyObject *name);
static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb);
static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb);
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg);
#endif
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg);
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func);
#else
#define __Pyx_PyObject_CallNoArg(func) __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL)
#endif
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb);
static void* __Pyx_GetVtable(PyObject *dict);
typedef struct {
int code_line;
PyCodeObject* code_object;
} __Pyx_CodeObjectCacheEntry;
struct __Pyx_CodeObjectCache {
int count;
int max_count;
__Pyx_CodeObjectCacheEntry* entries;
};
static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};
static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line);
static PyCodeObject *__pyx_find_code_object(int code_line);
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object);
static void __Pyx_AddTraceback(const char *funcname, int c_line,
int py_line, const char *filename);
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_mpfr_prec_t(mpfr_prec_t value);
#include <new>
#if CYTHON_CCOMPLEX
#ifdef __cplusplus
#define __Pyx_CREAL(z) ((z).real())
#define __Pyx_CIMAG(z) ((z).imag())
#else
#define __Pyx_CREAL(z) (__real__(z))
#define __Pyx_CIMAG(z) (__imag__(z))
#endif
#else
#define __Pyx_CREAL(z) ((z).real)
#define __Pyx_CIMAG(z) ((z).imag)
#endif
#if (defined(_WIN32) || defined(__clang__)) && defined(__cplusplus) && CYTHON_CCOMPLEX
#define __Pyx_SET_CREAL(z,x) ((z).real(x))
#define __Pyx_SET_CIMAG(z,y) ((z).imag(y))
#else
#define __Pyx_SET_CREAL(z,x) __Pyx_CREAL(z) = (x)
#define __Pyx_SET_CIMAG(z,y) __Pyx_CIMAG(z) = (y)
#endif
static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double, double);
#if CYTHON_CCOMPLEX
#define __Pyx_c_eq(a, b) ((a)==(b))
#define __Pyx_c_sum(a, b) ((a)+(b))
#define __Pyx_c_diff(a, b) ((a)-(b))
#define __Pyx_c_prod(a, b) ((a)*(b))
#define __Pyx_c_quot(a, b) ((a)/(b))
#define __Pyx_c_neg(a) (-(a))
#ifdef __cplusplus
#define __Pyx_c_is_zero(z) ((z)==(double)0)
#define __Pyx_c_conj(z) (::std::conj(z))
#if 1
#define __Pyx_c_abs(z) (::std::abs(z))
#define __Pyx_c_pow(a, b) (::std::pow(a, b))
#endif
#else
#define __Pyx_c_is_zero(z) ((z)==0)
#define __Pyx_c_conj(z) (conj(z))
#if 1
#define __Pyx_c_abs(z) (cabs(z))
#define __Pyx_c_pow(a, b) (cpow(a, b))
#endif
#endif
#else
static CYTHON_INLINE int __Pyx_c_eq(__pyx_t_double_complex, __pyx_t_double_complex);
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum(__pyx_t_double_complex, __pyx_t_double_complex);
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff(__pyx_t_double_complex, __pyx_t_double_complex);
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod(__pyx_t_double_complex, __pyx_t_double_complex);
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot(__pyx_t_double_complex, __pyx_t_double_complex);
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg(__pyx_t_double_complex);
static CYTHON_INLINE int __Pyx_c_is_zero(__pyx_t_double_complex);
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj(__pyx_t_double_complex);
#if 1
static CYTHON_INLINE double __Pyx_c_abs(__pyx_t_double_complex);
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow(__pyx_t_double_complex, __pyx_t_double_complex);
#endif
#endif
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value);
static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *);
static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *);
static int __Pyx_check_binary_version(void);
#if !defined(__Pyx_PyIdentifier_FromString)
#if PY_MAJOR_VERSION < 3
#define __Pyx_PyIdentifier_FromString(s) PyString_FromString(s)
#else
#define __Pyx_PyIdentifier_FromString(s) PyUnicode_FromString(s)
#endif
#endif
static PyObject *__Pyx_ImportModule(const char *name);
static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name, size_t size, int strict);
static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig);
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t);
/* Module declarations from 'libc.string' */
/* Module declarations from 'libc.stdio' */
/* Module declarations from 'sage.libs.gmp.types' */
/* Module declarations from '__builtin__' */
/* Module declarations from 'cpython.type' */
static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0;
/* Module declarations from 'cpython.version' */
/* Module declarations from 'cpython.exc' */
/* Module declarations from 'cpython.module' */
/* Module declarations from 'cpython.mem' */
/* Module declarations from 'cpython.tuple' */
/* Module declarations from 'cpython.list' */
/* Module declarations from 'cpython.sequence' */
/* Module declarations from 'cpython.mapping' */
/* Module declarations from 'cpython.iterator' */
/* Module declarations from 'cpython.number' */
/* Module declarations from 'cpython.int' */
/* Module declarations from '__builtin__' */
/* Module declarations from 'cpython.bool' */
static PyTypeObject *__pyx_ptype_7cpython_4bool_bool = 0;
/* Module declarations from 'cpython.long' */
/* Module declarations from 'cpython.float' */
/* Module declarations from '__builtin__' */
/* Module declarations from 'cpython.complex' */
static PyTypeObject *__pyx_ptype_7cpython_7complex_complex = 0;
/* Module declarations from 'cpython.string' */
/* Module declarations from 'cpython.unicode' */
/* Module declarations from 'cpython.dict' */
/* Module declarations from 'cpython.instance' */
/* Module declarations from 'cpython.function' */
/* Module declarations from 'cpython.method' */
/* Module declarations from 'cpython.weakref' */
/* Module declarations from 'cpython.getargs' */
/* Module declarations from 'cpython.pythread' */
/* Module declarations from 'cpython.pystate' */
/* Module declarations from 'cpython.cobject' */
/* Module declarations from 'cpython.oldbuffer' */
/* Module declarations from 'cpython.set' */
/* Module declarations from 'cpython.buffer' */
/* Module declarations from 'cpython.bytes' */
/* Module declarations from 'cpython.pycapsule' */
/* Module declarations from 'cpython' */
/* Module declarations from 'cpython.object' */
/* Module declarations from 'cpython.ref' */
/* Module declarations from 'cpython.slice' */
/* Module declarations from 'sage.libs.ntl.ntl_ZZ_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_lzz_p_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_lzz_pX_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_ZZ_p_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_vec_ZZ_p_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_ZZX_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_ZZ_pContext_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_ZZ_pX_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_lzz_pContext_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_ZZ_pEContext_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_ZZ_pE_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_vec_ZZ_pE_decl' */
/* Module declarations from 'sage.libs.ntl.ntl_ZZ_pEX_decl' */
/* Module declarations from 'sage.libs.ntl.convert' */
static void (*__pyx_f_4sage_4libs_3ntl_7convert_ZZ_to_mpz)(__mpz_struct *, struct ZZ *); /*proto*/
static void (*__pyx_f_4sage_4libs_3ntl_7convert_mpz_to_ZZ)(struct ZZ *, mpz_srcptr); /*proto*/
/* Module declarations from 'libc.stdint' */
/* Module declarations from 'sage.structure.sage_object' */
static PyTypeObject *__pyx_ptype_4sage_9structure_11sage_object_SageObject = 0;
static CYTHON_INLINE int __pyx_f_4sage_9structure_11sage_object_rich_to_bool(int, int); /*proto*/
/* Module declarations from 'sage.structure.generators' */
static PyTypeObject *__pyx_ptype_4sage_9structure_10generators_Generators = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_10generators_Generators_finite = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_10generators_Generators_list = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_10generators_Generators_naturals = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_10generators_Generators_none = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_10generators_Generators_lazy_all = 0;
/* Module declarations from 'sage.structure.category_object' */
static PyTypeObject *__pyx_ptype_4sage_9structure_15category_object_CategoryObject = 0;
/* Module declarations from 'cython' */
/* Module declarations from 'sage.structure.coerce_dict' */
static PyTypeObject *__pyx_ptype_4sage_9structure_11coerce_dict_MonoDict = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_11coerce_dict_TripleDict = 0;
/* Module declarations from 'sage.structure' */
/* Module declarations from 'sage.structure.parent_old' */
static PyTypeObject *__pyx_ptype_4sage_9structure_10parent_old_Parent = 0;
/* Module declarations from 'sage.structure.parent_base' */
static PyTypeObject *__pyx_ptype_4sage_9structure_11parent_base_ParentWithBase = 0;
/* Module declarations from 'sage.structure.parent_gens' */
static PyTypeObject *__pyx_ptype_4sage_9structure_11parent_gens_ParentWithGens = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens = 0;
/* Module declarations from 'sage.rings.ring' */
static PyTypeObject *__pyx_ptype_4sage_5rings_4ring_Ring = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_4ring_CommutativeRing = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_4ring_IntegralDomain = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_4ring_DedekindDomain = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_4ring_PrincipalIdealDomain = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_4ring_EuclideanDomain = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_4ring_Field = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_4ring_Algebra = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_4ring_CommutativeAlgebra = 0;
/* Module declarations from 'sage.rings' */
/* Module declarations from 'sage' */
/* Module declarations from 'sage.structure.parent' */
static PyTypeObject *__pyx_ptype_4sage_9structure_6parent_Parent = 0;
/* Module declarations from 'sage.structure.element' */
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_Element = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_ElementWithCachedMethod = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_ModuleElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_RingElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_MonoidElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_MultiplicativeGroupElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_AdditiveGroupElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_CommutativeRingElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_IntegralDomainElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_DedekindDomainElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_PrincipalIdealDomainElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_EuclideanDomainElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_FieldElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_AlgebraElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_CommutativeAlgebraElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_CommutativeAlgebra = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_InfinityElement = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_Vector = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_Matrix = 0;
static PyTypeObject *__pyx_ptype_4sage_9structure_7element_CoercionModel = 0;
/* Module declarations from 'sage.categories.map' */
static PyTypeObject *__pyx_ptype_4sage_10categories_3map_Map = 0;
static PyTypeObject *__pyx_ptype_4sage_10categories_3map_Section = 0;
static PyTypeObject *__pyx_ptype_4sage_10categories_3map_FormalCompositeMap = 0;
/* Module declarations from 'sage.categories.morphism' */
static PyTypeObject *__pyx_ptype_4sage_10categories_8morphism_Morphism = 0;
static PyTypeObject *__pyx_ptype_4sage_10categories_8morphism_SetMorphism = 0;
/* Module declarations from 'sage.rings.integer' */
static PyTypeObject *__pyx_ptype_4sage_5rings_7integer_Integer = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_7integer_int_to_Z = 0;
/* Module declarations from 'sage.rings.rational' */
static PyTypeObject *__pyx_ptype_4sage_5rings_8rational_Rational = 0;
/* Module declarations from 'sage.libs.mpfr' */
/* Module declarations from 'sage.rings.real_mpfr' */
static PyTypeObject *__pyx_ptype_4sage_5rings_9real_mpfr_RealNumber = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_9real_mpfr_RealField_class = 0;
/* Module declarations from 'sage.libs.mpc' */
/* Module declarations from 'sage.rings.complex_mpc' */
static PyTypeObject *__pyx_ptype_4sage_5rings_11complex_mpc_MPComplexNumber = 0;
static PyTypeObject *__pyx_ptype_4sage_5rings_11complex_mpc_MPComplexField_class = 0;
/* Module declarations from 'libcpp' */
/* Module declarations from 'libcpp.string' */
/* Module declarations from 'libcpp.utility' */
/* Module declarations from 'libcpp.map' */
/* Module declarations from 'libcpp.vector' */
/* Module declarations from 'symengine.lib.symengine' */
/* Module declarations from 'symengine.lib.symengine_wrapper' */
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Basic = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Number = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Integer = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Rational = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Complex = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_RealDouble = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_ComplexDouble = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_RealMPFR = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_ComplexMPC = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Add = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Mul = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Pow = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Function = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_TrigFunction = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Sin = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Cos = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Tan = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Cot = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Csc = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Sec = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_ASin = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_ACos = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_ATan = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_ACot = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_ACsc = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_ASec = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_FunctionSymbol = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_FunctionWrapper = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Abs = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Derivative = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Subs = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_MatrixBase = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_DenseMatrix = 0;
static PyTypeObject *__pyx_ptype_9symengine_3lib_17symengine_wrapper_Log = 0;
/* Module declarations from 'sage.symbolic.symengine_conversions' */
#define __Pyx_MODULE_NAME "sage.symbolic.symengine_conversions"
int __pyx_module_is_main_sage__symbolic__symengine_conversions = 0;
/* Implementation of 'sage.symbolic.symengine_conversions' */
static PyObject *__pyx_builtin_AttributeError;
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_convert_to_integer(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Integer *__pyx_v_i); /* proto */
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_2convert_to_rational(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Rational *__pyx_v_i); /* proto */
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_4convert_to_real_number(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealMPFR *__pyx_v_i); /* proto */
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_6convert_to_mpcomplex_number(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexMPC *__pyx_v_i); /* proto */
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_8convert_from_integer(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_4sage_5rings_7integer_Integer *__pyx_v_i); /* proto */
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_10convert_from_rational(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_4sage_5rings_8rational_Rational *__pyx_v_i); /* proto */
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_12convert_from_real_number(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *__pyx_v_i); /* proto */
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_14convert_from_mpcomplex_number(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber *__pyx_v_i); /* proto */
static char __pyx_k_c[] = "c";
static char __pyx_k_i[] = "i";
static char __pyx_k_o[] = "o";
static char __pyx_k_r[] = "r";
static char __pyx_k_z[] = "z";
static char __pyx_k_main[] = "__main__";
static char __pyx_k_parent[] = "parent";
static char __pyx_k_pyx_vtable[] = "__pyx_vtable__";
static char __pyx_k_AttributeError[] = "AttributeError";
static char __pyx_k_convert_to_integer[] = "convert_to_integer";
static char __pyx_k_convert_to_rational[] = "convert_to_rational";
static char __pyx_k_convert_from_integer[] = "convert_from_integer";
static char __pyx_k_convert_from_rational[] = "convert_from_rational";
static char __pyx_k_convert_to_real_number[] = "convert_to_real_number";
static char __pyx_k_convert_from_real_number[] = "convert_from_real_number";
static char __pyx_k_convert_to_mpcomplex_number[] = "convert_to_mpcomplex_number";
static char __pyx_k_convert_from_mpcomplex_number[] = "convert_from_mpcomplex_number";
static char __pyx_k_home_isuru_projects_sage_src_sa[] = "/home/isuru/projects/sage/src/sage/symbolic/symengine_conversions.pyx";
static char __pyx_k_File_sage_symbolic_symengine_con[] = "File: sage/symbolic/symengine_conversions.pyx (starting at line 1)";
static char __pyx_k_sage_symbolic_symengine_conversi[] = "sage.symbolic.symengine_conversions";
static PyObject *__pyx_n_s_AttributeError;
static PyObject *__pyx_n_s_c;
static PyObject *__pyx_n_s_convert_from_integer;
static PyObject *__pyx_n_s_convert_from_mpcomplex_number;
static PyObject *__pyx_n_s_convert_from_rational;
static PyObject *__pyx_n_s_convert_from_real_number;
static PyObject *__pyx_n_s_convert_to_integer;
static PyObject *__pyx_n_s_convert_to_mpcomplex_number;
static PyObject *__pyx_n_s_convert_to_rational;
static PyObject *__pyx_n_s_convert_to_real_number;
static PyObject *__pyx_kp_s_home_isuru_projects_sage_src_sa;
static PyObject *__pyx_n_s_i;
static PyObject *__pyx_n_s_main;
static PyObject *__pyx_n_s_o;
static PyObject *__pyx_n_s_parent;
static PyObject *__pyx_n_s_pyx_vtable;
static PyObject *__pyx_n_s_r;
static PyObject *__pyx_n_s_sage_symbolic_symengine_conversi;
static PyObject *__pyx_n_s_z;
static PyObject *__pyx_tuple_;
static PyObject *__pyx_tuple__3;
static PyObject *__pyx_tuple__5;
static PyObject *__pyx_tuple__7;
static PyObject *__pyx_tuple__9;
static PyObject *__pyx_tuple__11;
static PyObject *__pyx_tuple__13;
static PyObject *__pyx_tuple__15;
static PyObject *__pyx_codeobj__2;
static PyObject *__pyx_codeobj__4;
static PyObject *__pyx_codeobj__6;
static PyObject *__pyx_codeobj__8;
static PyObject *__pyx_codeobj__10;
static PyObject *__pyx_codeobj__12;
static PyObject *__pyx_codeobj__14;
static PyObject *__pyx_codeobj__16;
/* "sage/symbolic/symengine_conversions.pyx":14
* cimport symengine.lib.symengine as symengine
*
* def convert_to_integer(_Integer i): # <<<<<<<<<<<<<<
* cdef Integer z = Integer()
* z.set_from_mpz(deref(symengine.rcp_static_cast_Integer(i.thisptr)).as_mpz().get_mpz_t())
*/
/* Python wrapper */
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_1convert_to_integer(PyObject *__pyx_self, PyObject *__pyx_v_i); /*proto*/
static char __pyx_doc_4sage_8symbolic_21symengine_conversions_convert_to_integer[] = "convert_to_integer(Integer i)\nFile: sage/symbolic/symengine_conversions.pyx (starting at line 14)";
static PyMethodDef __pyx_mdef_4sage_8symbolic_21symengine_conversions_1convert_to_integer = {"convert_to_integer", (PyCFunction)__pyx_pw_4sage_8symbolic_21symengine_conversions_1convert_to_integer, METH_O, __pyx_doc_4sage_8symbolic_21symengine_conversions_convert_to_integer};
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_1convert_to_integer(PyObject *__pyx_self, PyObject *__pyx_v_i) {
CYTHON_UNUSED int __pyx_lineno = 0;
CYTHON_UNUSED const char *__pyx_filename = NULL;
CYTHON_UNUSED int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("convert_to_integer (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_i), __pyx_ptype_9symengine_3lib_17symengine_wrapper_Integer, 1, "i", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = __pyx_pf_4sage_8symbolic_21symengine_conversions_convert_to_integer(__pyx_self, ((struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Integer *)__pyx_v_i));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = NULL;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_convert_to_integer(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Integer *__pyx_v_i) {
struct __pyx_obj_4sage_5rings_7integer_Integer *__pyx_v_z = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("convert_to_integer", 0);
/* "sage/symbolic/symengine_conversions.pyx":15
*
* def convert_to_integer(_Integer i):
* cdef Integer z = Integer() # <<<<<<<<<<<<<<
* z.set_from_mpz(deref(symengine.rcp_static_cast_Integer(i.thisptr)).as_mpz().get_mpz_t())
* return z
*/
__pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_4sage_5rings_7integer_Integer)), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_z = ((struct __pyx_obj_4sage_5rings_7integer_Integer *)__pyx_t_1);
__pyx_t_1 = 0;
/* "sage/symbolic/symengine_conversions.pyx":16
* def convert_to_integer(_Integer i):
* cdef Integer z = Integer()
* z.set_from_mpz(deref(symengine.rcp_static_cast_Integer(i.thisptr)).as_mpz().get_mpz_t()) # <<<<<<<<<<<<<<
* return z
*
*/
((struct __pyx_vtabstruct_4sage_5rings_7integer_Integer *)__pyx_v_z->__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_vtab)->set_from_mpz(__pyx_v_z, (*SymEngine::rcp_static_cast<const SymEngine::Integer>(((SymEngine::RCP<SymEngine::Basic const > &)__pyx_v_i->__pyx_base.__pyx_base.thisptr))).as_mpz().get_mpz_t());
/* "sage/symbolic/symengine_conversions.pyx":17
* cdef Integer z = Integer()
* z.set_from_mpz(deref(symengine.rcp_static_cast_Integer(i.thisptr)).as_mpz().get_mpz_t())
* return z # <<<<<<<<<<<<<<
*
* def convert_to_rational(_Rational i):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_z));
__pyx_r = ((PyObject *)__pyx_v_z);
goto __pyx_L0;
/* "sage/symbolic/symengine_conversions.pyx":14
* cimport symengine.lib.symengine as symengine
*
* def convert_to_integer(_Integer i): # <<<<<<<<<<<<<<
* cdef Integer z = Integer()
* z.set_from_mpz(deref(symengine.rcp_static_cast_Integer(i.thisptr)).as_mpz().get_mpz_t())
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("sage.symbolic.symengine_conversions.convert_to_integer", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_z);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage/symbolic/symengine_conversions.pyx":19
* return z
*
* def convert_to_rational(_Rational i): # <<<<<<<<<<<<<<
* cdef Rational z = Rational()
* z.set_from_mpq(deref(symengine.rcp_static_cast_Rational(i.thisptr)).as_mpq().get_mpq_t())
*/
/* Python wrapper */
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_3convert_to_rational(PyObject *__pyx_self, PyObject *__pyx_v_i); /*proto*/
static char __pyx_doc_4sage_8symbolic_21symengine_conversions_2convert_to_rational[] = "convert_to_rational(Rational i)\nFile: sage/symbolic/symengine_conversions.pyx (starting at line 19)";
static PyMethodDef __pyx_mdef_4sage_8symbolic_21symengine_conversions_3convert_to_rational = {"convert_to_rational", (PyCFunction)__pyx_pw_4sage_8symbolic_21symengine_conversions_3convert_to_rational, METH_O, __pyx_doc_4sage_8symbolic_21symengine_conversions_2convert_to_rational};
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_3convert_to_rational(PyObject *__pyx_self, PyObject *__pyx_v_i) {
CYTHON_UNUSED int __pyx_lineno = 0;
CYTHON_UNUSED const char *__pyx_filename = NULL;
CYTHON_UNUSED int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("convert_to_rational (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_i), __pyx_ptype_9symengine_3lib_17symengine_wrapper_Rational, 1, "i", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = __pyx_pf_4sage_8symbolic_21symengine_conversions_2convert_to_rational(__pyx_self, ((struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Rational *)__pyx_v_i));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = NULL;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_2convert_to_rational(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Rational *__pyx_v_i) {
struct __pyx_obj_4sage_5rings_8rational_Rational *__pyx_v_z = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("convert_to_rational", 0);
/* "sage/symbolic/symengine_conversions.pyx":20
*
* def convert_to_rational(_Rational i):
* cdef Rational z = Rational() # <<<<<<<<<<<<<<
* z.set_from_mpq(deref(symengine.rcp_static_cast_Rational(i.thisptr)).as_mpq().get_mpq_t())
* return z
*/
__pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_4sage_5rings_8rational_Rational)), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_z = ((struct __pyx_obj_4sage_5rings_8rational_Rational *)__pyx_t_1);
__pyx_t_1 = 0;
/* "sage/symbolic/symengine_conversions.pyx":21
* def convert_to_rational(_Rational i):
* cdef Rational z = Rational()
* z.set_from_mpq(deref(symengine.rcp_static_cast_Rational(i.thisptr)).as_mpq().get_mpq_t()) # <<<<<<<<<<<<<<
* return z
*
*/
((struct __pyx_vtabstruct_4sage_5rings_8rational_Rational *)__pyx_v_z->__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_vtab)->set_from_mpq(__pyx_v_z, (*SymEngine::rcp_static_cast<const SymEngine::Rational>(((SymEngine::RCP<SymEngine::Basic const > &)__pyx_v_i->__pyx_base.__pyx_base.thisptr))).as_mpq().get_mpq_t());
/* "sage/symbolic/symengine_conversions.pyx":22
* cdef Rational z = Rational()
* z.set_from_mpq(deref(symengine.rcp_static_cast_Rational(i.thisptr)).as_mpq().get_mpq_t())
* return z # <<<<<<<<<<<<<<
*
* def convert_to_real_number(_RealMPFR i):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_z));
__pyx_r = ((PyObject *)__pyx_v_z);
goto __pyx_L0;
/* "sage/symbolic/symengine_conversions.pyx":19
* return z
*
* def convert_to_rational(_Rational i): # <<<<<<<<<<<<<<
* cdef Rational z = Rational()
* z.set_from_mpq(deref(symengine.rcp_static_cast_Rational(i.thisptr)).as_mpq().get_mpq_t())
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("sage.symbolic.symengine_conversions.convert_to_rational", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_z);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage/symbolic/symengine_conversions.pyx":24
* return z
*
* def convert_to_real_number(_RealMPFR i): # <<<<<<<<<<<<<<
* cdef RealField_class parent = RealField_class(deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).get_prec())
* cdef RealNumber z = RealNumber(parent)
*/
/* Python wrapper */
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_5convert_to_real_number(PyObject *__pyx_self, PyObject *__pyx_v_i); /*proto*/
static char __pyx_doc_4sage_8symbolic_21symengine_conversions_4convert_to_real_number[] = "convert_to_real_number(RealMPFR i)\nFile: sage/symbolic/symengine_conversions.pyx (starting at line 24)";
static PyMethodDef __pyx_mdef_4sage_8symbolic_21symengine_conversions_5convert_to_real_number = {"convert_to_real_number", (PyCFunction)__pyx_pw_4sage_8symbolic_21symengine_conversions_5convert_to_real_number, METH_O, __pyx_doc_4sage_8symbolic_21symengine_conversions_4convert_to_real_number};
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_5convert_to_real_number(PyObject *__pyx_self, PyObject *__pyx_v_i) {
CYTHON_UNUSED int __pyx_lineno = 0;
CYTHON_UNUSED const char *__pyx_filename = NULL;
CYTHON_UNUSED int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("convert_to_real_number (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_i), __pyx_ptype_9symengine_3lib_17symengine_wrapper_RealMPFR, 1, "i", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = __pyx_pf_4sage_8symbolic_21symengine_conversions_4convert_to_real_number(__pyx_self, ((struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealMPFR *)__pyx_v_i));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = NULL;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_4convert_to_real_number(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealMPFR *__pyx_v_i) {
struct __pyx_obj_4sage_5rings_9real_mpfr_RealField_class *__pyx_v_parent = 0;
struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *__pyx_v_z = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("convert_to_real_number", 0);
/* "sage/symbolic/symengine_conversions.pyx":25
*
* def convert_to_real_number(_RealMPFR i):
* cdef RealField_class parent = RealField_class(deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).get_prec()) # <<<<<<<<<<<<<<
* cdef RealNumber z = RealNumber(parent)
* mpfr_set(z.value, deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).as_mpfr().get_mpfr_t(), MPFR_RNDN)
*/
__pyx_t_1 = __Pyx_PyInt_From_mpfr_prec_t((*SymEngine::rcp_static_cast<const SymEngine::RealMPFR>(((SymEngine::RCP<SymEngine::Basic const > &)__pyx_v_i->__pyx_base.__pyx_base.thisptr))).get_prec()); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__pyx_t_1 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_4sage_5rings_9real_mpfr_RealField_class)), __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_parent = ((struct __pyx_obj_4sage_5rings_9real_mpfr_RealField_class *)__pyx_t_1);
__pyx_t_1 = 0;
/* "sage/symbolic/symengine_conversions.pyx":26
* def convert_to_real_number(_RealMPFR i):
* cdef RealField_class parent = RealField_class(deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).get_prec())
* cdef RealNumber z = RealNumber(parent) # <<<<<<<<<<<<<<
* mpfr_set(z.value, deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).as_mpfr().get_mpfr_t(), MPFR_RNDN)
* return z
*/
__pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_parent));
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_parent));
__Pyx_GIVEREF(((PyObject *)__pyx_v_parent));
__pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_4sage_5rings_9real_mpfr_RealNumber)), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_z = ((struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *)__pyx_t_2);
__pyx_t_2 = 0;
/* "sage/symbolic/symengine_conversions.pyx":27
* cdef RealField_class parent = RealField_class(deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).get_prec())
* cdef RealNumber z = RealNumber(parent)
* mpfr_set(z.value, deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).as_mpfr().get_mpfr_t(), MPFR_RNDN) # <<<<<<<<<<<<<<
* return z
*
*/
mpfr_set(__pyx_v_z->value, (*SymEngine::rcp_static_cast<const SymEngine::RealMPFR>(((SymEngine::RCP<SymEngine::Basic const > &)__pyx_v_i->__pyx_base.__pyx_base.thisptr))).as_mpfr().get_mpfr_t(), MPFR_RNDN);
/* "sage/symbolic/symengine_conversions.pyx":28
* cdef RealNumber z = RealNumber(parent)
* mpfr_set(z.value, deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).as_mpfr().get_mpfr_t(), MPFR_RNDN)
* return z # <<<<<<<<<<<<<<
*
* def convert_to_mpcomplex_number(_ComplexMPC i):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_z));
__pyx_r = ((PyObject *)__pyx_v_z);
goto __pyx_L0;
/* "sage/symbolic/symengine_conversions.pyx":24
* return z
*
* def convert_to_real_number(_RealMPFR i): # <<<<<<<<<<<<<<
* cdef RealField_class parent = RealField_class(deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).get_prec())
* cdef RealNumber z = RealNumber(parent)
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("sage.symbolic.symengine_conversions.convert_to_real_number", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_parent);
__Pyx_XDECREF((PyObject *)__pyx_v_z);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage/symbolic/symengine_conversions.pyx":30
* return z
*
* def convert_to_mpcomplex_number(_ComplexMPC i): # <<<<<<<<<<<<<<
* cdef MPComplexField_class parent = MPComplexField_class(deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).get_prec())
* cdef MPComplexNumber z = parent._new()
*/
/* Python wrapper */
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_7convert_to_mpcomplex_number(PyObject *__pyx_self, PyObject *__pyx_v_i); /*proto*/
static char __pyx_doc_4sage_8symbolic_21symengine_conversions_6convert_to_mpcomplex_number[] = "convert_to_mpcomplex_number(ComplexMPC i)\nFile: sage/symbolic/symengine_conversions.pyx (starting at line 30)";
static PyMethodDef __pyx_mdef_4sage_8symbolic_21symengine_conversions_7convert_to_mpcomplex_number = {"convert_to_mpcomplex_number", (PyCFunction)__pyx_pw_4sage_8symbolic_21symengine_conversions_7convert_to_mpcomplex_number, METH_O, __pyx_doc_4sage_8symbolic_21symengine_conversions_6convert_to_mpcomplex_number};
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_7convert_to_mpcomplex_number(PyObject *__pyx_self, PyObject *__pyx_v_i) {
CYTHON_UNUSED int __pyx_lineno = 0;
CYTHON_UNUSED const char *__pyx_filename = NULL;
CYTHON_UNUSED int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("convert_to_mpcomplex_number (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_i), __pyx_ptype_9symengine_3lib_17symengine_wrapper_ComplexMPC, 1, "i", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = __pyx_pf_4sage_8symbolic_21symengine_conversions_6convert_to_mpcomplex_number(__pyx_self, ((struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexMPC *)__pyx_v_i));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = NULL;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_6convert_to_mpcomplex_number(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexMPC *__pyx_v_i) {
struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexField_class *__pyx_v_parent = 0;
struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber *__pyx_v_z = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("convert_to_mpcomplex_number", 0);
/* "sage/symbolic/symengine_conversions.pyx":31
*
* def convert_to_mpcomplex_number(_ComplexMPC i):
* cdef MPComplexField_class parent = MPComplexField_class(deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).get_prec()) # <<<<<<<<<<<<<<
* cdef MPComplexNumber z = parent._new()
* mpc_set(z.value, deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).as_mpc().get_mpc_t(), MPC_RNDNN)
*/
__pyx_t_1 = __Pyx_PyInt_From_mpfr_prec_t((*SymEngine::rcp_static_cast<const SymEngine::ComplexMPC>(((SymEngine::RCP<SymEngine::Basic const > &)__pyx_v_i->__pyx_base.__pyx_base.thisptr))).get_prec()); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__pyx_t_1 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_4sage_5rings_11complex_mpc_MPComplexField_class)), __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_parent = ((struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexField_class *)__pyx_t_1);
__pyx_t_1 = 0;
/* "sage/symbolic/symengine_conversions.pyx":32
* def convert_to_mpcomplex_number(_ComplexMPC i):
* cdef MPComplexField_class parent = MPComplexField_class(deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).get_prec())
* cdef MPComplexNumber z = parent._new() # <<<<<<<<<<<<<<
* mpc_set(z.value, deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).as_mpc().get_mpc_t(), MPC_RNDNN)
* return z
*/
__pyx_t_1 = ((PyObject *)((struct __pyx_vtabstruct_4sage_5rings_11complex_mpc_MPComplexField_class *)__pyx_v_parent->__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_base.__pyx_vtab)->_new(__pyx_v_parent)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_z = ((struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber *)__pyx_t_1);
__pyx_t_1 = 0;
/* "sage/symbolic/symengine_conversions.pyx":33
* cdef MPComplexField_class parent = MPComplexField_class(deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).get_prec())
* cdef MPComplexNumber z = parent._new()
* mpc_set(z.value, deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).as_mpc().get_mpc_t(), MPC_RNDNN) # <<<<<<<<<<<<<<
* return z
*
*/
mpc_set(__pyx_v_z->value, (*SymEngine::rcp_static_cast<const SymEngine::ComplexMPC>(((SymEngine::RCP<SymEngine::Basic const > &)__pyx_v_i->__pyx_base.__pyx_base.thisptr))).as_mpc().get_mpc_t(), MPC_RNDNN);
/* "sage/symbolic/symengine_conversions.pyx":34
* cdef MPComplexNumber z = parent._new()
* mpc_set(z.value, deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).as_mpc().get_mpc_t(), MPC_RNDNN)
* return z # <<<<<<<<<<<<<<
*
* def convert_from_integer(Integer i):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_z));
__pyx_r = ((PyObject *)__pyx_v_z);
goto __pyx_L0;
/* "sage/symbolic/symengine_conversions.pyx":30
* return z
*
* def convert_to_mpcomplex_number(_ComplexMPC i): # <<<<<<<<<<<<<<
* cdef MPComplexField_class parent = MPComplexField_class(deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).get_prec())
* cdef MPComplexNumber z = parent._new()
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("sage.symbolic.symengine_conversions.convert_to_mpcomplex_number", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_parent);
__Pyx_XDECREF((PyObject *)__pyx_v_z);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage/symbolic/symengine_conversions.pyx":36
* return z
*
* def convert_from_integer(Integer i): # <<<<<<<<<<<<<<
* cdef mpz_class c = mpz_class(i.value)
* cdef _Integer z = _Integer()
*/
/* Python wrapper */
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_9convert_from_integer(PyObject *__pyx_self, PyObject *__pyx_v_i); /*proto*/
static char __pyx_doc_4sage_8symbolic_21symengine_conversions_8convert_from_integer[] = "convert_from_integer(Integer i)\nFile: sage/symbolic/symengine_conversions.pyx (starting at line 36)";
static PyMethodDef __pyx_mdef_4sage_8symbolic_21symengine_conversions_9convert_from_integer = {"convert_from_integer", (PyCFunction)__pyx_pw_4sage_8symbolic_21symengine_conversions_9convert_from_integer, METH_O, __pyx_doc_4sage_8symbolic_21symengine_conversions_8convert_from_integer};
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_9convert_from_integer(PyObject *__pyx_self, PyObject *__pyx_v_i) {
CYTHON_UNUSED int __pyx_lineno = 0;
CYTHON_UNUSED const char *__pyx_filename = NULL;
CYTHON_UNUSED int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("convert_from_integer (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_i), __pyx_ptype_4sage_5rings_7integer_Integer, 1, "i", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = __pyx_pf_4sage_8symbolic_21symengine_conversions_8convert_from_integer(__pyx_self, ((struct __pyx_obj_4sage_5rings_7integer_Integer *)__pyx_v_i));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = NULL;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_8convert_from_integer(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_4sage_5rings_7integer_Integer *__pyx_v_i) {
mpz_class __pyx_v_c;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Integer *__pyx_v_z = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("convert_from_integer", 0);
/* "sage/symbolic/symengine_conversions.pyx":37
*
* def convert_from_integer(Integer i):
* cdef mpz_class c = mpz_class(i.value) # <<<<<<<<<<<<<<
* cdef _Integer z = _Integer()
* z.thisptr = <RCP[const symengine.Basic]>(symengine.integer(c))
*/
__pyx_v_c = mpz_class(__pyx_v_i->value);
/* "sage/symbolic/symengine_conversions.pyx":38
* def convert_from_integer(Integer i):
* cdef mpz_class c = mpz_class(i.value)
* cdef _Integer z = _Integer() # <<<<<<<<<<<<<<
* z.thisptr = <RCP[const symengine.Basic]>(symengine.integer(c))
* return z
*/
__pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_9symengine_3lib_17symengine_wrapper_Integer)), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_z = ((struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Integer *)__pyx_t_1);
__pyx_t_1 = 0;
/* "sage/symbolic/symengine_conversions.pyx":39
* cdef mpz_class c = mpz_class(i.value)
* cdef _Integer z = _Integer()
* z.thisptr = <RCP[const symengine.Basic]>(symengine.integer(c)) # <<<<<<<<<<<<<<
* return z
*
*/
__pyx_v_z->__pyx_base.__pyx_base.thisptr = ((SymEngine::RCP<SymEngine::Basic const > )((SymEngine::RCP<SymEngine::Basic const > )SymEngine::integer(__pyx_v_c)));
/* "sage/symbolic/symengine_conversions.pyx":40
* cdef _Integer z = _Integer()
* z.thisptr = <RCP[const symengine.Basic]>(symengine.integer(c))
* return z # <<<<<<<<<<<<<<
*
* def convert_from_rational(Rational i):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_z));
__pyx_r = ((PyObject *)__pyx_v_z);
goto __pyx_L0;
/* "sage/symbolic/symengine_conversions.pyx":36
* return z
*
* def convert_from_integer(Integer i): # <<<<<<<<<<<<<<
* cdef mpz_class c = mpz_class(i.value)
* cdef _Integer z = _Integer()
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("sage.symbolic.symengine_conversions.convert_from_integer", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_z);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage/symbolic/symengine_conversions.pyx":42
* return z
*
* def convert_from_rational(Rational i): # <<<<<<<<<<<<<<
* cdef mpq_class c = mpq_class(i.value)
* cdef Basic r
*/
/* Python wrapper */
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_11convert_from_rational(PyObject *__pyx_self, PyObject *__pyx_v_i); /*proto*/
static char __pyx_doc_4sage_8symbolic_21symengine_conversions_10convert_from_rational[] = "convert_from_rational(Rational i)\nFile: sage/symbolic/symengine_conversions.pyx (starting at line 42)";
static PyMethodDef __pyx_mdef_4sage_8symbolic_21symengine_conversions_11convert_from_rational = {"convert_from_rational", (PyCFunction)__pyx_pw_4sage_8symbolic_21symengine_conversions_11convert_from_rational, METH_O, __pyx_doc_4sage_8symbolic_21symengine_conversions_10convert_from_rational};
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_11convert_from_rational(PyObject *__pyx_self, PyObject *__pyx_v_i) {
CYTHON_UNUSED int __pyx_lineno = 0;
CYTHON_UNUSED const char *__pyx_filename = NULL;
CYTHON_UNUSED int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("convert_from_rational (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_i), __pyx_ptype_4sage_5rings_8rational_Rational, 1, "i", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 42; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = __pyx_pf_4sage_8symbolic_21symengine_conversions_10convert_from_rational(__pyx_self, ((struct __pyx_obj_4sage_5rings_8rational_Rational *)__pyx_v_i));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = NULL;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_10convert_from_rational(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_4sage_5rings_8rational_Rational *__pyx_v_i) {
mpq_class __pyx_v_c;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic *__pyx_v_r = 0;
SymEngine::RCP<SymEngine::Basic const > __pyx_v_o;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("convert_from_rational", 0);
/* "sage/symbolic/symengine_conversions.pyx":43
*
* def convert_from_rational(Rational i):
* cdef mpq_class c = mpq_class(i.value) # <<<<<<<<<<<<<<
* cdef Basic r
* cdef RCP[const symengine.Basic] o = <RCP[const symengine.Basic]>(symengine.from_mpq(c))
*/
__pyx_v_c = mpq_class(__pyx_v_i->value);
/* "sage/symbolic/symengine_conversions.pyx":45
* cdef mpq_class c = mpq_class(i.value)
* cdef Basic r
* cdef RCP[const symengine.Basic] o = <RCP[const symengine.Basic]>(symengine.from_mpq(c)) # <<<<<<<<<<<<<<
* if symengine.is_a_Integer(deref(o)):
* r = _Integer.__new__(_Integer)
*/
__pyx_v_o = ((SymEngine::RCP<SymEngine::Basic const > )((SymEngine::RCP<SymEngine::Basic const > )SymEngine::Rational::from_mpq(__pyx_v_c)));
/* "sage/symbolic/symengine_conversions.pyx":46
* cdef Basic r
* cdef RCP[const symengine.Basic] o = <RCP[const symengine.Basic]>(symengine.from_mpq(c))
* if symengine.is_a_Integer(deref(o)): # <<<<<<<<<<<<<<
* r = _Integer.__new__(_Integer)
* else:
*/
__pyx_t_1 = (SymEngine::is_a<SymEngine::Integer>((*__pyx_v_o)) != 0);
if (__pyx_t_1) {
/* "sage/symbolic/symengine_conversions.pyx":47
* cdef RCP[const symengine.Basic] o = <RCP[const symengine.Basic]>(symengine.from_mpq(c))
* if symengine.is_a_Integer(deref(o)):
* r = _Integer.__new__(_Integer) # <<<<<<<<<<<<<<
* else:
* r = _Rational.__new__(_Rational)
*/
__pyx_t_2 = __Pyx_tp_new(((PyObject *)((PyObject*)__pyx_ptype_9symengine_3lib_17symengine_wrapper_Integer)), __pyx_empty_tuple); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (!(likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_9symengine_3lib_17symengine_wrapper_Basic)))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_v_r = ((struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic *)__pyx_t_2);
__pyx_t_2 = 0;
goto __pyx_L3;
}
/*else*/ {
/* "sage/symbolic/symengine_conversions.pyx":49
* r = _Integer.__new__(_Integer)
* else:
* r = _Rational.__new__(_Rational) # <<<<<<<<<<<<<<
* r.thisptr = o
* return r
*/
__pyx_t_2 = __Pyx_tp_new(((PyObject *)((PyObject*)__pyx_ptype_9symengine_3lib_17symengine_wrapper_Rational)), __pyx_empty_tuple); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (!(likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_9symengine_3lib_17symengine_wrapper_Basic)))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_v_r = ((struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic *)__pyx_t_2);
__pyx_t_2 = 0;
}
__pyx_L3:;
/* "sage/symbolic/symengine_conversions.pyx":50
* else:
* r = _Rational.__new__(_Rational)
* r.thisptr = o # <<<<<<<<<<<<<<
* return r
*
*/
__pyx_v_r->thisptr = ((SymEngine::RCP<SymEngine::Basic const > )__pyx_v_o);
/* "sage/symbolic/symengine_conversions.pyx":51
* r = _Rational.__new__(_Rational)
* r.thisptr = o
* return r # <<<<<<<<<<<<<<
*
* def convert_from_real_number(RealNumber i):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_r));
__pyx_r = ((PyObject *)__pyx_v_r);
goto __pyx_L0;
/* "sage/symbolic/symengine_conversions.pyx":42
* return z
*
* def convert_from_rational(Rational i): # <<<<<<<<<<<<<<
* cdef mpq_class c = mpq_class(i.value)
* cdef Basic r
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("sage.symbolic.symengine_conversions.convert_from_rational", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_r);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage/symbolic/symengine_conversions.pyx":53
* return r
*
* def convert_from_real_number(RealNumber i): # <<<<<<<<<<<<<<
* cdef mpfr_class c = mpfr_class(i.value)
* cdef _RealMPFR z = _RealMPFR()
*/
/* Python wrapper */
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_13convert_from_real_number(PyObject *__pyx_self, PyObject *__pyx_v_i); /*proto*/
static char __pyx_doc_4sage_8symbolic_21symengine_conversions_12convert_from_real_number[] = "convert_from_real_number(RealNumber i)\nFile: sage/symbolic/symengine_conversions.pyx (starting at line 53)";
static PyMethodDef __pyx_mdef_4sage_8symbolic_21symengine_conversions_13convert_from_real_number = {"convert_from_real_number", (PyCFunction)__pyx_pw_4sage_8symbolic_21symengine_conversions_13convert_from_real_number, METH_O, __pyx_doc_4sage_8symbolic_21symengine_conversions_12convert_from_real_number};
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_13convert_from_real_number(PyObject *__pyx_self, PyObject *__pyx_v_i) {
CYTHON_UNUSED int __pyx_lineno = 0;
CYTHON_UNUSED const char *__pyx_filename = NULL;
CYTHON_UNUSED int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("convert_from_real_number (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_i), __pyx_ptype_4sage_5rings_9real_mpfr_RealNumber, 1, "i", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = __pyx_pf_4sage_8symbolic_21symengine_conversions_12convert_from_real_number(__pyx_self, ((struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *)__pyx_v_i));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = NULL;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_12convert_from_real_number(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber *__pyx_v_i) {
SymEngine::mpfr_class __pyx_v_c;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealMPFR *__pyx_v_z = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("convert_from_real_number", 0);
/* "sage/symbolic/symengine_conversions.pyx":54
*
* def convert_from_real_number(RealNumber i):
* cdef mpfr_class c = mpfr_class(i.value) # <<<<<<<<<<<<<<
* cdef _RealMPFR z = _RealMPFR()
* z.thisptr = <RCP[const symengine.Basic]>(symengine.real_mpfr(c))
*/
__pyx_v_c = SymEngine::mpfr_class(__pyx_v_i->value);
/* "sage/symbolic/symengine_conversions.pyx":55
* def convert_from_real_number(RealNumber i):
* cdef mpfr_class c = mpfr_class(i.value)
* cdef _RealMPFR z = _RealMPFR() # <<<<<<<<<<<<<<
* z.thisptr = <RCP[const symengine.Basic]>(symengine.real_mpfr(c))
* return z
*/
__pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_9symengine_3lib_17symengine_wrapper_RealMPFR)), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_z = ((struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealMPFR *)__pyx_t_1);
__pyx_t_1 = 0;
/* "sage/symbolic/symengine_conversions.pyx":56
* cdef mpfr_class c = mpfr_class(i.value)
* cdef _RealMPFR z = _RealMPFR()
* z.thisptr = <RCP[const symengine.Basic]>(symengine.real_mpfr(c)) # <<<<<<<<<<<<<<
* return z
*
*/
__pyx_v_z->__pyx_base.__pyx_base.thisptr = ((SymEngine::RCP<SymEngine::Basic const > )((SymEngine::RCP<SymEngine::Basic const > )SymEngine::real_mpfr(__pyx_v_c)));
/* "sage/symbolic/symengine_conversions.pyx":57
* cdef _RealMPFR z = _RealMPFR()
* z.thisptr = <RCP[const symengine.Basic]>(symengine.real_mpfr(c))
* return z # <<<<<<<<<<<<<<
*
* def convert_from_mpcomplex_number(MPComplexNumber i):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_z));
__pyx_r = ((PyObject *)__pyx_v_z);
goto __pyx_L0;
/* "sage/symbolic/symengine_conversions.pyx":53
* return r
*
* def convert_from_real_number(RealNumber i): # <<<<<<<<<<<<<<
* cdef mpfr_class c = mpfr_class(i.value)
* cdef _RealMPFR z = _RealMPFR()
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("sage.symbolic.symengine_conversions.convert_from_real_number", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_z);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage/symbolic/symengine_conversions.pyx":59
* return z
*
* def convert_from_mpcomplex_number(MPComplexNumber i): # <<<<<<<<<<<<<<
* cdef mpc_class c = mpc_class(i.value)
* cdef _ComplexMPC z = _ComplexMPC()
*/
/* Python wrapper */
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_15convert_from_mpcomplex_number(PyObject *__pyx_self, PyObject *__pyx_v_i); /*proto*/
static char __pyx_doc_4sage_8symbolic_21symengine_conversions_14convert_from_mpcomplex_number[] = "convert_from_mpcomplex_number(MPComplexNumber i)\nFile: sage/symbolic/symengine_conversions.pyx (starting at line 59)";
static PyMethodDef __pyx_mdef_4sage_8symbolic_21symengine_conversions_15convert_from_mpcomplex_number = {"convert_from_mpcomplex_number", (PyCFunction)__pyx_pw_4sage_8symbolic_21symengine_conversions_15convert_from_mpcomplex_number, METH_O, __pyx_doc_4sage_8symbolic_21symengine_conversions_14convert_from_mpcomplex_number};
static PyObject *__pyx_pw_4sage_8symbolic_21symengine_conversions_15convert_from_mpcomplex_number(PyObject *__pyx_self, PyObject *__pyx_v_i) {
CYTHON_UNUSED int __pyx_lineno = 0;
CYTHON_UNUSED const char *__pyx_filename = NULL;
CYTHON_UNUSED int __pyx_clineno = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("convert_from_mpcomplex_number (wrapper)", 0);
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_i), __pyx_ptype_4sage_5rings_11complex_mpc_MPComplexNumber, 1, "i", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = __pyx_pf_4sage_8symbolic_21symengine_conversions_14convert_from_mpcomplex_number(__pyx_self, ((struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber *)__pyx_v_i));
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = NULL;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_4sage_8symbolic_21symengine_conversions_14convert_from_mpcomplex_number(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber *__pyx_v_i) {
SymEngine::mpc_class __pyx_v_c;
struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexMPC *__pyx_v_z = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("convert_from_mpcomplex_number", 0);
/* "sage/symbolic/symengine_conversions.pyx":60
*
* def convert_from_mpcomplex_number(MPComplexNumber i):
* cdef mpc_class c = mpc_class(i.value) # <<<<<<<<<<<<<<
* cdef _ComplexMPC z = _ComplexMPC()
* z.thisptr = <RCP[const symengine.Basic]>(symengine.complex_mpc(c))
*/
__pyx_v_c = SymEngine::mpc_class(__pyx_v_i->value);
/* "sage/symbolic/symengine_conversions.pyx":61
* def convert_from_mpcomplex_number(MPComplexNumber i):
* cdef mpc_class c = mpc_class(i.value)
* cdef _ComplexMPC z = _ComplexMPC() # <<<<<<<<<<<<<<
* z.thisptr = <RCP[const symengine.Basic]>(symengine.complex_mpc(c))
* return z
*/
__pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_9symengine_3lib_17symengine_wrapper_ComplexMPC)), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_z = ((struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexMPC *)__pyx_t_1);
__pyx_t_1 = 0;
/* "sage/symbolic/symengine_conversions.pyx":62
* cdef mpc_class c = mpc_class(i.value)
* cdef _ComplexMPC z = _ComplexMPC()
* z.thisptr = <RCP[const symengine.Basic]>(symengine.complex_mpc(c)) # <<<<<<<<<<<<<<
* return z
*/
__pyx_v_z->__pyx_base.__pyx_base.thisptr = ((SymEngine::RCP<SymEngine::Basic const > )((SymEngine::RCP<SymEngine::Basic const > )SymEngine::complex_mpc(__pyx_v_c)));
/* "sage/symbolic/symengine_conversions.pyx":63
* cdef _ComplexMPC z = _ComplexMPC()
* z.thisptr = <RCP[const symengine.Basic]>(symengine.complex_mpc(c))
* return z # <<<<<<<<<<<<<<
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_z));
__pyx_r = ((PyObject *)__pyx_v_z);
goto __pyx_L0;
/* "sage/symbolic/symengine_conversions.pyx":59
* return z
*
* def convert_from_mpcomplex_number(MPComplexNumber i): # <<<<<<<<<<<<<<
* cdef mpc_class c = mpc_class(i.value)
* cdef _ComplexMPC z = _ComplexMPC()
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("sage.symbolic.symengine_conversions.convert_from_mpcomplex_number", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_z);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage/structure/element.pxd":5
* from cpython.number cimport PyNumber_Check
*
* cdef inline parent_c(x): # <<<<<<<<<<<<<<
* if isinstance(x, Element):
* return (<Element>x)._parent
*/
static CYTHON_INLINE PyObject *__pyx_f_4sage_9structure_7element_parent_c(PyObject *__pyx_v_x) {
PyObject *__pyx_v_p = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
int __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
int __pyx_t_9;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannySetupContext("parent_c", 0);
/* "sage/structure/element.pxd":6
*
* cdef inline parent_c(x):
* if isinstance(x, Element): # <<<<<<<<<<<<<<
* return (<Element>x)._parent
* # Fast check for "number" types, including int and float
*/
__pyx_t_1 = __Pyx_TypeCheck(__pyx_v_x, ((PyObject*)__pyx_ptype_4sage_9structure_7element_Element));
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
/* "sage/structure/element.pxd":7
* cdef inline parent_c(x):
* if isinstance(x, Element):
* return (<Element>x)._parent # <<<<<<<<<<<<<<
* # Fast check for "number" types, including int and float
* if PyNumber_Check(x):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)((struct __pyx_obj_4sage_9structure_7element_Element *)__pyx_v_x)->_parent));
__pyx_r = ((PyObject *)((struct __pyx_obj_4sage_9structure_7element_Element *)__pyx_v_x)->_parent);
goto __pyx_L0;
}
/* "sage/structure/element.pxd":9
* return (<Element>x)._parent
* # Fast check for "number" types, including int and float
* if PyNumber_Check(x): # <<<<<<<<<<<<<<
* return type(x)
* try:
*/
__pyx_t_2 = (PyNumber_Check(__pyx_v_x) != 0);
if (__pyx_t_2) {
/* "sage/structure/element.pxd":10
* # Fast check for "number" types, including int and float
* if PyNumber_Check(x):
* return type(x) # <<<<<<<<<<<<<<
* try:
* p = x.parent
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_x)));
__pyx_r = ((PyObject *)Py_TYPE(__pyx_v_x));
goto __pyx_L0;
}
/* "sage/structure/element.pxd":11
* if PyNumber_Check(x):
* return type(x)
* try: # <<<<<<<<<<<<<<
* p = x.parent
* except AttributeError:
*/
{
__Pyx_ExceptionSave(&__pyx_t_3, &__pyx_t_4, &__pyx_t_5);
__Pyx_XGOTREF(__pyx_t_3);
__Pyx_XGOTREF(__pyx_t_4);
__Pyx_XGOTREF(__pyx_t_5);
/*try:*/ {
/* "sage/structure/element.pxd":12
* return type(x)
* try:
* p = x.parent # <<<<<<<<<<<<<<
* except AttributeError:
* return type(x)
*/
__pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_parent); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
__Pyx_GOTREF(__pyx_t_6);
__pyx_v_p = __pyx_t_6;
__pyx_t_6 = 0;
}
/*else:*/ {
/* "sage/structure/element.pxd":16
* return type(x)
* else:
* return p() # <<<<<<<<<<<<<<
*
* cdef inline bint have_same_parent_c(left, right):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_p);
__pyx_t_7 = __pyx_v_p; __pyx_t_8 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
}
}
if (__pyx_t_8) {
__pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else {
__pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_r = __pyx_t_6;
__pyx_t_6 = 0;
goto __pyx_L8_except_return;
}
__pyx_L5_error:;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
/* "sage/structure/element.pxd":13
* try:
* p = x.parent
* except AttributeError: # <<<<<<<<<<<<<<
* return type(x)
* else:
*/
__pyx_t_9 = PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
if (__pyx_t_9) {
__Pyx_AddTraceback("sage.structure.element.parent_c", __pyx_clineno, __pyx_lineno, __pyx_filename);
if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_8);
/* "sage/structure/element.pxd":14
* p = x.parent
* except AttributeError:
* return type(x) # <<<<<<<<<<<<<<
* else:
* return p()
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_x)));
__pyx_r = ((PyObject *)Py_TYPE(__pyx_v_x));
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L8_except_return;
}
goto __pyx_L7_except_error;
__pyx_L7_except_error:;
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_ExceptionReset(__pyx_t_3, __pyx_t_4, __pyx_t_5);
goto __pyx_L1_error;
__pyx_L8_except_return:;
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_ExceptionReset(__pyx_t_3, __pyx_t_4, __pyx_t_5);
goto __pyx_L0;
}
/* "sage/structure/element.pxd":5
* from cpython.number cimport PyNumber_Check
*
* cdef inline parent_c(x): # <<<<<<<<<<<<<<
* if isinstance(x, Element):
* return (<Element>x)._parent
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_AddTraceback("sage.structure.element.parent_c", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_p);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage/structure/element.pxd":18
* return p()
*
* cdef inline bint have_same_parent_c(left, right): # <<<<<<<<<<<<<<
* """
* Return ``True`` if and only if ``left`` and ``right`` have the
*/
static CYTHON_INLINE int __pyx_f_4sage_9structure_7element_have_same_parent_c(PyObject *__pyx_v_left, PyObject *__pyx_v_right) {
int __pyx_r;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
int __pyx_t_2;
int __pyx_t_3;
__Pyx_RefNannySetupContext("have_same_parent_c", 0);
/* "sage/structure/element.pxd":26
* # their types are *equal* (fast to check) then they are both
* # Elements. Otherwise use the slower test via isinstance().
* if type(left) is type(right): # <<<<<<<<<<<<<<
* return (<Element>left)._parent is (<Element>right)._parent
* if isinstance(right, Element) and isinstance(left, Element):
*/
__pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_left)) == ((PyObject *)Py_TYPE(__pyx_v_right)));
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
/* "sage/structure/element.pxd":27
* # Elements. Otherwise use the slower test via isinstance().
* if type(left) is type(right):
* return (<Element>left)._parent is (<Element>right)._parent # <<<<<<<<<<<<<<
* if isinstance(right, Element) and isinstance(left, Element):
* return (<Element>left)._parent is (<Element>right)._parent
*/
__pyx_t_2 = (((struct __pyx_obj_4sage_9structure_7element_Element *)__pyx_v_left)->_parent == ((struct __pyx_obj_4sage_9structure_7element_Element *)__pyx_v_right)->_parent);
__pyx_r = __pyx_t_2;
goto __pyx_L0;
}
/* "sage/structure/element.pxd":28
* if type(left) is type(right):
* return (<Element>left)._parent is (<Element>right)._parent
* if isinstance(right, Element) and isinstance(left, Element): # <<<<<<<<<<<<<<
* return (<Element>left)._parent is (<Element>right)._parent
* return False
*/
__pyx_t_1 = __Pyx_TypeCheck(__pyx_v_right, ((PyObject*)__pyx_ptype_4sage_9structure_7element_Element));
__pyx_t_3 = (__pyx_t_1 != 0);
if (__pyx_t_3) {
} else {
__pyx_t_2 = __pyx_t_3;
goto __pyx_L5_bool_binop_done;
}
__pyx_t_3 = __Pyx_TypeCheck(__pyx_v_left, ((PyObject*)__pyx_ptype_4sage_9structure_7element_Element));
__pyx_t_1 = (__pyx_t_3 != 0);
__pyx_t_2 = __pyx_t_1;
__pyx_L5_bool_binop_done:;
if (__pyx_t_2) {
/* "sage/structure/element.pxd":29
* return (<Element>left)._parent is (<Element>right)._parent
* if isinstance(right, Element) and isinstance(left, Element):
* return (<Element>left)._parent is (<Element>right)._parent # <<<<<<<<<<<<<<
* return False
*
*/
__pyx_t_2 = (((struct __pyx_obj_4sage_9structure_7element_Element *)__pyx_v_left)->_parent == ((struct __pyx_obj_4sage_9structure_7element_Element *)__pyx_v_right)->_parent);
__pyx_r = __pyx_t_2;
goto __pyx_L0;
}
/* "sage/structure/element.pxd":30
* if isinstance(right, Element) and isinstance(left, Element):
* return (<Element>left)._parent is (<Element>right)._parent
* return False # <<<<<<<<<<<<<<
*
*
*/
__pyx_r = 0;
goto __pyx_L0;
/* "sage/structure/element.pxd":18
* return p()
*
* cdef inline bint have_same_parent_c(left, right): # <<<<<<<<<<<<<<
* """
* Return ``True`` if and only if ``left`` and ``right`` have the
*/
/* function exit code */
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage_object.pxd":9
*
*
* cdef inline bint rich_to_bool(int op, int c): # <<<<<<<<<<<<<<
* """
* Return the corresponding ``True`` or ``False`` value for a rich
*/
static CYTHON_INLINE int __pyx_f_4sage_9structure_11sage_object_rich_to_bool(int __pyx_v_op, int __pyx_v_c) {
uint32_t __pyx_v_less_bits;
uint32_t __pyx_v_equal_bits;
uint32_t __pyx_v_greater_bits;
uint32_t __pyx_v_bits;
int __pyx_v_shift;
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("rich_to_bool", 0);
/* "sage_object.pxd":49
* # The 4 lines below involve just constants, so the compiler should
* # optimize them to just one constant value for "bits".
* cdef uint32_t less_bits = (1 << Py_LT) + (1 << Py_LE) + (1 << Py_NE) # <<<<<<<<<<<<<<
* cdef uint32_t equal_bits = (1 << Py_LE) + (1 << Py_GE) + (1 << Py_EQ)
* cdef uint32_t greater_bits = (1 << Py_GT) + (1 << Py_GE) + (1 << Py_NE)
*/
__pyx_v_less_bits = (((1 << Py_LT) + (1 << Py_LE)) + (1 << Py_NE));
/* "sage_object.pxd":50
* # optimize them to just one constant value for "bits".
* cdef uint32_t less_bits = (1 << Py_LT) + (1 << Py_LE) + (1 << Py_NE)
* cdef uint32_t equal_bits = (1 << Py_LE) + (1 << Py_GE) + (1 << Py_EQ) # <<<<<<<<<<<<<<
* cdef uint32_t greater_bits = (1 << Py_GT) + (1 << Py_GE) + (1 << Py_NE)
* cdef uint32_t bits = (less_bits << 24) + (equal_bits) + (greater_bits << 8)
*/
__pyx_v_equal_bits = (((1 << Py_LE) + (1 << Py_GE)) + (1 << Py_EQ));
/* "sage_object.pxd":51
* cdef uint32_t less_bits = (1 << Py_LT) + (1 << Py_LE) + (1 << Py_NE)
* cdef uint32_t equal_bits = (1 << Py_LE) + (1 << Py_GE) + (1 << Py_EQ)
* cdef uint32_t greater_bits = (1 << Py_GT) + (1 << Py_GE) + (1 << Py_NE) # <<<<<<<<<<<<<<
* cdef uint32_t bits = (less_bits << 24) + (equal_bits) + (greater_bits << 8)
*
*/
__pyx_v_greater_bits = (((1 << Py_GT) + (1 << Py_GE)) + (1 << Py_NE));
/* "sage_object.pxd":52
* cdef uint32_t equal_bits = (1 << Py_LE) + (1 << Py_GE) + (1 << Py_EQ)
* cdef uint32_t greater_bits = (1 << Py_GT) + (1 << Py_GE) + (1 << Py_NE)
* cdef uint32_t bits = (less_bits << 24) + (equal_bits) + (greater_bits << 8) # <<<<<<<<<<<<<<
*
* cdef int shift = 8*c + op
*/
__pyx_v_bits = (((__pyx_v_less_bits << 24) + __pyx_v_equal_bits) + (__pyx_v_greater_bits << 8));
/* "sage_object.pxd":54
* cdef uint32_t bits = (less_bits << 24) + (equal_bits) + (greater_bits << 8)
*
* cdef int shift = 8*c + op # <<<<<<<<<<<<<<
*
* # The shift masking (shift & 31) will likely be optimized away by
*/
__pyx_v_shift = ((8 * __pyx_v_c) + __pyx_v_op);
/* "sage_object.pxd":59
* # the compiler since shift and bit test instructions implicitly
* # mask their offset.
* return (bits >> (shift & 31)) & 1 # <<<<<<<<<<<<<<
*
*
*/
__pyx_r = ((__pyx_v_bits >> (__pyx_v_shift & 31)) & 1);
goto __pyx_L0;
/* "sage_object.pxd":9
*
*
* cdef inline bint rich_to_bool(int op, int c): # <<<<<<<<<<<<<<
* """
* Return the corresponding ``True`` or ``False`` value for a rich
*/
/* function exit code */
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "sage_object.pxd":62
*
*
* cdef inline bint rich_to_bool_sgn(int op, int c): # <<<<<<<<<<<<<<
* """
* Same as ``rich_to_bool``, but allow any `c < 0` and `c > 0`
*/
static CYTHON_INLINE int __pyx_f_4sage_9structure_11sage_object_rich_to_bool_sgn(int __pyx_v_op, int __pyx_v_c) {
int __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("rich_to_bool_sgn", 0);
/* "sage_object.pxd":71
* This is in particular needed for ``mpz_cmp()``.
* """
* return rich_to_bool(op, (c > 0) - (c < 0)) # <<<<<<<<<<<<<<
*/
__pyx_r = __pyx_f_4sage_9structure_11sage_object_rich_to_bool(__pyx_v_op, ((__pyx_v_c > 0) - (__pyx_v_c < 0)));
goto __pyx_L0;
/* "sage_object.pxd":62
*
*
* cdef inline bint rich_to_bool_sgn(int op, int c): # <<<<<<<<<<<<<<
* """
* Same as ``rich_to_bool``, but allow any `c < 0` and `c > 0`
*/
/* function exit code */
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyMethodDef __pyx_methods[] = {
{0, 0, 0, 0}
};
#if PY_MAJOR_VERSION >= 3
static struct PyModuleDef __pyx_moduledef = {
#if PY_VERSION_HEX < 0x03020000
{ PyObject_HEAD_INIT(NULL) NULL, 0, NULL },
#else
PyModuleDef_HEAD_INIT,
#endif
"symengine_conversions",
__pyx_k_File_sage_symbolic_symengine_con, /* m_doc */
-1, /* m_size */
__pyx_methods /* m_methods */,
NULL, /* m_reload */
NULL, /* m_traverse */
NULL, /* m_clear */
NULL /* m_free */
};
#endif
static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_AttributeError, __pyx_k_AttributeError, sizeof(__pyx_k_AttributeError), 0, 0, 1, 1},
{&__pyx_n_s_c, __pyx_k_c, sizeof(__pyx_k_c), 0, 0, 1, 1},
{&__pyx_n_s_convert_from_integer, __pyx_k_convert_from_integer, sizeof(__pyx_k_convert_from_integer), 0, 0, 1, 1},
{&__pyx_n_s_convert_from_mpcomplex_number, __pyx_k_convert_from_mpcomplex_number, sizeof(__pyx_k_convert_from_mpcomplex_number), 0, 0, 1, 1},
{&__pyx_n_s_convert_from_rational, __pyx_k_convert_from_rational, sizeof(__pyx_k_convert_from_rational), 0, 0, 1, 1},
{&__pyx_n_s_convert_from_real_number, __pyx_k_convert_from_real_number, sizeof(__pyx_k_convert_from_real_number), 0, 0, 1, 1},
{&__pyx_n_s_convert_to_integer, __pyx_k_convert_to_integer, sizeof(__pyx_k_convert_to_integer), 0, 0, 1, 1},
{&__pyx_n_s_convert_to_mpcomplex_number, __pyx_k_convert_to_mpcomplex_number, sizeof(__pyx_k_convert_to_mpcomplex_number), 0, 0, 1, 1},
{&__pyx_n_s_convert_to_rational, __pyx_k_convert_to_rational, sizeof(__pyx_k_convert_to_rational), 0, 0, 1, 1},
{&__pyx_n_s_convert_to_real_number, __pyx_k_convert_to_real_number, sizeof(__pyx_k_convert_to_real_number), 0, 0, 1, 1},
{&__pyx_kp_s_home_isuru_projects_sage_src_sa, __pyx_k_home_isuru_projects_sage_src_sa, sizeof(__pyx_k_home_isuru_projects_sage_src_sa), 0, 0, 1, 0},
{&__pyx_n_s_i, __pyx_k_i, sizeof(__pyx_k_i), 0, 0, 1, 1},
{&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1},
{&__pyx_n_s_o, __pyx_k_o, sizeof(__pyx_k_o), 0, 0, 1, 1},
{&__pyx_n_s_parent, __pyx_k_parent, sizeof(__pyx_k_parent), 0, 0, 1, 1},
{&__pyx_n_s_pyx_vtable, __pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 0, 1, 1},
{&__pyx_n_s_r, __pyx_k_r, sizeof(__pyx_k_r), 0, 0, 1, 1},
{&__pyx_n_s_sage_symbolic_symengine_conversi, __pyx_k_sage_symbolic_symengine_conversi, sizeof(__pyx_k_sage_symbolic_symengine_conversi), 0, 0, 1, 1},
{&__pyx_n_s_z, __pyx_k_z, sizeof(__pyx_k_z), 0, 0, 1, 1},
{0, 0, 0, 0, 0, 0, 0}
};
static int __Pyx_InitCachedBuiltins(void) {
__pyx_builtin_AttributeError = __Pyx_GetBuiltinName(__pyx_n_s_AttributeError); if (!__pyx_builtin_AttributeError) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
return 0;
__pyx_L1_error:;
return -1;
}
static int __Pyx_InitCachedConstants(void) {
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0);
/* "sage/symbolic/symengine_conversions.pyx":14
* cimport symengine.lib.symengine as symengine
*
* def convert_to_integer(_Integer i): # <<<<<<<<<<<<<<
* cdef Integer z = Integer()
* z.set_from_mpz(deref(symengine.rcp_static_cast_Integer(i.thisptr)).as_mpz().get_mpz_t())
*/
__pyx_tuple_ = PyTuple_Pack(2, __pyx_n_s_i, __pyx_n_s_z); if (unlikely(!__pyx_tuple_)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_tuple_);
__Pyx_GIVEREF(__pyx_tuple_);
__pyx_codeobj__2 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple_, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_isuru_projects_sage_src_sa, __pyx_n_s_convert_to_integer, 14, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "sage/symbolic/symengine_conversions.pyx":19
* return z
*
* def convert_to_rational(_Rational i): # <<<<<<<<<<<<<<
* cdef Rational z = Rational()
* z.set_from_mpq(deref(symengine.rcp_static_cast_Rational(i.thisptr)).as_mpq().get_mpq_t())
*/
__pyx_tuple__3 = PyTuple_Pack(2, __pyx_n_s_i, __pyx_n_s_z); if (unlikely(!__pyx_tuple__3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_tuple__3);
__Pyx_GIVEREF(__pyx_tuple__3);
__pyx_codeobj__4 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__3, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_isuru_projects_sage_src_sa, __pyx_n_s_convert_to_rational, 19, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "sage/symbolic/symengine_conversions.pyx":24
* return z
*
* def convert_to_real_number(_RealMPFR i): # <<<<<<<<<<<<<<
* cdef RealField_class parent = RealField_class(deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).get_prec())
* cdef RealNumber z = RealNumber(parent)
*/
__pyx_tuple__5 = PyTuple_Pack(3, __pyx_n_s_i, __pyx_n_s_parent, __pyx_n_s_z); if (unlikely(!__pyx_tuple__5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_tuple__5);
__Pyx_GIVEREF(__pyx_tuple__5);
__pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__5, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_isuru_projects_sage_src_sa, __pyx_n_s_convert_to_real_number, 24, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "sage/symbolic/symengine_conversions.pyx":30
* return z
*
* def convert_to_mpcomplex_number(_ComplexMPC i): # <<<<<<<<<<<<<<
* cdef MPComplexField_class parent = MPComplexField_class(deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).get_prec())
* cdef MPComplexNumber z = parent._new()
*/
__pyx_tuple__7 = PyTuple_Pack(3, __pyx_n_s_i, __pyx_n_s_parent, __pyx_n_s_z); if (unlikely(!__pyx_tuple__7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_tuple__7);
__Pyx_GIVEREF(__pyx_tuple__7);
__pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_isuru_projects_sage_src_sa, __pyx_n_s_convert_to_mpcomplex_number, 30, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "sage/symbolic/symengine_conversions.pyx":36
* return z
*
* def convert_from_integer(Integer i): # <<<<<<<<<<<<<<
* cdef mpz_class c = mpz_class(i.value)
* cdef _Integer z = _Integer()
*/
__pyx_tuple__9 = PyTuple_Pack(3, __pyx_n_s_i, __pyx_n_s_c, __pyx_n_s_z); if (unlikely(!__pyx_tuple__9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_tuple__9);
__Pyx_GIVEREF(__pyx_tuple__9);
__pyx_codeobj__10 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_isuru_projects_sage_src_sa, __pyx_n_s_convert_from_integer, 36, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "sage/symbolic/symengine_conversions.pyx":42
* return z
*
* def convert_from_rational(Rational i): # <<<<<<<<<<<<<<
* cdef mpq_class c = mpq_class(i.value)
* cdef Basic r
*/
__pyx_tuple__11 = PyTuple_Pack(4, __pyx_n_s_i, __pyx_n_s_c, __pyx_n_s_r, __pyx_n_s_o); if (unlikely(!__pyx_tuple__11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 42; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_tuple__11);
__Pyx_GIVEREF(__pyx_tuple__11);
__pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_isuru_projects_sage_src_sa, __pyx_n_s_convert_from_rational, 42, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 42; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "sage/symbolic/symengine_conversions.pyx":53
* return r
*
* def convert_from_real_number(RealNumber i): # <<<<<<<<<<<<<<
* cdef mpfr_class c = mpfr_class(i.value)
* cdef _RealMPFR z = _RealMPFR()
*/
__pyx_tuple__13 = PyTuple_Pack(3, __pyx_n_s_i, __pyx_n_s_c, __pyx_n_s_z); if (unlikely(!__pyx_tuple__13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_tuple__13);
__Pyx_GIVEREF(__pyx_tuple__13);
__pyx_codeobj__14 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__13, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_isuru_projects_sage_src_sa, __pyx_n_s_convert_from_real_number, 53, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "sage/symbolic/symengine_conversions.pyx":59
* return z
*
* def convert_from_mpcomplex_number(MPComplexNumber i): # <<<<<<<<<<<<<<
* cdef mpc_class c = mpc_class(i.value)
* cdef _ComplexMPC z = _ComplexMPC()
*/
__pyx_tuple__15 = PyTuple_Pack(3, __pyx_n_s_i, __pyx_n_s_c, __pyx_n_s_z); if (unlikely(!__pyx_tuple__15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_tuple__15);
__Pyx_GIVEREF(__pyx_tuple__15);
__pyx_codeobj__16 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__15, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_isuru_projects_sage_src_sa, __pyx_n_s_convert_from_mpcomplex_number, 59, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_RefNannyFinishContext();
return 0;
__pyx_L1_error:;
__Pyx_RefNannyFinishContext();
return -1;
}
static int __Pyx_InitGlobals(void) {
if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
return 0;
__pyx_L1_error:;
return -1;
}
#if PY_MAJOR_VERSION < 3
PyMODINIT_FUNC initsymengine_conversions(void); /*proto*/
PyMODINIT_FUNC initsymengine_conversions(void)
#else
PyMODINIT_FUNC PyInit_symengine_conversions(void); /*proto*/
PyMODINIT_FUNC PyInit_symengine_conversions(void)
#endif
{
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
int __pyx_lineno = 0;
const char *__pyx_filename = NULL;
int __pyx_clineno = 0;
__Pyx_RefNannyDeclarations
#if CYTHON_REFNANNY
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny");
if (!__Pyx_RefNanny) {
PyErr_Clear();
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny");
if (!__Pyx_RefNanny)
Py_FatalError("failed to import 'refnanny' module");
}
#endif
__Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_symengine_conversions(void)", 0);
if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
#ifdef __Pyx_CyFunction_USED
if (__Pyx_CyFunction_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
#endif
#ifdef __Pyx_FusedFunction_USED
if (__pyx_FusedFunction_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
#endif
#ifdef __Pyx_Generator_USED
if (__pyx_Generator_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
#endif
/*--- Library function declarations ---*/
/*--- Threads initialization code ---*/
#if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS
#ifdef WITH_THREAD /* Python build with threading support? */
PyEval_InitThreads();
#endif
#endif
/*--- Module creation code ---*/
#if PY_MAJOR_VERSION < 3
__pyx_m = Py_InitModule4("symengine_conversions", __pyx_methods, __pyx_k_File_sage_symbolic_symengine_con, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m);
#else
__pyx_m = PyModule_Create(&__pyx_moduledef);
#endif
if (unlikely(!__pyx_m)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
Py_INCREF(__pyx_d);
__pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
#if CYTHON_COMPILING_IN_PYPY
Py_INCREF(__pyx_b);
#endif
if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
/*--- Initialize various global constants etc. ---*/
if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
#if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT)
if (__Pyx_init_sys_getdefaultencoding_params() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
#endif
if (__pyx_module_is_main_sage__symbolic__symengine_conversions) {
if (PyObject_SetAttrString(__pyx_m, "__name__", __pyx_n_s_main) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
}
#if PY_MAJOR_VERSION >= 3
{
PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (!PyDict_GetItemString(modules, "sage.symbolic.symengine_conversions")) {
if (unlikely(PyDict_SetItemString(modules, "sage.symbolic.symengine_conversions", __pyx_m) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
}
}
#endif
/*--- Builtin init code ---*/
if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/*--- Constants init code ---*/
if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/*--- Global init code ---*/
/*--- Variable export code ---*/
/*--- Function export code ---*/
/*--- Type init code ---*/
/*--- Type import code ---*/
__pyx_ptype_7cpython_4type_type = __Pyx_ImportType(__Pyx_BUILTIN_MODULE_NAME, "type",
#if CYTHON_COMPILING_IN_PYPY
sizeof(PyTypeObject),
#else
sizeof(PyHeapTypeObject),
#endif
0); if (unlikely(!__pyx_ptype_7cpython_4type_type)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_7cpython_4bool_bool = __Pyx_ImportType(__Pyx_BUILTIN_MODULE_NAME, "bool", sizeof(PyBoolObject), 0); if (unlikely(!__pyx_ptype_7cpython_4bool_bool)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_7cpython_7complex_complex = __Pyx_ImportType(__Pyx_BUILTIN_MODULE_NAME, "complex", sizeof(PyComplexObject), 0); if (unlikely(!__pyx_ptype_7cpython_7complex_complex)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_11sage_object_SageObject = __Pyx_ImportType("sage.structure.sage_object", "SageObject", sizeof(struct __pyx_obj_4sage_9structure_11sage_object_SageObject), 1); if (unlikely(!__pyx_ptype_4sage_9structure_11sage_object_SageObject)) {__pyx_filename = __pyx_f[5]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_10generators_Generators = __Pyx_ImportType("sage.structure.generators", "Generators", sizeof(struct __pyx_obj_4sage_9structure_10generators_Generators), 1); if (unlikely(!__pyx_ptype_4sage_9structure_10generators_Generators)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 3; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_10generators_Generators = (struct __pyx_vtabstruct_4sage_9structure_10generators_Generators*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_10generators_Generators->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_10generators_Generators)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 3; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_10generators_Generators_finite = __Pyx_ImportType("sage.structure.generators", "Generators_finite", sizeof(struct __pyx_obj_4sage_9structure_10generators_Generators_finite), 1); if (unlikely(!__pyx_ptype_4sage_9structure_10generators_Generators_finite)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_10generators_Generators_finite = (struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_finite*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_10generators_Generators_finite->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_10generators_Generators_finite)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_10generators_Generators_list = __Pyx_ImportType("sage.structure.generators", "Generators_list", sizeof(struct __pyx_obj_4sage_9structure_10generators_Generators_list), 1); if (unlikely(!__pyx_ptype_4sage_9structure_10generators_Generators_list)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_10generators_Generators_list = (struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_list*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_10generators_Generators_list->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_10generators_Generators_list)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_10generators_Generators_naturals = __Pyx_ImportType("sage.structure.generators", "Generators_naturals", sizeof(struct __pyx_obj_4sage_9structure_10generators_Generators_naturals), 1); if (unlikely(!__pyx_ptype_4sage_9structure_10generators_Generators_naturals)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_10generators_Generators_naturals = (struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_naturals*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_10generators_Generators_naturals->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_10generators_Generators_naturals)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_10generators_Generators_none = __Pyx_ImportType("sage.structure.generators", "Generators_none", sizeof(struct __pyx_obj_4sage_9structure_10generators_Generators_none), 1); if (unlikely(!__pyx_ptype_4sage_9structure_10generators_Generators_none)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_10generators_Generators_none = (struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_none*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_10generators_Generators_none->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_10generators_Generators_none)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_10generators_Generators_lazy_all = __Pyx_ImportType("sage.structure.generators", "Generators_lazy_all", sizeof(struct __pyx_obj_4sage_9structure_10generators_Generators_lazy_all), 1); if (unlikely(!__pyx_ptype_4sage_9structure_10generators_Generators_lazy_all)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_10generators_Generators_lazy_all = (struct __pyx_vtabstruct_4sage_9structure_10generators_Generators_lazy_all*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_10generators_Generators_lazy_all->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_10generators_Generators_lazy_all)) {__pyx_filename = __pyx_f[6]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_15category_object_CategoryObject = __Pyx_ImportType("sage.structure.category_object", "CategoryObject", sizeof(struct __pyx_obj_4sage_9structure_15category_object_CategoryObject), 1); if (unlikely(!__pyx_ptype_4sage_9structure_15category_object_CategoryObject)) {__pyx_filename = __pyx_f[7]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_11coerce_dict_MonoDict = __Pyx_ImportType("sage.structure.coerce_dict", "MonoDict", sizeof(struct __pyx_obj_4sage_9structure_11coerce_dict_MonoDict), 1); if (unlikely(!__pyx_ptype_4sage_9structure_11coerce_dict_MonoDict)) {__pyx_filename = __pyx_f[8]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_11coerce_dict_MonoDict = (struct __pyx_vtabstruct_4sage_9structure_11coerce_dict_MonoDict*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_11coerce_dict_MonoDict->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_11coerce_dict_MonoDict)) {__pyx_filename = __pyx_f[8]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_11coerce_dict_TripleDict = __Pyx_ImportType("sage.structure.coerce_dict", "TripleDict", sizeof(struct __pyx_obj_4sage_9structure_11coerce_dict_TripleDict), 1); if (unlikely(!__pyx_ptype_4sage_9structure_11coerce_dict_TripleDict)) {__pyx_filename = __pyx_f[8]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_11coerce_dict_TripleDict = (struct __pyx_vtabstruct_4sage_9structure_11coerce_dict_TripleDict*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_11coerce_dict_TripleDict->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_11coerce_dict_TripleDict)) {__pyx_filename = __pyx_f[8]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_10parent_old_Parent = __Pyx_ImportType("sage.structure.parent_old", "Parent", sizeof(struct __pyx_obj_4sage_9structure_10parent_old_Parent), 1); if (unlikely(!__pyx_ptype_4sage_9structure_10parent_old_Parent)) {__pyx_filename = __pyx_f[9]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_10parent_old_Parent = (struct __pyx_vtabstruct_4sage_9structure_10parent_old_Parent*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_10parent_old_Parent->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_10parent_old_Parent)) {__pyx_filename = __pyx_f[9]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_11parent_base_ParentWithBase = __Pyx_ImportType("sage.structure.parent_base", "ParentWithBase", sizeof(struct __pyx_obj_4sage_9structure_11parent_base_ParentWithBase), 1); if (unlikely(!__pyx_ptype_4sage_9structure_11parent_base_ParentWithBase)) {__pyx_filename = __pyx_f[10]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_11parent_base_ParentWithBase = (struct __pyx_vtabstruct_4sage_9structure_11parent_base_ParentWithBase*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_11parent_base_ParentWithBase->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_11parent_base_ParentWithBase)) {__pyx_filename = __pyx_f[10]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_11parent_gens_ParentWithGens = __Pyx_ImportType("sage.structure.parent_gens", "ParentWithGens", sizeof(struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithGens), 1); if (unlikely(!__pyx_ptype_4sage_9structure_11parent_gens_ParentWithGens)) {__pyx_filename = __pyx_f[11]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_11parent_gens_ParentWithGens = (struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithGens*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_11parent_gens_ParentWithGens->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_11parent_gens_ParentWithGens)) {__pyx_filename = __pyx_f[11]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens = __Pyx_ImportType("sage.structure.parent_gens", "ParentWithMultiplicativeAbelianGens", sizeof(struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens), 1); if (unlikely(!__pyx_ptype_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens)) {__pyx_filename = __pyx_f[11]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens = (struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_11parent_gens_ParentWithMultiplicativeAbelianGens)) {__pyx_filename = __pyx_f[11]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens = __Pyx_ImportType("sage.structure.parent_gens", "ParentWithAdditiveAbelianGens", sizeof(struct __pyx_obj_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens), 1); if (unlikely(!__pyx_ptype_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens)) {__pyx_filename = __pyx_f[11]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens = (struct __pyx_vtabstruct_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_11parent_gens_ParentWithAdditiveAbelianGens)) {__pyx_filename = __pyx_f[11]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_4ring_Ring = __Pyx_ImportType("sage.rings.ring", "Ring", sizeof(struct __pyx_obj_4sage_5rings_4ring_Ring), 1); if (unlikely(!__pyx_ptype_4sage_5rings_4ring_Ring)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_4ring_Ring = (struct __pyx_vtabstruct_4sage_5rings_4ring_Ring*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_4ring_Ring->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_4ring_Ring)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_4ring_CommutativeRing = __Pyx_ImportType("sage.rings.ring", "CommutativeRing", sizeof(struct __pyx_obj_4sage_5rings_4ring_CommutativeRing), 1); if (unlikely(!__pyx_ptype_4sage_5rings_4ring_CommutativeRing)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_4ring_CommutativeRing = (struct __pyx_vtabstruct_4sage_5rings_4ring_CommutativeRing*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_4ring_CommutativeRing->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_4ring_CommutativeRing)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_4ring_IntegralDomain = __Pyx_ImportType("sage.rings.ring", "IntegralDomain", sizeof(struct __pyx_obj_4sage_5rings_4ring_IntegralDomain), 1); if (unlikely(!__pyx_ptype_4sage_5rings_4ring_IntegralDomain)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_4ring_IntegralDomain = (struct __pyx_vtabstruct_4sage_5rings_4ring_IntegralDomain*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_4ring_IntegralDomain->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_4ring_IntegralDomain)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_4ring_DedekindDomain = __Pyx_ImportType("sage.rings.ring", "DedekindDomain", sizeof(struct __pyx_obj_4sage_5rings_4ring_DedekindDomain), 1); if (unlikely(!__pyx_ptype_4sage_5rings_4ring_DedekindDomain)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_4ring_DedekindDomain = (struct __pyx_vtabstruct_4sage_5rings_4ring_DedekindDomain*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_4ring_DedekindDomain->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_4ring_DedekindDomain)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_4ring_PrincipalIdealDomain = __Pyx_ImportType("sage.rings.ring", "PrincipalIdealDomain", sizeof(struct __pyx_obj_4sage_5rings_4ring_PrincipalIdealDomain), 1); if (unlikely(!__pyx_ptype_4sage_5rings_4ring_PrincipalIdealDomain)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_4ring_PrincipalIdealDomain = (struct __pyx_vtabstruct_4sage_5rings_4ring_PrincipalIdealDomain*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_4ring_PrincipalIdealDomain->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_4ring_PrincipalIdealDomain)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_4ring_EuclideanDomain = __Pyx_ImportType("sage.rings.ring", "EuclideanDomain", sizeof(struct __pyx_obj_4sage_5rings_4ring_EuclideanDomain), 1); if (unlikely(!__pyx_ptype_4sage_5rings_4ring_EuclideanDomain)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_4ring_EuclideanDomain = (struct __pyx_vtabstruct_4sage_5rings_4ring_EuclideanDomain*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_4ring_EuclideanDomain->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_4ring_EuclideanDomain)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_4ring_Field = __Pyx_ImportType("sage.rings.ring", "Field", sizeof(struct __pyx_obj_4sage_5rings_4ring_Field), 1); if (unlikely(!__pyx_ptype_4sage_5rings_4ring_Field)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_4ring_Field = (struct __pyx_vtabstruct_4sage_5rings_4ring_Field*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_4ring_Field->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_4ring_Field)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_4ring_Algebra = __Pyx_ImportType("sage.rings.ring", "Algebra", sizeof(struct __pyx_obj_4sage_5rings_4ring_Algebra), 1); if (unlikely(!__pyx_ptype_4sage_5rings_4ring_Algebra)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_4ring_Algebra = (struct __pyx_vtabstruct_4sage_5rings_4ring_Algebra*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_4ring_Algebra->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_4ring_Algebra)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_4ring_CommutativeAlgebra = __Pyx_ImportType("sage.rings.ring", "CommutativeAlgebra", sizeof(struct __pyx_obj_4sage_5rings_4ring_CommutativeAlgebra), 1); if (unlikely(!__pyx_ptype_4sage_5rings_4ring_CommutativeAlgebra)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_4ring_CommutativeAlgebra = (struct __pyx_vtabstruct_4sage_5rings_4ring_CommutativeAlgebra*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_4ring_CommutativeAlgebra->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_4ring_CommutativeAlgebra)) {__pyx_filename = __pyx_f[12]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_6parent_Parent = __Pyx_ImportType("sage.structure.parent", "Parent", sizeof(struct __pyx_obj_4sage_9structure_6parent_Parent), 1); if (unlikely(!__pyx_ptype_4sage_9structure_6parent_Parent)) {__pyx_filename = __pyx_f[13]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_6parent_Parent = (struct __pyx_vtabstruct_4sage_9structure_6parent_Parent*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_6parent_Parent->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_6parent_Parent)) {__pyx_filename = __pyx_f[13]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_Element = __Pyx_ImportType("sage.structure.element", "Element", sizeof(struct __pyx_obj_4sage_9structure_7element_Element), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_Element)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_Element = (struct __pyx_vtabstruct_4sage_9structure_7element_Element*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_Element->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_Element)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_ElementWithCachedMethod = __Pyx_ImportType("sage.structure.element", "ElementWithCachedMethod", sizeof(struct __pyx_obj_4sage_9structure_7element_ElementWithCachedMethod), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_ElementWithCachedMethod)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_ElementWithCachedMethod = (struct __pyx_vtabstruct_4sage_9structure_7element_ElementWithCachedMethod*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_ElementWithCachedMethod->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_ElementWithCachedMethod)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_ModuleElement = __Pyx_ImportType("sage.structure.element", "ModuleElement", sizeof(struct __pyx_obj_4sage_9structure_7element_ModuleElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_ModuleElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_ModuleElement = (struct __pyx_vtabstruct_4sage_9structure_7element_ModuleElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_ModuleElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_ModuleElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_RingElement = __Pyx_ImportType("sage.structure.element", "RingElement", sizeof(struct __pyx_obj_4sage_9structure_7element_RingElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_RingElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_RingElement = (struct __pyx_vtabstruct_4sage_9structure_7element_RingElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_RingElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_RingElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_MonoidElement = __Pyx_ImportType("sage.structure.element", "MonoidElement", sizeof(struct __pyx_obj_4sage_9structure_7element_MonoidElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_MonoidElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_MonoidElement = (struct __pyx_vtabstruct_4sage_9structure_7element_MonoidElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_MonoidElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_MonoidElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_MultiplicativeGroupElement = __Pyx_ImportType("sage.structure.element", "MultiplicativeGroupElement", sizeof(struct __pyx_obj_4sage_9structure_7element_MultiplicativeGroupElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_MultiplicativeGroupElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_MultiplicativeGroupElement = (struct __pyx_vtabstruct_4sage_9structure_7element_MultiplicativeGroupElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_MultiplicativeGroupElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_MultiplicativeGroupElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_AdditiveGroupElement = __Pyx_ImportType("sage.structure.element", "AdditiveGroupElement", sizeof(struct __pyx_obj_4sage_9structure_7element_AdditiveGroupElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_AdditiveGroupElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_AdditiveGroupElement = (struct __pyx_vtabstruct_4sage_9structure_7element_AdditiveGroupElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_AdditiveGroupElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_AdditiveGroupElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_CommutativeRingElement = __Pyx_ImportType("sage.structure.element", "CommutativeRingElement", sizeof(struct __pyx_obj_4sage_9structure_7element_CommutativeRingElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_CommutativeRingElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_CommutativeRingElement = (struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeRingElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_CommutativeRingElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_CommutativeRingElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_IntegralDomainElement = __Pyx_ImportType("sage.structure.element", "IntegralDomainElement", sizeof(struct __pyx_obj_4sage_9structure_7element_IntegralDomainElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_IntegralDomainElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_IntegralDomainElement = (struct __pyx_vtabstruct_4sage_9structure_7element_IntegralDomainElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_IntegralDomainElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_IntegralDomainElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_DedekindDomainElement = __Pyx_ImportType("sage.structure.element", "DedekindDomainElement", sizeof(struct __pyx_obj_4sage_9structure_7element_DedekindDomainElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_DedekindDomainElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_DedekindDomainElement = (struct __pyx_vtabstruct_4sage_9structure_7element_DedekindDomainElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_DedekindDomainElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_DedekindDomainElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_PrincipalIdealDomainElement = __Pyx_ImportType("sage.structure.element", "PrincipalIdealDomainElement", sizeof(struct __pyx_obj_4sage_9structure_7element_PrincipalIdealDomainElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_PrincipalIdealDomainElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_PrincipalIdealDomainElement = (struct __pyx_vtabstruct_4sage_9structure_7element_PrincipalIdealDomainElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_PrincipalIdealDomainElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_PrincipalIdealDomainElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_EuclideanDomainElement = __Pyx_ImportType("sage.structure.element", "EuclideanDomainElement", sizeof(struct __pyx_obj_4sage_9structure_7element_EuclideanDomainElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_EuclideanDomainElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_EuclideanDomainElement = (struct __pyx_vtabstruct_4sage_9structure_7element_EuclideanDomainElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_EuclideanDomainElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_EuclideanDomainElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_FieldElement = __Pyx_ImportType("sage.structure.element", "FieldElement", sizeof(struct __pyx_obj_4sage_9structure_7element_FieldElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_FieldElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_FieldElement = (struct __pyx_vtabstruct_4sage_9structure_7element_FieldElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_FieldElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_FieldElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_AlgebraElement = __Pyx_ImportType("sage.structure.element", "AlgebraElement", sizeof(struct __pyx_obj_4sage_9structure_7element_AlgebraElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_AlgebraElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_AlgebraElement = (struct __pyx_vtabstruct_4sage_9structure_7element_AlgebraElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_AlgebraElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_AlgebraElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_CommutativeAlgebraElement = __Pyx_ImportType("sage.structure.element", "CommutativeAlgebraElement", sizeof(struct __pyx_obj_4sage_9structure_7element_CommutativeAlgebraElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_CommutativeAlgebraElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_CommutativeAlgebraElement = (struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeAlgebraElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_CommutativeAlgebraElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_CommutativeAlgebraElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_CommutativeAlgebra = __Pyx_ImportType("sage.structure.element", "CommutativeAlgebra", sizeof(struct __pyx_obj_4sage_9structure_7element_CommutativeAlgebra), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_CommutativeAlgebra)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_CommutativeAlgebra = (struct __pyx_vtabstruct_4sage_9structure_7element_CommutativeAlgebra*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_CommutativeAlgebra->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_CommutativeAlgebra)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_InfinityElement = __Pyx_ImportType("sage.structure.element", "InfinityElement", sizeof(struct __pyx_obj_4sage_9structure_7element_InfinityElement), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_InfinityElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_InfinityElement = (struct __pyx_vtabstruct_4sage_9structure_7element_InfinityElement*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_InfinityElement->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_InfinityElement)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_Vector = __Pyx_ImportType("sage.structure.element", "Vector", sizeof(struct __pyx_obj_4sage_9structure_7element_Vector), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_Vector)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_Vector = (struct __pyx_vtabstruct_4sage_9structure_7element_Vector*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_Vector->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_Vector)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_Matrix = __Pyx_ImportType("sage.structure.element", "Matrix", sizeof(struct __pyx_obj_4sage_9structure_7element_Matrix), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_Matrix)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_Matrix = (struct __pyx_vtabstruct_4sage_9structure_7element_Matrix*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_Matrix->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_Matrix)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_9structure_7element_CoercionModel = __Pyx_ImportType("sage.structure.element", "CoercionModel", sizeof(struct __pyx_obj_4sage_9structure_7element_CoercionModel), 1); if (unlikely(!__pyx_ptype_4sage_9structure_7element_CoercionModel)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_9structure_7element_CoercionModel = (struct __pyx_vtabstruct_4sage_9structure_7element_CoercionModel*)__Pyx_GetVtable(__pyx_ptype_4sage_9structure_7element_CoercionModel->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_9structure_7element_CoercionModel)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_10categories_3map_Map = __Pyx_ImportType("sage.categories.map", "Map", sizeof(struct __pyx_obj_4sage_10categories_3map_Map), 1); if (unlikely(!__pyx_ptype_4sage_10categories_3map_Map)) {__pyx_filename = __pyx_f[14]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_10categories_3map_Map = (struct __pyx_vtabstruct_4sage_10categories_3map_Map*)__Pyx_GetVtable(__pyx_ptype_4sage_10categories_3map_Map->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_10categories_3map_Map)) {__pyx_filename = __pyx_f[14]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_10categories_3map_Section = __Pyx_ImportType("sage.categories.map", "Section", sizeof(struct __pyx_obj_4sage_10categories_3map_Section), 1); if (unlikely(!__pyx_ptype_4sage_10categories_3map_Section)) {__pyx_filename = __pyx_f[14]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_10categories_3map_Section = (struct __pyx_vtabstruct_4sage_10categories_3map_Section*)__Pyx_GetVtable(__pyx_ptype_4sage_10categories_3map_Section->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_10categories_3map_Section)) {__pyx_filename = __pyx_f[14]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_10categories_3map_FormalCompositeMap = __Pyx_ImportType("sage.categories.map", "FormalCompositeMap", sizeof(struct __pyx_obj_4sage_10categories_3map_FormalCompositeMap), 1); if (unlikely(!__pyx_ptype_4sage_10categories_3map_FormalCompositeMap)) {__pyx_filename = __pyx_f[14]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_10categories_3map_FormalCompositeMap = (struct __pyx_vtabstruct_4sage_10categories_3map_FormalCompositeMap*)__Pyx_GetVtable(__pyx_ptype_4sage_10categories_3map_FormalCompositeMap->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_10categories_3map_FormalCompositeMap)) {__pyx_filename = __pyx_f[14]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_10categories_8morphism_Morphism = __Pyx_ImportType("sage.categories.morphism", "Morphism", sizeof(struct __pyx_obj_4sage_10categories_8morphism_Morphism), 1); if (unlikely(!__pyx_ptype_4sage_10categories_8morphism_Morphism)) {__pyx_filename = __pyx_f[15]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_10categories_8morphism_Morphism = (struct __pyx_vtabstruct_4sage_10categories_8morphism_Morphism*)__Pyx_GetVtable(__pyx_ptype_4sage_10categories_8morphism_Morphism->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_10categories_8morphism_Morphism)) {__pyx_filename = __pyx_f[15]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_10categories_8morphism_SetMorphism = __Pyx_ImportType("sage.categories.morphism", "SetMorphism", sizeof(struct __pyx_obj_4sage_10categories_8morphism_SetMorphism), 1); if (unlikely(!__pyx_ptype_4sage_10categories_8morphism_SetMorphism)) {__pyx_filename = __pyx_f[15]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_10categories_8morphism_SetMorphism = (struct __pyx_vtabstruct_4sage_10categories_8morphism_SetMorphism*)__Pyx_GetVtable(__pyx_ptype_4sage_10categories_8morphism_SetMorphism->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_10categories_8morphism_SetMorphism)) {__pyx_filename = __pyx_f[15]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_7integer_Integer = __Pyx_ImportType("sage.rings.integer", "Integer", sizeof(struct __pyx_obj_4sage_5rings_7integer_Integer), 1); if (unlikely(!__pyx_ptype_4sage_5rings_7integer_Integer)) {__pyx_filename = __pyx_f[16]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_7integer_Integer = (struct __pyx_vtabstruct_4sage_5rings_7integer_Integer*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_7integer_Integer->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_7integer_Integer)) {__pyx_filename = __pyx_f[16]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_7integer_int_to_Z = __Pyx_ImportType("sage.rings.integer", "int_to_Z", sizeof(struct __pyx_obj_4sage_5rings_7integer_int_to_Z), 1); if (unlikely(!__pyx_ptype_4sage_5rings_7integer_int_to_Z)) {__pyx_filename = __pyx_f[16]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_7integer_int_to_Z = (struct __pyx_vtabstruct_4sage_5rings_7integer_int_to_Z*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_7integer_int_to_Z->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_7integer_int_to_Z)) {__pyx_filename = __pyx_f[16]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_8rational_Rational = __Pyx_ImportType("sage.rings.rational", "Rational", sizeof(struct __pyx_obj_4sage_5rings_8rational_Rational), 1); if (unlikely(!__pyx_ptype_4sage_5rings_8rational_Rational)) {__pyx_filename = __pyx_f[17]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_8rational_Rational = (struct __pyx_vtabstruct_4sage_5rings_8rational_Rational*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_8rational_Rational->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_8rational_Rational)) {__pyx_filename = __pyx_f[17]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_9real_mpfr_RealNumber = __Pyx_ImportType("sage.rings.real_mpfr", "RealNumber", sizeof(struct __pyx_obj_4sage_5rings_9real_mpfr_RealNumber), 1); if (unlikely(!__pyx_ptype_4sage_5rings_9real_mpfr_RealNumber)) {__pyx_filename = __pyx_f[18]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_9real_mpfr_RealNumber = (struct __pyx_vtabstruct_4sage_5rings_9real_mpfr_RealNumber*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_9real_mpfr_RealNumber->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_9real_mpfr_RealNumber)) {__pyx_filename = __pyx_f[18]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_9real_mpfr_RealField_class = __Pyx_ImportType("sage.rings.real_mpfr", "RealField_class", sizeof(struct __pyx_obj_4sage_5rings_9real_mpfr_RealField_class), 1); if (unlikely(!__pyx_ptype_4sage_5rings_9real_mpfr_RealField_class)) {__pyx_filename = __pyx_f[18]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_9real_mpfr_RealField_class = (struct __pyx_vtabstruct_4sage_5rings_9real_mpfr_RealField_class*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_9real_mpfr_RealField_class->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_9real_mpfr_RealField_class)) {__pyx_filename = __pyx_f[18]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_11complex_mpc_MPComplexNumber = __Pyx_ImportType("sage.rings.complex_mpc", "MPComplexNumber", sizeof(struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexNumber), 1); if (unlikely(!__pyx_ptype_4sage_5rings_11complex_mpc_MPComplexNumber)) {__pyx_filename = __pyx_f[19]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_11complex_mpc_MPComplexNumber = (struct __pyx_vtabstruct_4sage_5rings_11complex_mpc_MPComplexNumber*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_11complex_mpc_MPComplexNumber->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_11complex_mpc_MPComplexNumber)) {__pyx_filename = __pyx_f[19]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4sage_5rings_11complex_mpc_MPComplexField_class = __Pyx_ImportType("sage.rings.complex_mpc", "MPComplexField_class", sizeof(struct __pyx_obj_4sage_5rings_11complex_mpc_MPComplexField_class), 1); if (unlikely(!__pyx_ptype_4sage_5rings_11complex_mpc_MPComplexField_class)) {__pyx_filename = __pyx_f[19]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_vtabptr_4sage_5rings_11complex_mpc_MPComplexField_class = (struct __pyx_vtabstruct_4sage_5rings_11complex_mpc_MPComplexField_class*)__Pyx_GetVtable(__pyx_ptype_4sage_5rings_11complex_mpc_MPComplexField_class->tp_dict); if (unlikely(!__pyx_vtabptr_4sage_5rings_11complex_mpc_MPComplexField_class)) {__pyx_filename = __pyx_f[19]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Basic = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Basic", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Basic), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Basic)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Number = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Number", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Number), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Number)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Integer = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Integer", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Integer), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Integer)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Rational = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Rational", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Rational), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Rational)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Complex = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Complex", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Complex), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Complex)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_RealDouble = __Pyx_ImportType("symengine.lib.symengine_wrapper", "RealDouble", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealDouble), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_RealDouble)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_ComplexDouble = __Pyx_ImportType("symengine.lib.symengine_wrapper", "ComplexDouble", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexDouble), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_ComplexDouble)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_RealMPFR = __Pyx_ImportType("symengine.lib.symengine_wrapper", "RealMPFR", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_RealMPFR), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_RealMPFR)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_ComplexMPC = __Pyx_ImportType("symengine.lib.symengine_wrapper", "ComplexMPC", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ComplexMPC), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_ComplexMPC)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Add = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Add", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Add), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Add)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Mul = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Mul", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Mul), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Mul)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Pow = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Pow", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Pow), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Pow)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Function = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Function", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Function), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Function)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_TrigFunction = __Pyx_ImportType("symengine.lib.symengine_wrapper", "TrigFunction", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_TrigFunction), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_TrigFunction)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Sin = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Sin", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Sin), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Sin)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Cos = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Cos", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Cos), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Cos)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Tan = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Tan", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Tan), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Tan)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Cot = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Cot", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Cot), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Cot)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Csc = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Csc", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Csc), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Csc)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Sec = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Sec", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Sec), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Sec)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_ASin = __Pyx_ImportType("symengine.lib.symengine_wrapper", "ASin", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ASin), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_ASin)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_ACos = __Pyx_ImportType("symengine.lib.symengine_wrapper", "ACos", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ACos), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_ACos)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_ATan = __Pyx_ImportType("symengine.lib.symengine_wrapper", "ATan", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ATan), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_ATan)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_ACot = __Pyx_ImportType("symengine.lib.symengine_wrapper", "ACot", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ACot), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_ACot)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_ACsc = __Pyx_ImportType("symengine.lib.symengine_wrapper", "ACsc", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ACsc), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_ACsc)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_ASec = __Pyx_ImportType("symengine.lib.symengine_wrapper", "ASec", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_ASec), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_ASec)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_FunctionSymbol = __Pyx_ImportType("symengine.lib.symengine_wrapper", "FunctionSymbol", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_FunctionSymbol), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_FunctionSymbol)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_FunctionWrapper = __Pyx_ImportType("symengine.lib.symengine_wrapper", "FunctionWrapper", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_FunctionWrapper), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_FunctionWrapper)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Abs = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Abs", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Abs), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Abs)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Derivative = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Derivative", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Derivative), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Derivative)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Subs = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Subs", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Subs), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Subs)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_MatrixBase = __Pyx_ImportType("symengine.lib.symengine_wrapper", "MatrixBase", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_MatrixBase), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_MatrixBase)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_DenseMatrix = __Pyx_ImportType("symengine.lib.symengine_wrapper", "DenseMatrix", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_DenseMatrix), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_DenseMatrix)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_9symengine_3lib_17symengine_wrapper_Log = __Pyx_ImportType("symengine.lib.symengine_wrapper", "Log", sizeof(struct __pyx_obj_9symengine_3lib_17symengine_wrapper_Log), 1); if (unlikely(!__pyx_ptype_9symengine_3lib_17symengine_wrapper_Log)) {__pyx_filename = __pyx_f[20]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/*--- Variable import code ---*/
/*--- Function import code ---*/
__pyx_t_1 = __Pyx_ImportModule("sage.libs.ntl.convert"); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__Pyx_ImportFunction(__pyx_t_1, "ZZ_to_mpz", (void (**)(void))&__pyx_f_4sage_4libs_3ntl_7convert_ZZ_to_mpz, "void (__mpz_struct *, struct ZZ *)") < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__Pyx_ImportFunction(__pyx_t_1, "mpz_to_ZZ", (void (**)(void))&__pyx_f_4sage_4libs_3ntl_7convert_mpz_to_ZZ, "void (struct ZZ *, mpz_srcptr)") < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
Py_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/*--- Execution code ---*/
/* "sage/symbolic/symengine_conversions.pyx":14
* cimport symengine.lib.symengine as symengine
*
* def convert_to_integer(_Integer i): # <<<<<<<<<<<<<<
* cdef Integer z = Integer()
* z.set_from_mpz(deref(symengine.rcp_static_cast_Integer(i.thisptr)).as_mpz().get_mpz_t())
*/
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_4sage_8symbolic_21symengine_conversions_1convert_to_integer, NULL, __pyx_n_s_sage_symbolic_symengine_conversi); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_convert_to_integer, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "sage/symbolic/symengine_conversions.pyx":19
* return z
*
* def convert_to_rational(_Rational i): # <<<<<<<<<<<<<<
* cdef Rational z = Rational()
* z.set_from_mpq(deref(symengine.rcp_static_cast_Rational(i.thisptr)).as_mpq().get_mpq_t())
*/
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_4sage_8symbolic_21symengine_conversions_3convert_to_rational, NULL, __pyx_n_s_sage_symbolic_symengine_conversi); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_convert_to_rational, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "sage/symbolic/symengine_conversions.pyx":24
* return z
*
* def convert_to_real_number(_RealMPFR i): # <<<<<<<<<<<<<<
* cdef RealField_class parent = RealField_class(deref(symengine.rcp_static_cast_RealMPFR(i.thisptr)).get_prec())
* cdef RealNumber z = RealNumber(parent)
*/
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_4sage_8symbolic_21symengine_conversions_5convert_to_real_number, NULL, __pyx_n_s_sage_symbolic_symengine_conversi); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_convert_to_real_number, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "sage/symbolic/symengine_conversions.pyx":30
* return z
*
* def convert_to_mpcomplex_number(_ComplexMPC i): # <<<<<<<<<<<<<<
* cdef MPComplexField_class parent = MPComplexField_class(deref(symengine.rcp_static_cast_ComplexMPC(i.thisptr)).get_prec())
* cdef MPComplexNumber z = parent._new()
*/
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_4sage_8symbolic_21symengine_conversions_7convert_to_mpcomplex_number, NULL, __pyx_n_s_sage_symbolic_symengine_conversi); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_convert_to_mpcomplex_number, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "sage/symbolic/symengine_conversions.pyx":36
* return z
*
* def convert_from_integer(Integer i): # <<<<<<<<<<<<<<
* cdef mpz_class c = mpz_class(i.value)
* cdef _Integer z = _Integer()
*/
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_4sage_8symbolic_21symengine_conversions_9convert_from_integer, NULL, __pyx_n_s_sage_symbolic_symengine_conversi); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_convert_from_integer, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "sage/symbolic/symengine_conversions.pyx":42
* return z
*
* def convert_from_rational(Rational i): # <<<<<<<<<<<<<<
* cdef mpq_class c = mpq_class(i.value)
* cdef Basic r
*/
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_4sage_8symbolic_21symengine_conversions_11convert_from_rational, NULL, __pyx_n_s_sage_symbolic_symengine_conversi); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 42; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_convert_from_rational, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 42; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "sage/symbolic/symengine_conversions.pyx":53
* return r
*
* def convert_from_real_number(RealNumber i): # <<<<<<<<<<<<<<
* cdef mpfr_class c = mpfr_class(i.value)
* cdef _RealMPFR z = _RealMPFR()
*/
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_4sage_8symbolic_21symengine_conversions_13convert_from_real_number, NULL, __pyx_n_s_sage_symbolic_symengine_conversi); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_convert_from_real_number, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "sage/symbolic/symengine_conversions.pyx":59
* return z
*
* def convert_from_mpcomplex_number(MPComplexNumber i): # <<<<<<<<<<<<<<
* cdef mpc_class c = mpc_class(i.value)
* cdef _ComplexMPC z = _ComplexMPC()
*/
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_4sage_8symbolic_21symengine_conversions_15convert_from_mpcomplex_number, NULL, __pyx_n_s_sage_symbolic_symengine_conversi); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_convert_from_mpcomplex_number, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "sage_object.pxd":62
*
*
* cdef inline bint rich_to_bool_sgn(int op, int c): # <<<<<<<<<<<<<<
* """
* Same as ``rich_to_bool``, but allow any `c < 0` and `c > 0`
*/
/*--- Wrapped vars code ---*/
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
if (__pyx_m) {
if (__pyx_d) {
__Pyx_AddTraceback("init sage.symbolic.symengine_conversions", __pyx_clineno, __pyx_lineno, __pyx_filename);
}
Py_DECREF(__pyx_m); __pyx_m = 0;
} else if (!PyErr_Occurred()) {
PyErr_SetString(PyExc_ImportError, "init sage.symbolic.symengine_conversions");
}
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#if PY_MAJOR_VERSION < 3
return;
#else
return __pyx_m;
#endif
}
/* --- Runtime support code --- */
#if CYTHON_REFNANNY
static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {
PyObject *m = NULL, *p = NULL;
void *r = NULL;
m = PyImport_ImportModule((char *)modname);
if (!m) goto end;
p = PyObject_GetAttrString(m, (char *)"RefNannyAPI");
if (!p) goto end;
r = PyLong_AsVoidPtr(p);
end:
Py_XDECREF(p);
Py_XDECREF(m);
return (__Pyx_RefNannyAPIStruct *)r;
}
#endif
static void __Pyx_RaiseArgumentTypeInvalid(const char* name, PyObject *obj, PyTypeObject *type) {
PyErr_Format(PyExc_TypeError,
"Argument '%.200s' has incorrect type (expected %.200s, got %.200s)",
name, type->tp_name, Py_TYPE(obj)->tp_name);
}
static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed,
const char *name, int exact)
{
if (unlikely(!type)) {
PyErr_SetString(PyExc_SystemError, "Missing type object");
return 0;
}
if (none_allowed && obj == Py_None) return 1;
else if (exact) {
if (likely(Py_TYPE(obj) == type)) return 1;
#if PY_MAJOR_VERSION == 2
else if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1;
#endif
}
else {
if (likely(PyObject_TypeCheck(obj, type))) return 1;
}
__Pyx_RaiseArgumentTypeInvalid(name, obj, type);
return 0;
}
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {
PyObject *result;
ternaryfunc call = func->ob_type->tp_call;
if (unlikely(!call))
return PyObject_Call(func, arg, kw);
if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
return NULL;
result = (*call)(func, arg, kw);
Py_LeaveRecursiveCall();
if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
PyErr_SetString(
PyExc_SystemError,
"NULL result without error in PyObject_Call");
}
return result;
}
#endif
static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {
if (unlikely(!type)) {
PyErr_SetString(PyExc_SystemError, "Missing type object");
return 0;
}
if (likely(PyObject_TypeCheck(obj, type)))
return 1;
PyErr_Format(PyExc_TypeError, "Cannot convert %.200s to %.200s",
Py_TYPE(obj)->tp_name, type->tp_name);
return 0;
}
static PyObject *__Pyx_GetBuiltinName(PyObject *name) {
PyObject* result = __Pyx_PyObject_GetAttrStr(__pyx_b, name);
if (unlikely(!result)) {
PyErr_Format(PyExc_NameError,
#if PY_MAJOR_VERSION >= 3
"name '%U' is not defined", name);
#else
"name '%.200s' is not defined", PyString_AS_STRING(name));
#endif
}
return result;
}
static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) {
#if CYTHON_COMPILING_IN_CPYTHON
PyThreadState *tstate = PyThreadState_GET();
*type = tstate->exc_type;
*value = tstate->exc_value;
*tb = tstate->exc_traceback;
Py_XINCREF(*type);
Py_XINCREF(*value);
Py_XINCREF(*tb);
#else
PyErr_GetExcInfo(type, value, tb);
#endif
}
static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb) {
#if CYTHON_COMPILING_IN_CPYTHON
PyObject *tmp_type, *tmp_value, *tmp_tb;
PyThreadState *tstate = PyThreadState_GET();
tmp_type = tstate->exc_type;
tmp_value = tstate->exc_value;
tmp_tb = tstate->exc_traceback;
tstate->exc_type = type;
tstate->exc_value = value;
tstate->exc_traceback = tb;
Py_XDECREF(tmp_type);
Py_XDECREF(tmp_value);
Py_XDECREF(tmp_tb);
#else
PyErr_SetExcInfo(type, value, tb);
#endif
}
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {
PyObject *self, *result;
PyCFunction cfunc;
cfunc = PyCFunction_GET_FUNCTION(func);
self = PyCFunction_GET_SELF(func);
if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
return NULL;
result = cfunc(self, arg);
Py_LeaveRecursiveCall();
if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
PyErr_SetString(
PyExc_SystemError,
"NULL result without error in PyObject_Call");
}
return result;
}
#endif
#if CYTHON_COMPILING_IN_CPYTHON
static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) {
PyObject *result;
PyObject *args = PyTuple_New(1);
if (unlikely(!args)) return NULL;
Py_INCREF(arg);
PyTuple_SET_ITEM(args, 0, arg);
result = __Pyx_PyObject_Call(func, args, NULL);
Py_DECREF(args);
return result;
}
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
#ifdef __Pyx_CyFunction_USED
if (likely(PyCFunction_Check(func) || PyObject_TypeCheck(func, __pyx_CyFunctionType))) {
#else
if (likely(PyCFunction_Check(func))) {
#endif
if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) {
return __Pyx_PyObject_CallMethO(func, arg);
}
}
return __Pyx__PyObject_CallOneArg(func, arg);
}
#else
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
PyObject* args = PyTuple_Pack(1, arg);
return (likely(args)) ? __Pyx_PyObject_Call(func, args, NULL) : NULL;
}
#endif
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) {
#ifdef __Pyx_CyFunction_USED
if (likely(PyCFunction_Check(func) || PyObject_TypeCheck(func, __pyx_CyFunctionType))) {
#else
if (likely(PyCFunction_Check(func))) {
#endif
if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) {
return __Pyx_PyObject_CallMethO(func, NULL);
}
}
return __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL);
}
#endif
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) {
PyObject *local_type, *local_value, *local_tb;
#if CYTHON_COMPILING_IN_CPYTHON
PyObject *tmp_type, *tmp_value, *tmp_tb;
PyThreadState *tstate = PyThreadState_GET();
local_type = tstate->curexc_type;
local_value = tstate->curexc_value;
local_tb = tstate->curexc_traceback;
tstate->curexc_type = 0;
tstate->curexc_value = 0;
tstate->curexc_traceback = 0;
#else
PyErr_Fetch(&local_type, &local_value, &local_tb);
#endif
PyErr_NormalizeException(&local_type, &local_value, &local_tb);
#if CYTHON_COMPILING_IN_CPYTHON
if (unlikely(tstate->curexc_type))
#else
if (unlikely(PyErr_Occurred()))
#endif
goto bad;
#if PY_MAJOR_VERSION >= 3
if (local_tb) {
if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0))
goto bad;
}
#endif
Py_XINCREF(local_tb);
Py_XINCREF(local_type);
Py_XINCREF(local_value);
*type = local_type;
*value = local_value;
*tb = local_tb;
#if CYTHON_COMPILING_IN_CPYTHON
tmp_type = tstate->exc_type;
tmp_value = tstate->exc_value;
tmp_tb = tstate->exc_traceback;
tstate->exc_type = local_type;
tstate->exc_value = local_value;
tstate->exc_traceback = local_tb;
Py_XDECREF(tmp_type);
Py_XDECREF(tmp_value);
Py_XDECREF(tmp_tb);
#else
PyErr_SetExcInfo(local_type, local_value, local_tb);
#endif
return 0;
bad:
*type = 0;
*value = 0;
*tb = 0;
Py_XDECREF(local_type);
Py_XDECREF(local_value);
Py_XDECREF(local_tb);
return -1;
}
static void* __Pyx_GetVtable(PyObject *dict) {
void* ptr;
PyObject *ob = PyObject_GetItem(dict, __pyx_n_s_pyx_vtable);
if (!ob)
goto bad;
#if PY_VERSION_HEX >= 0x02070000
ptr = PyCapsule_GetPointer(ob, 0);
#else
ptr = PyCObject_AsVoidPtr(ob);
#endif
if (!ptr && !PyErr_Occurred())
PyErr_SetString(PyExc_RuntimeError, "invalid vtable found for imported type");
Py_DECREF(ob);
return ptr;
bad:
Py_XDECREF(ob);
return NULL;
}
static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {
int start = 0, mid = 0, end = count - 1;
if (end >= 0 && code_line > entries[end].code_line) {
return count;
}
while (start < end) {
mid = (start + end) / 2;
if (code_line < entries[mid].code_line) {
end = mid;
} else if (code_line > entries[mid].code_line) {
start = mid + 1;
} else {
return mid;
}
}
if (code_line <= entries[mid].code_line) {
return mid;
} else {
return mid + 1;
}
}
static PyCodeObject *__pyx_find_code_object(int code_line) {
PyCodeObject* code_object;
int pos;
if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) {
return NULL;
}
pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) {
return NULL;
}
code_object = __pyx_code_cache.entries[pos].code_object;
Py_INCREF(code_object);
return code_object;
}
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
int pos, i;
__Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries;
if (unlikely(!code_line)) {
return;
}
if (unlikely(!entries)) {
entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry));
if (likely(entries)) {
__pyx_code_cache.entries = entries;
__pyx_code_cache.max_count = 64;
__pyx_code_cache.count = 1;
entries[0].code_line = code_line;
entries[0].code_object = code_object;
Py_INCREF(code_object);
}
return;
}
pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) {
PyCodeObject* tmp = entries[pos].code_object;
entries[pos].code_object = code_object;
Py_DECREF(tmp);
return;
}
if (__pyx_code_cache.count == __pyx_code_cache.max_count) {
int new_max = __pyx_code_cache.max_count + 64;
entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc(
__pyx_code_cache.entries, (size_t)new_max*sizeof(__Pyx_CodeObjectCacheEntry));
if (unlikely(!entries)) {
return;
}
__pyx_code_cache.entries = entries;
__pyx_code_cache.max_count = new_max;
}
for (i=__pyx_code_cache.count; i>pos; i--) {
entries[i] = entries[i-1];
}
entries[pos].code_line = code_line;
entries[pos].code_object = code_object;
__pyx_code_cache.count++;
Py_INCREF(code_object);
}
#include "compile.h"
#include "frameobject.h"
#include "traceback.h"
static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(
const char *funcname, int c_line,
int py_line, const char *filename) {
PyCodeObject *py_code = 0;
PyObject *py_srcfile = 0;
PyObject *py_funcname = 0;
#if PY_MAJOR_VERSION < 3
py_srcfile = PyString_FromString(filename);
#else
py_srcfile = PyUnicode_FromString(filename);
#endif
if (!py_srcfile) goto bad;
if (c_line) {
#if PY_MAJOR_VERSION < 3
py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
#else
py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
#endif
}
else {
#if PY_MAJOR_VERSION < 3
py_funcname = PyString_FromString(funcname);
#else
py_funcname = PyUnicode_FromString(funcname);
#endif
}
if (!py_funcname) goto bad;
py_code = __Pyx_PyCode_New(
0,
0,
0,
0,
0,
__pyx_empty_bytes, /*PyObject *code,*/
__pyx_empty_tuple, /*PyObject *consts,*/
__pyx_empty_tuple, /*PyObject *names,*/
__pyx_empty_tuple, /*PyObject *varnames,*/
__pyx_empty_tuple, /*PyObject *freevars,*/
__pyx_empty_tuple, /*PyObject *cellvars,*/
py_srcfile, /*PyObject *filename,*/
py_funcname, /*PyObject *name,*/
py_line,
__pyx_empty_bytes /*PyObject *lnotab*/
);
Py_DECREF(py_srcfile);
Py_DECREF(py_funcname);
return py_code;
bad:
Py_XDECREF(py_srcfile);
Py_XDECREF(py_funcname);
return NULL;
}
static void __Pyx_AddTraceback(const char *funcname, int c_line,
int py_line, const char *filename) {
PyCodeObject *py_code = 0;
PyFrameObject *py_frame = 0;
py_code = __pyx_find_code_object(c_line ? c_line : py_line);
if (!py_code) {
py_code = __Pyx_CreateCodeObjectForTraceback(
funcname, c_line, py_line, filename);
if (!py_code) goto bad;
__pyx_insert_code_object(c_line ? c_line : py_line, py_code);
}
py_frame = PyFrame_New(
PyThreadState_GET(), /*PyThreadState *tstate,*/
py_code, /*PyCodeObject *code,*/
__pyx_d, /*PyObject *globals,*/
0 /*PyObject *locals*/
);
if (!py_frame) goto bad;
py_frame->f_lineno = py_line;
PyTraceBack_Here(py_frame);
bad:
Py_XDECREF(py_code);
Py_XDECREF(py_frame);
}
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_mpfr_prec_t(mpfr_prec_t value) {
const mpfr_prec_t neg_one = (mpfr_prec_t) -1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (is_unsigned) {
if (sizeof(mpfr_prec_t) < sizeof(long)) {
return PyInt_FromLong((long) value);
} else if (sizeof(mpfr_prec_t) <= sizeof(unsigned long)) {
return PyLong_FromUnsignedLong((unsigned long) value);
} else if (sizeof(mpfr_prec_t) <= sizeof(unsigned long long)) {
return PyLong_FromUnsignedLongLong((unsigned long long) value);
}
} else {
if (sizeof(mpfr_prec_t) <= sizeof(long)) {
return PyInt_FromLong((long) value);
} else if (sizeof(mpfr_prec_t) <= sizeof(long long)) {
return PyLong_FromLongLong((long long) value);
}
}
{
int one = 1; int little = (int)*(unsigned char *)&one;
unsigned char *bytes = (unsigned char *)&value;
return _PyLong_FromByteArray(bytes, sizeof(mpfr_prec_t),
little, !is_unsigned);
}
}
#if CYTHON_CCOMPLEX
#ifdef __cplusplus
static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {
return ::std::complex< double >(x, y);
}
#else
static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {
return x + y*(__pyx_t_double_complex)_Complex_I;
}
#endif
#else
static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {
__pyx_t_double_complex z;
z.real = x;
z.imag = y;
return z;
}
#endif
#if CYTHON_CCOMPLEX
#else
static CYTHON_INLINE int __Pyx_c_eq(__pyx_t_double_complex a, __pyx_t_double_complex b) {
return (a.real == b.real) && (a.imag == b.imag);
}
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum(__pyx_t_double_complex a, __pyx_t_double_complex b) {
__pyx_t_double_complex z;
z.real = a.real + b.real;
z.imag = a.imag + b.imag;
return z;
}
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff(__pyx_t_double_complex a, __pyx_t_double_complex b) {
__pyx_t_double_complex z;
z.real = a.real - b.real;
z.imag = a.imag - b.imag;
return z;
}
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod(__pyx_t_double_complex a, __pyx_t_double_complex b) {
__pyx_t_double_complex z;
z.real = a.real * b.real - a.imag * b.imag;
z.imag = a.real * b.imag + a.imag * b.real;
return z;
}
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot(__pyx_t_double_complex a, __pyx_t_double_complex b) {
__pyx_t_double_complex z;
double denom = b.real * b.real + b.imag * b.imag;
z.real = (a.real * b.real + a.imag * b.imag) / denom;
z.imag = (a.imag * b.real - a.real * b.imag) / denom;
return z;
}
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg(__pyx_t_double_complex a) {
__pyx_t_double_complex z;
z.real = -a.real;
z.imag = -a.imag;
return z;
}
static CYTHON_INLINE int __Pyx_c_is_zero(__pyx_t_double_complex a) {
return (a.real == 0) && (a.imag == 0);
}
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj(__pyx_t_double_complex a) {
__pyx_t_double_complex z;
z.real = a.real;
z.imag = -a.imag;
return z;
}
#if 1
static CYTHON_INLINE double __Pyx_c_abs(__pyx_t_double_complex z) {
#if !defined(HAVE_HYPOT) || defined(_MSC_VER)
return sqrt(z.real*z.real + z.imag*z.imag);
#else
return hypot(z.real, z.imag);
#endif
}
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow(__pyx_t_double_complex a, __pyx_t_double_complex b) {
__pyx_t_double_complex z;
double r, lnr, theta, z_r, z_theta;
if (b.imag == 0 && b.real == (int)b.real) {
if (b.real < 0) {
double denom = a.real * a.real + a.imag * a.imag;
a.real = a.real / denom;
a.imag = -a.imag / denom;
b.real = -b.real;
}
switch ((int)b.real) {
case 0:
z.real = 1;
z.imag = 0;
return z;
case 1:
return a;
case 2:
z = __Pyx_c_prod(a, a);
return __Pyx_c_prod(a, a);
case 3:
z = __Pyx_c_prod(a, a);
return __Pyx_c_prod(z, a);
case 4:
z = __Pyx_c_prod(a, a);
return __Pyx_c_prod(z, z);
}
}
if (a.imag == 0) {
if (a.real == 0) {
return a;
}
r = a.real;
theta = 0;
} else {
r = __Pyx_c_abs(a);
theta = atan2(a.imag, a.real);
}
lnr = log(r);
z_r = exp(lnr * b.real - theta * b.imag);
z_theta = theta * b.real + lnr * b.imag;
z.real = z_r * cos(z_theta);
z.imag = z_r * sin(z_theta);
return z;
}
#endif
#endif
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
const long neg_one = (long) -1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (is_unsigned) {
if (sizeof(long) < sizeof(long)) {
return PyInt_FromLong((long) value);
} else if (sizeof(long) <= sizeof(unsigned long)) {
return PyLong_FromUnsignedLong((unsigned long) value);
} else if (sizeof(long) <= sizeof(unsigned long long)) {
return PyLong_FromUnsignedLongLong((unsigned long long) value);
}
} else {
if (sizeof(long) <= sizeof(long)) {
return PyInt_FromLong((long) value);
} else if (sizeof(long) <= sizeof(long long)) {
return PyLong_FromLongLong((long long) value);
}
}
{
int one = 1; int little = (int)*(unsigned char *)&one;
unsigned char *bytes = (unsigned char *)&value;
return _PyLong_FromByteArray(bytes, sizeof(long),
little, !is_unsigned);
}
}
#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value) \
{ \
func_type value = func_value; \
if (sizeof(target_type) < sizeof(func_type)) { \
if (unlikely(value != (func_type) (target_type) value)) { \
func_type zero = 0; \
if (is_unsigned && unlikely(value < zero)) \
goto raise_neg_overflow; \
else \
goto raise_overflow; \
} \
} \
return (target_type) value; \
}
#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3
#if CYTHON_USE_PYLONG_INTERNALS
#include "longintrepr.h"
#endif
#endif
static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {
const long neg_one = (long) -1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
if (likely(PyInt_Check(x))) {
if (sizeof(long) < sizeof(long)) {
__PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x))
} else {
long val = PyInt_AS_LONG(x);
if (is_unsigned && unlikely(val < 0)) {
goto raise_neg_overflow;
}
return (long) val;
}
} else
#endif
if (likely(PyLong_Check(x))) {
if (is_unsigned) {
#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3
#if CYTHON_USE_PYLONG_INTERNALS
switch (Py_SIZE(x)) {
case 0: return 0;
case 1: __PYX_VERIFY_RETURN_INT(long, digit, ((PyLongObject*)x)->ob_digit[0]);
}
#endif
#endif
if (unlikely(Py_SIZE(x) < 0)) {
goto raise_neg_overflow;
}
if (sizeof(long) <= sizeof(unsigned long)) {
__PYX_VERIFY_RETURN_INT(long, unsigned long, PyLong_AsUnsignedLong(x))
} else if (sizeof(long) <= sizeof(unsigned long long)) {
__PYX_VERIFY_RETURN_INT(long, unsigned long long, PyLong_AsUnsignedLongLong(x))
}
} else {
#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3
#if CYTHON_USE_PYLONG_INTERNALS
switch (Py_SIZE(x)) {
case 0: return 0;
case 1: __PYX_VERIFY_RETURN_INT(long, digit, +(((PyLongObject*)x)->ob_digit[0]));
case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, -(sdigit) ((PyLongObject*)x)->ob_digit[0]);
}
#endif
#endif
if (sizeof(long) <= sizeof(long)) {
__PYX_VERIFY_RETURN_INT(long, long, PyLong_AsLong(x))
} else if (sizeof(long) <= sizeof(long long)) {
__PYX_VERIFY_RETURN_INT(long, long long, PyLong_AsLongLong(x))
}
}
{
#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray)
PyErr_SetString(PyExc_RuntimeError,
"_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers");
#else
long val;
PyObject *v = __Pyx_PyNumber_Int(x);
#if PY_MAJOR_VERSION < 3
if (likely(v) && !PyLong_Check(v)) {
PyObject *tmp = v;
v = PyNumber_Long(tmp);
Py_DECREF(tmp);
}
#endif
if (likely(v)) {
int one = 1; int is_little = (int)*(unsigned char *)&one;
unsigned char *bytes = (unsigned char *)&val;
int ret = _PyLong_AsByteArray((PyLongObject *)v,
bytes, sizeof(val),
is_little, !is_unsigned);
Py_DECREF(v);
if (likely(!ret))
return val;
}
#endif
return (long) -1;
}
} else {
long val;
PyObject *tmp = __Pyx_PyNumber_Int(x);
if (!tmp) return (long) -1;
val = __Pyx_PyInt_As_long(tmp);
Py_DECREF(tmp);
return val;
}
raise_overflow:
PyErr_SetString(PyExc_OverflowError,
"value too large to convert to long");
return (long) -1;
raise_neg_overflow:
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to long");
return (long) -1;
}
static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {
const int neg_one = (int) -1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
if (likely(PyInt_Check(x))) {
if (sizeof(int) < sizeof(long)) {
__PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x))
} else {
long val = PyInt_AS_LONG(x);
if (is_unsigned && unlikely(val < 0)) {
goto raise_neg_overflow;
}
return (int) val;
}
} else
#endif
if (likely(PyLong_Check(x))) {
if (is_unsigned) {
#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3
#if CYTHON_USE_PYLONG_INTERNALS
switch (Py_SIZE(x)) {
case 0: return 0;
case 1: __PYX_VERIFY_RETURN_INT(int, digit, ((PyLongObject*)x)->ob_digit[0]);
}
#endif
#endif
if (unlikely(Py_SIZE(x) < 0)) {
goto raise_neg_overflow;
}
if (sizeof(int) <= sizeof(unsigned long)) {
__PYX_VERIFY_RETURN_INT(int, unsigned long, PyLong_AsUnsignedLong(x))
} else if (sizeof(int) <= sizeof(unsigned long long)) {
__PYX_VERIFY_RETURN_INT(int, unsigned long long, PyLong_AsUnsignedLongLong(x))
}
} else {
#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3
#if CYTHON_USE_PYLONG_INTERNALS
switch (Py_SIZE(x)) {
case 0: return 0;
case 1: __PYX_VERIFY_RETURN_INT(int, digit, +(((PyLongObject*)x)->ob_digit[0]));
case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, -(sdigit) ((PyLongObject*)x)->ob_digit[0]);
}
#endif
#endif
if (sizeof(int) <= sizeof(long)) {
__PYX_VERIFY_RETURN_INT(int, long, PyLong_AsLong(x))
} else if (sizeof(int) <= sizeof(long long)) {
__PYX_VERIFY_RETURN_INT(int, long long, PyLong_AsLongLong(x))
}
}
{
#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray)
PyErr_SetString(PyExc_RuntimeError,
"_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers");
#else
int val;
PyObject *v = __Pyx_PyNumber_Int(x);
#if PY_MAJOR_VERSION < 3
if (likely(v) && !PyLong_Check(v)) {
PyObject *tmp = v;
v = PyNumber_Long(tmp);
Py_DECREF(tmp);
}
#endif
if (likely(v)) {
int one = 1; int is_little = (int)*(unsigned char *)&one;
unsigned char *bytes = (unsigned char *)&val;
int ret = _PyLong_AsByteArray((PyLongObject *)v,
bytes, sizeof(val),
is_little, !is_unsigned);
Py_DECREF(v);
if (likely(!ret))
return val;
}
#endif
return (int) -1;
}
} else {
int val;
PyObject *tmp = __Pyx_PyNumber_Int(x);
if (!tmp) return (int) -1;
val = __Pyx_PyInt_As_int(tmp);
Py_DECREF(tmp);
return val;
}
raise_overflow:
PyErr_SetString(PyExc_OverflowError,
"value too large to convert to int");
return (int) -1;
raise_neg_overflow:
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to int");
return (int) -1;
}
static int __Pyx_check_binary_version(void) {
char ctversion[4], rtversion[4];
PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION);
PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion());
if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) {
char message[200];
PyOS_snprintf(message, sizeof(message),
"compiletime version %s of module '%.100s' "
"does not match runtime version %s",
ctversion, __Pyx_MODULE_NAME, rtversion);
return PyErr_WarnEx(NULL, message, 1);
}
return 0;
}
#ifndef __PYX_HAVE_RT_ImportModule
#define __PYX_HAVE_RT_ImportModule
static PyObject *__Pyx_ImportModule(const char *name) {
PyObject *py_name = 0;
PyObject *py_module = 0;
py_name = __Pyx_PyIdentifier_FromString(name);
if (!py_name)
goto bad;
py_module = PyImport_Import(py_name);
Py_DECREF(py_name);
return py_module;
bad:
Py_XDECREF(py_name);
return 0;
}
#endif
#ifndef __PYX_HAVE_RT_ImportType
#define __PYX_HAVE_RT_ImportType
static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,
size_t size, int strict)
{
PyObject *py_module = 0;
PyObject *result = 0;
PyObject *py_name = 0;
char warning[200];
Py_ssize_t basicsize;
#ifdef Py_LIMITED_API
PyObject *py_basicsize;
#endif
py_module = __Pyx_ImportModule(module_name);
if (!py_module)
goto bad;
py_name = __Pyx_PyIdentifier_FromString(class_name);
if (!py_name)
goto bad;
result = PyObject_GetAttr(py_module, py_name);
Py_DECREF(py_name);
py_name = 0;
Py_DECREF(py_module);
py_module = 0;
if (!result)
goto bad;
if (!PyType_Check(result)) {
PyErr_Format(PyExc_TypeError,
"%.200s.%.200s is not a type object",
module_name, class_name);
goto bad;
}
#ifndef Py_LIMITED_API
basicsize = ((PyTypeObject *)result)->tp_basicsize;
#else
py_basicsize = PyObject_GetAttrString(result, "__basicsize__");
if (!py_basicsize)
goto bad;
basicsize = PyLong_AsSsize_t(py_basicsize);
Py_DECREF(py_basicsize);
py_basicsize = 0;
if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred())
goto bad;
#endif
if (!strict && (size_t)basicsize > size) {
PyOS_snprintf(warning, sizeof(warning),
"%s.%s size changed, may indicate binary incompatibility",
module_name, class_name);
if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad;
}
else if ((size_t)basicsize != size) {
PyErr_Format(PyExc_ValueError,
"%.200s.%.200s has the wrong size, try recompiling",
module_name, class_name);
goto bad;
}
return (PyTypeObject *)result;
bad:
Py_XDECREF(py_module);
Py_XDECREF(result);
return NULL;
}
#endif
#ifndef __PYX_HAVE_RT_ImportFunction
#define __PYX_HAVE_RT_ImportFunction
static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) {
PyObject *d = 0;
PyObject *cobj = 0;
union {
void (*fp)(void);
void *p;
} tmp;
d = PyObject_GetAttrString(module, (char *)"__pyx_capi__");
if (!d)
goto bad;
cobj = PyDict_GetItemString(d, funcname);
if (!cobj) {
PyErr_Format(PyExc_ImportError,
"%.200s does not export expected C function %.200s",
PyModule_GetName(module), funcname);
goto bad;
}
#if PY_VERSION_HEX >= 0x02070000
if (!PyCapsule_IsValid(cobj, sig)) {
PyErr_Format(PyExc_TypeError,
"C function %.200s.%.200s has wrong signature (expected %.500s, got %.500s)",
PyModule_GetName(module), funcname, sig, PyCapsule_GetName(cobj));
goto bad;
}
tmp.p = PyCapsule_GetPointer(cobj, sig);
#else
{const char *desc, *s1, *s2;
desc = (const char *)PyCObject_GetDesc(cobj);
if (!desc)
goto bad;
s1 = desc; s2 = sig;
while (*s1 != '\0' && *s1 == *s2) { s1++; s2++; }
if (*s1 != *s2) {
PyErr_Format(PyExc_TypeError,
"C function %.200s.%.200s has wrong signature (expected %.500s, got %.500s)",
PyModule_GetName(module), funcname, sig, desc);
goto bad;
}
tmp.p = PyCObject_AsVoidPtr(cobj);}
#endif
*f = tmp.fp;
if (!(*f))
goto bad;
Py_DECREF(d);
return 0;
bad:
Py_XDECREF(d);
return -1;
}
#endif
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
while (t->p) {
#if PY_MAJOR_VERSION < 3
if (t->is_unicode) {
*t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL);
} else if (t->intern) {
*t->p = PyString_InternFromString(t->s);
} else {
*t->p = PyString_FromStringAndSize(t->s, t->n - 1);
}
#else
if (t->is_unicode | t->is_str) {
if (t->intern) {
*t->p = PyUnicode_InternFromString(t->s);
} else if (t->encoding) {
*t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL);
} else {
*t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1);
}
} else {
*t->p = PyBytes_FromStringAndSize(t->s, t->n - 1);
}
#endif
if (!*t->p)
return -1;
++t;
}
return 0;
}
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str));
}
static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {
Py_ssize_t ignore;
return __Pyx_PyObject_AsStringAndSize(o, &ignore);
}
static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
if (
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
__Pyx_sys_getdefaultencoding_not_ascii &&
#endif
PyUnicode_Check(o)) {
#if PY_VERSION_HEX < 0x03030000
char* defenc_c;
PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL);
if (!defenc) return NULL;
defenc_c = PyBytes_AS_STRING(defenc);
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
{
char* end = defenc_c + PyBytes_GET_SIZE(defenc);
char* c;
for (c = defenc_c; c < end; c++) {
if ((unsigned char) (*c) >= 128) {
PyUnicode_AsASCIIString(o);
return NULL;
}
}
}
#endif
*length = PyBytes_GET_SIZE(defenc);
return defenc_c;
#else
if (__Pyx_PyUnicode_READY(o) == -1) return NULL;
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
if (PyUnicode_IS_ASCII(o)) {
*length = PyUnicode_GET_LENGTH(o);
return PyUnicode_AsUTF8(o);
} else {
PyUnicode_AsASCIIString(o);
return NULL;
}
#else
return PyUnicode_AsUTF8AndSize(o, length);
#endif
#endif
} else
#endif
#if !CYTHON_COMPILING_IN_PYPY
if (PyByteArray_Check(o)) {
*length = PyByteArray_GET_SIZE(o);
return PyByteArray_AS_STRING(o);
} else
#endif
{
char* result;
int r = PyBytes_AsStringAndSize(o, &result, length);
if (unlikely(r < 0)) {
return NULL;
} else {
return result;
}
}
}
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {
int is_true = x == Py_True;
if (is_true | (x == Py_False) | (x == Py_None)) return is_true;
else return PyObject_IsTrue(x);
}
static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) {
PyNumberMethods *m;
const char *name = NULL;
PyObject *res = NULL;
#if PY_MAJOR_VERSION < 3
if (PyInt_Check(x) || PyLong_Check(x))
#else
if (PyLong_Check(x))
#endif
return Py_INCREF(x), x;
m = Py_TYPE(x)->tp_as_number;
#if PY_MAJOR_VERSION < 3
if (m && m->nb_int) {
name = "int";
res = PyNumber_Int(x);
}
else if (m && m->nb_long) {
name = "long";
res = PyNumber_Long(x);
}
#else
if (m && m->nb_int) {
name = "int";
res = PyNumber_Long(x);
}
#endif
if (res) {
#if PY_MAJOR_VERSION < 3
if (!PyInt_Check(res) && !PyLong_Check(res)) {
#else
if (!PyLong_Check(res)) {
#endif
PyErr_Format(PyExc_TypeError,
"__%.4s__ returned non-%.4s (type %.200s)",
name, name, Py_TYPE(res)->tp_name);
Py_DECREF(res);
return NULL;
}
}
else if (!PyErr_Occurred()) {
PyErr_SetString(PyExc_TypeError,
"an integer is required");
}
return res;
}
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
Py_ssize_t ival;
PyObject *x;
#if PY_MAJOR_VERSION < 3
if (likely(PyInt_CheckExact(b)))
return PyInt_AS_LONG(b);
#endif
if (likely(PyLong_CheckExact(b))) {
#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3
#if CYTHON_USE_PYLONG_INTERNALS
switch (Py_SIZE(b)) {
case -1: return -(sdigit)((PyLongObject*)b)->ob_digit[0];
case 0: return 0;
case 1: return ((PyLongObject*)b)->ob_digit[0];
}
#endif
#endif
return PyLong_AsSsize_t(b);
}
x = PyNumber_Index(b);
if (!x) return -1;
ival = PyInt_AsSsize_t(x);
Py_DECREF(x);
return ival;
}
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {
return PyInt_FromSize_t(ival);
}
#endif /* Py_PYTHON_H */
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment