awips2/pythonPackages/h5py/api18/h5.c
root 9f19e3f712 Initial revision of AWIPS2 11.9.0-7p5
Former-commit-id: 64fa9254b946eae7e61bbc3f513b7c3696c4f54f
2012-01-06 08:55:05 -06:00

6081 lines
246 KiB
C
Executable file

/* Generated by Cython 0.12 on Sun Mar 14 21:50:18 2010 */
#define PY_SSIZE_T_CLEAN
#include "Python.h"
#include "structmember.h"
#ifndef Py_PYTHON_H
#error Python headers needed to compile C extensions, please install development version of Python.
#else
#ifndef PY_LONG_LONG
#define PY_LONG_LONG LONG_LONG
#endif
#ifndef DL_EXPORT
#define DL_EXPORT(t) t
#endif
#if PY_VERSION_HEX < 0x02040000
#define METH_COEXIST 0
#define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type)
#define PyDict_Contains(d,o) PySequence_Contains(d,o)
#endif
#if PY_VERSION_HEX < 0x02050000
typedef int Py_ssize_t;
#define PY_SSIZE_T_MAX INT_MAX
#define PY_SSIZE_T_MIN INT_MIN
#define PY_FORMAT_SIZE_T ""
#define PyInt_FromSsize_t(z) PyInt_FromLong(z)
#define PyInt_AsSsize_t(o) PyInt_AsLong(o)
#define PyNumber_Index(o) PyNumber_Int(o)
#define PyIndex_Check(o) PyNumber_Check(o)
#endif
#if PY_VERSION_HEX < 0x02060000
#define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt)
#define Py_TYPE(ob) (((PyObject*)(ob))->ob_type)
#define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size)
#define PyVarObject_HEAD_INIT(type, size) \
PyObject_HEAD_INIT(type) size,
#define PyType_Modified(t)
typedef struct {
void *buf;
PyObject *obj;
Py_ssize_t len;
Py_ssize_t itemsize;
int readonly;
int ndim;
char *format;
Py_ssize_t *shape;
Py_ssize_t *strides;
Py_ssize_t *suboffsets;
void *internal;
} Py_buffer;
#define PyBUF_SIMPLE 0
#define PyBUF_WRITABLE 0x0001
#define PyBUF_FORMAT 0x0004
#define PyBUF_ND 0x0008
#define PyBUF_STRIDES (0x0010 | PyBUF_ND)
#define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES)
#define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES)
#define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES)
#define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES)
#endif
#if PY_MAJOR_VERSION < 3
#define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
#else
#define __Pyx_BUILTIN_MODULE_NAME "builtins"
#endif
#if PY_MAJOR_VERSION >= 3
#define Py_TPFLAGS_CHECKTYPES 0
#define Py_TPFLAGS_HAVE_INDEX 0
#endif
#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3)
#define Py_TPFLAGS_HAVE_NEWBUFFER 0
#endif
#if PY_MAJOR_VERSION >= 3
#define PyBaseString_Type PyUnicode_Type
#define PyString_Type PyUnicode_Type
#define PyString_CheckExact PyUnicode_CheckExact
#else
#define PyBytes_Type PyString_Type
#define PyBytes_CheckExact PyString_CheckExact
#endif
#if PY_MAJOR_VERSION >= 3
#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 __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
#if PY_MAJOR_VERSION >= 3
#define PyMethod_New(func, self, klass) PyInstanceMethod_New(func)
#endif
#if !defined(WIN32) && !defined(MS_WINDOWS)
#ifndef __stdcall
#define __stdcall
#endif
#ifndef __cdecl
#define __cdecl
#endif
#ifndef __fastcall
#define __fastcall
#endif
#else
#define _USE_MATH_DEFINES
#endif
#if PY_VERSION_HEX < 0x02050000
#define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n)))
#define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a))
#define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n)))
#else
#define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n))
#define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a))
#define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n))
#endif
#if PY_VERSION_HEX < 0x02050000
#define __Pyx_NAMESTR(n) ((char *)(n))
#define __Pyx_DOCSTR(n) ((char *)(n))
#else
#define __Pyx_NAMESTR(n) (n)
#define __Pyx_DOCSTR(n) (n)
#endif
#ifdef __cplusplus
#define __PYX_EXTERN_C extern "C"
#else
#define __PYX_EXTERN_C extern
#endif
#include <math.h>
#define __PYX_HAVE_API__h5py__h5
#include "stdlib.h"
#include "string.h"
#include "time.h"
#include "unistd.h"
#include "stdint.h"
#include "compat.h"
#include "lzf_filter.h"
#include "hdf5.h"
#ifdef __GNUC__
#define INLINE __inline__
#elif _WIN32
#define INLINE __inline
#else
#define INLINE
#endif
typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/
/* Type Conversion Predeclarations */
#if PY_MAJOR_VERSION < 3
#define __Pyx_PyBytes_FromString PyString_FromString
#define __Pyx_PyBytes_FromStringAndSize PyString_FromStringAndSize
#define __Pyx_PyBytes_AsString PyString_AsString
#else
#define __Pyx_PyBytes_FromString PyBytes_FromString
#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
#define __Pyx_PyBytes_AsString PyBytes_AsString
#endif
#define __Pyx_PyBytes_FromUString(s) __Pyx_PyBytes_FromString((char*)s)
#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) __Pyx_PyBytes_AsString(s))
#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False))
static INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x);
#if !defined(T_PYSSIZET)
#if PY_VERSION_HEX < 0x02050000
#define T_PYSSIZET T_INT
#elif !defined(T_LONGLONG)
#define T_PYSSIZET \
((sizeof(Py_ssize_t) == sizeof(int)) ? T_INT : \
((sizeof(Py_ssize_t) == sizeof(long)) ? T_LONG : -1))
#else
#define T_PYSSIZET \
((sizeof(Py_ssize_t) == sizeof(int)) ? T_INT : \
((sizeof(Py_ssize_t) == sizeof(long)) ? T_LONG : \
((sizeof(Py_ssize_t) == sizeof(PY_LONG_LONG)) ? T_LONGLONG : -1)))
#endif
#endif
#if !defined(T_ULONGLONG)
#define __Pyx_T_UNSIGNED_INT(x) \
((sizeof(x) == sizeof(unsigned char)) ? T_UBYTE : \
((sizeof(x) == sizeof(unsigned short)) ? T_USHORT : \
((sizeof(x) == sizeof(unsigned int)) ? T_UINT : \
((sizeof(x) == sizeof(unsigned long)) ? T_ULONG : -1))))
#else
#define __Pyx_T_UNSIGNED_INT(x) \
((sizeof(x) == sizeof(unsigned char)) ? T_UBYTE : \
((sizeof(x) == sizeof(unsigned short)) ? T_USHORT : \
((sizeof(x) == sizeof(unsigned int)) ? T_UINT : \
((sizeof(x) == sizeof(unsigned long)) ? T_ULONG : \
((sizeof(x) == sizeof(unsigned PY_LONG_LONG)) ? T_ULONGLONG : -1)))))
#endif
#if !defined(T_LONGLONG)
#define __Pyx_T_SIGNED_INT(x) \
((sizeof(x) == sizeof(char)) ? T_BYTE : \
((sizeof(x) == sizeof(short)) ? T_SHORT : \
((sizeof(x) == sizeof(int)) ? T_INT : \
((sizeof(x) == sizeof(long)) ? T_LONG : -1))))
#else
#define __Pyx_T_SIGNED_INT(x) \
((sizeof(x) == sizeof(char)) ? T_BYTE : \
((sizeof(x) == sizeof(short)) ? T_SHORT : \
((sizeof(x) == sizeof(int)) ? T_INT : \
((sizeof(x) == sizeof(long)) ? T_LONG : \
((sizeof(x) == sizeof(PY_LONG_LONG)) ? T_LONGLONG : -1)))))
#endif
#define __Pyx_T_FLOATING(x) \
((sizeof(x) == sizeof(float)) ? T_FLOAT : \
((sizeof(x) == sizeof(double)) ? T_DOUBLE : -1))
#if !defined(T_SIZET)
#if !defined(T_ULONGLONG)
#define T_SIZET \
((sizeof(size_t) == sizeof(unsigned int)) ? T_UINT : \
((sizeof(size_t) == sizeof(unsigned long)) ? T_ULONG : -1))
#else
#define T_SIZET \
((sizeof(size_t) == sizeof(unsigned int)) ? T_UINT : \
((sizeof(size_t) == sizeof(unsigned long)) ? T_ULONG : \
((sizeof(size_t) == sizeof(unsigned PY_LONG_LONG)) ? T_ULONGLONG : -1)))
#endif
#endif
static INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
static INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*);
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#ifdef __GNUC__
/* Test for GCC > 2.95 */
#if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95))
#define likely(x) __builtin_expect(!!(x), 1)
#define unlikely(x) __builtin_expect(!!(x), 0)
#else /* __GNUC__ > 2 ... */
#define likely(x) (x)
#define unlikely(x) (x)
#endif /* __GNUC__ > 2 ... */
#else /* __GNUC__ */
#define likely(x) (x)
#define unlikely(x) (x)
#endif /* __GNUC__ */
static PyObject *__pyx_m;
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;
static const char **__pyx_f;
/* Type declarations */
/* "/home/tachyon/slave/unix-release/build/h5py/h5e.pxd":33
* # Safe to call more than once.
* cpdef object register_thread()
* cpdef object unregister_thread(HDF5ErrorHandler handler=*) # <<<<<<<<<<<<<<
*
* cdef extern from "hdf5.h":
*/
struct __pyx_opt_args_4h5py_3h5e_unregister_thread {
int __pyx_n;
struct __pyx_obj_4h5py_3h5e_HDF5ErrorHandler *handler;
};
/* "/home/tachyon/slave/unix-release/build/h5py/h5e.pxd":249
* herr_t H5Ewalk(H5E_direction_t direction, H5E_walk_t func, void* client_data)
*
* ctypedef struct err_cookie: # <<<<<<<<<<<<<<
* H5E_auto_t func
* void* data
*/
typedef struct {
H5E_auto_t func;
void *data;
} __pyx_t_4h5py_3h5e_err_cookie;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pxd":15
* include "defs.pxd"
*
* cdef class H5PYConfig: # <<<<<<<<<<<<<<
*
* cdef object _r_name
*/
struct __pyx_obj_4h5py_2h5_H5PYConfig {
PyObject_HEAD
PyObject *_r_name;
PyObject *_i_name;
PyObject *_f_name;
PyObject *_t_name;
PyObject *API_16;
PyObject *API_18;
PyObject *DEBUG;
PyObject *THREADS;
};
/* "/home/tachyon/slave/unix-release/build/h5py/h5e.pxd":20
* include "defs.pxd"
*
* cdef class HDF5ErrorHandler: # <<<<<<<<<<<<<<
*
* """
*/
struct __pyx_obj_4h5py_3h5e_HDF5ErrorHandler {
PyObject_HEAD
void *__pyx_auto;
void *data;
};
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pxd":35
* cdef object _hash
*
* cdef class SmartStruct: # <<<<<<<<<<<<<<
* cdef object __weakref__
* cdef object _title
*/
struct __pyx_obj_4h5py_2h5_SmartStruct {
PyObject_HEAD
PyObject *__weakref__;
PyObject *_title;
};
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pxd":28
* cpdef H5PYConfig get_config()
*
* cdef class ObjectID: # <<<<<<<<<<<<<<
*
* cdef object __weakref__
*/
struct __pyx_obj_4h5py_2h5_ObjectID {
PyObject_HEAD
PyObject *__weakref__;
hid_t id;
int _locked;
PyObject *_hash;
};
#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) {
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;
}
#define __Pyx_RefNannySetupContext(name) void *__pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__)
#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_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r);} } while(0)
#else
#define __Pyx_RefNannySetupContext(name)
#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_XDECREF(r) Py_XDECREF(r)
#endif /* CYTHON_REFNANNY */
#define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);} } while(0)
#define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r);} } while(0)
static INLINE PyObject* __Pyx_Type(PyObject* o) {
PyObject* type = (PyObject*) Py_TYPE(o);
Py_INCREF(type);
return type;
}
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); /*proto*/
static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact,
Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); /*proto*/
static INLINE int __Pyx_CheckKeywordStrings(PyObject *kwdict,
const char* function_name, int kw_allowed); /*proto*/
static INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {
PyObject *r;
if (!j) return NULL;
r = PyObject_GetItem(o, j);
Py_DECREF(j);
return r;
}
#define __Pyx_GetItemInt_List(o, i, size, to_py_func) ((size <= sizeof(Py_ssize_t)) ? \
__Pyx_GetItemInt_List_Fast(o, i, size <= sizeof(long)) : \
__Pyx_GetItemInt_Generic(o, to_py_func(i)))
static INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, int fits_long) {
if (likely(o != Py_None)) {
if (likely((0 <= i) & (i < PyList_GET_SIZE(o)))) {
PyObject *r = PyList_GET_ITEM(o, i);
Py_INCREF(r);
return r;
}
else if ((-PyList_GET_SIZE(o) <= i) & (i < 0)) {
PyObject *r = PyList_GET_ITEM(o, PyList_GET_SIZE(o) + i);
Py_INCREF(r);
return r;
}
}
return __Pyx_GetItemInt_Generic(o, fits_long ? PyInt_FromLong(i) : PyLong_FromLongLong(i));
}
#define __Pyx_GetItemInt_Tuple(o, i, size, to_py_func) ((size <= sizeof(Py_ssize_t)) ? \
__Pyx_GetItemInt_Tuple_Fast(o, i, size <= sizeof(long)) : \
__Pyx_GetItemInt_Generic(o, to_py_func(i)))
static INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i, int fits_long) {
if (likely(o != Py_None)) {
if (likely((0 <= i) & (i < PyTuple_GET_SIZE(o)))) {
PyObject *r = PyTuple_GET_ITEM(o, i);
Py_INCREF(r);
return r;
}
else if ((-PyTuple_GET_SIZE(o) <= i) & (i < 0)) {
PyObject *r = PyTuple_GET_ITEM(o, PyTuple_GET_SIZE(o) + i);
Py_INCREF(r);
return r;
}
}
return __Pyx_GetItemInt_Generic(o, fits_long ? PyInt_FromLong(i) : PyLong_FromLongLong(i));
}
#define __Pyx_GetItemInt(o, i, size, to_py_func) ((size <= sizeof(Py_ssize_t)) ? \
__Pyx_GetItemInt_Fast(o, i, size <= sizeof(long)) : \
__Pyx_GetItemInt_Generic(o, to_py_func(i)))
static INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int fits_long) {
PyObject *r;
if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) {
r = PyList_GET_ITEM(o, i);
Py_INCREF(r);
}
else if (PyTuple_CheckExact(o) && ((0 <= i) & (i < PyTuple_GET_SIZE(o)))) {
r = PyTuple_GET_ITEM(o, i);
Py_INCREF(r);
}
else if (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_item && (likely(i >= 0))) {
r = PySequence_GetItem(o, i);
}
else {
r = __Pyx_GetItemInt_Generic(o, fits_long ? PyInt_FromLong(i) : PyLong_FromLongLong(i));
}
return r;
}
static void __Pyx_RaiseDoubleKeywordsError(
const char* func_name, PyObject* kw_name); /*proto*/
static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name); /*proto*/
static INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); /*proto*/
static INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
static INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb); /*proto*/
static INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb); /*proto*/
static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list); /*proto*/
static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
static INLINE PyObject *__Pyx_PyInt_to_py_hid_t(hid_t);
static INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *);
static INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *);
static INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *);
static INLINE char __Pyx_PyInt_AsChar(PyObject *);
static INLINE short __Pyx_PyInt_AsShort(PyObject *);
static INLINE int __Pyx_PyInt_AsInt(PyObject *);
static INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *);
static INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *);
static INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *);
static INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *);
static INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *);
static INLINE long __Pyx_PyInt_AsLong(PyObject *);
static INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *);
static INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *);
static INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *);
static INLINE hid_t __Pyx_PyInt_from_py_hid_t(PyObject *);
static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig); /*proto*/
static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name, long size); /*proto*/
static PyObject *__Pyx_ImportModule(const char *name); /*proto*/
static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig); /*proto*/
static void __Pyx_AddTraceback(const char *funcname); /*proto*/
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/
/* Module declarations from h5py.h5e */
static PyTypeObject *__pyx_ptype_4h5py_3h5e_HDF5ErrorHandler = 0;
static PyObject *(*__pyx_f_4h5py_3h5e_register_thread)(int __pyx_skip_dispatch); /*proto*/
static PyObject *(*__pyx_f_4h5py_3h5e_unregister_thread)(int __pyx_skip_dispatch, struct __pyx_opt_args_4h5py_3h5e_unregister_thread *__pyx_optional_args); /*proto*/
static __pyx_t_4h5py_3h5e_err_cookie (*__pyx_f_4h5py_3h5e_disable_errors)(void); /*proto*/
static void (*__pyx_f_4h5py_3h5e_enable_errors)(__pyx_t_4h5py_3h5e_err_cookie); /*proto*/
/* Module declarations from h5py.h5 */
static PyTypeObject *__pyx_ptype_4h5py_2h5_H5PYConfig = 0;
static PyTypeObject *__pyx_ptype_4h5py_2h5_ObjectID = 0;
static PyTypeObject *__pyx_ptype_4h5py_2h5_SmartStruct = 0;
static struct __pyx_obj_4h5py_2h5_H5PYConfig *__pyx_v_4h5py_2h5_cfg = 0;
static struct __pyx_obj_4h5py_2h5_H5PYConfig *__pyx_f_4h5py_2h5_get_config(int __pyx_skip_dispatch); /*proto*/
static int __pyx_f_4h5py_2h5_init_hdf5(void); /*proto*/
#define __Pyx_MODULE_NAME "h5py.h5"
int __pyx_module_is_main_h5py__h5 = 0;
/* Implementation of h5py.h5 */
static PyObject *__pyx_builtin_TypeError;
static PyObject *__pyx_builtin_NotImplemented;
static PyObject *__pyx_builtin_getattr;
static PyObject *__pyx_builtin_sorted;
static PyObject *__pyx_builtin_Exception;
static PyObject *__pyx_builtin_RuntimeError;
static char __pyx_k_1[] = "%s instances are unhashable";
static char __pyx_k_2[] = "\n";
static char __pyx_k_3[] = " ";
static char __pyx_k_4[] = "=== %s ===\n";
static char __pyx_k_5[] = "%s: %s";
static char __pyx_k_6[] = "complex_names must be a 2-tuple of strings (real, img)";
static char __pyx_k_7[] = "bool_names must be a 2-tuple of strings (false, true)";
static char __pyx_k_8[] = "Summary of h5py config\n======================\nHDF5: %s\n1.6 API: %s\n1.8 API: %s\nDiagnostic mode: %s\nComplex names: %s";
static char __pyx_k_9[] = "%d.%d.%d";
static char __pyx_k_10[] = ".";
static char __pyx_k_11[] = "Objects of class %s cannot be hashed";
static char __pyx_k_12[] = "<%s [%s] (%s) %d>";
static char __pyx_k_13[] = "unregister_converters";
static char __pyx_k_14[] = "Failed to initialize the HDF5 library.";
static char __pyx_k_15[] = "Failed to register LZF filter";
static char __pyx_k_16[] = " Settable 2-tuple controlling how complex numbers are saved.\n\n Format is (real_name, imag_name), defaulting to ('r','i').\n ";
static char __pyx_k_17[] = " Settable 2-tuple controlling HDF5 ENUM names for boolean types.\n\n Format is (false_name, real_name), defaulting to ('FALSE', 'TRUE').\n ";
static char __pyx_k_18[] = " Indicates whether or not this identifier points to an HDF5 object.\n ";
static char __pyx_k_19[] = "\n Common support and versioning module for the h5py HDF5 interface.\n\n This is an internal module which is designed to set up the library and\n enables HDF5 exception handling.\n\n Exception classes are now located in the module h5py.h5e.\n";
static char __pyx_k_20[] = "1.3.0";
static char __pyx_k_21[] = "-";
static char __pyx_k__L[] = "L";
static char __pyx_k__U[] = "U";
static char __pyx_k__X[] = "X";
static char __pyx_k___[] = "_";
static char __pyx_k__i[] = "i";
static char __pyx_k__r[] = "r";
static char __pyx_k__x[] = "x";
static char __pyx_k__id[] = "id";
static char __pyx_k__h5e[] = "h5e";
static char __pyx_k__id_[] = "id_";
static char __pyx_k__TRUE[] = "TRUE";
static char __pyx_k__join[] = "join";
static char __pyx_k__DEBUG[] = "DEBUG";
static char __pyx_k__FALSE[] = "FALSE";
static char __pyx_k___conv[] = "_conv";
static char __pyx_k___hash[] = "_hash";
static char __pyx_k__objno[] = "objno";
static char __pyx_k__split[] = "split";
static char __pyx_k__API_16[] = "API_16";
static char __pyx_k__API_18[] = "API_18";
static char __pyx_k___title[] = "_title";
static char __pyx_k___valid[] = "_valid";
static char __pyx_k__atexit[] = "atexit";
static char __pyx_k__fileno[] = "fileno";
static char __pyx_k__sorted[] = "sorted";
static char __pyx_k__H5Error[] = "H5Error";
static char __pyx_k___f_name[] = "_f_name";
static char __pyx_k___i_name[] = "_i_name";
static char __pyx_k___locked[] = "_locked";
static char __pyx_k___r_name[] = "_r_name";
static char __pyx_k___t_name[] = "_t_name";
static char __pyx_k__getattr[] = "getattr";
static char __pyx_k__ITER_DEC[] = "ITER_DEC";
static char __pyx_k__ITER_INC[] = "ITER_INC";
static char __pyx_k____main__[] = "__main__";
static char __pyx_k____name__[] = "__name__";
static char __pyx_k__register[] = "register";
static char __pyx_k__Exception[] = "Exception";
static char __pyx_k__TypeError[] = "TypeError";
static char __pyx_k____class__[] = "__class__";
static char __pyx_k___exithack[] = "_exithack";
static char __pyx_k__threading[] = "threading";
static char __pyx_k__INDEX_NAME[] = "INDEX_NAME";
static char __pyx_k__startswith[] = "startswith";
static char __pyx_k__ITER_NATIVE[] = "ITER_NATIVE";
static char __pyx_k__hdf5_inited[] = "hdf5_inited";
static char __pyx_k__RuntimeError[] = "RuntimeError";
static char __pyx_k__complex_names[] = "complex_names";
static char __pyx_k__NotImplemented[] = "NotImplemented";
static char __pyx_k___version_tuple[] = "_version_tuple";
static char __pyx_k__get_libversion[] = "get_libversion";
static char __pyx_k__INDEX_CRT_ORDER[] = "INDEX_CRT_ORDER";
static char __pyx_k___version_string[] = "_version_string";
static char __pyx_k___api_version_tuple[] = "_api_version_tuple";
static char __pyx_k___hdf5_version_tuple[] = "_hdf5_version_tuple";
static char __pyx_k__register_converters[] = "register_converters";
static PyObject *__pyx_kp_s_1;
static PyObject *__pyx_kp_s_10;
static PyObject *__pyx_kp_s_11;
static PyObject *__pyx_kp_s_12;
static PyObject *__pyx_n_s_13;
static PyObject *__pyx_kp_s_14;
static PyObject *__pyx_kp_s_15;
static PyObject *__pyx_kp_s_2;
static PyObject *__pyx_kp_b_20;
static PyObject *__pyx_kp_s_21;
static PyObject *__pyx_kp_s_3;
static PyObject *__pyx_kp_s_4;
static PyObject *__pyx_kp_s_5;
static PyObject *__pyx_kp_s_6;
static PyObject *__pyx_kp_s_7;
static PyObject *__pyx_kp_s_8;
static PyObject *__pyx_kp_s_9;
static PyObject *__pyx_n_s__API_16;
static PyObject *__pyx_n_s__API_18;
static PyObject *__pyx_n_s__DEBUG;
static PyObject *__pyx_n_s__Exception;
static PyObject *__pyx_n_s__FALSE;
static PyObject *__pyx_n_s__H5Error;
static PyObject *__pyx_n_s__INDEX_CRT_ORDER;
static PyObject *__pyx_n_s__INDEX_NAME;
static PyObject *__pyx_n_s__ITER_DEC;
static PyObject *__pyx_n_s__ITER_INC;
static PyObject *__pyx_n_s__ITER_NATIVE;
static PyObject *__pyx_n_s__L;
static PyObject *__pyx_n_s__NotImplemented;
static PyObject *__pyx_n_s__RuntimeError;
static PyObject *__pyx_n_s__TRUE;
static PyObject *__pyx_n_s__TypeError;
static PyObject *__pyx_n_s__U;
static PyObject *__pyx_n_s__X;
static PyObject *__pyx_n_s___;
static PyObject *__pyx_n_s____class__;
static PyObject *__pyx_n_s____main__;
static PyObject *__pyx_n_s____name__;
static PyObject *__pyx_n_s___api_version_tuple;
static PyObject *__pyx_n_s___conv;
static PyObject *__pyx_n_s___exithack;
static PyObject *__pyx_n_s___f_name;
static PyObject *__pyx_n_s___hash;
static PyObject *__pyx_n_s___hdf5_version_tuple;
static PyObject *__pyx_n_s___i_name;
static PyObject *__pyx_n_s___locked;
static PyObject *__pyx_n_s___r_name;
static PyObject *__pyx_n_s___t_name;
static PyObject *__pyx_n_s___title;
static PyObject *__pyx_n_s___valid;
static PyObject *__pyx_n_s___version_string;
static PyObject *__pyx_n_s___version_tuple;
static PyObject *__pyx_n_s__atexit;
static PyObject *__pyx_n_s__complex_names;
static PyObject *__pyx_n_s__fileno;
static PyObject *__pyx_n_s__get_libversion;
static PyObject *__pyx_n_s__getattr;
static PyObject *__pyx_n_s__h5e;
static PyObject *__pyx_n_s__hdf5_inited;
static PyObject *__pyx_n_s__i;
static PyObject *__pyx_n_s__id;
static PyObject *__pyx_n_s__id_;
static PyObject *__pyx_n_s__join;
static PyObject *__pyx_n_s__objno;
static PyObject *__pyx_n_s__r;
static PyObject *__pyx_n_s__register;
static PyObject *__pyx_n_s__register_converters;
static PyObject *__pyx_n_s__sorted;
static PyObject *__pyx_n_s__split;
static PyObject *__pyx_n_s__startswith;
static PyObject *__pyx_n_s__threading;
static PyObject *__pyx_n_s__x;
static PyObject *__pyx_int_0;
static PyObject *__pyx_int_1;
static PyObject *__pyx_int_8;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":44
* """ Provides basic mechanics for structs """
*
* def _hash(self): # <<<<<<<<<<<<<<
* raise TypeError("%s instances are unhashable" % self.__class__.__name__)
*
*/
static PyObject *__pyx_pf_4h5py_2h5_11SmartStruct__hash(PyObject *__pyx_v_self, PyObject *unused); /*proto*/
static PyObject *__pyx_pf_4h5py_2h5_11SmartStruct__hash(PyObject *__pyx_v_self, PyObject *unused) {
PyObject *__pyx_r = NULL;
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("_hash");
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":45
*
* def _hash(self):
* raise TypeError("%s instances are unhashable" % self.__class__.__name__) # <<<<<<<<<<<<<<
*
* def __hash__(self):
*/
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____name__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __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 = PyObject_Call(__pyx_builtin_TypeError, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_Raise(__pyx_t_1, 0, 0);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("h5py.h5.SmartStruct._hash");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":47
* raise TypeError("%s instances are unhashable" % self.__class__.__name__)
*
* def __hash__(self): # <<<<<<<<<<<<<<
* # This is forwarded so that I don't have to reimplement __richcmp__ everywhere
* return self._hash()
*/
static long __pyx_pf_4h5py_2h5_11SmartStruct___hash__(PyObject *__pyx_v_self); /*proto*/
static long __pyx_pf_4h5py_2h5_11SmartStruct___hash__(PyObject *__pyx_v_self) {
long __pyx_r;
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
long __pyx_t_3;
__Pyx_RefNannySetupContext("__hash__");
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":49
* def __hash__(self):
* # This is forwarded so that I don't have to reimplement __richcmp__ everywhere
* return self._hash() # <<<<<<<<<<<<<<
*
* def __richcmp__(self, object other, int how):
*/
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___hash); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); 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);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_3 = __Pyx_PyInt_AsLong(__pyx_t_2); if (unlikely((__pyx_t_3 == (long)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_r = __pyx_t_3;
goto __pyx_L0;
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("h5py.h5.SmartStruct.__hash__");
__pyx_r = -1;
__pyx_L0:;
if (unlikely(__pyx_r == -1) && !PyErr_Occurred()) __pyx_r = -2;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":51
* return self._hash()
*
* def __richcmp__(self, object other, int how): # <<<<<<<<<<<<<<
* """Equality based on hash. If unhashable, NotImplemented."""
* cdef bint truthval = 0
*/
static PyObject *__pyx_pf_4h5py_2h5_11SmartStruct___richcmp__(PyObject *__pyx_v_self, PyObject *__pyx_v_other, int __pyx_v_how); /*proto*/
static char __pyx_doc_4h5py_2h5_11SmartStruct___richcmp__[] = "Equality based on hash. If unhashable, NotImplemented.";
static PyObject *__pyx_pf_4h5py_2h5_11SmartStruct___richcmp__(PyObject *__pyx_v_self, PyObject *__pyx_v_other, int __pyx_v_how) {
int __pyx_v_truthval;
PyObject *__pyx_r = NULL;
int __pyx_t_1;
int __pyx_t_2;
int __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
long __pyx_t_5;
long __pyx_t_6;
int __pyx_t_7;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
__Pyx_RefNannySetupContext("__richcmp__");
__Pyx_INCREF(__pyx_v_self);
__Pyx_INCREF(__pyx_v_other);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":53
* def __richcmp__(self, object other, int how):
* """Equality based on hash. If unhashable, NotImplemented."""
* cdef bint truthval = 0 # <<<<<<<<<<<<<<
*
* if how != 2 and how != 3:
*/
__pyx_v_truthval = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":55
* cdef bint truthval = 0
*
* if how != 2 and how != 3: # <<<<<<<<<<<<<<
* return NotImplemented
*
*/
__pyx_t_1 = (__pyx_v_how != 2);
if (__pyx_t_1) {
__pyx_t_2 = (__pyx_v_how != 3);
__pyx_t_3 = __pyx_t_2;
} else {
__pyx_t_3 = __pyx_t_1;
}
if (__pyx_t_3) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":56
*
* if how != 2 and how != 3:
* return NotImplemented # <<<<<<<<<<<<<<
*
* if isinstance(other, type(self)):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_builtin_NotImplemented);
__pyx_r = __pyx_builtin_NotImplemented;
goto __pyx_L0;
goto __pyx_L5;
}
__pyx_L5:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":58
* return NotImplemented
*
* if isinstance(other, type(self)): # <<<<<<<<<<<<<<
* try:
* truthval = hash(self) == hash(other)
*/
__pyx_t_4 = ((PyObject *)__Pyx_Type(__pyx_v_self)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_4));
__pyx_t_4 = ((PyObject *)__Pyx_Type(__pyx_v_self)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_4));
__pyx_t_3 = PyObject_TypeCheck(__pyx_v_other, ((PyTypeObject *)__pyx_t_4));
__Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0;
if (__pyx_t_3) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":59
*
* if isinstance(other, type(self)):
* try: # <<<<<<<<<<<<<<
* truthval = hash(self) == hash(other)
* except TypeError:
*/
{
PyObject *__pyx_save_exc_type, *__pyx_save_exc_value, *__pyx_save_exc_tb;
__Pyx_ExceptionSave(&__pyx_save_exc_type, &__pyx_save_exc_value, &__pyx_save_exc_tb);
__Pyx_XGOTREF(__pyx_save_exc_type);
__Pyx_XGOTREF(__pyx_save_exc_value);
__Pyx_XGOTREF(__pyx_save_exc_tb);
/*try:*/ {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":60
* if isinstance(other, type(self)):
* try:
* truthval = hash(self) == hash(other) # <<<<<<<<<<<<<<
* except TypeError:
* return NotImplemented
*/
__pyx_t_5 = PyObject_Hash(__pyx_v_self); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
__pyx_t_6 = PyObject_Hash(__pyx_v_other); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
__pyx_v_truthval = (__pyx_t_5 == __pyx_t_6);
}
__Pyx_XDECREF(__pyx_save_exc_type); __pyx_save_exc_type = 0;
__Pyx_XDECREF(__pyx_save_exc_value); __pyx_save_exc_value = 0;
__Pyx_XDECREF(__pyx_save_exc_tb); __pyx_save_exc_tb = 0;
goto __pyx_L14_try_end;
__pyx_L7_error:;
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":61
* try:
* truthval = hash(self) == hash(other)
* except TypeError: # <<<<<<<<<<<<<<
* return NotImplemented
*
*/
__pyx_t_7 = PyErr_ExceptionMatches(__pyx_builtin_TypeError);
if (__pyx_t_7) {
__Pyx_AddTraceback("h5py.h5.SmartStruct.__richcmp__");
if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_8, &__pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L9_except_error;}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_9);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":62
* truthval = hash(self) == hash(other)
* except TypeError:
* return NotImplemented # <<<<<<<<<<<<<<
*
* if how == 2:
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_builtin_NotImplemented);
__pyx_r = __pyx_builtin_NotImplemented;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
goto __pyx_L10_except_return;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
goto __pyx_L8_exception_handled;
}
__pyx_L9_except_error:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
goto __pyx_L1_error;
__pyx_L10_except_return:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
goto __pyx_L0;
__pyx_L8_exception_handled:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
__pyx_L14_try_end:;
}
goto __pyx_L6;
}
__pyx_L6:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":64
* return NotImplemented
*
* if how == 2: # <<<<<<<<<<<<<<
* return truthval
* return not truthval
*/
__pyx_t_3 = (__pyx_v_how == 2);
if (__pyx_t_3) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":65
*
* if how == 2:
* return truthval # <<<<<<<<<<<<<<
* return not truthval
*
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_9 = __Pyx_PyBool_FromLong(__pyx_v_truthval); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_9);
__pyx_r = __pyx_t_9;
__pyx_t_9 = 0;
goto __pyx_L0;
goto __pyx_L17;
}
__pyx_L17:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":66
* if how == 2:
* return truthval
* return not truthval # <<<<<<<<<<<<<<
*
* def __str__(self):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_9 = __Pyx_PyBool_FromLong((!__pyx_v_truthval)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_9);
__pyx_r = __pyx_t_9;
__pyx_t_9 = 0;
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_AddTraceback("h5py.h5.SmartStruct.__richcmp__");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_DECREF(__pyx_v_self);
__Pyx_DECREF(__pyx_v_other);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":68
* return not truthval
*
* def __str__(self): # <<<<<<<<<<<<<<
* """Format "name: value" pairs recursively for public attributes"""
* mems = dict([(x, str(getattr(self, x))) for x in dir(self) if not x.startswith('_')])
*/
static PyObject *__pyx_pf_4h5py_2h5_11SmartStruct___str__(PyObject *__pyx_v_self); /*proto*/
static char __pyx_doc_4h5py_2h5_11SmartStruct___str__[] = "Format \"name: value\" pairs recursively for public attributes";
static PyObject *__pyx_pf_4h5py_2h5_11SmartStruct___str__(PyObject *__pyx_v_self) {
PyObject *__pyx_v_mems;
PyObject *__pyx_v_x;
PyObject *__pyx_v_hdr;
PyObject *__pyx_v_y;
PyObject *__pyx_v_name;
PyObject *__pyx_r = NULL;
PyObject *__pyx_t_1 = NULL;
Py_ssize_t __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
int __pyx_t_7;
int __pyx_t_8;
int __pyx_t_9;
Py_ssize_t __pyx_t_10;
PyObject *__pyx_t_11 = NULL;
__Pyx_RefNannySetupContext("__str__");
__Pyx_INCREF((PyObject *)__pyx_v_self);
__pyx_v_mems = Py_None; __Pyx_INCREF(Py_None);
__pyx_v_x = Py_None; __Pyx_INCREF(Py_None);
__pyx_v_hdr = Py_None; __Pyx_INCREF(Py_None);
__pyx_v_y = Py_None; __Pyx_INCREF(Py_None);
__pyx_v_name = Py_None; __Pyx_INCREF(Py_None);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":70
* def __str__(self):
* """Format "name: value" pairs recursively for public attributes"""
* mems = dict([(x, str(getattr(self, x))) for x in dir(self) if not x.startswith('_')]) # <<<<<<<<<<<<<<
* for x in mems:
* if isinstance(getattr(self,x), SmartStruct):
*/
__pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
__pyx_t_3 = PyObject_Dir(__pyx_v_self); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
__pyx_t_2 = 0; __pyx_t_4 = __pyx_t_3; __Pyx_INCREF(__pyx_t_4);
} else {
__pyx_t_2 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_4);
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
for (;;) {
if (likely(PyList_CheckExact(__pyx_t_4))) {
if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_4)) break;
__pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++;
} else if (likely(PyTuple_CheckExact(__pyx_t_4))) {
if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
__pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++;
} else {
__pyx_t_3 = PyIter_Next(__pyx_t_4);
if (!__pyx_t_3) {
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
break;
}
__Pyx_GOTREF(__pyx_t_3);
}
__Pyx_DECREF(__pyx_v_x);
__pyx_v_x = __pyx_t_3;
__pyx_t_3 = 0;
__pyx_t_3 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__startswith); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_n_s___));
PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_n_s___));
__Pyx_GIVEREF(((PyObject *)__pyx_n_s___));
__pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_8 = (!__pyx_t_7);
if (__pyx_t_8) {
__pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_v_x); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_6);
__pyx_t_6 = 0;
__pyx_t_6 = PyObject_Call(((PyObject *)((PyObject*)&PyString_Type)), __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_9 = PyDict_SetItem(__pyx_t_1, (PyObject*)__pyx_v_x, (PyObject*)__pyx_t_6); if (unlikely(__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L7;
}
__pyx_L7:;
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_INCREF(((PyObject *)__pyx_t_1));
__Pyx_DECREF(__pyx_v_mems);
__pyx_v_mems = ((PyObject *)__pyx_t_1);
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":71
* """Format "name: value" pairs recursively for public attributes"""
* mems = dict([(x, str(getattr(self, x))) for x in dir(self) if not x.startswith('_')])
* for x in mems: # <<<<<<<<<<<<<<
* if isinstance(getattr(self,x), SmartStruct):
* mems[x] = "\n"+"\n".join([" "+y for y in mems[x].split("\n")[1:]])
*/
if (PyList_CheckExact(__pyx_v_mems) || PyTuple_CheckExact(__pyx_v_mems)) {
__pyx_t_2 = 0; __pyx_t_1 = __pyx_v_mems; __Pyx_INCREF(__pyx_t_1);
} else {
__pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_mems); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
}
for (;;) {
if (likely(PyList_CheckExact(__pyx_t_1))) {
if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break;
__pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++;
} else if (likely(PyTuple_CheckExact(__pyx_t_1))) {
if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
__pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++;
} else {
__pyx_t_4 = PyIter_Next(__pyx_t_1);
if (!__pyx_t_4) {
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
break;
}
__Pyx_GOTREF(__pyx_t_4);
}
__Pyx_DECREF(__pyx_v_x);
__pyx_v_x = __pyx_t_4;
__pyx_t_4 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":72
* mems = dict([(x, str(getattr(self, x))) for x in dir(self) if not x.startswith('_')])
* for x in mems:
* if isinstance(getattr(self,x), SmartStruct): # <<<<<<<<<<<<<<
* mems[x] = "\n"+"\n".join([" "+y for y in mems[x].split("\n")[1:]])
* hdr = "=== %s ===\n" % self.__class__.__name__ if self._title is None else self._title
*/
__pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_v_x); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_8 = PyObject_TypeCheck(__pyx_t_4, ((PyTypeObject *)((PyObject*)__pyx_ptype_4h5py_2h5_SmartStruct)));
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_8) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":73
* for x in mems:
* if isinstance(getattr(self,x), SmartStruct):
* mems[x] = "\n"+"\n".join([" "+y for y in mems[x].split("\n")[1:]]) # <<<<<<<<<<<<<<
* hdr = "=== %s ===\n" % self.__class__.__name__ if self._title is None else self._title
* return hdr+"\n".join(["%s: %s" % (name, mems[name]) for name in sorted(mems)])
*/
__pyx_t_4 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_2), __pyx_n_s__join); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_6));
__pyx_t_5 = PyObject_GetItem(__pyx_v_mems, __pyx_v_x); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_3 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__split); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_kp_s_2));
PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_kp_s_2));
__Pyx_GIVEREF(((PyObject *)__pyx_kp_s_2));
__pyx_t_11 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = PySequence_GetSlice(__pyx_t_11, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
if (PyList_CheckExact(__pyx_t_5) || PyTuple_CheckExact(__pyx_t_5)) {
__pyx_t_10 = 0; __pyx_t_11 = __pyx_t_5; __Pyx_INCREF(__pyx_t_11);
} else {
__pyx_t_10 = -1; __pyx_t_11 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_11);
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
for (;;) {
if (likely(PyList_CheckExact(__pyx_t_11))) {
if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_11)) break;
__pyx_t_5 = PyList_GET_ITEM(__pyx_t_11, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++;
} else if (likely(PyTuple_CheckExact(__pyx_t_11))) {
if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_11)) break;
__pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++;
} else {
__pyx_t_5 = PyIter_Next(__pyx_t_11);
if (!__pyx_t_5) {
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
break;
}
__Pyx_GOTREF(__pyx_t_5);
}
__Pyx_DECREF(__pyx_v_y);
__pyx_v_y = __pyx_t_5;
__pyx_t_5 = 0;
__pyx_t_5 = PyNumber_Add(((PyObject *)__pyx_kp_s_3), __pyx_v_y); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_9 = PyList_Append(__pyx_t_6, (PyObject*)__pyx_t_5); if (unlikely(__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_11);
__Pyx_INCREF(((PyObject *)__pyx_t_6));
PyTuple_SET_ITEM(__pyx_t_11, 0, ((PyObject *)__pyx_t_6));
__Pyx_GIVEREF(((PyObject *)__pyx_t_6));
__Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0;
__pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_11, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_11 = PyNumber_Add(((PyObject *)__pyx_kp_s_2), __pyx_t_6); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (PyObject_SetItem(__pyx_v_mems, __pyx_v_x, __pyx_t_11) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
goto __pyx_L10;
}
__pyx_L10:;
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":74
* if isinstance(getattr(self,x), SmartStruct):
* mems[x] = "\n"+"\n".join([" "+y for y in mems[x].split("\n")[1:]])
* hdr = "=== %s ===\n" % self.__class__.__name__ if self._title is None else self._title # <<<<<<<<<<<<<<
* return hdr+"\n".join(["%s: %s" % (name, mems[name]) for name in sorted(mems)])
*
*/
__pyx_t_8 = (((struct __pyx_obj_4h5py_2h5_SmartStruct *)__pyx_v_self)->_title == Py_None);
if (__pyx_t_8) {
__pyx_t_11 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_11);
__pyx_t_6 = PyObject_GetAttr(__pyx_t_11, __pyx_n_s____name__); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_11 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_4), __pyx_t_6); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_1 = __pyx_t_11;
__pyx_t_11 = 0;
} else {
__Pyx_INCREF(((struct __pyx_obj_4h5py_2h5_SmartStruct *)__pyx_v_self)->_title);
__pyx_t_1 = ((struct __pyx_obj_4h5py_2h5_SmartStruct *)__pyx_v_self)->_title;
}
__Pyx_DECREF(__pyx_v_hdr);
__pyx_v_hdr = __pyx_t_1;
__pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":75
* mems[x] = "\n"+"\n".join([" "+y for y in mems[x].split("\n")[1:]])
* hdr = "=== %s ===\n" % self.__class__.__name__ if self._title is None else self._title
* return hdr+"\n".join(["%s: %s" % (name, mems[name]) for name in sorted(mems)]) # <<<<<<<<<<<<<<
*
* cdef class H5PYConfig:
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_2), __pyx_n_s__join); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_11 = PyList_New(0); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_11));
__pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_mems);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_mems);
__Pyx_GIVEREF(__pyx_v_mems);
__pyx_t_4 = PyObject_Call(__pyx_builtin_sorted, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) {
__pyx_t_2 = 0; __pyx_t_6 = __pyx_t_4; __Pyx_INCREF(__pyx_t_6);
} else {
__pyx_t_2 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
for (;;) {
if (likely(PyList_CheckExact(__pyx_t_6))) {
if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_6)) break;
__pyx_t_4 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++;
} else if (likely(PyTuple_CheckExact(__pyx_t_6))) {
if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_6)) break;
__pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++;
} else {
__pyx_t_4 = PyIter_Next(__pyx_t_6);
if (!__pyx_t_4) {
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
break;
}
__Pyx_GOTREF(__pyx_t_4);
}
__Pyx_DECREF(__pyx_v_name);
__pyx_v_name = __pyx_t_4;
__pyx_t_4 = 0;
__pyx_t_4 = PyObject_GetItem(__pyx_v_mems, __pyx_v_name); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_name);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_name);
__Pyx_GIVEREF(__pyx_v_name);
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
__pyx_t_4 = 0;
__pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_5), __pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_9 = PyList_Append(__pyx_t_11, (PyObject*)__pyx_t_4); if (unlikely(__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_t_11));
PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_t_11));
__Pyx_GIVEREF(((PyObject *)__pyx_t_11));
__Pyx_DECREF(((PyObject *)__pyx_t_11)); __pyx_t_11 = 0;
__pyx_t_11 = PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_11);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = PyNumber_Add(__pyx_v_hdr, __pyx_t_11); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_r = __pyx_t_6;
__pyx_t_6 = 0;
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_11);
__Pyx_AddTraceback("h5py.h5.SmartStruct.__str__");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_DECREF(__pyx_v_mems);
__Pyx_DECREF(__pyx_v_x);
__Pyx_DECREF(__pyx_v_hdr);
__Pyx_DECREF(__pyx_v_y);
__Pyx_DECREF(__pyx_v_name);
__Pyx_DECREF((PyObject *)__pyx_v_self);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":98
* """
*
* def __init__(self): # <<<<<<<<<<<<<<
* self.API_16 = bool(H5PY_16API)
* self.API_18 = bool(H5PY_18API)
*/
static int __pyx_pf_4h5py_2h5_10H5PYConfig___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_pf_4h5py_2h5_10H5PYConfig___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
int __pyx_r;
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__init__");
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 0))) return -1;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":99
*
* def __init__(self):
* self.API_16 = bool(H5PY_16API) # <<<<<<<<<<<<<<
* self.API_18 = bool(H5PY_18API)
* self._r_name = 'r'
*/
__pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
__pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)&PyBool_Type)), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_16);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_16);
((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_16 = __pyx_t_2;
__pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":100
* def __init__(self):
* self.API_16 = bool(H5PY_16API)
* self.API_18 = bool(H5PY_18API) # <<<<<<<<<<<<<<
* self._r_name = 'r'
* self._i_name = 'i'
*/
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
__pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)&PyBool_Type)), __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_18);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_18);
((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_18 = __pyx_t_1;
__pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":101
* self.API_16 = bool(H5PY_16API)
* self.API_18 = bool(H5PY_18API)
* self._r_name = 'r' # <<<<<<<<<<<<<<
* self._i_name = 'i'
* self._f_name = 'FALSE'
*/
__Pyx_INCREF(((PyObject *)__pyx_n_s__r));
__Pyx_GIVEREF(((PyObject *)__pyx_n_s__r));
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_r_name);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_r_name);
((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_r_name = ((PyObject *)__pyx_n_s__r);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":102
* self.API_18 = bool(H5PY_18API)
* self._r_name = 'r'
* self._i_name = 'i' # <<<<<<<<<<<<<<
* self._f_name = 'FALSE'
* self._t_name = 'TRUE'
*/
__Pyx_INCREF(((PyObject *)__pyx_n_s__i));
__Pyx_GIVEREF(((PyObject *)__pyx_n_s__i));
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_i_name);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_i_name);
((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_i_name = ((PyObject *)__pyx_n_s__i);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":103
* self._r_name = 'r'
* self._i_name = 'i'
* self._f_name = 'FALSE' # <<<<<<<<<<<<<<
* self._t_name = 'TRUE'
*
*/
__Pyx_INCREF(((PyObject *)__pyx_n_s__FALSE));
__Pyx_GIVEREF(((PyObject *)__pyx_n_s__FALSE));
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_f_name);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_f_name);
((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_f_name = ((PyObject *)__pyx_n_s__FALSE);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":104
* self._i_name = 'i'
* self._f_name = 'FALSE'
* self._t_name = 'TRUE' # <<<<<<<<<<<<<<
*
* property complex_names:
*/
__Pyx_INCREF(((PyObject *)__pyx_n_s__TRUE));
__Pyx_GIVEREF(((PyObject *)__pyx_n_s__TRUE));
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_t_name);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_t_name);
((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_t_name = ((PyObject *)__pyx_n_s__TRUE);
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("h5py.h5.H5PYConfig.__init__");
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":112
* """
*
* def __get__(self): # <<<<<<<<<<<<<<
* return (self._r_name, self._i_name)
*
*/
static PyObject *__pyx_pf_4h5py_2h5_10H5PYConfig_13complex_names___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pf_4h5py_2h5_10H5PYConfig_13complex_names___get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__get__");
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":113
*
* def __get__(self):
* return (self._r_name, self._i_name) # <<<<<<<<<<<<<<
*
* def __set__(self, val):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_r_name);
PyTuple_SET_ITEM(__pyx_t_1, 0, ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_r_name);
__Pyx_GIVEREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_r_name);
__Pyx_INCREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_i_name);
PyTuple_SET_ITEM(__pyx_t_1, 1, ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_i_name);
__Pyx_GIVEREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_i_name);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("h5py.h5.H5PYConfig.complex_names.__get__");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":115
* return (self._r_name, self._i_name)
*
* def __set__(self, val): # <<<<<<<<<<<<<<
* try:
* r = str(val[0])
*/
static int __pyx_pf_4h5py_2h5_10H5PYConfig_13complex_names___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_val); /*proto*/
static int __pyx_pf_4h5py_2h5_10H5PYConfig_13complex_names___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_val) {
PyObject *__pyx_v_r;
PyObject *__pyx_v_i;
int __pyx_r;
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
int __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("__set__");
__Pyx_INCREF((PyObject *)__pyx_v_self);
__Pyx_INCREF(__pyx_v_val);
__pyx_v_r = Py_None; __Pyx_INCREF(Py_None);
__pyx_v_i = Py_None; __Pyx_INCREF(Py_None);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":116
*
* def __set__(self, val):
* try: # <<<<<<<<<<<<<<
* r = str(val[0])
* i = str(val[1])
*/
{
PyObject *__pyx_save_exc_type, *__pyx_save_exc_value, *__pyx_save_exc_tb;
__Pyx_ExceptionSave(&__pyx_save_exc_type, &__pyx_save_exc_value, &__pyx_save_exc_tb);
__Pyx_XGOTREF(__pyx_save_exc_type);
__Pyx_XGOTREF(__pyx_save_exc_value);
__Pyx_XGOTREF(__pyx_save_exc_tb);
/*try:*/ {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":117
* def __set__(self, val):
* try:
* r = str(val[0]) # <<<<<<<<<<<<<<
* i = str(val[1])
* except Exception:
*/
__pyx_t_1 = __Pyx_GetItemInt(__pyx_v_val, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L5_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 = PyObject_Call(((PyObject *)((PyObject*)&PyString_Type)), __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_v_r);
__pyx_v_r = __pyx_t_1;
__pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":118
* try:
* r = str(val[0])
* i = str(val[1]) # <<<<<<<<<<<<<<
* except Exception:
* raise TypeError("complex_names must be a 2-tuple of strings (real, img)")
*/
__pyx_t_1 = __Pyx_GetItemInt(__pyx_v_val, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L5_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 = PyObject_Call(((PyObject *)((PyObject*)&PyString_Type)), __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_v_i);
__pyx_v_i = __pyx_t_1;
__pyx_t_1 = 0;
}
__Pyx_XDECREF(__pyx_save_exc_type); __pyx_save_exc_type = 0;
__Pyx_XDECREF(__pyx_save_exc_value); __pyx_save_exc_value = 0;
__Pyx_XDECREF(__pyx_save_exc_tb); __pyx_save_exc_tb = 0;
goto __pyx_L12_try_end;
__pyx_L5_error:;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":119
* r = str(val[0])
* i = str(val[1])
* except Exception: # <<<<<<<<<<<<<<
* raise TypeError("complex_names must be a 2-tuple of strings (real, img)")
* self._r_name = r
*/
__pyx_t_3 = PyErr_ExceptionMatches(__pyx_builtin_Exception);
if (__pyx_t_3) {
__Pyx_AddTraceback("h5py.h5.H5PYConfig.complex_names.__set__");
if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_2, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_t_4);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":120
* i = str(val[1])
* except Exception:
* raise TypeError("complex_names must be a 2-tuple of strings (real, img)") # <<<<<<<<<<<<<<
* self._r_name = r
* self._i_name = i
*/
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_kp_s_6));
PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_kp_s_6));
__Pyx_GIVEREF(((PyObject *)__pyx_kp_s_6));
__pyx_t_6 = PyObject_Call(__pyx_builtin_TypeError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_Raise(__pyx_t_6, 0, 0);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
goto __pyx_L6_exception_handled;
}
__pyx_L7_except_error:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
goto __pyx_L1_error;
__pyx_L6_exception_handled:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
__pyx_L12_try_end:;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":121
* except Exception:
* raise TypeError("complex_names must be a 2-tuple of strings (real, img)")
* self._r_name = r # <<<<<<<<<<<<<<
* self._i_name = i
*
*/
__Pyx_INCREF(__pyx_v_r);
__Pyx_GIVEREF(__pyx_v_r);
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_r_name);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_r_name);
((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_r_name = __pyx_v_r;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":122
* raise TypeError("complex_names must be a 2-tuple of strings (real, img)")
* self._r_name = r
* self._i_name = i # <<<<<<<<<<<<<<
*
* property bool_names:
*/
__Pyx_INCREF(__pyx_v_i);
__Pyx_GIVEREF(__pyx_v_i);
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_i_name);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_i_name);
((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_i_name = __pyx_v_i;
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_AddTraceback("h5py.h5.H5PYConfig.complex_names.__set__");
__pyx_r = -1;
__pyx_L0:;
__Pyx_DECREF(__pyx_v_r);
__Pyx_DECREF(__pyx_v_i);
__Pyx_DECREF((PyObject *)__pyx_v_self);
__Pyx_DECREF(__pyx_v_val);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":129
* Format is (false_name, real_name), defaulting to ('FALSE', 'TRUE').
* """
* def __get__(self): # <<<<<<<<<<<<<<
* return (self._f_name, self._t_name)
*
*/
static PyObject *__pyx_pf_4h5py_2h5_10H5PYConfig_10bool_names___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pf_4h5py_2h5_10H5PYConfig_10bool_names___get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__get__");
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":130
* """
* def __get__(self):
* return (self._f_name, self._t_name) # <<<<<<<<<<<<<<
*
* def __set__(self, val):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_f_name);
PyTuple_SET_ITEM(__pyx_t_1, 0, ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_f_name);
__Pyx_GIVEREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_f_name);
__Pyx_INCREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_t_name);
PyTuple_SET_ITEM(__pyx_t_1, 1, ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_t_name);
__Pyx_GIVEREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_t_name);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("h5py.h5.H5PYConfig.bool_names.__get__");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":132
* return (self._f_name, self._t_name)
*
* def __set__(self, val): # <<<<<<<<<<<<<<
* try:
* f = str(val[0])
*/
static int __pyx_pf_4h5py_2h5_10H5PYConfig_10bool_names___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_val); /*proto*/
static int __pyx_pf_4h5py_2h5_10H5PYConfig_10bool_names___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_val) {
PyObject *__pyx_v_f;
PyObject *__pyx_v_t;
int __pyx_r;
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
int __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("__set__");
__Pyx_INCREF((PyObject *)__pyx_v_self);
__Pyx_INCREF(__pyx_v_val);
__pyx_v_f = Py_None; __Pyx_INCREF(Py_None);
__pyx_v_t = Py_None; __Pyx_INCREF(Py_None);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":133
*
* def __set__(self, val):
* try: # <<<<<<<<<<<<<<
* f = str(val[0])
* t = str(val[1])
*/
{
PyObject *__pyx_save_exc_type, *__pyx_save_exc_value, *__pyx_save_exc_tb;
__Pyx_ExceptionSave(&__pyx_save_exc_type, &__pyx_save_exc_value, &__pyx_save_exc_tb);
__Pyx_XGOTREF(__pyx_save_exc_type);
__Pyx_XGOTREF(__pyx_save_exc_value);
__Pyx_XGOTREF(__pyx_save_exc_tb);
/*try:*/ {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":134
* def __set__(self, val):
* try:
* f = str(val[0]) # <<<<<<<<<<<<<<
* t = str(val[1])
* except Exception:
*/
__pyx_t_1 = __Pyx_GetItemInt(__pyx_v_val, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L5_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 = PyObject_Call(((PyObject *)((PyObject*)&PyString_Type)), __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_v_f);
__pyx_v_f = __pyx_t_1;
__pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":135
* try:
* f = str(val[0])
* t = str(val[1]) # <<<<<<<<<<<<<<
* except Exception:
* raise TypeError("bool_names must be a 2-tuple of strings (false, true)")
*/
__pyx_t_1 = __Pyx_GetItemInt(__pyx_v_val, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L5_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 = PyObject_Call(((PyObject *)((PyObject*)&PyString_Type)), __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_v_t);
__pyx_v_t = __pyx_t_1;
__pyx_t_1 = 0;
}
__Pyx_XDECREF(__pyx_save_exc_type); __pyx_save_exc_type = 0;
__Pyx_XDECREF(__pyx_save_exc_value); __pyx_save_exc_value = 0;
__Pyx_XDECREF(__pyx_save_exc_tb); __pyx_save_exc_tb = 0;
goto __pyx_L12_try_end;
__pyx_L5_error:;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":136
* f = str(val[0])
* t = str(val[1])
* except Exception: # <<<<<<<<<<<<<<
* raise TypeError("bool_names must be a 2-tuple of strings (false, true)")
* self._f_name = f
*/
__pyx_t_3 = PyErr_ExceptionMatches(__pyx_builtin_Exception);
if (__pyx_t_3) {
__Pyx_AddTraceback("h5py.h5.H5PYConfig.bool_names.__set__");
if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_2, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_t_4);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":137
* t = str(val[1])
* except Exception:
* raise TypeError("bool_names must be a 2-tuple of strings (false, true)") # <<<<<<<<<<<<<<
* self._f_name = f
* self._t_name = t
*/
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_kp_s_7));
PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_kp_s_7));
__Pyx_GIVEREF(((PyObject *)__pyx_kp_s_7));
__pyx_t_6 = PyObject_Call(__pyx_builtin_TypeError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_Raise(__pyx_t_6, 0, 0);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
goto __pyx_L6_exception_handled;
}
__pyx_L7_except_error:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
goto __pyx_L1_error;
__pyx_L6_exception_handled:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
__pyx_L12_try_end:;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":138
* except Exception:
* raise TypeError("bool_names must be a 2-tuple of strings (false, true)")
* self._f_name = f # <<<<<<<<<<<<<<
* self._t_name = t
*
*/
__Pyx_INCREF(__pyx_v_f);
__Pyx_GIVEREF(__pyx_v_f);
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_f_name);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_f_name);
((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_f_name = __pyx_v_f;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":139
* raise TypeError("bool_names must be a 2-tuple of strings (false, true)")
* self._f_name = f
* self._t_name = t # <<<<<<<<<<<<<<
*
* def __repr__(self):
*/
__Pyx_INCREF(__pyx_v_t);
__Pyx_GIVEREF(__pyx_v_t);
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_t_name);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_t_name);
((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->_t_name = __pyx_v_t;
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_AddTraceback("h5py.h5.H5PYConfig.bool_names.__set__");
__pyx_r = -1;
__pyx_L0:;
__Pyx_DECREF(__pyx_v_f);
__Pyx_DECREF(__pyx_v_t);
__Pyx_DECREF((PyObject *)__pyx_v_self);
__Pyx_DECREF(__pyx_v_val);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":141
* self._t_name = t
*
* def __repr__(self): # <<<<<<<<<<<<<<
* rstr = \
* """\
*/
static PyObject *__pyx_pf_4h5py_2h5_10H5PYConfig___repr__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pf_4h5py_2h5_10H5PYConfig___repr__(PyObject *__pyx_v_self) {
PyObject *__pyx_v_rstr;
PyObject *__pyx_r = NULL;
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("__repr__");
__pyx_v_rstr = Py_None; __Pyx_INCREF(Py_None);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":143
* def __repr__(self):
* rstr = \
* """\ # <<<<<<<<<<<<<<
* Summary of h5py config
* ======================
*/
__Pyx_INCREF(((PyObject *)__pyx_kp_s_8));
__Pyx_DECREF(__pyx_v_rstr);
__pyx_v_rstr = ((PyObject *)__pyx_kp_s_8);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":152
* Complex names: %s"""
*
* rstr %= ("%d.%d.%d" % get_libversion(), bool(self.API_16), # <<<<<<<<<<<<<<
* bool(self.API_18), bool(self.DEBUG),
* self.complex_names)
*/
__pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__get_libversion); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_9), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_16);
PyTuple_SET_ITEM(__pyx_t_2, 0, ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_16);
__Pyx_GIVEREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_16);
__pyx_t_3 = PyObject_Call(((PyObject *)((PyObject*)&PyBool_Type)), __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":153
*
* rstr %= ("%d.%d.%d" % get_libversion(), bool(self.API_16),
* bool(self.API_18), bool(self.DEBUG), # <<<<<<<<<<<<<<
* self.complex_names)
* return rstr
*/
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_18);
PyTuple_SET_ITEM(__pyx_t_2, 0, ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_18);
__Pyx_GIVEREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->API_18);
__pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)&PyBool_Type)), __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->DEBUG);
PyTuple_SET_ITEM(__pyx_t_2, 0, ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->DEBUG);
__Pyx_GIVEREF(((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_v_self)->DEBUG);
__pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)&PyBool_Type)), __pyx_t_2, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":154
* rstr %= ("%d.%d.%d" % get_libversion(), bool(self.API_16),
* bool(self.API_18), bool(self.DEBUG),
* self.complex_names) # <<<<<<<<<<<<<<
* return rstr
*
*/
__pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__complex_names); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_6 = PyTuple_New(5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_6, 3, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_6, 4, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__pyx_t_1 = 0;
__pyx_t_3 = 0;
__pyx_t_4 = 0;
__pyx_t_5 = 0;
__pyx_t_2 = 0;
__pyx_t_2 = PyNumber_InPlaceRemainder(__pyx_v_rstr, __pyx_t_6); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":152
* Complex names: %s"""
*
* rstr %= ("%d.%d.%d" % get_libversion(), bool(self.API_16), # <<<<<<<<<<<<<<
* bool(self.API_18), bool(self.DEBUG),
* self.complex_names)
*/
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_v_rstr);
__pyx_v_rstr = __pyx_t_2;
__pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":155
* bool(self.API_18), bool(self.DEBUG),
* self.complex_names)
* return rstr # <<<<<<<<<<<<<<
*
* cdef H5PYConfig cfg = H5PYConfig()
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_rstr);
__pyx_r = __pyx_v_rstr;
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_AddTraceback("h5py.h5.H5PYConfig.__repr__");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_DECREF(__pyx_v_rstr);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":159
* cdef H5PYConfig cfg = H5PYConfig()
*
* cpdef H5PYConfig get_config(): # <<<<<<<<<<<<<<
* """() => H5PYConfig
*
*/
static PyObject *__pyx_pf_4h5py_2h5_get_config(PyObject *__pyx_self, PyObject *unused); /*proto*/
static struct __pyx_obj_4h5py_2h5_H5PYConfig *__pyx_f_4h5py_2h5_get_config(int __pyx_skip_dispatch) {
struct __pyx_obj_4h5py_2h5_H5PYConfig *__pyx_r = NULL;
__Pyx_RefNannySetupContext("get_config");
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":164
* Get a reference to the global library configuration object.
* """
* return cfg # <<<<<<<<<<<<<<
*
* # === Public C API for object identifiers =====================================
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
__Pyx_INCREF(((PyObject *)__pyx_v_4h5py_2h5_cfg));
__pyx_r = __pyx_v_4h5py_2h5_cfg;
goto __pyx_L0;
__pyx_r = ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)Py_None); __Pyx_INCREF(Py_None);
__pyx_L0:;
__Pyx_XGIVEREF((PyObject *)__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":159
* cdef H5PYConfig cfg = H5PYConfig()
*
* cpdef H5PYConfig get_config(): # <<<<<<<<<<<<<<
* """() => H5PYConfig
*
*/
static PyObject *__pyx_pf_4h5py_2h5_get_config(PyObject *__pyx_self, PyObject *unused); /*proto*/
static char __pyx_doc_4h5py_2h5_get_config[] = "() => H5PYConfig\n\n Get a reference to the global library configuration object.\n ";
static PyObject *__pyx_pf_4h5py_2h5_get_config(PyObject *__pyx_self, PyObject *unused) {
PyObject *__pyx_r = NULL;
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("get_config");
__pyx_self = __pyx_self;
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = ((PyObject *)__pyx_f_4h5py_2h5_get_config(0)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("h5py.h5.get_config");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":192
* """ Indicates whether or not this identifier points to an HDF5 object.
* """
* def __get__(self): # <<<<<<<<<<<<<<
* return H5Iget_type(self.id) != H5I_BADID
*
*/
static PyObject *__pyx_pf_4h5py_2h5_8ObjectID_6_valid___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pf_4h5py_2h5_8ObjectID_6_valid___get__(PyObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
H5I_type_t __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__");
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":193
* """
* def __get__(self):
* return H5Iget_type(self.id) != H5I_BADID # <<<<<<<<<<<<<<
*
*
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = H5Iget_type(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->id); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_t_2 = __Pyx_PyBool_FromLong((__pyx_t_1 != H5I_BADID)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("h5py.h5.ObjectID._valid.__get__");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":196
*
*
* def __nonzero__(self): # <<<<<<<<<<<<<<
* """ Truth value for object identifiers (like _valid) """
* return self._valid
*/
static int __pyx_pf_4h5py_2h5_8ObjectID___nonzero__(PyObject *__pyx_v_self); /*proto*/
static char __pyx_doc_4h5py_2h5_8ObjectID___nonzero__[] = " Truth value for object identifiers (like _valid) ";
static int __pyx_pf_4h5py_2h5_8ObjectID___nonzero__(PyObject *__pyx_v_self) {
int __pyx_r;
PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
__Pyx_RefNannySetupContext("__nonzero__");
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":198
* def __nonzero__(self):
* """ Truth value for object identifiers (like _valid) """
* return self._valid # <<<<<<<<<<<<<<
*
* def __cinit__(self, hid_t id_):
*/
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___valid); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
goto __pyx_L0;
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_AddTraceback("h5py.h5.ObjectID.__nonzero__");
__pyx_r = -1;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":200
* return self._valid
*
* def __cinit__(self, hid_t id_): # <<<<<<<<<<<<<<
* """ Object init; simply records the given ID. """
* self._locked = 0
*/
static int __pyx_pf_4h5py_2h5_8ObjectID___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static char __pyx_doc_4h5py_2h5_8ObjectID___cinit__[] = " Object init; simply records the given ID. ";
static int __pyx_pf_4h5py_2h5_8ObjectID___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
hid_t __pyx_v_id_;
int __pyx_r;
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__id_,0};
__Pyx_RefNannySetupContext("__cinit__");
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
PyObject* values[1] = {0};
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 0:
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__id_);
if (likely(values[0])) kw_args--;
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__cinit__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
}
__pyx_v_id_ = __Pyx_PyInt_from_py_hid_t(values[0]); if (unlikely((__pyx_v_id_ == (hid_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
} else {
__pyx_v_id_ = __Pyx_PyInt_from_py_hid_t(PyTuple_GET_ITEM(__pyx_args, 0)); if (unlikely((__pyx_v_id_ == (hid_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
__Pyx_RaiseArgtupleInvalid("__cinit__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
__pyx_L3_error:;
__Pyx_AddTraceback("h5py.h5.ObjectID.__cinit__");
return -1;
__pyx_L4_argument_unpacking_done:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":202
* def __cinit__(self, hid_t id_):
* """ Object init; simply records the given ID. """
* self._locked = 0 # <<<<<<<<<<<<<<
* self.id = id_
*
*/
((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->_locked = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":203
* """ Object init; simply records the given ID. """
* self._locked = 0
* self.id = id_ # <<<<<<<<<<<<<<
*
* def __dealloc__(self):
*/
((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->id = __pyx_v_id_;
__pyx_r = 0;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":205
* self.id = id_
*
* def __dealloc__(self): # <<<<<<<<<<<<<<
* """ Automatically decrefs the ID, if it's valid. """
*
*/
static void __pyx_pf_4h5py_2h5_8ObjectID___dealloc__(PyObject *__pyx_v_self); /*proto*/
static char __pyx_doc_4h5py_2h5_8ObjectID___dealloc__[] = " Automatically decrefs the ID, if it's valid. ";
static void __pyx_pf_4h5py_2h5_8ObjectID___dealloc__(PyObject *__pyx_v_self) {
int __pyx_t_1;
H5I_type_t __pyx_t_2;
int __pyx_t_3;
int __pyx_t_4;
int __pyx_t_5;
__Pyx_RefNannySetupContext("__dealloc__");
__Pyx_INCREF((PyObject *)__pyx_v_self);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":208
* """ Automatically decrefs the ID, if it's valid. """
*
* if (not self._locked) and H5Iget_type(self.id) != H5I_BADID: # <<<<<<<<<<<<<<
* H5Idec_ref(self.id)
*
*/
__pyx_t_1 = (!((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->_locked);
if (__pyx_t_1) {
__pyx_t_2 = H5Iget_type(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->id); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_t_3 = (__pyx_t_2 != H5I_BADID);
__pyx_t_4 = __pyx_t_3;
} else {
__pyx_t_4 = __pyx_t_1;
}
if (__pyx_t_4) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":209
*
* if (not self._locked) and H5Iget_type(self.id) != H5I_BADID:
* H5Idec_ref(self.id) # <<<<<<<<<<<<<<
*
*
*/
__pyx_t_5 = H5Idec_ref(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->id); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
goto __pyx_L5;
}
__pyx_L5:;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_AddTraceback("h5py.h5.ObjectID.__dealloc__");
__pyx_L0:;
__Pyx_DECREF((PyObject *)__pyx_v_self);
__Pyx_RefNannyFinishContext();
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":212
*
*
* def __copy__(self): # <<<<<<<<<<<<<<
* """ Create another object wrapper which points to the same id.
*
*/
static PyObject *__pyx_pf_4h5py_2h5_8ObjectID___copy__(PyObject *__pyx_v_self, PyObject *unused); /*proto*/
static char __pyx_doc_4h5py_2h5_8ObjectID___copy__[] = " Create another object wrapper which points to the same id. \n\n WARNING: Locks (i.e. datatype lock() methods) do NOT work correctly\n across copies.\n ";
static PyObject *__pyx_pf_4h5py_2h5_8ObjectID___copy__(PyObject *__pyx_v_self, PyObject *unused) {
struct __pyx_obj_4h5py_2h5_ObjectID *__pyx_v_copy;
PyObject *__pyx_r = NULL;
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
int __pyx_t_4;
int __pyx_t_5;
int __pyx_t_6;
int __pyx_t_7;
__Pyx_RefNannySetupContext("__copy__");
__Pyx_INCREF((PyObject *)__pyx_v_self);
__pyx_v_copy = ((struct __pyx_obj_4h5py_2h5_ObjectID *)Py_None); __Pyx_INCREF(Py_None);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":219
* """
* cdef ObjectID copy
* copy = type(self)(self.id) # <<<<<<<<<<<<<<
* if self._valid and not self._locked:
* H5Iinc_ref(self.id)
*/
__pyx_t_1 = ((PyObject *)__Pyx_Type(__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
__pyx_t_2 = __Pyx_PyInt_to_py_hid_t(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->id); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__pyx_t_2 = 0;
__pyx_t_2 = PyObject_Call(((PyObject *)__pyx_t_1), __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_4h5py_2h5_ObjectID))))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(((PyObject *)__pyx_v_copy));
__pyx_v_copy = ((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_t_2);
__pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":220
* cdef ObjectID copy
* copy = type(self)(self.id)
* if self._valid and not self._locked: # <<<<<<<<<<<<<<
* H5Iinc_ref(self.id)
* copy._locked = self._locked
*/
__pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___valid); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (__pyx_t_4) {
__pyx_t_5 = (!((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->_locked);
__pyx_t_6 = __pyx_t_5;
} else {
__pyx_t_6 = __pyx_t_4;
}
if (__pyx_t_6) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":221
* copy = type(self)(self.id)
* if self._valid and not self._locked:
* H5Iinc_ref(self.id) # <<<<<<<<<<<<<<
* copy._locked = self._locked
* return copy
*/
__pyx_t_7 = H5Iinc_ref(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->id); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
goto __pyx_L5;
}
__pyx_L5:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":222
* if self._valid and not self._locked:
* H5Iinc_ref(self.id)
* copy._locked = self._locked # <<<<<<<<<<<<<<
* return copy
*
*/
__pyx_v_copy->_locked = ((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->_locked;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":223
* H5Iinc_ref(self.id)
* copy._locked = self._locked
* return copy # <<<<<<<<<<<<<<
*
* def __richcmp__(self, object other, int how):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_copy));
__pyx_r = ((PyObject *)__pyx_v_copy);
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_AddTraceback("h5py.h5.ObjectID.__copy__");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_DECREF((PyObject *)__pyx_v_copy);
__Pyx_DECREF((PyObject *)__pyx_v_self);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":225
* return copy
*
* def __richcmp__(self, object other, int how): # <<<<<<<<<<<<<<
* """ Basic comparison for HDF5 objects. Implements only equality:
*
*/
static PyObject *__pyx_pf_4h5py_2h5_8ObjectID___richcmp__(PyObject *__pyx_v_self, PyObject *__pyx_v_other, int __pyx_v_how); /*proto*/
static char __pyx_doc_4h5py_2h5_8ObjectID___richcmp__[] = " Basic comparison for HDF5 objects. Implements only equality:\n\n 1. Mismatched types always NOT EQUAL\n 2. Try to compare object hashes\n 3. If unhashable, compare identifiers\n ";
static PyObject *__pyx_pf_4h5py_2h5_8ObjectID___richcmp__(PyObject *__pyx_v_self, PyObject *__pyx_v_other, int __pyx_v_how) {
int __pyx_v_truthval;
PyObject *__pyx_r = NULL;
int __pyx_t_1;
int __pyx_t_2;
int __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
long __pyx_t_5;
long __pyx_t_6;
int __pyx_t_7;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
PyObject *__pyx_t_11 = NULL;
PyObject *__pyx_t_12 = NULL;
__Pyx_RefNannySetupContext("__richcmp__");
__Pyx_INCREF(__pyx_v_self);
__Pyx_INCREF(__pyx_v_other);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":232
* 3. If unhashable, compare identifiers
* """
* cdef bint truthval = 0 # <<<<<<<<<<<<<<
*
* if how != 2 and how != 3:
*/
__pyx_v_truthval = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":234
* cdef bint truthval = 0
*
* if how != 2 and how != 3: # <<<<<<<<<<<<<<
* return NotImplemented
*
*/
__pyx_t_1 = (__pyx_v_how != 2);
if (__pyx_t_1) {
__pyx_t_2 = (__pyx_v_how != 3);
__pyx_t_3 = __pyx_t_2;
} else {
__pyx_t_3 = __pyx_t_1;
}
if (__pyx_t_3) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":235
*
* if how != 2 and how != 3:
* return NotImplemented # <<<<<<<<<<<<<<
*
* if isinstance(other, type(self)):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_builtin_NotImplemented);
__pyx_r = __pyx_builtin_NotImplemented;
goto __pyx_L0;
goto __pyx_L5;
}
__pyx_L5:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":237
* return NotImplemented
*
* if isinstance(other, type(self)): # <<<<<<<<<<<<<<
* try:
* truthval = hash(self) == hash(other)
*/
__pyx_t_4 = ((PyObject *)__Pyx_Type(__pyx_v_self)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_4));
__pyx_t_4 = ((PyObject *)__Pyx_Type(__pyx_v_self)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_4));
__pyx_t_3 = PyObject_TypeCheck(__pyx_v_other, ((PyTypeObject *)__pyx_t_4));
__Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0;
if (__pyx_t_3) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":238
*
* if isinstance(other, type(self)):
* try: # <<<<<<<<<<<<<<
* truthval = hash(self) == hash(other)
* except TypeError:
*/
{
PyObject *__pyx_save_exc_type, *__pyx_save_exc_value, *__pyx_save_exc_tb;
__Pyx_ExceptionSave(&__pyx_save_exc_type, &__pyx_save_exc_value, &__pyx_save_exc_tb);
__Pyx_XGOTREF(__pyx_save_exc_type);
__Pyx_XGOTREF(__pyx_save_exc_value);
__Pyx_XGOTREF(__pyx_save_exc_tb);
/*try:*/ {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":239
* if isinstance(other, type(self)):
* try:
* truthval = hash(self) == hash(other) # <<<<<<<<<<<<<<
* except TypeError:
* truthval = self.id == other.id
*/
__pyx_t_5 = PyObject_Hash(__pyx_v_self); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 239; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
__pyx_t_6 = PyObject_Hash(__pyx_v_other); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 239; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
__pyx_v_truthval = (__pyx_t_5 == __pyx_t_6);
}
__Pyx_XDECREF(__pyx_save_exc_type); __pyx_save_exc_type = 0;
__Pyx_XDECREF(__pyx_save_exc_value); __pyx_save_exc_value = 0;
__Pyx_XDECREF(__pyx_save_exc_tb); __pyx_save_exc_tb = 0;
goto __pyx_L14_try_end;
__pyx_L7_error:;
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":240
* try:
* truthval = hash(self) == hash(other)
* except TypeError: # <<<<<<<<<<<<<<
* truthval = self.id == other.id
*
*/
__pyx_t_7 = PyErr_ExceptionMatches(__pyx_builtin_TypeError);
if (__pyx_t_7) {
__Pyx_AddTraceback("h5py.h5.ObjectID.__richcmp__");
if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_8, &__pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 240; __pyx_clineno = __LINE__; goto __pyx_L9_except_error;}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_9);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":241
* truthval = hash(self) == hash(other)
* except TypeError:
* truthval = self.id == other.id # <<<<<<<<<<<<<<
*
* if how == 2:
*/
__pyx_t_10 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__id); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 241; __pyx_clineno = __LINE__; goto __pyx_L9_except_error;}
__Pyx_GOTREF(__pyx_t_10);
__pyx_t_11 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__id); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 241; __pyx_clineno = __LINE__; goto __pyx_L9_except_error;}
__Pyx_GOTREF(__pyx_t_11);
__pyx_t_12 = PyObject_RichCompare(__pyx_t_10, __pyx_t_11, Py_EQ); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 241; __pyx_clineno = __LINE__; goto __pyx_L9_except_error;}
__Pyx_GOTREF(__pyx_t_12);
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_12); if (unlikely((__pyx_t_3 == (int)-1))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 241; __pyx_clineno = __LINE__; goto __pyx_L9_except_error;}
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
__pyx_v_truthval = __pyx_t_3;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
goto __pyx_L8_exception_handled;
}
__pyx_L9_except_error:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
goto __pyx_L1_error;
__pyx_L8_exception_handled:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
__pyx_L14_try_end:;
}
goto __pyx_L6;
}
__pyx_L6:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":243
* truthval = self.id == other.id
*
* if how == 2: # <<<<<<<<<<<<<<
* return truthval
* return not truthval
*/
__pyx_t_3 = (__pyx_v_how == 2);
if (__pyx_t_3) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":244
*
* if how == 2:
* return truthval # <<<<<<<<<<<<<<
* return not truthval
*
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_9 = __Pyx_PyBool_FromLong(__pyx_v_truthval); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_9);
__pyx_r = __pyx_t_9;
__pyx_t_9 = 0;
goto __pyx_L0;
goto __pyx_L17;
}
__pyx_L17:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":245
* if how == 2:
* return truthval
* return not truthval # <<<<<<<<<<<<<<
*
* def __hash__(self):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_9 = __Pyx_PyBool_FromLong((!__pyx_v_truthval)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_9);
__pyx_r = __pyx_t_9;
__pyx_t_9 = 0;
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_10);
__Pyx_XDECREF(__pyx_t_11);
__Pyx_XDECREF(__pyx_t_12);
__Pyx_AddTraceback("h5py.h5.ObjectID.__richcmp__");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_DECREF(__pyx_v_self);
__Pyx_DECREF(__pyx_v_other);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":247
* return not truthval
*
* def __hash__(self): # <<<<<<<<<<<<<<
* """ Default hash is computed from the object header, which requires
* a file-resident object. TypeError if this can't be done.
*/
static long __pyx_pf_4h5py_2h5_8ObjectID___hash__(PyObject *__pyx_v_self); /*proto*/
static char __pyx_doc_4h5py_2h5_8ObjectID___hash__[] = " Default hash is computed from the object header, which requires\n a file-resident object. TypeError if this can't be done.\n ";
static long __pyx_pf_4h5py_2h5_8ObjectID___hash__(PyObject *__pyx_v_self) {
H5G_stat_t __pyx_v_stat;
long __pyx_r;
int __pyx_t_1;
herr_t __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;
long __pyx_t_8;
int __pyx_t_9;
__Pyx_RefNannySetupContext("__hash__");
__Pyx_INCREF((PyObject *)__pyx_v_self);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":253
* cdef H5G_stat_t stat
*
* if self._hash is None: # <<<<<<<<<<<<<<
* try:
* H5Gget_objinfo(self.id, '.', 0, &stat)
*/
__pyx_t_1 = (((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->_hash == Py_None);
if (__pyx_t_1) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":254
*
* if self._hash is None:
* try: # <<<<<<<<<<<<<<
* H5Gget_objinfo(self.id, '.', 0, &stat)
* self._hash = hash((stat.fileno[0], stat.fileno[1], stat.objno[0], stat.objno[1]))
*/
{
PyObject *__pyx_save_exc_type, *__pyx_save_exc_value, *__pyx_save_exc_tb;
__Pyx_ExceptionSave(&__pyx_save_exc_type, &__pyx_save_exc_value, &__pyx_save_exc_tb);
__Pyx_XGOTREF(__pyx_save_exc_type);
__Pyx_XGOTREF(__pyx_save_exc_value);
__Pyx_XGOTREF(__pyx_save_exc_tb);
/*try:*/ {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":255
* if self._hash is None:
* try:
* H5Gget_objinfo(self.id, '.', 0, &stat) # <<<<<<<<<<<<<<
* self._hash = hash((stat.fileno[0], stat.fileno[1], stat.objno[0], stat.objno[1]))
* except Exception:
*/
__pyx_t_2 = H5Gget_objinfo(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->id, __pyx_k_10, 0, (&__pyx_v_stat)); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":256
* try:
* H5Gget_objinfo(self.id, '.', 0, &stat)
* self._hash = hash((stat.fileno[0], stat.fileno[1], stat.objno[0], stat.objno[1])) # <<<<<<<<<<<<<<
* except Exception:
* raise TypeError("Objects of class %s cannot be hashed" % self.__class__.__name__)
*/
__pyx_t_3 = PyLong_FromUnsignedLong((__pyx_v_stat.fileno[0])); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = PyLong_FromUnsignedLong((__pyx_v_stat.fileno[1])); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PyLong_FromUnsignedLong((__pyx_v_stat.objno[0])); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = PyLong_FromUnsignedLong((__pyx_v_stat.objno[1])); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = PyTuple_New(4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
__Pyx_GOTREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_7, 3, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_6);
__pyx_t_3 = 0;
__pyx_t_4 = 0;
__pyx_t_5 = 0;
__pyx_t_6 = 0;
__pyx_t_8 = PyObject_Hash(__pyx_t_7); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = PyInt_FromLong(__pyx_t_8); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_7);
__Pyx_GOTREF(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->_hash);
__Pyx_DECREF(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->_hash);
((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->_hash = __pyx_t_7;
__pyx_t_7 = 0;
}
__Pyx_XDECREF(__pyx_save_exc_type); __pyx_save_exc_type = 0;
__Pyx_XDECREF(__pyx_save_exc_value); __pyx_save_exc_value = 0;
__Pyx_XDECREF(__pyx_save_exc_tb); __pyx_save_exc_tb = 0;
goto __pyx_L13_try_end;
__pyx_L6_error:;
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":257
* H5Gget_objinfo(self.id, '.', 0, &stat)
* self._hash = hash((stat.fileno[0], stat.fileno[1], stat.objno[0], stat.objno[1]))
* except Exception: # <<<<<<<<<<<<<<
* raise TypeError("Objects of class %s cannot be hashed" % self.__class__.__name__)
*
*/
__pyx_t_9 = PyErr_ExceptionMatches(__pyx_builtin_Exception);
if (__pyx_t_9) {
__Pyx_AddTraceback("h5py.h5.ObjectID.__hash__");
if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_6, &__pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_5);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":258
* self._hash = hash((stat.fileno[0], stat.fileno[1], stat.objno[0], stat.objno[1]))
* except Exception:
* raise TypeError("Objects of class %s cannot be hashed" % self.__class__.__name__) # <<<<<<<<<<<<<<
*
* return self._hash
*/
__pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s____name__); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_11), __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
__Pyx_GOTREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
__pyx_t_4 = 0;
__pyx_t_4 = PyObject_Call(__pyx_builtin_TypeError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_Raise(__pyx_t_4, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L7_exception_handled;
}
__pyx_L8_except_error:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
goto __pyx_L1_error;
__pyx_L7_exception_handled:;
__Pyx_XGIVEREF(__pyx_save_exc_type);
__Pyx_XGIVEREF(__pyx_save_exc_value);
__Pyx_XGIVEREF(__pyx_save_exc_tb);
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
__pyx_L13_try_end:;
}
goto __pyx_L5;
}
__pyx_L5:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":260
* raise TypeError("Objects of class %s cannot be hashed" % self.__class__.__name__)
*
* return self._hash # <<<<<<<<<<<<<<
*
* def __repr__(self):
*/
__pyx_t_8 = __Pyx_PyInt_AsLong(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->_hash); if (unlikely((__pyx_t_8 == (long)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = __pyx_t_8;
goto __pyx_L0;
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_AddTraceback("h5py.h5.ObjectID.__hash__");
__pyx_r = -1;
__pyx_L0:;
__Pyx_DECREF((PyObject *)__pyx_v_self);
if (unlikely(__pyx_r == -1) && !PyErr_Occurred()) __pyx_r = -2;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":262
* return self._hash
*
* def __repr__(self): # <<<<<<<<<<<<<<
*
* ref = str(H5Iget_ref(self.id)) if self._valid else "X"
*/
static PyObject *__pyx_pf_4h5py_2h5_8ObjectID___repr__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_pf_4h5py_2h5_8ObjectID___repr__(PyObject *__pyx_v_self) {
PyObject *__pyx_v_ref;
PyObject *__pyx_v_lck;
PyObject *__pyx_r = NULL;
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
int __pyx_t_3;
int __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("__repr__");
__pyx_v_ref = Py_None; __Pyx_INCREF(Py_None);
__pyx_v_lck = Py_None; __Pyx_INCREF(Py_None);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":264
* def __repr__(self):
*
* ref = str(H5Iget_ref(self.id)) if self._valid else "X" # <<<<<<<<<<<<<<
* lck = "L" if self._locked else "U"
* return "<%s [%s] (%s) %d>" % (self.__class__.__name__, ref, lck, self.id)
*/
__pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___valid); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (__pyx_t_3) {
__pyx_t_4 = H5Iget_ref(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->id); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_t_2 = PyInt_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__pyx_t_2 = 0;
__pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)&PyString_Type)), __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_1 = __pyx_t_2;
__pyx_t_2 = 0;
} else {
__Pyx_INCREF(((PyObject *)__pyx_n_s__X));
__pyx_t_1 = __pyx_n_s__X;
}
__Pyx_DECREF(__pyx_v_ref);
__pyx_v_ref = __pyx_t_1;
__pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":265
*
* ref = str(H5Iget_ref(self.id)) if self._valid else "X"
* lck = "L" if self._locked else "U" # <<<<<<<<<<<<<<
* return "<%s [%s] (%s) %d>" % (self.__class__.__name__, ref, lck, self.id)
*
*/
if (((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->_locked) {
__Pyx_INCREF(((PyObject *)__pyx_n_s__L));
__pyx_t_1 = __pyx_n_s__L;
} else {
__Pyx_INCREF(((PyObject *)__pyx_n_s__U));
__pyx_t_1 = __pyx_n_s__U;
}
__Pyx_DECREF(__pyx_v_lck);
__pyx_v_lck = ((PyObject *)__pyx_t_1);
__pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":266
* ref = str(H5Iget_ref(self.id)) if self._valid else "X"
* lck = "L" if self._locked else "U"
* return "<%s [%s] (%s) %d>" % (self.__class__.__name__, ref, lck, self.id) # <<<<<<<<<<<<<<
*
*
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 266; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____name__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 266; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = __Pyx_PyInt_to_py_hid_t(((struct __pyx_obj_4h5py_2h5_ObjectID *)__pyx_v_self)->id); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 266; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_5 = PyTuple_New(4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 266; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_INCREF(__pyx_v_ref);
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_ref);
__Pyx_GIVEREF(__pyx_v_ref);
__Pyx_INCREF(__pyx_v_lck);
PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_lck);
__Pyx_GIVEREF(__pyx_v_lck);
PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__pyx_t_2 = 0;
__pyx_t_1 = 0;
__pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_12), __pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 266; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_AddTraceback("h5py.h5.ObjectID.__repr__");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_DECREF(__pyx_v_ref);
__Pyx_DECREF(__pyx_v_lck);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":273
*
*
* def get_libversion(): # <<<<<<<<<<<<<<
* """ () => TUPLE (major, minor, release)
*
*/
static PyObject *__pyx_pf_4h5py_2h5_get_libversion(PyObject *__pyx_self, PyObject *unused); /*proto*/
static char __pyx_doc_4h5py_2h5_get_libversion[] = " () => TUPLE (major, minor, release)\n\n Retrieve the HDF5 library version as a 3-tuple.\n ";
static PyObject *__pyx_pf_4h5py_2h5_get_libversion(PyObject *__pyx_self, PyObject *unused) {
unsigned int __pyx_v_major;
unsigned int __pyx_v_minor;
unsigned int __pyx_v_release;
PyObject *__pyx_r = NULL;
herr_t __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("get_libversion");
__pyx_self = __pyx_self;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":283
* cdef herr_t retval
*
* H5get_libversion(&major, &minor, &release) # <<<<<<<<<<<<<<
*
* return (major, minor, release)
*/
__pyx_t_1 = H5get_libversion((&__pyx_v_major), (&__pyx_v_minor), (&__pyx_v_release)); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":285
* H5get_libversion(&major, &minor, &release)
*
* return (major, minor, release) # <<<<<<<<<<<<<<
*
*
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = PyLong_FromUnsignedLong(__pyx_v_major); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PyLong_FromUnsignedLong(__pyx_v_minor); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = PyLong_FromUnsignedLong(__pyx_v_release); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
__pyx_t_2 = 0;
__pyx_t_3 = 0;
__pyx_t_4 = 0;
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_AddTraceback("h5py.h5.get_libversion");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":288
*
*
* def _close(): # <<<<<<<<<<<<<<
* """ Internal function; do not call unless you want to lose all your data.
*
*/
static PyObject *__pyx_pf_4h5py_2h5__close(PyObject *__pyx_self, PyObject *unused); /*proto*/
static char __pyx_doc_4h5py_2h5__close[] = " Internal function; do not call unless you want to lose all your data.\n\n Proxy for H5close().\n ";
static PyObject *__pyx_pf_4h5py_2h5__close(PyObject *__pyx_self, PyObject *unused) {
PyObject *__pyx_r = NULL;
herr_t __pyx_t_1;
__Pyx_RefNannySetupContext("_close");
__pyx_self = __pyx_self;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":293
* Proxy for H5close().
* """
* H5close() # <<<<<<<<<<<<<<
*
*
*/
__pyx_t_1 = H5close(); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_AddTraceback("h5py.h5._close");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":296
*
*
* def _open(): # <<<<<<<<<<<<<<
* """ Internal function; do not call unless you want to lose all your data.
*
*/
static PyObject *__pyx_pf_4h5py_2h5__open(PyObject *__pyx_self, PyObject *unused); /*proto*/
static char __pyx_doc_4h5py_2h5__open[] = " Internal function; do not call unless you want to lose all your data.\n\n Proxy for H5open().\n ";
static PyObject *__pyx_pf_4h5py_2h5__open(PyObject *__pyx_self, PyObject *unused) {
PyObject *__pyx_r = NULL;
herr_t __pyx_t_1;
__Pyx_RefNannySetupContext("_open");
__pyx_self = __pyx_self;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":301
* Proxy for H5open().
* """
* H5open() # <<<<<<<<<<<<<<
*
*
*/
__pyx_t_1 = H5open(); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_AddTraceback("h5py.h5._open");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":306
* # === Library init ============================================================
*
* def _exithack(): # <<<<<<<<<<<<<<
* """ Internal function; do not call unless you want to lose all your data.
* """
*/
static PyObject *__pyx_pf_4h5py_2h5__exithack(PyObject *__pyx_self, PyObject *unused); /*proto*/
static char __pyx_doc_4h5py_2h5__exithack[] = " Internal function; do not call unless you want to lose all your data.\n ";
static PyObject *__pyx_pf_4h5py_2h5__exithack(PyObject *__pyx_self, PyObject *unused) {
int __pyx_v_count;
int __pyx_v_i;
hid_t *__pyx_v_objs;
PyObject *__pyx_r = NULL;
int __pyx_t_1;
int __pyx_t_2;
H5I_type_t __pyx_t_3;
int __pyx_t_4;
int __pyx_t_5;
int __pyx_t_6;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
__Pyx_RefNannySetupContext("_exithack");
__pyx_self = __pyx_self;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":317
* cdef hid_t *objs
*
* count = H5Fget_obj_count(H5F_OBJ_ALL, H5F_OBJ_ALL) # <<<<<<<<<<<<<<
*
* if count > 0:
*/
__pyx_t_1 = H5Fget_obj_count(H5F_OBJ_ALL, H5F_OBJ_ALL); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_v_count = __pyx_t_1;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":319
* count = H5Fget_obj_count(H5F_OBJ_ALL, H5F_OBJ_ALL)
*
* if count > 0: # <<<<<<<<<<<<<<
* objs = <hid_t*>malloc(sizeof(hid_t)*count)
* try:
*/
__pyx_t_2 = (__pyx_v_count > 0);
if (__pyx_t_2) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":320
*
* if count > 0:
* objs = <hid_t*>malloc(sizeof(hid_t)*count) # <<<<<<<<<<<<<<
* try:
* H5Fget_obj_ids(H5F_OBJ_ALL, H5F_OBJ_ALL, count, objs)
*/
__pyx_v_objs = ((hid_t *)malloc(((sizeof(hid_t)) * __pyx_v_count)));
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":321
* if count > 0:
* objs = <hid_t*>malloc(sizeof(hid_t)*count)
* try: # <<<<<<<<<<<<<<
* H5Fget_obj_ids(H5F_OBJ_ALL, H5F_OBJ_ALL, count, objs)
* for i from 0<=i<count:
*/
/*try:*/ {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":322
* objs = <hid_t*>malloc(sizeof(hid_t)*count)
* try:
* H5Fget_obj_ids(H5F_OBJ_ALL, H5F_OBJ_ALL, count, objs) # <<<<<<<<<<<<<<
* for i from 0<=i<count:
* while H5Iget_type(objs[i]) != H5I_BADID and H5Iget_ref(objs[i]) > 0:
*/
__pyx_t_1 = H5Fget_obj_ids(H5F_OBJ_ALL, H5F_OBJ_ALL, __pyx_v_count, __pyx_v_objs); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L7;}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":323
* try:
* H5Fget_obj_ids(H5F_OBJ_ALL, H5F_OBJ_ALL, count, objs)
* for i from 0<=i<count: # <<<<<<<<<<<<<<
* while H5Iget_type(objs[i]) != H5I_BADID and H5Iget_ref(objs[i]) > 0:
* H5Idec_ref(objs[i])
*/
__pyx_t_1 = __pyx_v_count;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_1; __pyx_v_i++) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":324
* H5Fget_obj_ids(H5F_OBJ_ALL, H5F_OBJ_ALL, count, objs)
* for i from 0<=i<count:
* while H5Iget_type(objs[i]) != H5I_BADID and H5Iget_ref(objs[i]) > 0: # <<<<<<<<<<<<<<
* H5Idec_ref(objs[i])
* finally:
*/
while (1) {
__pyx_t_3 = H5Iget_type((__pyx_v_objs[__pyx_v_i])); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L7;}
__pyx_t_2 = (__pyx_t_3 != H5I_BADID);
if (__pyx_t_2) {
__pyx_t_4 = H5Iget_ref((__pyx_v_objs[__pyx_v_i])); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L7;}
__pyx_t_5 = (__pyx_t_4 > 0);
__pyx_t_6 = __pyx_t_5;
} else {
__pyx_t_6 = __pyx_t_2;
}
if (!__pyx_t_6) break;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":325
* for i from 0<=i<count:
* while H5Iget_type(objs[i]) != H5I_BADID and H5Iget_ref(objs[i]) > 0:
* H5Idec_ref(objs[i]) # <<<<<<<<<<<<<<
* finally:
* free(objs)
*/
__pyx_t_4 = H5Idec_ref((__pyx_v_objs[__pyx_v_i])); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L7;}
}
}
}
/*finally:*/ {
int __pyx_why;
PyObject *__pyx_exc_type, *__pyx_exc_value, *__pyx_exc_tb;
int __pyx_exc_lineno;
__pyx_exc_type = 0; __pyx_exc_value = 0; __pyx_exc_tb = 0; __pyx_exc_lineno = 0;
__pyx_why = 0; goto __pyx_L8;
__pyx_L7: {
__pyx_why = 4;
__Pyx_ErrFetch(&__pyx_exc_type, &__pyx_exc_value, &__pyx_exc_tb);
__pyx_exc_lineno = __pyx_lineno;
goto __pyx_L8;
}
__pyx_L8:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":327
* H5Idec_ref(objs[i])
* finally:
* free(objs) # <<<<<<<<<<<<<<
*
* _conv.unregister_converters()
*/
free(__pyx_v_objs);
switch (__pyx_why) {
case 4: {
__Pyx_ErrRestore(__pyx_exc_type, __pyx_exc_value, __pyx_exc_tb);
__pyx_lineno = __pyx_exc_lineno;
__pyx_exc_type = 0;
__pyx_exc_value = 0;
__pyx_exc_tb = 0;
goto __pyx_L1_error;
}
}
}
goto __pyx_L5;
}
__pyx_L5:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":329
* free(objs)
*
* _conv.unregister_converters() # <<<<<<<<<<<<<<
*
* hdf5_inited = 0
*/
__pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s___conv); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s_13); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_AddTraceback("h5py.h5._exithack");
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":333
* hdf5_inited = 0
*
* cdef int init_hdf5() except -1: # <<<<<<<<<<<<<<
* # Initialize the library and register Python callbacks for exception
* # handling. Safe to call more than once.
*/
static int __pyx_f_4h5py_2h5_init_hdf5(void) {
PyObject *__pyx_v__conv;
int __pyx_r;
PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
int __pyx_t_3;
herr_t __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
int __pyx_t_6;
PyObject *__pyx_t_7 = NULL;
__Pyx_RefNannySetupContext("init_hdf5");
__pyx_v__conv = Py_None; __Pyx_INCREF(Py_None);
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":338
* global hdf5_inited
*
* import _conv # <<<<<<<<<<<<<<
* if not hdf5_inited:
* if H5open() < 0:
*/
__pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s___conv), 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_v__conv);
__pyx_v__conv = __pyx_t_1;
__pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":339
*
* import _conv
* if not hdf5_inited: # <<<<<<<<<<<<<<
* if H5open() < 0:
* raise RuntimeError("Failed to initialize the HDF5 library.")
*/
__pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__hdf5_inited); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_3 = (!__pyx_t_2);
if (__pyx_t_3) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":340
* import _conv
* if not hdf5_inited:
* if H5open() < 0: # <<<<<<<<<<<<<<
* raise RuntimeError("Failed to initialize the HDF5 library.")
* register_thread()
*/
__pyx_t_4 = H5open(); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_t_3 = (__pyx_t_4 < 0);
if (__pyx_t_3) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":341
* if not hdf5_inited:
* if H5open() < 0:
* raise RuntimeError("Failed to initialize the HDF5 library.") # <<<<<<<<<<<<<<
* register_thread()
* if register_lzf() < 0:
*/
__pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_kp_s_14));
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_kp_s_14));
__Pyx_GIVEREF(((PyObject *)__pyx_kp_s_14));
__pyx_t_5 = PyObject_Call(__pyx_builtin_RuntimeError, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_Raise(__pyx_t_5, 0, 0);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
goto __pyx_L4;
}
__pyx_L4:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":342
* if H5open() < 0:
* raise RuntimeError("Failed to initialize the HDF5 library.")
* register_thread() # <<<<<<<<<<<<<<
* if register_lzf() < 0:
* raise RuntimeError("Failed to register LZF filter")
*/
__pyx_t_5 = __pyx_f_4h5py_3h5e_register_thread(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":343
* raise RuntimeError("Failed to initialize the HDF5 library.")
* register_thread()
* if register_lzf() < 0: # <<<<<<<<<<<<<<
* raise RuntimeError("Failed to register LZF filter")
* atexit.register(_exithack)
*/
__pyx_t_6 = register_lzf(); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_t_3 = (__pyx_t_6 < 0);
if (__pyx_t_3) {
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":344
* register_thread()
* if register_lzf() < 0:
* raise RuntimeError("Failed to register LZF filter") # <<<<<<<<<<<<<<
* atexit.register(_exithack)
* #h5py_register_conv()
*/
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_kp_s_15));
PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_kp_s_15));
__Pyx_GIVEREF(((PyObject *)__pyx_kp_s_15));
__pyx_t_1 = PyObject_Call(__pyx_builtin_RuntimeError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_Raise(__pyx_t_1, 0, 0);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
goto __pyx_L5;
}
__pyx_L5:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":345
* if register_lzf() < 0:
* raise RuntimeError("Failed to register LZF filter")
* atexit.register(_exithack) # <<<<<<<<<<<<<<
* #h5py_register_conv()
* _conv.register_converters()
*/
__pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__atexit); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_5 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__register); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s___exithack); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__pyx_t_1 = 0;
__pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":347
* atexit.register(_exithack)
* #h5py_register_conv()
* _conv.register_converters() # <<<<<<<<<<<<<<
* hdf5_inited = 1
*
*/
__pyx_t_1 = PyObject_GetAttr(__pyx_v__conv, __pyx_n_s__register_converters); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_7 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":348
* #h5py_register_conv()
* _conv.register_converters()
* hdf5_inited = 1 # <<<<<<<<<<<<<<
*
* return 0
*/
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__hdf5_inited, __pyx_int_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 348; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
goto __pyx_L3;
}
__pyx_L3:;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":350
* hdf5_inited = 1
*
* return 0 # <<<<<<<<<<<<<<
*
*
*/
__pyx_r = 0;
goto __pyx_L0;
__pyx_r = 0;
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_AddTraceback("h5py.h5.init_hdf5");
__pyx_r = -1;
__pyx_L0:;
__Pyx_DECREF(__pyx_v__conv);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_tp_new_4h5py_2h5_H5PYConfig(PyTypeObject *t, PyObject *a, PyObject *k) {
struct __pyx_obj_4h5py_2h5_H5PYConfig *p;
PyObject *o = (*t->tp_alloc)(t, 0);
if (!o) return 0;
p = ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)o);
p->_r_name = Py_None; Py_INCREF(Py_None);
p->_i_name = Py_None; Py_INCREF(Py_None);
p->_f_name = Py_None; Py_INCREF(Py_None);
p->_t_name = Py_None; Py_INCREF(Py_None);
p->API_16 = Py_None; Py_INCREF(Py_None);
p->API_18 = Py_None; Py_INCREF(Py_None);
p->DEBUG = Py_None; Py_INCREF(Py_None);
p->THREADS = Py_None; Py_INCREF(Py_None);
return o;
}
static void __pyx_tp_dealloc_4h5py_2h5_H5PYConfig(PyObject *o) {
struct __pyx_obj_4h5py_2h5_H5PYConfig *p = (struct __pyx_obj_4h5py_2h5_H5PYConfig *)o;
Py_XDECREF(p->_r_name);
Py_XDECREF(p->_i_name);
Py_XDECREF(p->_f_name);
Py_XDECREF(p->_t_name);
Py_XDECREF(p->API_16);
Py_XDECREF(p->API_18);
Py_XDECREF(p->DEBUG);
Py_XDECREF(p->THREADS);
(*Py_TYPE(o)->tp_free)(o);
}
static int __pyx_tp_traverse_4h5py_2h5_H5PYConfig(PyObject *o, visitproc v, void *a) {
int e;
struct __pyx_obj_4h5py_2h5_H5PYConfig *p = (struct __pyx_obj_4h5py_2h5_H5PYConfig *)o;
if (p->_r_name) {
e = (*v)(p->_r_name, a); if (e) return e;
}
if (p->_i_name) {
e = (*v)(p->_i_name, a); if (e) return e;
}
if (p->_f_name) {
e = (*v)(p->_f_name, a); if (e) return e;
}
if (p->_t_name) {
e = (*v)(p->_t_name, a); if (e) return e;
}
if (p->API_16) {
e = (*v)(p->API_16, a); if (e) return e;
}
if (p->API_18) {
e = (*v)(p->API_18, a); if (e) return e;
}
if (p->DEBUG) {
e = (*v)(p->DEBUG, a); if (e) return e;
}
if (p->THREADS) {
e = (*v)(p->THREADS, a); if (e) return e;
}
return 0;
}
static int __pyx_tp_clear_4h5py_2h5_H5PYConfig(PyObject *o) {
struct __pyx_obj_4h5py_2h5_H5PYConfig *p = (struct __pyx_obj_4h5py_2h5_H5PYConfig *)o;
PyObject* tmp;
tmp = ((PyObject*)p->_r_name);
p->_r_name = Py_None; Py_INCREF(Py_None);
Py_XDECREF(tmp);
tmp = ((PyObject*)p->_i_name);
p->_i_name = Py_None; Py_INCREF(Py_None);
Py_XDECREF(tmp);
tmp = ((PyObject*)p->_f_name);
p->_f_name = Py_None; Py_INCREF(Py_None);
Py_XDECREF(tmp);
tmp = ((PyObject*)p->_t_name);
p->_t_name = Py_None; Py_INCREF(Py_None);
Py_XDECREF(tmp);
tmp = ((PyObject*)p->API_16);
p->API_16 = Py_None; Py_INCREF(Py_None);
Py_XDECREF(tmp);
tmp = ((PyObject*)p->API_18);
p->API_18 = Py_None; Py_INCREF(Py_None);
Py_XDECREF(tmp);
tmp = ((PyObject*)p->DEBUG);
p->DEBUG = Py_None; Py_INCREF(Py_None);
Py_XDECREF(tmp);
tmp = ((PyObject*)p->THREADS);
p->THREADS = Py_None; Py_INCREF(Py_None);
Py_XDECREF(tmp);
return 0;
}
static PyObject *__pyx_getprop_4h5py_2h5_10H5PYConfig_complex_names(PyObject *o, void *x) {
return __pyx_pf_4h5py_2h5_10H5PYConfig_13complex_names___get__(o);
}
static int __pyx_setprop_4h5py_2h5_10H5PYConfig_complex_names(PyObject *o, PyObject *v, void *x) {
if (v) {
return __pyx_pf_4h5py_2h5_10H5PYConfig_13complex_names___set__(o, v);
}
else {
PyErr_SetString(PyExc_NotImplementedError, "__del__");
return -1;
}
}
static PyObject *__pyx_getprop_4h5py_2h5_10H5PYConfig_bool_names(PyObject *o, void *x) {
return __pyx_pf_4h5py_2h5_10H5PYConfig_10bool_names___get__(o);
}
static int __pyx_setprop_4h5py_2h5_10H5PYConfig_bool_names(PyObject *o, PyObject *v, void *x) {
if (v) {
return __pyx_pf_4h5py_2h5_10H5PYConfig_10bool_names___set__(o, v);
}
else {
PyErr_SetString(PyExc_NotImplementedError, "__del__");
return -1;
}
}
static struct PyMethodDef __pyx_methods_4h5py_2h5_H5PYConfig[] = {
{__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_4h5py_2h5_10H5PYConfig___repr__, METH_NOARGS|METH_COEXIST, __Pyx_DOCSTR(0)},
{0, 0, 0, 0}
};
static struct PyMemberDef __pyx_members_4h5py_2h5_H5PYConfig[] = {
{(char *)"API_16", T_OBJECT, offsetof(struct __pyx_obj_4h5py_2h5_H5PYConfig, API_16), READONLY, 0},
{(char *)"API_18", T_OBJECT, offsetof(struct __pyx_obj_4h5py_2h5_H5PYConfig, API_18), READONLY, 0},
{(char *)"DEBUG", T_OBJECT, offsetof(struct __pyx_obj_4h5py_2h5_H5PYConfig, DEBUG), READONLY, 0},
{(char *)"THREADS", T_OBJECT, offsetof(struct __pyx_obj_4h5py_2h5_H5PYConfig, THREADS), READONLY, 0},
{0, 0, 0, 0, 0}
};
static struct PyGetSetDef __pyx_getsets_4h5py_2h5_H5PYConfig[] = {
{(char *)"complex_names", __pyx_getprop_4h5py_2h5_10H5PYConfig_complex_names, __pyx_setprop_4h5py_2h5_10H5PYConfig_complex_names, __Pyx_DOCSTR(__pyx_k_16), 0},
{(char *)"bool_names", __pyx_getprop_4h5py_2h5_10H5PYConfig_bool_names, __pyx_setprop_4h5py_2h5_10H5PYConfig_bool_names, __Pyx_DOCSTR(__pyx_k_17), 0},
{0, 0, 0, 0, 0}
};
static PyNumberMethods __pyx_tp_as_number_H5PYConfig = {
0, /*nb_add*/
0, /*nb_subtract*/
0, /*nb_multiply*/
#if PY_MAJOR_VERSION < 3
0, /*nb_divide*/
#endif
0, /*nb_remainder*/
0, /*nb_divmod*/
0, /*nb_power*/
0, /*nb_negative*/
0, /*nb_positive*/
0, /*nb_absolute*/
0, /*nb_nonzero*/
0, /*nb_invert*/
0, /*nb_lshift*/
0, /*nb_rshift*/
0, /*nb_and*/
0, /*nb_xor*/
0, /*nb_or*/
#if PY_MAJOR_VERSION < 3
0, /*nb_coerce*/
#endif
0, /*nb_int*/
#if PY_MAJOR_VERSION >= 3
0, /*reserved*/
#else
0, /*nb_long*/
#endif
0, /*nb_float*/
#if PY_MAJOR_VERSION < 3
0, /*nb_oct*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*nb_hex*/
#endif
0, /*nb_inplace_add*/
0, /*nb_inplace_subtract*/
0, /*nb_inplace_multiply*/
#if PY_MAJOR_VERSION < 3
0, /*nb_inplace_divide*/
#endif
0, /*nb_inplace_remainder*/
0, /*nb_inplace_power*/
0, /*nb_inplace_lshift*/
0, /*nb_inplace_rshift*/
0, /*nb_inplace_and*/
0, /*nb_inplace_xor*/
0, /*nb_inplace_or*/
0, /*nb_floor_divide*/
0, /*nb_true_divide*/
0, /*nb_inplace_floor_divide*/
0, /*nb_inplace_true_divide*/
#if (PY_MAJOR_VERSION >= 3) || (Py_TPFLAGS_DEFAULT & Py_TPFLAGS_HAVE_INDEX)
0, /*nb_index*/
#endif
};
static PySequenceMethods __pyx_tp_as_sequence_H5PYConfig = {
0, /*sq_length*/
0, /*sq_concat*/
0, /*sq_repeat*/
0, /*sq_item*/
0, /*sq_slice*/
0, /*sq_ass_item*/
0, /*sq_ass_slice*/
0, /*sq_contains*/
0, /*sq_inplace_concat*/
0, /*sq_inplace_repeat*/
};
static PyMappingMethods __pyx_tp_as_mapping_H5PYConfig = {
0, /*mp_length*/
0, /*mp_subscript*/
0, /*mp_ass_subscript*/
};
static PyBufferProcs __pyx_tp_as_buffer_H5PYConfig = {
#if PY_MAJOR_VERSION < 3
0, /*bf_getreadbuffer*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*bf_getwritebuffer*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*bf_getsegcount*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*bf_getcharbuffer*/
#endif
#if PY_VERSION_HEX >= 0x02060000
0, /*bf_getbuffer*/
#endif
#if PY_VERSION_HEX >= 0x02060000
0, /*bf_releasebuffer*/
#endif
};
PyTypeObject __pyx_type_4h5py_2h5_H5PYConfig = {
PyVarObject_HEAD_INIT(0, 0)
__Pyx_NAMESTR("h5py.h5.H5PYConfig"), /*tp_name*/
sizeof(struct __pyx_obj_4h5py_2h5_H5PYConfig), /*tp_basicsize*/
0, /*tp_itemsize*/
__pyx_tp_dealloc_4h5py_2h5_H5PYConfig, /*tp_dealloc*/
0, /*tp_print*/
0, /*tp_getattr*/
0, /*tp_setattr*/
0, /*tp_compare*/
__pyx_pf_4h5py_2h5_10H5PYConfig___repr__, /*tp_repr*/
&__pyx_tp_as_number_H5PYConfig, /*tp_as_number*/
&__pyx_tp_as_sequence_H5PYConfig, /*tp_as_sequence*/
&__pyx_tp_as_mapping_H5PYConfig, /*tp_as_mapping*/
0, /*tp_hash*/
0, /*tp_call*/
0, /*tp_str*/
0, /*tp_getattro*/
0, /*tp_setattro*/
&__pyx_tp_as_buffer_H5PYConfig, /*tp_as_buffer*/
Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
__Pyx_DOCSTR("\n Provides runtime access to global library settings. You retrieve the\n master copy of this object by calling h5py.get_config().\n\n API_16 (T/F, readonly)\n Is the HDF5 1.6 API available? Currently always true.\n\n API_18 (T/F, readonly)\n If the HDF5 1.8 API available?\n\n complex_names (tuple, r/w)\n Settable 2-tuple controlling how complex numbers are saved.\n Defaults to ('r','i').\n\n bool_names (tuple, r/w)\n Settable 2-tuple controlling the HDF5 enum names used for boolean\n values. Defaults to ('FALSE', 'TRUE') for values 0 and 1.\n "), /*tp_doc*/
__pyx_tp_traverse_4h5py_2h5_H5PYConfig, /*tp_traverse*/
__pyx_tp_clear_4h5py_2h5_H5PYConfig, /*tp_clear*/
0, /*tp_richcompare*/
0, /*tp_weaklistoffset*/
0, /*tp_iter*/
0, /*tp_iternext*/
__pyx_methods_4h5py_2h5_H5PYConfig, /*tp_methods*/
__pyx_members_4h5py_2h5_H5PYConfig, /*tp_members*/
__pyx_getsets_4h5py_2h5_H5PYConfig, /*tp_getset*/
0, /*tp_base*/
0, /*tp_dict*/
0, /*tp_descr_get*/
0, /*tp_descr_set*/
0, /*tp_dictoffset*/
__pyx_pf_4h5py_2h5_10H5PYConfig___init__, /*tp_init*/
0, /*tp_alloc*/
__pyx_tp_new_4h5py_2h5_H5PYConfig, /*tp_new*/
0, /*tp_free*/
0, /*tp_is_gc*/
0, /*tp_bases*/
0, /*tp_mro*/
0, /*tp_cache*/
0, /*tp_subclasses*/
0, /*tp_weaklist*/
0, /*tp_del*/
#if PY_VERSION_HEX >= 0x02060000
0, /*tp_version_tag*/
#endif
};
static PyObject *__pyx_tp_new_4h5py_2h5_ObjectID(PyTypeObject *t, PyObject *a, PyObject *k) {
struct __pyx_obj_4h5py_2h5_ObjectID *p;
PyObject *o = (*t->tp_alloc)(t, 0);
if (!o) return 0;
p = ((struct __pyx_obj_4h5py_2h5_ObjectID *)o);
p->__weakref__ = 0;
p->_hash = Py_None; Py_INCREF(Py_None);
if (__pyx_pf_4h5py_2h5_8ObjectID___cinit__(o, a, k) < 0) {
Py_DECREF(o); o = 0;
}
return o;
}
static void __pyx_tp_dealloc_4h5py_2h5_ObjectID(PyObject *o) {
struct __pyx_obj_4h5py_2h5_ObjectID *p = (struct __pyx_obj_4h5py_2h5_ObjectID *)o;
{
PyObject *etype, *eval, *etb;
PyErr_Fetch(&etype, &eval, &etb);
++Py_REFCNT(o);
__pyx_pf_4h5py_2h5_8ObjectID___dealloc__(o);
if (PyErr_Occurred()) PyErr_WriteUnraisable(o);
--Py_REFCNT(o);
PyErr_Restore(etype, eval, etb);
}
if (p->__weakref__) PyObject_ClearWeakRefs(o);
Py_XDECREF(p->_hash);
(*Py_TYPE(o)->tp_free)(o);
}
static int __pyx_tp_traverse_4h5py_2h5_ObjectID(PyObject *o, visitproc v, void *a) {
int e;
struct __pyx_obj_4h5py_2h5_ObjectID *p = (struct __pyx_obj_4h5py_2h5_ObjectID *)o;
if (p->_hash) {
e = (*v)(p->_hash, a); if (e) return e;
}
return 0;
}
static int __pyx_tp_clear_4h5py_2h5_ObjectID(PyObject *o) {
struct __pyx_obj_4h5py_2h5_ObjectID *p = (struct __pyx_obj_4h5py_2h5_ObjectID *)o;
PyObject* tmp;
tmp = ((PyObject*)p->_hash);
p->_hash = Py_None; Py_INCREF(Py_None);
Py_XDECREF(tmp);
return 0;
}
static PyObject *__pyx_getprop_4h5py_2h5_8ObjectID__valid(PyObject *o, void *x) {
return __pyx_pf_4h5py_2h5_8ObjectID_6_valid___get__(o);
}
static struct PyMethodDef __pyx_methods_4h5py_2h5_ObjectID[] = {
{__Pyx_NAMESTR("__copy__"), (PyCFunction)__pyx_pf_4h5py_2h5_8ObjectID___copy__, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_4h5py_2h5_8ObjectID___copy__)},
{__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_4h5py_2h5_8ObjectID___repr__, METH_NOARGS|METH_COEXIST, __Pyx_DOCSTR(0)},
{0, 0, 0, 0}
};
static struct PyMemberDef __pyx_members_4h5py_2h5_ObjectID[] = {
{(char *)"id", __Pyx_T_SIGNED_INT(hid_t), offsetof(struct __pyx_obj_4h5py_2h5_ObjectID, id), READONLY, 0},
{(char *)"_locked", T_INT, offsetof(struct __pyx_obj_4h5py_2h5_ObjectID, _locked), READONLY, 0},
{0, 0, 0, 0, 0}
};
static struct PyGetSetDef __pyx_getsets_4h5py_2h5_ObjectID[] = {
{(char *)"_valid", __pyx_getprop_4h5py_2h5_8ObjectID__valid, 0, __Pyx_DOCSTR(__pyx_k_18), 0},
{0, 0, 0, 0, 0}
};
static PyNumberMethods __pyx_tp_as_number_ObjectID = {
0, /*nb_add*/
0, /*nb_subtract*/
0, /*nb_multiply*/
#if PY_MAJOR_VERSION < 3
0, /*nb_divide*/
#endif
0, /*nb_remainder*/
0, /*nb_divmod*/
0, /*nb_power*/
0, /*nb_negative*/
0, /*nb_positive*/
0, /*nb_absolute*/
__pyx_pf_4h5py_2h5_8ObjectID___nonzero__, /*nb_nonzero*/
0, /*nb_invert*/
0, /*nb_lshift*/
0, /*nb_rshift*/
0, /*nb_and*/
0, /*nb_xor*/
0, /*nb_or*/
#if PY_MAJOR_VERSION < 3
0, /*nb_coerce*/
#endif
0, /*nb_int*/
#if PY_MAJOR_VERSION >= 3
0, /*reserved*/
#else
0, /*nb_long*/
#endif
0, /*nb_float*/
#if PY_MAJOR_VERSION < 3
0, /*nb_oct*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*nb_hex*/
#endif
0, /*nb_inplace_add*/
0, /*nb_inplace_subtract*/
0, /*nb_inplace_multiply*/
#if PY_MAJOR_VERSION < 3
0, /*nb_inplace_divide*/
#endif
0, /*nb_inplace_remainder*/
0, /*nb_inplace_power*/
0, /*nb_inplace_lshift*/
0, /*nb_inplace_rshift*/
0, /*nb_inplace_and*/
0, /*nb_inplace_xor*/
0, /*nb_inplace_or*/
0, /*nb_floor_divide*/
0, /*nb_true_divide*/
0, /*nb_inplace_floor_divide*/
0, /*nb_inplace_true_divide*/
#if (PY_MAJOR_VERSION >= 3) || (Py_TPFLAGS_DEFAULT & Py_TPFLAGS_HAVE_INDEX)
0, /*nb_index*/
#endif
};
static PySequenceMethods __pyx_tp_as_sequence_ObjectID = {
0, /*sq_length*/
0, /*sq_concat*/
0, /*sq_repeat*/
0, /*sq_item*/
0, /*sq_slice*/
0, /*sq_ass_item*/
0, /*sq_ass_slice*/
0, /*sq_contains*/
0, /*sq_inplace_concat*/
0, /*sq_inplace_repeat*/
};
static PyMappingMethods __pyx_tp_as_mapping_ObjectID = {
0, /*mp_length*/
0, /*mp_subscript*/
0, /*mp_ass_subscript*/
};
static PyBufferProcs __pyx_tp_as_buffer_ObjectID = {
#if PY_MAJOR_VERSION < 3
0, /*bf_getreadbuffer*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*bf_getwritebuffer*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*bf_getsegcount*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*bf_getcharbuffer*/
#endif
#if PY_VERSION_HEX >= 0x02060000
0, /*bf_getbuffer*/
#endif
#if PY_VERSION_HEX >= 0x02060000
0, /*bf_releasebuffer*/
#endif
};
PyTypeObject __pyx_type_4h5py_2h5_ObjectID = {
PyVarObject_HEAD_INIT(0, 0)
__Pyx_NAMESTR("h5py.h5.ObjectID"), /*tp_name*/
sizeof(struct __pyx_obj_4h5py_2h5_ObjectID), /*tp_basicsize*/
0, /*tp_itemsize*/
__pyx_tp_dealloc_4h5py_2h5_ObjectID, /*tp_dealloc*/
0, /*tp_print*/
0, /*tp_getattr*/
0, /*tp_setattr*/
0, /*tp_compare*/
__pyx_pf_4h5py_2h5_8ObjectID___repr__, /*tp_repr*/
&__pyx_tp_as_number_ObjectID, /*tp_as_number*/
&__pyx_tp_as_sequence_ObjectID, /*tp_as_sequence*/
&__pyx_tp_as_mapping_ObjectID, /*tp_as_mapping*/
__pyx_pf_4h5py_2h5_8ObjectID___hash__, /*tp_hash*/
0, /*tp_call*/
0, /*tp_str*/
0, /*tp_getattro*/
0, /*tp_setattro*/
&__pyx_tp_as_buffer_ObjectID, /*tp_as_buffer*/
Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
__Pyx_DOCSTR("\n Base class for all HDF5 identifiers.\n\n This is an extremely thin object layer, which makes dealing with\n HDF5 identifiers a less frustrating experience. It synchronizes\n Python object reference counts with their HDF5 counterparts, so that\n HDF5 identifiers are automatically closed when they become unreachable.\n\n The only (known) HDF5 property which can problematic is locked objects;\n there is no way to determine whether or not an HDF5 object is locked\n or not, without trying an operation and having it fail. A \"lock\" flag\n is maintained on the Python side, and is set by methods like\n TypeID.lock(), but this is not tracked across copies. Until HDF5\n provides something like H5Tis_locked(), this will not be fixed.\n\n The truth value of an ObjectID (i.e. bool(obj_id)) indicates whether\n the underlying HDF5 identifier is valid.\n "), /*tp_doc*/
__pyx_tp_traverse_4h5py_2h5_ObjectID, /*tp_traverse*/
__pyx_tp_clear_4h5py_2h5_ObjectID, /*tp_clear*/
__pyx_pf_4h5py_2h5_8ObjectID___richcmp__, /*tp_richcompare*/
0, /*tp_weaklistoffset*/
0, /*tp_iter*/
0, /*tp_iternext*/
__pyx_methods_4h5py_2h5_ObjectID, /*tp_methods*/
__pyx_members_4h5py_2h5_ObjectID, /*tp_members*/
__pyx_getsets_4h5py_2h5_ObjectID, /*tp_getset*/
0, /*tp_base*/
0, /*tp_dict*/
0, /*tp_descr_get*/
0, /*tp_descr_set*/
0, /*tp_dictoffset*/
0, /*tp_init*/
0, /*tp_alloc*/
__pyx_tp_new_4h5py_2h5_ObjectID, /*tp_new*/
0, /*tp_free*/
0, /*tp_is_gc*/
0, /*tp_bases*/
0, /*tp_mro*/
0, /*tp_cache*/
0, /*tp_subclasses*/
0, /*tp_weaklist*/
0, /*tp_del*/
#if PY_VERSION_HEX >= 0x02060000
0, /*tp_version_tag*/
#endif
};
static PyObject *__pyx_tp_new_4h5py_2h5_SmartStruct(PyTypeObject *t, PyObject *a, PyObject *k) {
struct __pyx_obj_4h5py_2h5_SmartStruct *p;
PyObject *o = (*t->tp_alloc)(t, 0);
if (!o) return 0;
p = ((struct __pyx_obj_4h5py_2h5_SmartStruct *)o);
p->__weakref__ = 0;
p->_title = Py_None; Py_INCREF(Py_None);
return o;
}
static void __pyx_tp_dealloc_4h5py_2h5_SmartStruct(PyObject *o) {
struct __pyx_obj_4h5py_2h5_SmartStruct *p = (struct __pyx_obj_4h5py_2h5_SmartStruct *)o;
if (p->__weakref__) PyObject_ClearWeakRefs(o);
Py_XDECREF(p->_title);
(*Py_TYPE(o)->tp_free)(o);
}
static int __pyx_tp_traverse_4h5py_2h5_SmartStruct(PyObject *o, visitproc v, void *a) {
int e;
struct __pyx_obj_4h5py_2h5_SmartStruct *p = (struct __pyx_obj_4h5py_2h5_SmartStruct *)o;
if (p->_title) {
e = (*v)(p->_title, a); if (e) return e;
}
return 0;
}
static int __pyx_tp_clear_4h5py_2h5_SmartStruct(PyObject *o) {
struct __pyx_obj_4h5py_2h5_SmartStruct *p = (struct __pyx_obj_4h5py_2h5_SmartStruct *)o;
PyObject* tmp;
tmp = ((PyObject*)p->_title);
p->_title = Py_None; Py_INCREF(Py_None);
Py_XDECREF(tmp);
return 0;
}
static struct PyMethodDef __pyx_methods_4h5py_2h5_SmartStruct[] = {
{__Pyx_NAMESTR("_hash"), (PyCFunction)__pyx_pf_4h5py_2h5_11SmartStruct__hash, METH_NOARGS, __Pyx_DOCSTR(0)},
{__Pyx_NAMESTR("__str__"), (PyCFunction)__pyx_pf_4h5py_2h5_11SmartStruct___str__, METH_NOARGS|METH_COEXIST, __Pyx_DOCSTR(__pyx_doc_4h5py_2h5_11SmartStruct___str__)},
{0, 0, 0, 0}
};
static PyNumberMethods __pyx_tp_as_number_SmartStruct = {
0, /*nb_add*/
0, /*nb_subtract*/
0, /*nb_multiply*/
#if PY_MAJOR_VERSION < 3
0, /*nb_divide*/
#endif
0, /*nb_remainder*/
0, /*nb_divmod*/
0, /*nb_power*/
0, /*nb_negative*/
0, /*nb_positive*/
0, /*nb_absolute*/
0, /*nb_nonzero*/
0, /*nb_invert*/
0, /*nb_lshift*/
0, /*nb_rshift*/
0, /*nb_and*/
0, /*nb_xor*/
0, /*nb_or*/
#if PY_MAJOR_VERSION < 3
0, /*nb_coerce*/
#endif
0, /*nb_int*/
#if PY_MAJOR_VERSION >= 3
0, /*reserved*/
#else
0, /*nb_long*/
#endif
0, /*nb_float*/
#if PY_MAJOR_VERSION < 3
0, /*nb_oct*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*nb_hex*/
#endif
0, /*nb_inplace_add*/
0, /*nb_inplace_subtract*/
0, /*nb_inplace_multiply*/
#if PY_MAJOR_VERSION < 3
0, /*nb_inplace_divide*/
#endif
0, /*nb_inplace_remainder*/
0, /*nb_inplace_power*/
0, /*nb_inplace_lshift*/
0, /*nb_inplace_rshift*/
0, /*nb_inplace_and*/
0, /*nb_inplace_xor*/
0, /*nb_inplace_or*/
0, /*nb_floor_divide*/
0, /*nb_true_divide*/
0, /*nb_inplace_floor_divide*/
0, /*nb_inplace_true_divide*/
#if (PY_MAJOR_VERSION >= 3) || (Py_TPFLAGS_DEFAULT & Py_TPFLAGS_HAVE_INDEX)
0, /*nb_index*/
#endif
};
static PySequenceMethods __pyx_tp_as_sequence_SmartStruct = {
0, /*sq_length*/
0, /*sq_concat*/
0, /*sq_repeat*/
0, /*sq_item*/
0, /*sq_slice*/
0, /*sq_ass_item*/
0, /*sq_ass_slice*/
0, /*sq_contains*/
0, /*sq_inplace_concat*/
0, /*sq_inplace_repeat*/
};
static PyMappingMethods __pyx_tp_as_mapping_SmartStruct = {
0, /*mp_length*/
0, /*mp_subscript*/
0, /*mp_ass_subscript*/
};
static PyBufferProcs __pyx_tp_as_buffer_SmartStruct = {
#if PY_MAJOR_VERSION < 3
0, /*bf_getreadbuffer*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*bf_getwritebuffer*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*bf_getsegcount*/
#endif
#if PY_MAJOR_VERSION < 3
0, /*bf_getcharbuffer*/
#endif
#if PY_VERSION_HEX >= 0x02060000
0, /*bf_getbuffer*/
#endif
#if PY_VERSION_HEX >= 0x02060000
0, /*bf_releasebuffer*/
#endif
};
PyTypeObject __pyx_type_4h5py_2h5_SmartStruct = {
PyVarObject_HEAD_INIT(0, 0)
__Pyx_NAMESTR("h5py.h5.SmartStruct"), /*tp_name*/
sizeof(struct __pyx_obj_4h5py_2h5_SmartStruct), /*tp_basicsize*/
0, /*tp_itemsize*/
__pyx_tp_dealloc_4h5py_2h5_SmartStruct, /*tp_dealloc*/
0, /*tp_print*/
0, /*tp_getattr*/
0, /*tp_setattr*/
0, /*tp_compare*/
0, /*tp_repr*/
&__pyx_tp_as_number_SmartStruct, /*tp_as_number*/
&__pyx_tp_as_sequence_SmartStruct, /*tp_as_sequence*/
&__pyx_tp_as_mapping_SmartStruct, /*tp_as_mapping*/
__pyx_pf_4h5py_2h5_11SmartStruct___hash__, /*tp_hash*/
0, /*tp_call*/
__pyx_pf_4h5py_2h5_11SmartStruct___str__, /*tp_str*/
0, /*tp_getattro*/
0, /*tp_setattro*/
&__pyx_tp_as_buffer_SmartStruct, /*tp_as_buffer*/
Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
__Pyx_DOCSTR(" Provides basic mechanics for structs "), /*tp_doc*/
__pyx_tp_traverse_4h5py_2h5_SmartStruct, /*tp_traverse*/
__pyx_tp_clear_4h5py_2h5_SmartStruct, /*tp_clear*/
__pyx_pf_4h5py_2h5_11SmartStruct___richcmp__, /*tp_richcompare*/
0, /*tp_weaklistoffset*/
0, /*tp_iter*/
0, /*tp_iternext*/
__pyx_methods_4h5py_2h5_SmartStruct, /*tp_methods*/
0, /*tp_members*/
0, /*tp_getset*/
0, /*tp_base*/
0, /*tp_dict*/
0, /*tp_descr_get*/
0, /*tp_descr_set*/
0, /*tp_dictoffset*/
0, /*tp_init*/
0, /*tp_alloc*/
__pyx_tp_new_4h5py_2h5_SmartStruct, /*tp_new*/
0, /*tp_free*/
0, /*tp_is_gc*/
0, /*tp_bases*/
0, /*tp_mro*/
0, /*tp_cache*/
0, /*tp_subclasses*/
0, /*tp_weaklist*/
0, /*tp_del*/
#if PY_VERSION_HEX >= 0x02060000
0, /*tp_version_tag*/
#endif
};
static struct PyMethodDef __pyx_methods[] = {
{__Pyx_NAMESTR("get_config"), (PyCFunction)__pyx_pf_4h5py_2h5_get_config, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_4h5py_2h5_get_config)},
{__Pyx_NAMESTR("get_libversion"), (PyCFunction)__pyx_pf_4h5py_2h5_get_libversion, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_4h5py_2h5_get_libversion)},
{__Pyx_NAMESTR("_close"), (PyCFunction)__pyx_pf_4h5py_2h5__close, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_4h5py_2h5__close)},
{__Pyx_NAMESTR("_open"), (PyCFunction)__pyx_pf_4h5py_2h5__open, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_4h5py_2h5__open)},
{__Pyx_NAMESTR("_exithack"), (PyCFunction)__pyx_pf_4h5py_2h5__exithack, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_4h5py_2h5__exithack)},
{0, 0, 0, 0}
};
static void __pyx_init_filenames(void); /*proto*/
#if PY_MAJOR_VERSION >= 3
static struct PyModuleDef __pyx_moduledef = {
PyModuleDef_HEAD_INIT,
__Pyx_NAMESTR("h5"),
__Pyx_DOCSTR(__pyx_k_19), /* 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_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0},
{&__pyx_kp_s_10, __pyx_k_10, sizeof(__pyx_k_10), 0, 0, 1, 0},
{&__pyx_kp_s_11, __pyx_k_11, sizeof(__pyx_k_11), 0, 0, 1, 0},
{&__pyx_kp_s_12, __pyx_k_12, sizeof(__pyx_k_12), 0, 0, 1, 0},
{&__pyx_n_s_13, __pyx_k_13, sizeof(__pyx_k_13), 0, 0, 1, 1},
{&__pyx_kp_s_14, __pyx_k_14, sizeof(__pyx_k_14), 0, 0, 1, 0},
{&__pyx_kp_s_15, __pyx_k_15, sizeof(__pyx_k_15), 0, 0, 1, 0},
{&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0},
{&__pyx_kp_b_20, __pyx_k_20, sizeof(__pyx_k_20), 0, 0, 0, 0},
{&__pyx_kp_s_21, __pyx_k_21, sizeof(__pyx_k_21), 0, 0, 1, 0},
{&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0},
{&__pyx_kp_s_4, __pyx_k_4, sizeof(__pyx_k_4), 0, 0, 1, 0},
{&__pyx_kp_s_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 0, 1, 0},
{&__pyx_kp_s_6, __pyx_k_6, sizeof(__pyx_k_6), 0, 0, 1, 0},
{&__pyx_kp_s_7, __pyx_k_7, sizeof(__pyx_k_7), 0, 0, 1, 0},
{&__pyx_kp_s_8, __pyx_k_8, sizeof(__pyx_k_8), 0, 0, 1, 0},
{&__pyx_kp_s_9, __pyx_k_9, sizeof(__pyx_k_9), 0, 0, 1, 0},
{&__pyx_n_s__API_16, __pyx_k__API_16, sizeof(__pyx_k__API_16), 0, 0, 1, 1},
{&__pyx_n_s__API_18, __pyx_k__API_18, sizeof(__pyx_k__API_18), 0, 0, 1, 1},
{&__pyx_n_s__DEBUG, __pyx_k__DEBUG, sizeof(__pyx_k__DEBUG), 0, 0, 1, 1},
{&__pyx_n_s__Exception, __pyx_k__Exception, sizeof(__pyx_k__Exception), 0, 0, 1, 1},
{&__pyx_n_s__FALSE, __pyx_k__FALSE, sizeof(__pyx_k__FALSE), 0, 0, 1, 1},
{&__pyx_n_s__H5Error, __pyx_k__H5Error, sizeof(__pyx_k__H5Error), 0, 0, 1, 1},
{&__pyx_n_s__INDEX_CRT_ORDER, __pyx_k__INDEX_CRT_ORDER, sizeof(__pyx_k__INDEX_CRT_ORDER), 0, 0, 1, 1},
{&__pyx_n_s__INDEX_NAME, __pyx_k__INDEX_NAME, sizeof(__pyx_k__INDEX_NAME), 0, 0, 1, 1},
{&__pyx_n_s__ITER_DEC, __pyx_k__ITER_DEC, sizeof(__pyx_k__ITER_DEC), 0, 0, 1, 1},
{&__pyx_n_s__ITER_INC, __pyx_k__ITER_INC, sizeof(__pyx_k__ITER_INC), 0, 0, 1, 1},
{&__pyx_n_s__ITER_NATIVE, __pyx_k__ITER_NATIVE, sizeof(__pyx_k__ITER_NATIVE), 0, 0, 1, 1},
{&__pyx_n_s__L, __pyx_k__L, sizeof(__pyx_k__L), 0, 0, 1, 1},
{&__pyx_n_s__NotImplemented, __pyx_k__NotImplemented, sizeof(__pyx_k__NotImplemented), 0, 0, 1, 1},
{&__pyx_n_s__RuntimeError, __pyx_k__RuntimeError, sizeof(__pyx_k__RuntimeError), 0, 0, 1, 1},
{&__pyx_n_s__TRUE, __pyx_k__TRUE, sizeof(__pyx_k__TRUE), 0, 0, 1, 1},
{&__pyx_n_s__TypeError, __pyx_k__TypeError, sizeof(__pyx_k__TypeError), 0, 0, 1, 1},
{&__pyx_n_s__U, __pyx_k__U, sizeof(__pyx_k__U), 0, 0, 1, 1},
{&__pyx_n_s__X, __pyx_k__X, sizeof(__pyx_k__X), 0, 0, 1, 1},
{&__pyx_n_s___, __pyx_k___, sizeof(__pyx_k___), 0, 0, 1, 1},
{&__pyx_n_s____class__, __pyx_k____class__, sizeof(__pyx_k____class__), 0, 0, 1, 1},
{&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1},
{&__pyx_n_s____name__, __pyx_k____name__, sizeof(__pyx_k____name__), 0, 0, 1, 1},
{&__pyx_n_s___api_version_tuple, __pyx_k___api_version_tuple, sizeof(__pyx_k___api_version_tuple), 0, 0, 1, 1},
{&__pyx_n_s___conv, __pyx_k___conv, sizeof(__pyx_k___conv), 0, 0, 1, 1},
{&__pyx_n_s___exithack, __pyx_k___exithack, sizeof(__pyx_k___exithack), 0, 0, 1, 1},
{&__pyx_n_s___f_name, __pyx_k___f_name, sizeof(__pyx_k___f_name), 0, 0, 1, 1},
{&__pyx_n_s___hash, __pyx_k___hash, sizeof(__pyx_k___hash), 0, 0, 1, 1},
{&__pyx_n_s___hdf5_version_tuple, __pyx_k___hdf5_version_tuple, sizeof(__pyx_k___hdf5_version_tuple), 0, 0, 1, 1},
{&__pyx_n_s___i_name, __pyx_k___i_name, sizeof(__pyx_k___i_name), 0, 0, 1, 1},
{&__pyx_n_s___locked, __pyx_k___locked, sizeof(__pyx_k___locked), 0, 0, 1, 1},
{&__pyx_n_s___r_name, __pyx_k___r_name, sizeof(__pyx_k___r_name), 0, 0, 1, 1},
{&__pyx_n_s___t_name, __pyx_k___t_name, sizeof(__pyx_k___t_name), 0, 0, 1, 1},
{&__pyx_n_s___title, __pyx_k___title, sizeof(__pyx_k___title), 0, 0, 1, 1},
{&__pyx_n_s___valid, __pyx_k___valid, sizeof(__pyx_k___valid), 0, 0, 1, 1},
{&__pyx_n_s___version_string, __pyx_k___version_string, sizeof(__pyx_k___version_string), 0, 0, 1, 1},
{&__pyx_n_s___version_tuple, __pyx_k___version_tuple, sizeof(__pyx_k___version_tuple), 0, 0, 1, 1},
{&__pyx_n_s__atexit, __pyx_k__atexit, sizeof(__pyx_k__atexit), 0, 0, 1, 1},
{&__pyx_n_s__complex_names, __pyx_k__complex_names, sizeof(__pyx_k__complex_names), 0, 0, 1, 1},
{&__pyx_n_s__fileno, __pyx_k__fileno, sizeof(__pyx_k__fileno), 0, 0, 1, 1},
{&__pyx_n_s__get_libversion, __pyx_k__get_libversion, sizeof(__pyx_k__get_libversion), 0, 0, 1, 1},
{&__pyx_n_s__getattr, __pyx_k__getattr, sizeof(__pyx_k__getattr), 0, 0, 1, 1},
{&__pyx_n_s__h5e, __pyx_k__h5e, sizeof(__pyx_k__h5e), 0, 0, 1, 1},
{&__pyx_n_s__hdf5_inited, __pyx_k__hdf5_inited, sizeof(__pyx_k__hdf5_inited), 0, 0, 1, 1},
{&__pyx_n_s__i, __pyx_k__i, sizeof(__pyx_k__i), 0, 0, 1, 1},
{&__pyx_n_s__id, __pyx_k__id, sizeof(__pyx_k__id), 0, 0, 1, 1},
{&__pyx_n_s__id_, __pyx_k__id_, sizeof(__pyx_k__id_), 0, 0, 1, 1},
{&__pyx_n_s__join, __pyx_k__join, sizeof(__pyx_k__join), 0, 0, 1, 1},
{&__pyx_n_s__objno, __pyx_k__objno, sizeof(__pyx_k__objno), 0, 0, 1, 1},
{&__pyx_n_s__r, __pyx_k__r, sizeof(__pyx_k__r), 0, 0, 1, 1},
{&__pyx_n_s__register, __pyx_k__register, sizeof(__pyx_k__register), 0, 0, 1, 1},
{&__pyx_n_s__register_converters, __pyx_k__register_converters, sizeof(__pyx_k__register_converters), 0, 0, 1, 1},
{&__pyx_n_s__sorted, __pyx_k__sorted, sizeof(__pyx_k__sorted), 0, 0, 1, 1},
{&__pyx_n_s__split, __pyx_k__split, sizeof(__pyx_k__split), 0, 0, 1, 1},
{&__pyx_n_s__startswith, __pyx_k__startswith, sizeof(__pyx_k__startswith), 0, 0, 1, 1},
{&__pyx_n_s__threading, __pyx_k__threading, sizeof(__pyx_k__threading), 0, 0, 1, 1},
{&__pyx_n_s__x, __pyx_k__x, sizeof(__pyx_k__x), 0, 0, 1, 1},
{0, 0, 0, 0, 0, 0, 0}
};
static int __Pyx_InitCachedBuiltins(void) {
__pyx_builtin_TypeError = __Pyx_GetName(__pyx_b, __pyx_n_s__TypeError); if (!__pyx_builtin_TypeError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_builtin_NotImplemented = __Pyx_GetName(__pyx_b, __pyx_n_s__NotImplemented); if (!__pyx_builtin_NotImplemented) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_builtin_getattr = __Pyx_GetName(__pyx_b, __pyx_n_s__getattr); if (!__pyx_builtin_getattr) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_builtin_sorted = __Pyx_GetName(__pyx_b, __pyx_n_s__sorted); if (!__pyx_builtin_sorted) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_builtin_Exception = __Pyx_GetName(__pyx_b, __pyx_n_s__Exception); if (!__pyx_builtin_Exception) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_builtin_RuntimeError = __Pyx_GetName(__pyx_b, __pyx_n_s__RuntimeError); if (!__pyx_builtin_RuntimeError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
return 0;
__pyx_L1_error:;
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;};
__pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
__pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
__pyx_int_8 = PyInt_FromLong(8); if (unlikely(!__pyx_int_8)) {__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 inith5(void); /*proto*/
PyMODINIT_FUNC inith5(void)
#else
PyMODINIT_FUNC PyInit_h5(void); /*proto*/
PyMODINIT_FUNC PyInit_h5(void)
#endif
{
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
Py_ssize_t __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
int __pyx_t_7;
#if CYTHON_REFNANNY
void* __pyx_refnanny = NULL;
__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");
}
__pyx_refnanny = __Pyx_RefNanny->SetupContext("PyMODINIT_FUNC PyInit_h5(void)", __LINE__, __FILE__);
#endif
__pyx_init_filenames();
__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;}
#if PY_MAJOR_VERSION < 3
__pyx_empty_bytes = PyString_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
#else
__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;}
#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(__Pyx_NAMESTR("h5"), __pyx_methods, __Pyx_DOCSTR(__pyx_k_19), 0, PYTHON_API_VERSION);
#else
__pyx_m = PyModule_Create(&__pyx_moduledef);
#endif
if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
#if PY_MAJOR_VERSION < 3
Py_INCREF(__pyx_m);
#endif
__pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME));
if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
if (__Pyx_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 (__pyx_module_is_main_h5py__h5) {
if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
}
/*--- Builtin init code ---*/
if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/*--- Global init code ---*/
__pyx_v_4h5py_2h5_cfg = ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)Py_None); Py_INCREF(Py_None);
/*--- Function export code ---*/
if (__Pyx_ExportFunction("get_config", (void (*)(void))__pyx_f_4h5py_2h5_get_config, "struct __pyx_obj_4h5py_2h5_H5PYConfig *(int __pyx_skip_dispatch)") < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__Pyx_ExportFunction("init_hdf5", (void (*)(void))__pyx_f_4h5py_2h5_init_hdf5, "int (void)") < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/*--- Type init code ---*/
if (PyType_Ready(&__pyx_type_4h5py_2h5_H5PYConfig) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__Pyx_SetAttrString(__pyx_m, "H5PYConfig", (PyObject *)&__pyx_type_4h5py_2h5_H5PYConfig) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__pyx_ptype_4h5py_2h5_H5PYConfig = &__pyx_type_4h5py_2h5_H5PYConfig;
if (PyType_Ready(&__pyx_type_4h5py_2h5_ObjectID) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__Pyx_SetAttrString(__pyx_m, "ObjectID", (PyObject *)&__pyx_type_4h5py_2h5_ObjectID) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__pyx_type_4h5py_2h5_ObjectID.tp_weaklistoffset == 0) __pyx_type_4h5py_2h5_ObjectID.tp_weaklistoffset = offsetof(struct __pyx_obj_4h5py_2h5_ObjectID, __weakref__);
__pyx_ptype_4h5py_2h5_ObjectID = &__pyx_type_4h5py_2h5_ObjectID;
if (PyType_Ready(&__pyx_type_4h5py_2h5_SmartStruct) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__Pyx_SetAttrString(__pyx_m, "SmartStruct", (PyObject *)&__pyx_type_4h5py_2h5_SmartStruct) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__pyx_type_4h5py_2h5_SmartStruct.tp_weaklistoffset == 0) __pyx_type_4h5py_2h5_SmartStruct.tp_weaklistoffset = offsetof(struct __pyx_obj_4h5py_2h5_SmartStruct, __weakref__);
__pyx_ptype_4h5py_2h5_SmartStruct = &__pyx_type_4h5py_2h5_SmartStruct;
/*--- Type import code ---*/
__pyx_ptype_4h5py_3h5e_HDF5ErrorHandler = __Pyx_ImportType("h5py.h5e", "HDF5ErrorHandler", sizeof(struct __pyx_obj_4h5py_3h5e_HDF5ErrorHandler)); if (unlikely(!__pyx_ptype_4h5py_3h5e_HDF5ErrorHandler)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/*--- Function import code ---*/
__pyx_t_1 = __Pyx_ImportModule("h5py.h5e"); 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, "register_thread", (void (**)(void))&__pyx_f_4h5py_3h5e_register_thread, "PyObject *(int __pyx_skip_dispatch)") < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__Pyx_ImportFunction(__pyx_t_1, "unregister_thread", (void (**)(void))&__pyx_f_4h5py_3h5e_unregister_thread, "PyObject *(int __pyx_skip_dispatch, struct __pyx_opt_args_4h5py_3h5e_unregister_thread *__pyx_optional_args)") < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__Pyx_ImportFunction(__pyx_t_1, "disable_errors", (void (**)(void))&__pyx_f_4h5py_3h5e_disable_errors, "__pyx_t_4h5py_3h5e_err_cookie (void)") < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
if (__Pyx_ImportFunction(__pyx_t_1, "enable_errors", (void (**)(void))&__pyx_f_4h5py_3h5e_enable_errors, "void (__pyx_t_4h5py_3h5e_err_cookie)") < 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 ---*/
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":29
* from h5e cimport register_thread
*
* import atexit # <<<<<<<<<<<<<<
* import threading
*
*/
__pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__atexit), 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__atexit, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":30
*
* import atexit
* import threading # <<<<<<<<<<<<<<
*
* IF H5PY_18API:
*/
__pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__threading), 0); 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 (PyObject_SetAttr(__pyx_m, __pyx_n_s__threading, __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;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":33
*
* IF H5PY_18API:
* ITER_INC = H5_ITER_INC # Increasing order # <<<<<<<<<<<<<<
* ITER_DEC = H5_ITER_DEC # Decreasing order
* ITER_NATIVE = H5_ITER_NATIVE # No particular order, whatever is fastest
*/
__pyx_t_2 = PyInt_FromLong(H5_ITER_INC); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ITER_INC, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":34
* IF H5PY_18API:
* ITER_INC = H5_ITER_INC # Increasing order
* ITER_DEC = H5_ITER_DEC # Decreasing order # <<<<<<<<<<<<<<
* ITER_NATIVE = H5_ITER_NATIVE # No particular order, whatever is fastest
*
*/
__pyx_t_2 = PyInt_FromLong(H5_ITER_DEC); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ITER_DEC, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":35
* ITER_INC = H5_ITER_INC # Increasing order
* ITER_DEC = H5_ITER_DEC # Decreasing order
* ITER_NATIVE = H5_ITER_NATIVE # No particular order, whatever is fastest # <<<<<<<<<<<<<<
*
* INDEX_NAME = H5_INDEX_NAME # Index on names
*/
__pyx_t_2 = PyInt_FromLong(H5_ITER_NATIVE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ITER_NATIVE, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":37
* ITER_NATIVE = H5_ITER_NATIVE # No particular order, whatever is fastest
*
* INDEX_NAME = H5_INDEX_NAME # Index on names # <<<<<<<<<<<<<<
* INDEX_CRT_ORDER = H5_INDEX_CRT_ORDER # Index on creation order
*
*/
__pyx_t_2 = PyInt_FromLong(H5_INDEX_NAME); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__INDEX_NAME, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":38
*
* INDEX_NAME = H5_INDEX_NAME # Index on names
* INDEX_CRT_ORDER = H5_INDEX_CRT_ORDER # Index on creation order # <<<<<<<<<<<<<<
*
* cdef class SmartStruct:
*/
__pyx_t_2 = PyInt_FromLong(H5_INDEX_CRT_ORDER); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__INDEX_CRT_ORDER, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":157
* return rstr
*
* cdef H5PYConfig cfg = H5PYConfig() # <<<<<<<<<<<<<<
*
* cpdef H5PYConfig get_config():
*/
__pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_4h5py_2h5_H5PYConfig)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GOTREF(((PyObject *)__pyx_v_4h5py_2h5_cfg));
__Pyx_DECREF(((PyObject *)__pyx_v_4h5py_2h5_cfg));
__Pyx_GIVEREF(__pyx_t_2);
__pyx_v_4h5py_2h5_cfg = ((struct __pyx_obj_4h5py_2h5_H5PYConfig *)__pyx_t_2);
__pyx_t_2 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":331
* _conv.unregister_converters()
*
* hdf5_inited = 0 # <<<<<<<<<<<<<<
*
* cdef int init_hdf5() except -1:
*/
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__hdf5_inited, __pyx_int_0) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":356
* # === Module init =============================================================
*
* _hdf5_version_tuple = get_libversion() # <<<<<<<<<<<<<<
* _api_version_tuple = (int(H5PY_API/10), H5PY_API%10)
* _version_tuple = tuple([int(x) for x in H5PY_VERSION.split('-')[0].split('.')])
*/
__pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__get_libversion); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 356; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 356; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (PyObject_SetAttr(__pyx_m, __pyx_n_s___hdf5_version_tuple, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 356; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":357
*
* _hdf5_version_tuple = get_libversion()
* _api_version_tuple = (int(H5PY_API/10), H5PY_API%10) # <<<<<<<<<<<<<<
* _version_tuple = tuple([int(x) for x in H5PY_VERSION.split('-')[0].split('.')])
* _version_string = H5PY_VERSION
*/
__pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
__pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)&PyInt_Type)), __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__Pyx_INCREF(__pyx_int_8);
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_int_8);
__Pyx_GIVEREF(__pyx_int_8);
__pyx_t_2 = 0;
if (PyObject_SetAttr(__pyx_m, __pyx_n_s___api_version_tuple, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":358
* _hdf5_version_tuple = get_libversion()
* _api_version_tuple = (int(H5PY_API/10), H5PY_API%10)
* _version_tuple = tuple([int(x) for x in H5PY_VERSION.split('-')[0].split('.')]) # <<<<<<<<<<<<<<
* _version_string = H5PY_VERSION
*
*/
__pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
__pyx_t_2 = PyObject_GetAttr(((PyObject *)__pyx_kp_b_20), __pyx_n_s__split); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_kp_s_21));
PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_kp_s_21));
__Pyx_GIVEREF(((PyObject *)__pyx_kp_s_21));
__pyx_t_6 = PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_GetItemInt(__pyx_t_6, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__split); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_kp_s_10));
PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_kp_s_10));
__Pyx_GIVEREF(((PyObject *)__pyx_kp_s_10));
__pyx_t_2 = PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
__pyx_t_4 = 0; __pyx_t_5 = __pyx_t_2; __Pyx_INCREF(__pyx_t_5);
} else {
__pyx_t_4 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
for (;;) {
if (likely(PyList_CheckExact(__pyx_t_5))) {
if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_5)) break;
__pyx_t_2 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++;
} else if (likely(PyTuple_CheckExact(__pyx_t_5))) {
if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
__pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++;
} else {
__pyx_t_2 = PyIter_Next(__pyx_t_5);
if (!__pyx_t_2) {
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
break;
}
__Pyx_GOTREF(__pyx_t_2);
}
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__x, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__x); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_2);
__pyx_t_2 = 0;
__pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)&PyInt_Type)), __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_7 = PyList_Append(__pyx_t_3, (PyObject*)__pyx_t_2); if (unlikely(__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = ((PyObject *)PyList_AsTuple(__pyx_t_3)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_5));
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
if (PyObject_SetAttr(__pyx_m, __pyx_n_s___version_tuple, ((PyObject *)__pyx_t_5)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":359
* _api_version_tuple = (int(H5PY_API/10), H5PY_API%10)
* _version_tuple = tuple([int(x) for x in H5PY_VERSION.split('-')[0].split('.')])
* _version_string = H5PY_VERSION # <<<<<<<<<<<<<<
*
* # For backwards compatibility with user code used to the exception classes
*/
if (PyObject_SetAttr(__pyx_m, __pyx_n_s___version_string, ((PyObject *)__pyx_kp_b_20)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":363
* # For backwards compatibility with user code used to the exception classes
* # being in this module.
* from h5e import H5Error # <<<<<<<<<<<<<<
*
* init_hdf5()
*/
__pyx_t_5 = PyList_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_5));
__Pyx_INCREF(((PyObject *)__pyx_n_s__H5Error));
PyList_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_n_s__H5Error));
__Pyx_GIVEREF(((PyObject *)__pyx_n_s__H5Error));
__pyx_t_3 = __Pyx_Import(((PyObject *)__pyx_n_s__h5e), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0;
__pyx_t_5 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__H5Error); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_5);
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__H5Error, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":365
* from h5e import H5Error
*
* init_hdf5() # <<<<<<<<<<<<<<
* import _conv
*/
__pyx_t_7 = __pyx_f_4h5py_2h5_init_hdf5(); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
/* "/home/tachyon/slave/unix-release/build/h5py/h5.pyx":366
*
* init_hdf5()
* import _conv # <<<<<<<<<<<<<<
*/
__pyx_t_3 = __Pyx_Import(((PyObject *)__pyx_n_s___conv), 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
if (PyObject_SetAttr(__pyx_m, __pyx_n_s___conv, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "/home/tachyon/slave/unix-release/build/h5py/h5e.pxd":1
* #+ # <<<<<<<<<<<<<<
* #
* # This file is part of h5py, a low-level Python interface to the HDF5 library.
*/
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
if (__pyx_m) {
__Pyx_AddTraceback("init h5py.h5");
Py_DECREF(__pyx_m); __pyx_m = 0;
} else if (!PyErr_Occurred()) {
PyErr_SetString(PyExc_ImportError, "init h5py.h5");
}
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#if PY_MAJOR_VERSION < 3
return;
#else
return __pyx_m;
#endif
}
static const char *__pyx_filenames[] = {
"h5.pyx",
"h5e.pxd",
};
/* Runtime support code */
static void __pyx_init_filenames(void) {
__pyx_f = __pyx_filenames;
}
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) {
PyObject *local_type, *local_value, *local_tb;
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;
PyErr_NormalizeException(&local_type, &local_value, &local_tb);
if (unlikely(tstate->curexc_type))
goto bad;
#if PY_MAJOR_VERSION >= 3
if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0))
goto bad;
#endif
*type = local_type;
*value = local_value;
*tb = local_tb;
Py_INCREF(local_type);
Py_INCREF(local_value);
Py_INCREF(local_tb);
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;
/* Make sure tstate is in a consistent state when we XDECREF
these objects (XDECREF may run arbitrary code). */
Py_XDECREF(tmp_type);
Py_XDECREF(tmp_value);
Py_XDECREF(tmp_tb);
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_RaiseArgtupleInvalid(
const char* func_name,
int exact,
Py_ssize_t num_min,
Py_ssize_t num_max,
Py_ssize_t num_found)
{
Py_ssize_t num_expected;
const char *number, *more_or_less;
if (num_found < num_min) {
num_expected = num_min;
more_or_less = "at least";
} else {
num_expected = num_max;
more_or_less = "at most";
}
if (exact) {
more_or_less = "exactly";
}
number = (num_expected == 1) ? "" : "s";
PyErr_Format(PyExc_TypeError,
#if PY_VERSION_HEX < 0x02050000
"%s() takes %s %d positional argument%s (%d given)",
#else
"%s() takes %s %zd positional argument%s (%zd given)",
#endif
func_name, more_or_less, num_expected, number, num_found);
}
static INLINE int __Pyx_CheckKeywordStrings(
PyObject *kwdict,
const char* function_name,
int kw_allowed)
{
PyObject* key = 0;
Py_ssize_t pos = 0;
while (PyDict_Next(kwdict, &pos, &key, 0)) {
#if PY_MAJOR_VERSION < 3
if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key)))
#else
if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key)))
#endif
goto invalid_keyword_type;
}
if ((!kw_allowed) && unlikely(key))
goto invalid_keyword;
return 1;
invalid_keyword_type:
PyErr_Format(PyExc_TypeError,
"%s() keywords must be strings", function_name);
return 0;
invalid_keyword:
PyErr_Format(PyExc_TypeError,
#if PY_MAJOR_VERSION < 3
"%s() got an unexpected keyword argument '%s'",
function_name, PyString_AsString(key));
#else
"%s() got an unexpected keyword argument '%U'",
function_name, key);
#endif
return 0;
}
static void __Pyx_RaiseDoubleKeywordsError(
const char* func_name,
PyObject* kw_name)
{
PyErr_Format(PyExc_TypeError,
#if PY_MAJOR_VERSION >= 3
"%s() got multiple values for keyword argument '%U'", func_name, kw_name);
#else
"%s() got multiple values for keyword argument '%s'", func_name,
PyString_AS_STRING(kw_name));
#endif
}
static int __Pyx_ParseOptionalKeywords(
PyObject *kwds,
PyObject **argnames[],
PyObject *kwds2,
PyObject *values[],
Py_ssize_t num_pos_args,
const char* function_name)
{
PyObject *key = 0, *value = 0;
Py_ssize_t pos = 0;
PyObject*** name;
PyObject*** first_kw_arg = argnames + num_pos_args;
while (PyDict_Next(kwds, &pos, &key, &value)) {
name = first_kw_arg;
while (*name && (**name != key)) name++;
if (*name) {
values[name-argnames] = value;
} else {
#if PY_MAJOR_VERSION < 3
if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) {
#else
if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) {
#endif
goto invalid_keyword_type;
} else {
for (name = first_kw_arg; *name; name++) {
#if PY_MAJOR_VERSION >= 3
if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) &&
PyUnicode_Compare(**name, key) == 0) break;
#else
if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) &&
_PyString_Eq(**name, key)) break;
#endif
}
if (*name) {
values[name-argnames] = value;
} else {
/* unexpected keyword found */
for (name=argnames; name != first_kw_arg; name++) {
if (**name == key) goto arg_passed_twice;
#if PY_MAJOR_VERSION >= 3
if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) &&
PyUnicode_Compare(**name, key) == 0) goto arg_passed_twice;
#else
if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) &&
_PyString_Eq(**name, key)) goto arg_passed_twice;
#endif
}
if (kwds2) {
if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad;
} else {
goto invalid_keyword;
}
}
}
}
}
return 0;
arg_passed_twice:
__Pyx_RaiseDoubleKeywordsError(function_name, **name);
goto bad;
invalid_keyword_type:
PyErr_Format(PyExc_TypeError,
"%s() keywords must be strings", function_name);
goto bad;
invalid_keyword:
PyErr_Format(PyExc_TypeError,
#if PY_MAJOR_VERSION < 3
"%s() got an unexpected keyword argument '%s'",
function_name, PyString_AsString(key));
#else
"%s() got an unexpected keyword argument '%U'",
function_name, key);
#endif
bad:
return -1;
}
static INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {
if (unlikely(!type)) {
PyErr_Format(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 INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb) {
PyObject *tmp_type, *tmp_value, *tmp_tb;
PyThreadState *tstate = PyThreadState_GET();
tmp_type = tstate->curexc_type;
tmp_value = tstate->curexc_value;
tmp_tb = tstate->curexc_traceback;
tstate->curexc_type = type;
tstate->curexc_value = value;
tstate->curexc_traceback = tb;
Py_XDECREF(tmp_type);
Py_XDECREF(tmp_value);
Py_XDECREF(tmp_tb);
}
static INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb) {
PyThreadState *tstate = PyThreadState_GET();
*type = tstate->curexc_type;
*value = tstate->curexc_value;
*tb = tstate->curexc_traceback;
tstate->curexc_type = 0;
tstate->curexc_value = 0;
tstate->curexc_traceback = 0;
}
static INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) {
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);
}
static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb) {
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);
}
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list) {
PyObject *__import__ = 0;
PyObject *empty_list = 0;
PyObject *module = 0;
PyObject *global_dict = 0;
PyObject *empty_dict = 0;
PyObject *list;
__import__ = __Pyx_GetAttrString(__pyx_b, "__import__");
if (!__import__)
goto bad;
if (from_list)
list = from_list;
else {
empty_list = PyList_New(0);
if (!empty_list)
goto bad;
list = empty_list;
}
global_dict = PyModule_GetDict(__pyx_m);
if (!global_dict)
goto bad;
empty_dict = PyDict_New();
if (!empty_dict)
goto bad;
module = PyObject_CallFunctionObjArgs(__import__,
name, global_dict, empty_dict, list, NULL);
bad:
Py_XDECREF(empty_list);
Py_XDECREF(__import__);
Py_XDECREF(empty_dict);
return module;
}
static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) {
PyObject *result;
result = PyObject_GetAttr(dict, name);
if (!result)
PyErr_SetObject(PyExc_NameError, name);
return result;
}
#if PY_MAJOR_VERSION < 3
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb) {
Py_XINCREF(type);
Py_XINCREF(value);
Py_XINCREF(tb);
/* First, check the traceback argument, replacing None with NULL. */
if (tb == Py_None) {
Py_DECREF(tb);
tb = 0;
}
else if (tb != NULL && !PyTraceBack_Check(tb)) {
PyErr_SetString(PyExc_TypeError,
"raise: arg 3 must be a traceback or None");
goto raise_error;
}
/* Next, replace a missing value with None */
if (value == NULL) {
value = Py_None;
Py_INCREF(value);
}
#if PY_VERSION_HEX < 0x02050000
if (!PyClass_Check(type))
#else
if (!PyType_Check(type))
#endif
{
/* Raising an instance. The value should be a dummy. */
if (value != Py_None) {
PyErr_SetString(PyExc_TypeError,
"instance exception may not have a separate value");
goto raise_error;
}
/* Normalize to raise <class>, <instance> */
Py_DECREF(value);
value = type;
#if PY_VERSION_HEX < 0x02050000
if (PyInstance_Check(type)) {
type = (PyObject*) ((PyInstanceObject*)type)->in_class;
Py_INCREF(type);
}
else {
type = 0;
PyErr_SetString(PyExc_TypeError,
"raise: exception must be an old-style class or instance");
goto raise_error;
}
#else
type = (PyObject*) Py_TYPE(type);
Py_INCREF(type);
if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) {
PyErr_SetString(PyExc_TypeError,
"raise: exception class must be a subclass of BaseException");
goto raise_error;
}
#endif
}
__Pyx_ErrRestore(type, value, tb);
return;
raise_error:
Py_XDECREF(value);
Py_XDECREF(type);
Py_XDECREF(tb);
return;
}
#else /* Python 3+ */
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb) {
if (tb == Py_None) {
tb = 0;
} else if (tb && !PyTraceBack_Check(tb)) {
PyErr_SetString(PyExc_TypeError,
"raise: arg 3 must be a traceback or None");
goto bad;
}
if (value == Py_None)
value = 0;
if (PyExceptionInstance_Check(type)) {
if (value) {
PyErr_SetString(PyExc_TypeError,
"instance exception may not have a separate value");
goto bad;
}
value = type;
type = (PyObject*) Py_TYPE(value);
} else if (!PyExceptionClass_Check(type)) {
PyErr_SetString(PyExc_TypeError,
"raise: exception class must be a subclass of BaseException");
goto bad;
}
PyErr_SetObject(type, value);
if (tb) {
PyThreadState *tstate = PyThreadState_GET();
PyObject* tmp_tb = tstate->curexc_traceback;
if (tb != tmp_tb) {
Py_INCREF(tb);
tstate->curexc_traceback = tb;
Py_XDECREF(tmp_tb);
}
}
bad:
return;
}
#endif
static INLINE PyObject *__Pyx_PyInt_to_py_hid_t(hid_t val) {
const hid_t neg_one = (hid_t)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(hid_t) < sizeof(long)) {
return PyInt_FromLong((long)val);
} else if (sizeof(hid_t) == sizeof(long)) {
if (is_unsigned)
return PyLong_FromUnsignedLong((unsigned long)val);
else
return PyInt_FromLong((long)val);
} else { /* (sizeof(hid_t) > sizeof(long)) */
if (is_unsigned)
return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG)val);
else
return PyLong_FromLongLong((PY_LONG_LONG)val);
}
}
static INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) {
const unsigned char neg_one = (unsigned char)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(unsigned char) < sizeof(long)) {
long val = __Pyx_PyInt_AsLong(x);
if (unlikely(val != (long)(unsigned char)val)) {
if (!unlikely(val == -1 && PyErr_Occurred())) {
PyErr_SetString(PyExc_OverflowError,
(is_unsigned && unlikely(val < 0)) ?
"can't convert negative value to unsigned char" :
"value too large to convert to unsigned char");
}
return (unsigned char)-1;
}
return (unsigned char)val;
}
return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x);
}
static INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) {
const unsigned short neg_one = (unsigned short)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(unsigned short) < sizeof(long)) {
long val = __Pyx_PyInt_AsLong(x);
if (unlikely(val != (long)(unsigned short)val)) {
if (!unlikely(val == -1 && PyErr_Occurred())) {
PyErr_SetString(PyExc_OverflowError,
(is_unsigned && unlikely(val < 0)) ?
"can't convert negative value to unsigned short" :
"value too large to convert to unsigned short");
}
return (unsigned short)-1;
}
return (unsigned short)val;
}
return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x);
}
static INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) {
const unsigned int neg_one = (unsigned int)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(unsigned int) < sizeof(long)) {
long val = __Pyx_PyInt_AsLong(x);
if (unlikely(val != (long)(unsigned int)val)) {
if (!unlikely(val == -1 && PyErr_Occurred())) {
PyErr_SetString(PyExc_OverflowError,
(is_unsigned && unlikely(val < 0)) ?
"can't convert negative value to unsigned int" :
"value too large to convert to unsigned int");
}
return (unsigned int)-1;
}
return (unsigned int)val;
}
return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x);
}
static INLINE char __Pyx_PyInt_AsChar(PyObject* x) {
const char neg_one = (char)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(char) < sizeof(long)) {
long val = __Pyx_PyInt_AsLong(x);
if (unlikely(val != (long)(char)val)) {
if (!unlikely(val == -1 && PyErr_Occurred())) {
PyErr_SetString(PyExc_OverflowError,
(is_unsigned && unlikely(val < 0)) ?
"can't convert negative value to char" :
"value too large to convert to char");
}
return (char)-1;
}
return (char)val;
}
return (char)__Pyx_PyInt_AsLong(x);
}
static INLINE short __Pyx_PyInt_AsShort(PyObject* x) {
const short neg_one = (short)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(short) < sizeof(long)) {
long val = __Pyx_PyInt_AsLong(x);
if (unlikely(val != (long)(short)val)) {
if (!unlikely(val == -1 && PyErr_Occurred())) {
PyErr_SetString(PyExc_OverflowError,
(is_unsigned && unlikely(val < 0)) ?
"can't convert negative value to short" :
"value too large to convert to short");
}
return (short)-1;
}
return (short)val;
}
return (short)__Pyx_PyInt_AsLong(x);
}
static INLINE int __Pyx_PyInt_AsInt(PyObject* x) {
const int neg_one = (int)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(int) < sizeof(long)) {
long val = __Pyx_PyInt_AsLong(x);
if (unlikely(val != (long)(int)val)) {
if (!unlikely(val == -1 && PyErr_Occurred())) {
PyErr_SetString(PyExc_OverflowError,
(is_unsigned && unlikely(val < 0)) ?
"can't convert negative value to int" :
"value too large to convert to int");
}
return (int)-1;
}
return (int)val;
}
return (int)__Pyx_PyInt_AsLong(x);
}
static INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) {
const signed char neg_one = (signed char)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(signed char) < sizeof(long)) {
long val = __Pyx_PyInt_AsLong(x);
if (unlikely(val != (long)(signed char)val)) {
if (!unlikely(val == -1 && PyErr_Occurred())) {
PyErr_SetString(PyExc_OverflowError,
(is_unsigned && unlikely(val < 0)) ?
"can't convert negative value to signed char" :
"value too large to convert to signed char");
}
return (signed char)-1;
}
return (signed char)val;
}
return (signed char)__Pyx_PyInt_AsSignedLong(x);
}
static INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) {
const signed short neg_one = (signed short)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(signed short) < sizeof(long)) {
long val = __Pyx_PyInt_AsLong(x);
if (unlikely(val != (long)(signed short)val)) {
if (!unlikely(val == -1 && PyErr_Occurred())) {
PyErr_SetString(PyExc_OverflowError,
(is_unsigned && unlikely(val < 0)) ?
"can't convert negative value to signed short" :
"value too large to convert to signed short");
}
return (signed short)-1;
}
return (signed short)val;
}
return (signed short)__Pyx_PyInt_AsSignedLong(x);
}
static INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) {
const signed int neg_one = (signed int)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(signed int) < sizeof(long)) {
long val = __Pyx_PyInt_AsLong(x);
if (unlikely(val != (long)(signed int)val)) {
if (!unlikely(val == -1 && PyErr_Occurred())) {
PyErr_SetString(PyExc_OverflowError,
(is_unsigned && unlikely(val < 0)) ?
"can't convert negative value to signed int" :
"value too large to convert to signed int");
}
return (signed int)-1;
}
return (signed int)val;
}
return (signed int)__Pyx_PyInt_AsSignedLong(x);
}
static INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) {
const unsigned long neg_one = (unsigned long)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
#if PY_VERSION_HEX < 0x03000000
if (likely(PyInt_Check(x))) {
long val = PyInt_AS_LONG(x);
if (is_unsigned && unlikely(val < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to unsigned long");
return (unsigned long)-1;
}
return (unsigned long)val;
} else
#endif
if (likely(PyLong_Check(x))) {
if (is_unsigned) {
if (unlikely(Py_SIZE(x) < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to unsigned long");
return (unsigned long)-1;
}
return PyLong_AsUnsignedLong(x);
} else {
return PyLong_AsLong(x);
}
} else {
unsigned long val;
PyObject *tmp = __Pyx_PyNumber_Int(x);
if (!tmp) return (unsigned long)-1;
val = __Pyx_PyInt_AsUnsignedLong(tmp);
Py_DECREF(tmp);
return val;
}
}
static INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) {
const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
#if PY_VERSION_HEX < 0x03000000
if (likely(PyInt_Check(x))) {
long val = PyInt_AS_LONG(x);
if (is_unsigned && unlikely(val < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to unsigned PY_LONG_LONG");
return (unsigned PY_LONG_LONG)-1;
}
return (unsigned PY_LONG_LONG)val;
} else
#endif
if (likely(PyLong_Check(x))) {
if (is_unsigned) {
if (unlikely(Py_SIZE(x) < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to unsigned PY_LONG_LONG");
return (unsigned PY_LONG_LONG)-1;
}
return PyLong_AsUnsignedLongLong(x);
} else {
return PyLong_AsLongLong(x);
}
} else {
unsigned PY_LONG_LONG val;
PyObject *tmp = __Pyx_PyNumber_Int(x);
if (!tmp) return (unsigned PY_LONG_LONG)-1;
val = __Pyx_PyInt_AsUnsignedLongLong(tmp);
Py_DECREF(tmp);
return val;
}
}
static INLINE long __Pyx_PyInt_AsLong(PyObject* x) {
const long neg_one = (long)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
#if PY_VERSION_HEX < 0x03000000
if (likely(PyInt_Check(x))) {
long val = PyInt_AS_LONG(x);
if (is_unsigned && unlikely(val < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to long");
return (long)-1;
}
return (long)val;
} else
#endif
if (likely(PyLong_Check(x))) {
if (is_unsigned) {
if (unlikely(Py_SIZE(x) < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to long");
return (long)-1;
}
return PyLong_AsUnsignedLong(x);
} else {
return PyLong_AsLong(x);
}
} else {
long val;
PyObject *tmp = __Pyx_PyNumber_Int(x);
if (!tmp) return (long)-1;
val = __Pyx_PyInt_AsLong(tmp);
Py_DECREF(tmp);
return val;
}
}
static INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) {
const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
#if PY_VERSION_HEX < 0x03000000
if (likely(PyInt_Check(x))) {
long val = PyInt_AS_LONG(x);
if (is_unsigned && unlikely(val < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to PY_LONG_LONG");
return (PY_LONG_LONG)-1;
}
return (PY_LONG_LONG)val;
} else
#endif
if (likely(PyLong_Check(x))) {
if (is_unsigned) {
if (unlikely(Py_SIZE(x) < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to PY_LONG_LONG");
return (PY_LONG_LONG)-1;
}
return PyLong_AsUnsignedLongLong(x);
} else {
return PyLong_AsLongLong(x);
}
} else {
PY_LONG_LONG val;
PyObject *tmp = __Pyx_PyNumber_Int(x);
if (!tmp) return (PY_LONG_LONG)-1;
val = __Pyx_PyInt_AsLongLong(tmp);
Py_DECREF(tmp);
return val;
}
}
static INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) {
const signed long neg_one = (signed long)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
#if PY_VERSION_HEX < 0x03000000
if (likely(PyInt_Check(x))) {
long val = PyInt_AS_LONG(x);
if (is_unsigned && unlikely(val < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to signed long");
return (signed long)-1;
}
return (signed long)val;
} else
#endif
if (likely(PyLong_Check(x))) {
if (is_unsigned) {
if (unlikely(Py_SIZE(x) < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to signed long");
return (signed long)-1;
}
return PyLong_AsUnsignedLong(x);
} else {
return PyLong_AsLong(x);
}
} else {
signed long val;
PyObject *tmp = __Pyx_PyNumber_Int(x);
if (!tmp) return (signed long)-1;
val = __Pyx_PyInt_AsSignedLong(tmp);
Py_DECREF(tmp);
return val;
}
}
static INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) {
const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
#if PY_VERSION_HEX < 0x03000000
if (likely(PyInt_Check(x))) {
long val = PyInt_AS_LONG(x);
if (is_unsigned && unlikely(val < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to signed PY_LONG_LONG");
return (signed PY_LONG_LONG)-1;
}
return (signed PY_LONG_LONG)val;
} else
#endif
if (likely(PyLong_Check(x))) {
if (is_unsigned) {
if (unlikely(Py_SIZE(x) < 0)) {
PyErr_SetString(PyExc_OverflowError,
"can't convert negative value to signed PY_LONG_LONG");
return (signed PY_LONG_LONG)-1;
}
return PyLong_AsUnsignedLongLong(x);
} else {
return PyLong_AsLongLong(x);
}
} else {
signed PY_LONG_LONG val;
PyObject *tmp = __Pyx_PyNumber_Int(x);
if (!tmp) return (signed PY_LONG_LONG)-1;
val = __Pyx_PyInt_AsSignedLongLong(tmp);
Py_DECREF(tmp);
return val;
}
}
static INLINE hid_t __Pyx_PyInt_from_py_hid_t(PyObject* x) {
const hid_t neg_one = (hid_t)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero;
if (sizeof(hid_t) == sizeof(char)) {
if (is_unsigned)
return (hid_t)__Pyx_PyInt_AsUnsignedChar(x);
else
return (hid_t)__Pyx_PyInt_AsSignedChar(x);
} else if (sizeof(hid_t) == sizeof(short)) {
if (is_unsigned)
return (hid_t)__Pyx_PyInt_AsUnsignedShort(x);
else
return (hid_t)__Pyx_PyInt_AsSignedShort(x);
} else if (sizeof(hid_t) == sizeof(int)) {
if (is_unsigned)
return (hid_t)__Pyx_PyInt_AsUnsignedInt(x);
else
return (hid_t)__Pyx_PyInt_AsSignedInt(x);
} else if (sizeof(hid_t) == sizeof(long)) {
if (is_unsigned)
return (hid_t)__Pyx_PyInt_AsUnsignedLong(x);
else
return (hid_t)__Pyx_PyInt_AsSignedLong(x);
} else if (sizeof(hid_t) == sizeof(PY_LONG_LONG)) {
if (is_unsigned)
return (hid_t)__Pyx_PyInt_AsUnsignedLongLong(x);
else
return (hid_t)__Pyx_PyInt_AsSignedLongLong(x);
#if 0
} else if (sizeof(hid_t) > sizeof(short) &&
sizeof(hid_t) < sizeof(int)) { /* __int32 ILP64 ? */
if (is_unsigned)
return (hid_t)__Pyx_PyInt_AsUnsignedInt(x);
else
return (hid_t)__Pyx_PyInt_AsSignedInt(x);
#endif
}
PyErr_SetString(PyExc_TypeError, "hid_t");
return (hid_t)-1;
}
static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig) {
PyObject *d = 0;
PyObject *cobj = 0;
union {
void (*fp)(void);
void *p;
} tmp;
d = PyObject_GetAttrString(__pyx_m, (char *)"__pyx_capi__");
if (!d) {
PyErr_Clear();
d = PyDict_New();
if (!d)
goto bad;
Py_INCREF(d);
if (PyModule_AddObject(__pyx_m, (char *)"__pyx_capi__", d) < 0)
goto bad;
}
tmp.fp = f;
#if PY_VERSION_HEX < 0x03010000
cobj = PyCObject_FromVoidPtrAndDesc(tmp.p, (void *)sig, 0);
#else
cobj = PyCapsule_New(tmp.p, sig, 0);
#endif
if (!cobj)
goto bad;
if (PyDict_SetItemString(d, name, cobj) < 0)
goto bad;
Py_DECREF(cobj);
Py_DECREF(d);
return 0;
bad:
Py_XDECREF(cobj);
Py_XDECREF(d);
return -1;
}
#ifndef __PYX_HAVE_RT_ImportType
#define __PYX_HAVE_RT_ImportType
static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,
long size)
{
PyObject *py_module = 0;
PyObject *result = 0;
PyObject *py_name = 0;
py_module = __Pyx_ImportModule(module_name);
if (!py_module)
goto bad;
#if PY_MAJOR_VERSION < 3
py_name = PyString_FromString(class_name);
#else
py_name = PyUnicode_FromString(class_name);
#endif
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,
"%s.%s is not a type object",
module_name, class_name);
goto bad;
}
if (((PyTypeObject *)result)->tp_basicsize != size) {
PyErr_Format(PyExc_ValueError,
"%s.%s does not appear to be the correct type object",
module_name, class_name);
goto bad;
}
return (PyTypeObject *)result;
bad:
Py_XDECREF(py_module);
Py_XDECREF(result);
return 0;
}
#endif
#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;
#if PY_MAJOR_VERSION < 3
py_name = PyString_FromString(name);
#else
py_name = PyUnicode_FromString(name);
#endif
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_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;
#if PY_VERSION_HEX < 0x03010000
const char *desc, *s1, *s2;
#endif
d = PyObject_GetAttrString(module, (char *)"__pyx_capi__");
if (!d)
goto bad;
cobj = PyDict_GetItemString(d, funcname);
if (!cobj) {
PyErr_Format(PyExc_ImportError,
"%s does not export expected C function %s",
PyModule_GetName(module), funcname);
goto bad;
}
#if PY_VERSION_HEX < 0x03010000
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 %s.%s has wrong signature (expected %s, got %s)",
PyModule_GetName(module), funcname, sig, desc);
goto bad;
}
tmp.p = PyCObject_AsVoidPtr(cobj);
#else
if (!PyCapsule_IsValid(cobj, sig)) {
PyErr_Format(PyExc_TypeError,
"C function %s.%s has wrong signature (expected %s, got %s)",
PyModule_GetName(module), funcname, sig, PyCapsule_GetName(cobj));
goto bad;
}
tmp.p = PyCapsule_GetPointer(cobj, sig);
#endif
*f = tmp.fp;
if (!(*f))
goto bad;
Py_DECREF(d);
return 0;
bad:
Py_XDECREF(d);
return -1;
}
#endif
#include "compile.h"
#include "frameobject.h"
#include "traceback.h"
static void __Pyx_AddTraceback(const char *funcname) {
PyObject *py_srcfile = 0;
PyObject *py_funcname = 0;
PyObject *py_globals = 0;
PyCodeObject *py_code = 0;
PyFrameObject *py_frame = 0;
#if PY_MAJOR_VERSION < 3
py_srcfile = PyString_FromString(__pyx_filename);
#else
py_srcfile = PyUnicode_FromString(__pyx_filename);
#endif
if (!py_srcfile) goto bad;
if (__pyx_clineno) {
#if PY_MAJOR_VERSION < 3
py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno);
#else
py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno);
#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_globals = PyModule_GetDict(__pyx_m);
if (!py_globals) goto bad;
py_code = PyCode_New(
0, /*int argcount,*/
#if PY_MAJOR_VERSION >= 3
0, /*int kwonlyargcount,*/
#endif
0, /*int nlocals,*/
0, /*int stacksize,*/
0, /*int flags,*/
__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,*/
__pyx_lineno, /*int firstlineno,*/
__pyx_empty_bytes /*PyObject *lnotab*/
);
if (!py_code) goto bad;
py_frame = PyFrame_New(
PyThreadState_GET(), /*PyThreadState *tstate,*/
py_code, /*PyCodeObject *code,*/
py_globals, /*PyObject *globals,*/
0 /*PyObject *locals*/
);
if (!py_frame) goto bad;
py_frame->f_lineno = __pyx_lineno;
PyTraceBack_Here(py_frame);
bad:
Py_XDECREF(py_srcfile);
Py_XDECREF(py_funcname);
Py_XDECREF(py_code);
Py_XDECREF(py_frame);
}
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 /* Python 3+ has unicode identifiers */
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;
}
/* Type Conversion Functions */
static INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {
if (x == Py_True) return 1;
else if ((x == Py_False) | (x == Py_None)) return 0;
else return PyObject_IsTrue(x);
}
static INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) {
PyNumberMethods *m;
const char *name = NULL;
PyObject *res = NULL;
#if PY_VERSION_HEX < 0x03000000
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_VERSION_HEX < 0x03000000
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_VERSION_HEX < 0x03000000
if (!PyInt_Check(res) && !PyLong_Check(res)) {
#else
if (!PyLong_Check(res)) {
#endif
PyErr_Format(PyExc_TypeError,
"__%s__ returned non-%s (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 INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
Py_ssize_t ival;
PyObject* x = PyNumber_Index(b);
if (!x) return -1;
ival = PyInt_AsSsize_t(x);
Py_DECREF(x);
return ival;
}
static INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {
#if PY_VERSION_HEX < 0x02050000
if (ival <= LONG_MAX)
return PyInt_FromLong((long)ival);
else {
unsigned char *bytes = (unsigned char *) &ival;
int one = 1; int little = (int)*(unsigned char*)&one;
return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0);
}
#else
return PyInt_FromSize_t(ival);
#endif
}
static INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) {
unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x);
if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) {
return (size_t)-1;
} else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) {
PyErr_SetString(PyExc_OverflowError,
"value too large to convert to size_t");
return (size_t)-1;
}
return (size_t)val;
}
#endif /* Py_PYTHON_H */