~ubuntu-branches/ubuntu/trusty/h5py/trusty-proposed

« back to all changes in this revision

Viewing changes to h5py/h5t.c

  • Committer: Package Import Robot
  • Author(s): Soeren Sonnenburg
  • Date: 2011-10-12 12:47:45 UTC
  • mfrom: (1.1.5 upstream)
  • Revision ID: package-import@ubuntu.com-20111012124745-vj0w8zil1zrt26vo
Tags: 2.0.1-1
* New upstream version.
* Remove h5py_config.pickle created on
  python setup.py clean (Closes: #643152)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* Generated by Cython 0.13 on Sun Jun 19 18:37:49 2011 */
 
1
/* Generated by Cython 0.13 on Sat Aug 13 01:15:59 2011 */
2
2
 
3
3
#define PY_SSIZE_T_CLEAN
4
4
#include "Python.h"
286
286
 
287
287
/* Type declarations */
288
288
 
289
 
/* "/home/tachyon/h5py/h5py/h5r.pxd":20
 
289
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5r.pxd":20
290
290
 *   ctypedef unsigned char hdset_reg_ref_t[12]
291
291
 * 
292
292
 * cdef union ref_u:             # <<<<<<<<<<<<<<
304
304
  hid_t space_id;
305
305
};
306
306
 
307
 
/* "/home/tachyon/h5py/h5py/utils.pxd":21
 
307
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/utils.pxd":21
308
308
 * 
309
309
 * cpdef int check_numpy_read(ndarray arr, hid_t space_id=*) except -1
310
310
 * cpdef int check_numpy_write(ndarray arr, hid_t space_id=*) except -1             # <<<<<<<<<<<<<<
317
317
  hid_t space_id;
318
318
};
319
319
 
320
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":72
 
320
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":72
321
321
 * 
322
322
 * cpdef TypeID typewrap(hid_t id_)
323
323
 * cpdef TypeID py_create(object dtype, bint logical=*)             # <<<<<<<<<<<<<<
330
330
  int logical;
331
331
};
332
332
 
333
 
/* "/home/tachyon/h5py/h5py/_objects.pxd":9
 
333
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/_objects.pxd":9
334
334
 *     cdef readonly int locked
335
335
 * 
336
336
 * cdef class ObjectID:             # <<<<<<<<<<<<<<
345
345
  PyObject *_hash;
346
346
};
347
347
 
348
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":17
 
348
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":17
349
349
 * from _objects cimport class ObjectID
350
350
 * 
351
351
 * cdef class TypeID(ObjectID):             # <<<<<<<<<<<<<<
358
358
  struct __pyx_vtabstruct_4h5py_3h5t_TypeID *__pyx_vtab;
359
359
};
360
360
 
361
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":37
 
361
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":37
362
362
 *     pass
363
363
 * 
364
364
 * cdef class TypeTimeID(TypeID):             # <<<<<<<<<<<<<<
370
370
  struct __pyx_obj_4h5py_3h5t_TypeID __pyx_base;
371
371
};
372
372
 
373
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":43
 
373
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":43
374
374
 *     pass
375
375
 * 
376
376
 * cdef class TypeReferenceID(TypeID):             # <<<<<<<<<<<<<<
382
382
  struct __pyx_obj_4h5py_3h5t_TypeID __pyx_base;
383
383
};
384
384
 
385
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":40
 
385
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":40
386
386
 *     pass
387
387
 * 
388
388
 * cdef class TypeBitfieldID(TypeID):             # <<<<<<<<<<<<<<
394
394
  struct __pyx_obj_4h5py_3h5t_TypeID __pyx_base;
395
395
};
396
396
 
397
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":48
 
397
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":48
398
398
 * # --- Numeric atomic types ---
399
399
 * 
400
400
 * cdef class TypeAtomicID(TypeID):             # <<<<<<<<<<<<<<
406
406
  struct __pyx_obj_4h5py_3h5t_TypeID __pyx_base;
407
407
};
408
408
 
409
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":51
 
409
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":51
410
410
 *     pass
411
411
 * 
412
412
 * cdef class TypeIntegerID(TypeAtomicID):             # <<<<<<<<<<<<<<
418
418
  struct __pyx_obj_4h5py_3h5t_TypeAtomicID __pyx_base;
419
419
};
420
420
 
421
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":29
 
421
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":29
422
422
 *     pass
423
423
 * 
424
424
 * cdef class TypeStringID(TypeID):             # <<<<<<<<<<<<<<
430
430
  struct __pyx_obj_4h5py_3h5t_TypeID __pyx_base;
431
431
};
432
432
 
433
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":26
 
433
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":26
434
434
 *     pass
435
435
 * 
436
436
 * cdef class TypeOpaqueID(TypeID):             # <<<<<<<<<<<<<<
442
442
  struct __pyx_obj_4h5py_3h5t_TypeID __pyx_base;
443
443
};
444
444
 
445
 
/* "/home/tachyon/h5py/h5py/h5r.pxd":24
 
445
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5r.pxd":24
446
446
 *     hdset_reg_ref_t    reg_ref
447
447
 * 
448
448
 * cdef class Reference:             # <<<<<<<<<<<<<<
457
457
  size_t typesize;
458
458
};
459
459
 
460
 
/* "/home/tachyon/h5py/h5py/h5r.pxd":30
 
460
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5r.pxd":30
461
461
 *     cdef readonly size_t typesize
462
462
 * 
463
463
 * cdef class RegionReference(Reference):             # <<<<<<<<<<<<<<
469
469
  struct __pyx_obj_4h5py_3h5r_Reference __pyx_base;
470
470
};
471
471
 
472
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":59
 
472
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":59
473
473
 * # --- Enums & compound types ---
474
474
 * 
475
475
 * cdef class TypeCompositeID(TypeID):             # <<<<<<<<<<<<<<
481
481
  struct __pyx_obj_4h5py_3h5t_TypeID __pyx_base;
482
482
};
483
483
 
484
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":62
 
484
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":62
485
485
 *     pass
486
486
 * 
487
487
 * cdef class TypeEnumID(TypeCompositeID):             # <<<<<<<<<<<<<<
493
493
  struct __pyx_obj_4h5py_3h5t_TypeCompositeID __pyx_base;
494
494
};
495
495
 
496
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":23
 
496
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":23
497
497
 * # --- Top-level classes ---
498
498
 * 
499
499
 * cdef class TypeArrayID(TypeID):             # <<<<<<<<<<<<<<
505
505
  struct __pyx_obj_4h5py_3h5t_TypeID __pyx_base;
506
506
};
507
507
 
508
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":66
 
508
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":66
509
509
 *     cdef int enum_convert(self, long long *buf, int reverse) except -1
510
510
 * 
511
511
 * cdef class TypeCompoundID(TypeCompositeID):             # <<<<<<<<<<<<<<
517
517
  struct __pyx_obj_4h5py_3h5t_TypeCompositeID __pyx_base;
518
518
};
519
519
 
520
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":54
 
520
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":54
521
521
 *     pass
522
522
 * 
523
523
 * cdef class TypeFloatID(TypeAtomicID):             # <<<<<<<<<<<<<<
529
529
  struct __pyx_obj_4h5py_3h5t_TypeAtomicID __pyx_base;
530
530
};
531
531
 
532
 
/* "/home/tachyon/h5py/h5py/_objects.pxd":3
 
532
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/_objects.pxd":3
533
533
 * from defs cimport *
534
534
 * 
535
535
 * cdef class IDProxy:             # <<<<<<<<<<<<<<
544
544
  int locked;
545
545
};
546
546
 
547
 
/* "/home/tachyon/h5py/h5py/h5t.pxd":33
 
547
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pxd":33
548
548
 *     pass
549
549
 * 
550
550
 * cdef class TypeVlenID(TypeID):             # <<<<<<<<<<<<<<
557
557
};
558
558
 
559
559
 
560
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":282
 
560
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":282
561
561
 * # === Base type class =========================================================
562
562
 * 
563
563
 * cdef class TypeID(ObjectID):             # <<<<<<<<<<<<<<
571
571
static struct __pyx_vtabstruct_4h5py_3h5t_TypeID *__pyx_vtabptr_4h5py_3h5t_TypeID;
572
572
 
573
573
 
574
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":879
 
574
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":879
575
575
 * # === Composite types (enums and compound) ====================================
576
576
 * 
577
577
 * cdef class TypeCompositeID(TypeID):             # <<<<<<<<<<<<<<
585
585
static struct __pyx_vtabstruct_4h5py_3h5t_TypeCompositeID *__pyx_vtabptr_4h5py_3h5t_TypeCompositeID;
586
586
 
587
587
 
588
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":925
 
588
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":925
589
589
 * 
590
590
 * 
591
591
 * cdef class TypeCompoundID(TypeCompositeID):             # <<<<<<<<<<<<<<
599
599
static struct __pyx_vtabstruct_4h5py_3h5t_TypeCompoundID *__pyx_vtabptr_4h5py_3h5t_TypeCompoundID;
600
600
 
601
601
 
602
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":502
 
602
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":502
603
603
 * 
604
604
 * 
605
605
 * cdef class TypeOpaqueID(TypeID):             # <<<<<<<<<<<<<<
613
613
static struct __pyx_vtabstruct_4h5py_3h5t_TypeOpaqueID *__pyx_vtabptr_4h5py_3h5t_TypeOpaqueID;
614
614
 
615
615
 
616
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":459
 
616
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":459
617
617
 * # === Top-level classes (inherit directly from TypeID) ========================
618
618
 * 
619
619
 * cdef class TypeArrayID(TypeID):             # <<<<<<<<<<<<<<
627
627
static struct __pyx_vtabstruct_4h5py_3h5t_TypeArrayID *__pyx_vtabptr_4h5py_3h5t_TypeArrayID;
628
628
 
629
629
 
630
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":646
 
630
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":646
631
631
 * # === Numeric classes (integers and floats) ===================================
632
632
 * 
633
633
 * cdef class TypeAtomicID(TypeID):             # <<<<<<<<<<<<<<
641
641
static struct __pyx_vtabstruct_4h5py_3h5t_TypeAtomicID *__pyx_vtabptr_4h5py_3h5t_TypeAtomicID;
642
642
 
643
643
 
644
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":734
 
644
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":734
645
645
 * 
646
646
 * 
647
647
 * cdef class TypeIntegerID(TypeAtomicID):             # <<<<<<<<<<<<<<
655
655
static struct __pyx_vtabstruct_4h5py_3h5t_TypeIntegerID *__pyx_vtabptr_4h5py_3h5t_TypeIntegerID;
656
656
 
657
657
 
658
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":629
 
658
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":629
659
659
 *     pass
660
660
 * 
661
661
 * cdef class TypeReferenceID(TypeID):             # <<<<<<<<<<<<<<
669
669
static struct __pyx_vtabstruct_4h5py_3h5t_TypeReferenceID *__pyx_vtabptr_4h5py_3h5t_TypeReferenceID;
670
670
 
671
671
 
672
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":537
 
672
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":537
673
673
 *         return dtype("|V" + str(self.get_size()))
674
674
 * 
675
675
 * cdef class TypeStringID(TypeID):             # <<<<<<<<<<<<<<
683
683
static struct __pyx_vtabstruct_4h5py_3h5t_TypeStringID *__pyx_vtabptr_4h5py_3h5t_TypeStringID;
684
684
 
685
685
 
686
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":774
 
686
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":774
687
687
 * 
688
688
 * 
689
689
 * cdef class TypeFloatID(TypeAtomicID):             # <<<<<<<<<<<<<<
697
697
static struct __pyx_vtabstruct_4h5py_3h5t_TypeFloatID *__pyx_vtabptr_4h5py_3h5t_TypeFloatID;
698
698
 
699
699
 
700
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":615
 
700
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":615
701
701
 *     pass
702
702
 * 
703
703
 * cdef class TypeTimeID(TypeID):             # <<<<<<<<<<<<<<
711
711
static struct __pyx_vtabstruct_4h5py_3h5t_TypeTimeID *__pyx_vtabptr_4h5py_3h5t_TypeTimeID;
712
712
 
713
713
 
714
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":622
 
714
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":622
715
715
 *     pass
716
716
 * 
717
717
 * cdef class TypeBitfieldID(TypeID):             # <<<<<<<<<<<<<<
725
725
static struct __pyx_vtabstruct_4h5py_3h5t_TypeBitfieldID *__pyx_vtabptr_4h5py_3h5t_TypeBitfieldID;
726
726
 
727
727
 
728
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":608
 
728
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":608
729
729
 *         return dtype("|S" + str(self.get_size()))
730
730
 * 
731
731
 * cdef class TypeVlenID(TypeID):             # <<<<<<<<<<<<<<
739
739
static struct __pyx_vtabstruct_4h5py_3h5t_TypeVlenID *__pyx_vtabptr_4h5py_3h5t_TypeVlenID;
740
740
 
741
741
 
742
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1025
 
742
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1025
743
743
 *         return typeobj
744
744
 * 
745
745
 * cdef class TypeEnumID(TypeCompositeID):             # <<<<<<<<<<<<<<
2049
2049
static PyObject *__pyx_int_8;
2050
2050
static PyObject *__pyx_int_neg_1;
2051
2051
 
2052
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":41
 
2052
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":41
2053
2053
 * # === Custom C API ============================================================
2054
2054
 * 
2055
2055
 * cpdef TypeID typewrap(hid_t id_):             # <<<<<<<<<<<<<<
2069
2069
  __Pyx_RefNannySetupContext("typewrap");
2070
2070
  __pyx_v_pcls = ((PyObject *)Py_None); __Pyx_INCREF(Py_None);
2071
2071
 
2072
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":44
 
2072
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":44
2073
2073
 * 
2074
2074
 *     cdef H5T_class_t cls
2075
2075
 *     cls = H5Tget_class(id_)             # <<<<<<<<<<<<<<
2079
2079
  __pyx_t_1 = __pyx_f_4h5py_4defs_H5Tget_class(__pyx_v_id_); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2080
2080
  __pyx_v_cls = __pyx_t_1;
2081
2081
 
2082
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":46
 
2082
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":46
2083
2083
 *     cls = H5Tget_class(id_)
2084
2084
 * 
2085
2085
 *     if cls == H5T_INTEGER:             # <<<<<<<<<<<<<<
2089
2089
  __pyx_t_2 = (__pyx_v_cls == H5T_INTEGER);
2090
2090
  if (__pyx_t_2) {
2091
2091
 
2092
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":47
 
2092
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":47
2093
2093
 * 
2094
2094
 *     if cls == H5T_INTEGER:
2095
2095
 *         pcls = TypeIntegerID             # <<<<<<<<<<<<<<
2102
2102
    goto __pyx_L3;
2103
2103
  }
2104
2104
 
2105
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":48
 
2105
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":48
2106
2106
 *     if cls == H5T_INTEGER:
2107
2107
 *         pcls = TypeIntegerID
2108
2108
 *     elif cls == H5T_FLOAT:             # <<<<<<<<<<<<<<
2112
2112
  __pyx_t_2 = (__pyx_v_cls == H5T_FLOAT);
2113
2113
  if (__pyx_t_2) {
2114
2114
 
2115
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":49
 
2115
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":49
2116
2116
 *         pcls = TypeIntegerID
2117
2117
 *     elif cls == H5T_FLOAT:
2118
2118
 *         pcls = TypeFloatID             # <<<<<<<<<<<<<<
2125
2125
    goto __pyx_L3;
2126
2126
  }
2127
2127
 
2128
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":50
 
2128
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":50
2129
2129
 *     elif cls == H5T_FLOAT:
2130
2130
 *         pcls = TypeFloatID
2131
2131
 *     elif cls == H5T_TIME:             # <<<<<<<<<<<<<<
2135
2135
  __pyx_t_2 = (__pyx_v_cls == H5T_TIME);
2136
2136
  if (__pyx_t_2) {
2137
2137
 
2138
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":51
 
2138
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":51
2139
2139
 *         pcls = TypeFloatID
2140
2140
 *     elif cls == H5T_TIME:
2141
2141
 *         pcls = TypeTimeID             # <<<<<<<<<<<<<<
2148
2148
    goto __pyx_L3;
2149
2149
  }
2150
2150
 
2151
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":52
 
2151
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":52
2152
2152
 *     elif cls == H5T_TIME:
2153
2153
 *         pcls = TypeTimeID
2154
2154
 *     elif cls == H5T_STRING:             # <<<<<<<<<<<<<<
2158
2158
  __pyx_t_2 = (__pyx_v_cls == H5T_STRING);
2159
2159
  if (__pyx_t_2) {
2160
2160
 
2161
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":53
 
2161
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":53
2162
2162
 *         pcls = TypeTimeID
2163
2163
 *     elif cls == H5T_STRING:
2164
2164
 *         pcls = TypeStringID             # <<<<<<<<<<<<<<
2171
2171
    goto __pyx_L3;
2172
2172
  }
2173
2173
 
2174
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":54
 
2174
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":54
2175
2175
 *     elif cls == H5T_STRING:
2176
2176
 *         pcls = TypeStringID
2177
2177
 *     elif cls == H5T_BITFIELD:             # <<<<<<<<<<<<<<
2181
2181
  __pyx_t_2 = (__pyx_v_cls == H5T_BITFIELD);
2182
2182
  if (__pyx_t_2) {
2183
2183
 
2184
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":55
 
2184
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":55
2185
2185
 *         pcls = TypeStringID
2186
2186
 *     elif cls == H5T_BITFIELD:
2187
2187
 *         pcls = TypeBitfieldID             # <<<<<<<<<<<<<<
2194
2194
    goto __pyx_L3;
2195
2195
  }
2196
2196
 
2197
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":56
 
2197
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":56
2198
2198
 *     elif cls == H5T_BITFIELD:
2199
2199
 *         pcls = TypeBitfieldID
2200
2200
 *     elif cls == H5T_OPAQUE:             # <<<<<<<<<<<<<<
2204
2204
  __pyx_t_2 = (__pyx_v_cls == H5T_OPAQUE);
2205
2205
  if (__pyx_t_2) {
2206
2206
 
2207
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":57
 
2207
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":57
2208
2208
 *         pcls = TypeBitfieldID
2209
2209
 *     elif cls == H5T_OPAQUE:
2210
2210
 *         pcls = TypeOpaqueID             # <<<<<<<<<<<<<<
2217
2217
    goto __pyx_L3;
2218
2218
  }
2219
2219
 
2220
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":58
 
2220
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":58
2221
2221
 *     elif cls == H5T_OPAQUE:
2222
2222
 *         pcls = TypeOpaqueID
2223
2223
 *     elif cls == H5T_COMPOUND:             # <<<<<<<<<<<<<<
2227
2227
  __pyx_t_2 = (__pyx_v_cls == H5T_COMPOUND);
2228
2228
  if (__pyx_t_2) {
2229
2229
 
2230
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":59
 
2230
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":59
2231
2231
 *         pcls = TypeOpaqueID
2232
2232
 *     elif cls == H5T_COMPOUND:
2233
2233
 *         pcls = TypeCompoundID             # <<<<<<<<<<<<<<
2240
2240
    goto __pyx_L3;
2241
2241
  }
2242
2242
 
2243
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":60
 
2243
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":60
2244
2244
 *     elif cls == H5T_COMPOUND:
2245
2245
 *         pcls = TypeCompoundID
2246
2246
 *     elif cls == H5T_REFERENCE:             # <<<<<<<<<<<<<<
2250
2250
  __pyx_t_2 = (__pyx_v_cls == H5T_REFERENCE);
2251
2251
  if (__pyx_t_2) {
2252
2252
 
2253
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":61
 
2253
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":61
2254
2254
 *         pcls = TypeCompoundID
2255
2255
 *     elif cls == H5T_REFERENCE:
2256
2256
 *         pcls = TypeReferenceID             # <<<<<<<<<<<<<<
2263
2263
    goto __pyx_L3;
2264
2264
  }
2265
2265
 
2266
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":62
 
2266
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":62
2267
2267
 *     elif cls == H5T_REFERENCE:
2268
2268
 *         pcls = TypeReferenceID
2269
2269
 *     elif cls == H5T_ENUM:             # <<<<<<<<<<<<<<
2273
2273
  __pyx_t_2 = (__pyx_v_cls == H5T_ENUM);
2274
2274
  if (__pyx_t_2) {
2275
2275
 
2276
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":63
 
2276
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":63
2277
2277
 *         pcls = TypeReferenceID
2278
2278
 *     elif cls == H5T_ENUM:
2279
2279
 *         pcls = TypeEnumID             # <<<<<<<<<<<<<<
2286
2286
    goto __pyx_L3;
2287
2287
  }
2288
2288
 
2289
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":64
 
2289
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":64
2290
2290
 *     elif cls == H5T_ENUM:
2291
2291
 *         pcls = TypeEnumID
2292
2292
 *     elif cls == H5T_VLEN:             # <<<<<<<<<<<<<<
2296
2296
  __pyx_t_2 = (__pyx_v_cls == H5T_VLEN);
2297
2297
  if (__pyx_t_2) {
2298
2298
 
2299
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":65
 
2299
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":65
2300
2300
 *         pcls = TypeEnumID
2301
2301
 *     elif cls == H5T_VLEN:
2302
2302
 *         pcls = TypeVlenID             # <<<<<<<<<<<<<<
2309
2309
    goto __pyx_L3;
2310
2310
  }
2311
2311
 
2312
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":66
 
2312
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":66
2313
2313
 *     elif cls == H5T_VLEN:
2314
2314
 *         pcls = TypeVlenID
2315
2315
 *     elif cls == H5T_ARRAY:             # <<<<<<<<<<<<<<
2319
2319
  __pyx_t_2 = (__pyx_v_cls == H5T_ARRAY);
2320
2320
  if (__pyx_t_2) {
2321
2321
 
2322
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":67
 
2322
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":67
2323
2323
 *         pcls = TypeVlenID
2324
2324
 *     elif cls == H5T_ARRAY:
2325
2325
 *         pcls = TypeArrayID             # <<<<<<<<<<<<<<
2333
2333
  }
2334
2334
  /*else*/ {
2335
2335
 
2336
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":69
 
2336
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":69
2337
2337
 *         pcls = TypeArrayID
2338
2338
 *     else:
2339
2339
 *         pcls = TypeID             # <<<<<<<<<<<<<<
2346
2346
  }
2347
2347
  __pyx_L3:;
2348
2348
 
2349
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":71
 
2349
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":71
2350
2350
 *         pcls = TypeID
2351
2351
 * 
2352
2352
 *     return pcls(id_)             # <<<<<<<<<<<<<<
2383
2383
  return __pyx_r;
2384
2384
}
2385
2385
 
2386
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":41
 
2386
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":41
2387
2387
 * # === Custom C API ============================================================
2388
2388
 * 
2389
2389
 * cpdef TypeID typewrap(hid_t id_):             # <<<<<<<<<<<<<<
2426
2426
  return __pyx_r;
2427
2427
}
2428
2428
 
2429
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":73
 
2429
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":73
2430
2430
 *     return pcls(id_)
2431
2431
 * 
2432
2432
 * cdef object lockid(hid_t id_in):             # <<<<<<<<<<<<<<
2441
2441
  __Pyx_RefNannySetupContext("lockid");
2442
2442
  __pyx_v_tid = ((struct __pyx_obj_4h5py_3h5t_TypeID *)Py_None); __Pyx_INCREF(Py_None);
2443
2443
 
2444
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":75
 
2444
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":75
2445
2445
 * cdef object lockid(hid_t id_in):
2446
2446
 *     cdef TypeID tid
2447
2447
 *     tid = typewrap(id_in)             # <<<<<<<<<<<<<<
2454
2454
  __pyx_v_tid = ((struct __pyx_obj_4h5py_3h5t_TypeID *)__pyx_t_1);
2455
2455
  __pyx_t_1 = 0;
2456
2456
 
2457
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":76
 
2457
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":76
2458
2458
 *     cdef TypeID tid
2459
2459
 *     tid = typewrap(id_in)
2460
2460
 *     tid.locked = 1             # <<<<<<<<<<<<<<
2463
2463
 */
2464
2464
  if (PyObject_SetAttr(((PyObject *)__pyx_v_tid), __pyx_n_s__locked, __pyx_int_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2465
2465
 
2466
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":77
 
2466
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":77
2467
2467
 *     tid = typewrap(id_in)
2468
2468
 *     tid.locked = 1
2469
2469
 *     return tid             # <<<<<<<<<<<<<<
2488
2488
  return __pyx_r;
2489
2489
}
2490
2490
 
2491
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":210
 
2491
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":210
2492
2492
 * 
2493
2493
 * 
2494
2494
 * def create(int classtype, size_t size):             # <<<<<<<<<<<<<<
2552
2552
  return NULL;
2553
2553
  __pyx_L4_argument_unpacking_done:;
2554
2554
 
2555
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":218
 
2555
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":218
2556
2556
 * 
2557
2557
 *     # HDF5 versions 1.6.X segfault with anything else
2558
2558
 *     if classtype != H5T_COMPOUND and classtype != H5T_OPAQUE:             # <<<<<<<<<<<<<<
2568
2568
  }
2569
2569
  if (__pyx_t_3) {
2570
2570
 
2571
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":219
 
2571
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":219
2572
2572
 *     # HDF5 versions 1.6.X segfault with anything else
2573
2573
 *     if classtype != H5T_COMPOUND and classtype != H5T_OPAQUE:
2574
2574
 *         raise ValueError("Class must be COMPOUND or OPAQUE.")             # <<<<<<<<<<<<<<
2590
2590
  }
2591
2591
  __pyx_L6:;
2592
2592
 
2593
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":221
 
2593
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":221
2594
2594
 *         raise ValueError("Class must be COMPOUND or OPAQUE.")
2595
2595
 * 
2596
2596
 *     return typewrap(H5Tcreate(<H5T_class_t>classtype, size))             # <<<<<<<<<<<<<<
2618
2618
  return __pyx_r;
2619
2619
}
2620
2620
 
2621
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":224
 
2621
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":224
2622
2622
 * 
2623
2623
 * 
2624
2624
 * def open(ObjectID group not None, char* name):             # <<<<<<<<<<<<<<
2680
2680
  __pyx_L4_argument_unpacking_done:;
2681
2681
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_group), __pyx_ptype_4h5py_8_objects_ObjectID, 0, "group", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2682
2682
 
2683
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":229
 
2683
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":229
2684
2684
 *     Open a named datatype from a file.
2685
2685
 *     """
2686
2686
 *     return typewrap(H5Topen(group.id, name))             # <<<<<<<<<<<<<<
2711
2711
  return __pyx_r;
2712
2712
}
2713
2713
 
2714
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":232
 
2714
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":232
2715
2715
 * 
2716
2716
 * 
2717
2717
 * def array_create(TypeID base not None, object dims_tpl):             # <<<<<<<<<<<<<<
2779
2779
  __pyx_L4_argument_unpacking_done:;
2780
2780
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_base), __pyx_ptype_4h5py_3h5t_TypeID, 0, "base", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2781
2781
 
2782
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":240
 
2782
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":240
2783
2783
 *     """
2784
2784
 *     cdef hsize_t rank
2785
2785
 *     cdef hsize_t *dims = NULL             # <<<<<<<<<<<<<<
2788
2788
 */
2789
2789
  __pyx_v_dims = NULL;
2790
2790
 
2791
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":242
 
2791
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":242
2792
2792
 *     cdef hsize_t *dims = NULL
2793
2793
 * 
2794
2794
 *     require_tuple(dims_tpl, 0, -1, "dims_tpl")             # <<<<<<<<<<<<<<
2797
2797
 */
2798
2798
  __pyx_t_1 = __pyx_f_4h5py_5utils_require_tuple(__pyx_v_dims_tpl, 0, -1, __pyx_k__dims_tpl); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2799
2799
 
2800
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":243
 
2800
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":243
2801
2801
 * 
2802
2802
 *     require_tuple(dims_tpl, 0, -1, "dims_tpl")
2803
2803
 *     rank = len(dims_tpl)             # <<<<<<<<<<<<<<
2807
2807
  __pyx_t_2 = PyObject_Length(__pyx_v_dims_tpl); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2808
2808
  __pyx_v_rank = __pyx_t_2;
2809
2809
 
2810
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":244
 
2810
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":244
2811
2811
 *     require_tuple(dims_tpl, 0, -1, "dims_tpl")
2812
2812
 *     rank = len(dims_tpl)
2813
2813
 *     dims = <hsize_t*>emalloc(sizeof(hsize_t)*rank)             # <<<<<<<<<<<<<<
2817
2817
  __pyx_t_3 = __pyx_f_4h5py_5utils_emalloc(((sizeof(hsize_t)) * __pyx_v_rank)); if (unlikely(__pyx_t_3 == NULL && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2818
2818
  __pyx_v_dims = ((hsize_t *)__pyx_t_3);
2819
2819
 
2820
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":246
 
2820
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":246
2821
2821
 *     dims = <hsize_t*>emalloc(sizeof(hsize_t)*rank)
2822
2822
 * 
2823
2823
 *     try:             # <<<<<<<<<<<<<<
2826
2826
 */
2827
2827
  /*try:*/ {
2828
2828
 
2829
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":247
 
2829
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":247
2830
2830
 * 
2831
2831
 *     try:
2832
2832
 *         convert_tuple(dims_tpl, dims, rank)             # <<<<<<<<<<<<<<
2835
2835
 */
2836
2836
    __pyx_t_1 = __pyx_f_4h5py_5utils_convert_tuple(__pyx_v_dims_tpl, __pyx_v_dims, __pyx_v_rank); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L7;}
2837
2837
 
2838
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":248
 
2838
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":248
2839
2839
 *     try:
2840
2840
 *         convert_tuple(dims_tpl, dims, rank)
2841
2841
 *         return TypeArrayID(H5Tarray_create(base.id, rank, dims, NULL))             # <<<<<<<<<<<<<<
2863
2863
    goto __pyx_L6;
2864
2864
  }
2865
2865
 
2866
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":250
 
2866
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":250
2867
2867
 *         return TypeArrayID(H5Tarray_create(base.id, rank, dims, NULL))
2868
2868
 *     finally:
2869
2869
 *         efree(dims)             # <<<<<<<<<<<<<<
2914
2914
  return __pyx_r;
2915
2915
}
2916
2916
 
2917
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":253
 
2917
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":253
2918
2918
 * 
2919
2919
 * 
2920
2920
 * def enum_create(TypeID base not None):             # <<<<<<<<<<<<<<
2933
2933
  __pyx_self = __pyx_self;
2934
2934
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_base), __pyx_ptype_4h5py_3h5t_TypeID, 0, "base", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2935
2935
 
2936
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":258
 
2936
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":258
2937
2937
 *     Create a new enumerated type based on an (integer) parent type.
2938
2938
 *     """
2939
2939
 *     return typewrap(H5Tenum_create(base.id))             # <<<<<<<<<<<<<<
2964
2964
  return __pyx_r;
2965
2965
}
2966
2966
 
2967
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":261
 
2967
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":261
2968
2968
 * 
2969
2969
 * 
2970
2970
 * def vlen_create(TypeID base not None):             # <<<<<<<<<<<<<<
2983
2983
  __pyx_self = __pyx_self;
2984
2984
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_base), __pyx_ptype_4h5py_3h5t_TypeID, 0, "base", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2985
2985
 
2986
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":269
 
2986
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":269
2987
2987
 *     provision for reading/writing vlen data.
2988
2988
 *     """
2989
2989
 *     return typewrap(H5Tvlen_create(base.id))             # <<<<<<<<<<<<<<
3014
3014
  return __pyx_r;
3015
3015
}
3016
3016
 
3017
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":272
 
3017
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":272
3018
3018
 * 
3019
3019
 * 
3020
3020
 * def decode(char* buf):             # <<<<<<<<<<<<<<
3041
3041
  return NULL;
3042
3042
  __pyx_L4_argument_unpacking_done:;
3043
3043
 
3044
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":278
 
3044
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":278
3045
3045
 *     Python pickling machinery.
3046
3046
 *     """
3047
3047
 *     return typewrap(H5Tdecode(<unsigned char*>buf))             # <<<<<<<<<<<<<<
3068
3068
  return __pyx_r;
3069
3069
}
3070
3070
 
3071
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":291
 
3071
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":291
3072
3072
 *     """
3073
3073
 * 
3074
3074
 *     def __hash__(self):             # <<<<<<<<<<<<<<
3089
3089
  PyObject *__pyx_t_8 = NULL;
3090
3090
  __Pyx_RefNannySetupContext("__hash__");
3091
3091
 
3092
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":292
 
3092
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":292
3093
3093
 * 
3094
3094
 *     def __hash__(self):
3095
3095
 *         if self._hash is None:             # <<<<<<<<<<<<<<
3099
3099
  __pyx_t_1 = (((struct __pyx_obj_4h5py_3h5t_TypeID *)__pyx_v_self)->__pyx_base._hash == Py_None);
3100
3100
  if (__pyx_t_1) {
3101
3101
 
3102
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":293
 
3102
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":293
3103
3103
 *     def __hash__(self):
3104
3104
 *         if self._hash is None:
3105
3105
 *             try:             # <<<<<<<<<<<<<<
3114
3114
      __Pyx_XGOTREF(__pyx_save_exc_tb);
3115
3115
      /*try:*/ {
3116
3116
 
3117
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":295
 
3117
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":295
3118
3118
 *             try:
3119
3119
 *                 # Try to use object header first
3120
3120
 *                 return ObjectID.__hash__(self)             # <<<<<<<<<<<<<<
3152
3152
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
3153
3153
      __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
3154
3154
 
3155
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":296
 
3155
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":296
3156
3156
 *                 # Try to use object header first
3157
3157
 *                 return ObjectID.__hash__(self)
3158
3158
 *             except TypeError:             # <<<<<<<<<<<<<<
3167
3167
        __Pyx_GOTREF(__pyx_t_3);
3168
3168
        __Pyx_GOTREF(__pyx_t_2);
3169
3169
 
3170
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":298
 
3170
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":298
3171
3171
 *             except TypeError:
3172
3172
 *                 # It's a transient type object
3173
3173
 *                 if self.locked:             # <<<<<<<<<<<<<<
3180
3180
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
3181
3181
        if (__pyx_t_1) {
3182
3182
 
3183
 
          /* "/home/tachyon/h5py/h5py/h5t.pyx":299
 
3183
          /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":299
3184
3184
 *                 # It's a transient type object
3185
3185
 *                 if self.locked:
3186
3186
 *                     self._hash = hash(self.encode())             # <<<<<<<<<<<<<<
3205
3205
        }
3206
3206
        /*else*/ {
3207
3207
 
3208
 
          /* "/home/tachyon/h5py/h5py/h5t.pyx":301
 
3208
          /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":301
3209
3209
 *                     self._hash = hash(self.encode())
3210
3210
 *                 else:
3211
3211
 *                     raise TypeError("Only locked or committed types can be hashed")             # <<<<<<<<<<<<<<
3247
3247
  }
3248
3248
  __pyx_L5:;
3249
3249
 
3250
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":303
 
3250
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":303
3251
3251
 *                     raise TypeError("Only locked or committed types can be hashed")
3252
3252
 * 
3253
3253
 *         return self._hash             # <<<<<<<<<<<<<<
3274
3274
  return __pyx_r;
3275
3275
}
3276
3276
 
3277
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":305
 
3277
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":305
3278
3278
 *         return self._hash
3279
3279
 * 
3280
3280
 *     def __richcmp__(self, object other, int how):             # <<<<<<<<<<<<<<
3292
3292
  PyObject *__pyx_t_4 = NULL;
3293
3293
  __Pyx_RefNannySetupContext("__richcmp__");
3294
3294
 
3295
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":306
 
3295
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":306
3296
3296
 * 
3297
3297
 *     def __richcmp__(self, object other, int how):
3298
3298
 *         cdef bint truthval = 0             # <<<<<<<<<<<<<<
3301
3301
 */
3302
3302
  __pyx_v_truthval = 0;
3303
3303
 
3304
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":307
 
3304
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":307
3305
3305
 *     def __richcmp__(self, object other, int how):
3306
3306
 *         cdef bint truthval = 0
3307
3307
 *         if how != 2 and how != 3:             # <<<<<<<<<<<<<<
3319
3319
  }
3320
3320
  if (__pyx_t_1) {
3321
3321
 
3322
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":308
 
3322
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":308
3323
3323
 *         cdef bint truthval = 0
3324
3324
 *         if how != 2 and how != 3:
3325
3325
 *             return NotImplemented             # <<<<<<<<<<<<<<
3334
3334
  }
3335
3335
  __pyx_L5:;
3336
3336
 
3337
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":309
 
3337
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":309
3338
3338
 *         if how != 2 and how != 3:
3339
3339
 *             return NotImplemented
3340
3340
 *         if isinstance(other, TypeID):             # <<<<<<<<<<<<<<
3344
3344
  __pyx_t_1 = PyObject_TypeCheck(__pyx_v_other, ((PyTypeObject *)((PyObject*)__pyx_ptype_4h5py_3h5t_TypeID))); 
3345
3345
  if (__pyx_t_1) {
3346
3346
 
3347
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":310
 
3347
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":310
3348
3348
 *             return NotImplemented
3349
3349
 *         if isinstance(other, TypeID):
3350
3350
 *             truthval = self.equal(other)             # <<<<<<<<<<<<<<
3369
3369
  }
3370
3370
  __pyx_L6:;
3371
3371
 
3372
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":312
 
3372
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":312
3373
3373
 *             truthval = self.equal(other)
3374
3374
 * 
3375
3375
 *         if how == 2:             # <<<<<<<<<<<<<<
3379
3379
  __pyx_t_1 = (__pyx_v_how == 2);
3380
3380
  if (__pyx_t_1) {
3381
3381
 
3382
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":313
 
3382
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":313
3383
3383
 * 
3384
3384
 *         if how == 2:
3385
3385
 *             return truthval             # <<<<<<<<<<<<<<
3396
3396
  }
3397
3397
  __pyx_L7:;
3398
3398
 
3399
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":314
 
3399
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":314
3400
3400
 *         if how == 2:
3401
3401
 *             return truthval
3402
3402
 *         return not truthval             # <<<<<<<<<<<<<<
3424
3424
  return __pyx_r;
3425
3425
}
3426
3426
 
3427
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":316
 
3427
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":316
3428
3428
 *         return not truthval
3429
3429
 * 
3430
3430
 *     def __copy__(self):             # <<<<<<<<<<<<<<
3442
3442
  __Pyx_RefNannySetupContext("__copy__");
3443
3443
  __pyx_v_cpy = ((struct __pyx_obj_4h5py_3h5t_TypeID *)Py_None); __Pyx_INCREF(Py_None);
3444
3444
 
3445
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":318
 
3445
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":318
3446
3446
 *     def __copy__(self):
3447
3447
 *         cdef TypeID cpy
3448
3448
 *         cpy = ObjectID.__copy__(self)             # <<<<<<<<<<<<<<
3465
3465
  __pyx_v_cpy = ((struct __pyx_obj_4h5py_3h5t_TypeID *)__pyx_t_3);
3466
3466
  __pyx_t_3 = 0;
3467
3467
 
3468
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":319
 
3468
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":319
3469
3469
 *         cdef TypeID cpy
3470
3470
 *         cpy = ObjectID.__copy__(self)
3471
3471
 *         return cpy             # <<<<<<<<<<<<<<
3492
3492
  return __pyx_r;
3493
3493
}
3494
3494
 
3495
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":324
 
3495
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":324
3496
3496
 *         """ A Numpy-style dtype object representing this object.
3497
3497
 *         """
3498
3498
 *         def __get__(self):             # <<<<<<<<<<<<<<
3506
3506
  PyObject *__pyx_t_1 = NULL;
3507
3507
  __Pyx_RefNannySetupContext("__get__");
3508
3508
 
3509
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":325
 
3509
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":325
3510
3510
 *         """
3511
3511
 *         def __get__(self):
3512
3512
 *             return self.py_dtype()             # <<<<<<<<<<<<<<
3532
3532
  return __pyx_r;
3533
3533
}
3534
3534
 
3535
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":327
 
3535
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":327
3536
3536
 *             return self.py_dtype()
3537
3537
 * 
3538
3538
 *     cdef object py_dtype(self):             # <<<<<<<<<<<<<<
3546
3546
  PyObject *__pyx_t_2 = NULL;
3547
3547
  __Pyx_RefNannySetupContext("py_dtype");
3548
3548
 
3549
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":328
 
3549
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":328
3550
3550
 * 
3551
3551
 *     cdef object py_dtype(self):
3552
3552
 *         raise TypeError("No NumPy equivalent for %s exists" % self.__class__.__name__)             # <<<<<<<<<<<<<<
3586
3586
  return __pyx_r;
3587
3587
}
3588
3588
 
3589
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":331
 
3589
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":331
3590
3590
 * 
3591
3591
 * 
3592
3592
 *     def commit(self, ObjectID group not None, char* name, ObjectID lcpl=None):             # <<<<<<<<<<<<<<
3664
3664
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_group), __pyx_ptype_4h5py_8_objects_ObjectID, 0, "group", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3665
3665
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_lcpl), __pyx_ptype_4h5py_8_objects_ObjectID, 1, "lcpl", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3666
3666
 
3667
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":337
 
3667
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":337
3668
3668
 *         If present, lcpl may be a link creation property list.
3669
3669
 *         """
3670
3670
 *         H5Tcommit2(group.id, name, self.id, pdefault(lcpl),             # <<<<<<<<<<<<<<
3680
3680
  __pyx_t_3 = __Pyx_PyInt_from_py_hid_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (hid_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3681
3681
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3682
3682
 
3683
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":338
 
3683
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":338
3684
3684
 *         """
3685
3685
 *         H5Tcommit2(group.id, name, self.id, pdefault(lcpl),
3686
3686
 *             H5P_DEFAULT, H5P_DEFAULT)             # <<<<<<<<<<<<<<
3701
3701
  return __pyx_r;
3702
3702
}
3703
3703
 
3704
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":340
 
3704
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":340
3705
3705
 *             H5P_DEFAULT, H5P_DEFAULT)
3706
3706
 * 
3707
3707
 *     def committed(self):             # <<<<<<<<<<<<<<
3718
3718
  htri_t __pyx_t_3;
3719
3719
  __Pyx_RefNannySetupContext("committed");
3720
3720
 
3721
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":345
 
3721
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":345
3722
3722
 *         Determine if a given type object is named (T) or transient (F).
3723
3723
 *         """
3724
3724
 *         return <bint>(H5Tcommitted(self.id))             # <<<<<<<<<<<<<<
3749
3749
  return __pyx_r;
3750
3750
}
3751
3751
 
3752
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":348
 
3752
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":348
3753
3753
 * 
3754
3754
 * 
3755
3755
 *     def copy(self):             # <<<<<<<<<<<<<<
3766
3766
  hid_t __pyx_t_3;
3767
3767
  __Pyx_RefNannySetupContext("copy");
3768
3768
 
3769
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":353
 
3769
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":353
3770
3770
 *         Create a copy of this type object.
3771
3771
 *         """
3772
3772
 *         return typewrap(H5Tcopy(self.id))             # <<<<<<<<<<<<<<
3797
3797
  return __pyx_r;
3798
3798
}
3799
3799
 
3800
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":356
 
3800
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":356
3801
3801
 * 
3802
3802
 * 
3803
3803
 *     def equal(self, TypeID typeid):             # <<<<<<<<<<<<<<
3816
3816
  __Pyx_RefNannySetupContext("equal");
3817
3817
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_typeid), __pyx_ptype_4h5py_3h5t_TypeID, 1, "typeid", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 356; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3818
3818
 
3819
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":362
 
3819
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":362
3820
3820
 *         Python's "==" operator.
3821
3821
 *         """
3822
3822
 *         return <bint>(H5Tequal(self.id, typeid.id))             # <<<<<<<<<<<<<<
3851
3851
  return __pyx_r;
3852
3852
}
3853
3853
 
3854
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":365
 
3854
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":365
3855
3855
 * 
3856
3856
 * 
3857
3857
 *     def lock(self):             # <<<<<<<<<<<<<<
3868
3868
  herr_t __pyx_t_3;
3869
3869
  __Pyx_RefNannySetupContext("lock");
3870
3870
 
3871
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":371
 
3871
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":371
3872
3872
 *         Once locked, it can't be unlocked.
3873
3873
 *         """
3874
3874
 *         H5Tlock(self.id)             # <<<<<<<<<<<<<<
3881
3881
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3882
3882
  __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tlock(__pyx_t_2); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3883
3883
 
3884
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":372
 
3884
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":372
3885
3885
 *         """
3886
3886
 *         H5Tlock(self.id)
3887
3887
 *         self.locked = 1             # <<<<<<<<<<<<<<
3902
3902
  return __pyx_r;
3903
3903
}
3904
3904
 
3905
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":375
 
3905
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":375
3906
3906
 * 
3907
3907
 * 
3908
3908
 *     def get_class(self):             # <<<<<<<<<<<<<<
3919
3919
  enum H5T_class_t __pyx_t_3;
3920
3920
  __Pyx_RefNannySetupContext("get_class");
3921
3921
 
3922
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":380
 
3922
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":380
3923
3923
 *         Determine the datatype's class code.
3924
3924
 *         """
3925
3925
 *         return <int>H5Tget_class(self.id)             # <<<<<<<<<<<<<<
3950
3950
  return __pyx_r;
3951
3951
}
3952
3952
 
3953
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":383
 
3953
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":383
3954
3954
 * 
3955
3955
 * 
3956
3956
 *     def set_size(self, size_t size):             # <<<<<<<<<<<<<<
3977
3977
  return NULL;
3978
3978
  __pyx_L4_argument_unpacking_done:;
3979
3979
 
3980
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":388
 
3980
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":388
3981
3981
 *         Set the total size of the datatype, in bytes.
3982
3982
 *         """
3983
3983
 *         H5Tset_size(self.id, size)             # <<<<<<<<<<<<<<
4002
4002
  return __pyx_r;
4003
4003
}
4004
4004
 
4005
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":391
 
4005
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":391
4006
4006
 * 
4007
4007
 * 
4008
4008
 *     def get_size(self):             # <<<<<<<<<<<<<<
4019
4019
  size_t __pyx_t_3;
4020
4020
  __Pyx_RefNannySetupContext("get_size");
4021
4021
 
4022
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":396
 
4022
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":396
4023
4023
 *             Determine the total size of a datatype, in bytes.
4024
4024
 *         """
4025
4025
 *         return H5Tget_size(self.id)             # <<<<<<<<<<<<<<
4050
4050
  return __pyx_r;
4051
4051
}
4052
4052
 
4053
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":399
 
4053
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":399
4054
4054
 * 
4055
4055
 * 
4056
4056
 *     def get_super(self):             # <<<<<<<<<<<<<<
4067
4067
  hid_t __pyx_t_3;
4068
4068
  __Pyx_RefNannySetupContext("get_super");
4069
4069
 
4070
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":404
 
4070
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":404
4071
4071
 *         Determine the parent type of an array, enumeration or vlen datatype.
4072
4072
 *         """
4073
4073
 *         return typewrap(H5Tget_super(self.id))             # <<<<<<<<<<<<<<
4098
4098
  return __pyx_r;
4099
4099
}
4100
4100
 
4101
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":407
 
4101
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":407
4102
4102
 * 
4103
4103
 * 
4104
4104
 *     def detect_class(self, int classtype):             # <<<<<<<<<<<<<<
4125
4125
  return NULL;
4126
4126
  __pyx_L4_argument_unpacking_done:;
4127
4127
 
4128
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":413
 
4128
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":413
4129
4129
 *         datatype.  The search is recursive.
4130
4130
 *         """
4131
4131
 *         return <bint>(H5Tdetect_class(self.id, <H5T_class_t>classtype))             # <<<<<<<<<<<<<<
4156
4156
  return __pyx_r;
4157
4157
}
4158
4158
 
4159
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":416
 
4159
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":416
4160
4160
 * 
4161
4161
 * 
4162
4162
 *     def _close(self):             # <<<<<<<<<<<<<<
4175
4175
  herr_t __pyx_t_5;
4176
4176
  __Pyx_RefNannySetupContext("_close");
4177
4177
 
4178
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":424
 
4178
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":424
4179
4179
 *         objects are automatically closed when they're deallocated.
4180
4180
 *         """
4181
4181
 *         if not self.locked:             # <<<<<<<<<<<<<<
4189
4189
  __pyx_t_3 = (!__pyx_t_2);
4190
4190
  if (__pyx_t_3) {
4191
4191
 
4192
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":425
 
4192
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":425
4193
4193
 *         """
4194
4194
 *         if not self.locked:
4195
4195
 *             H5Tclose(self.id)             # <<<<<<<<<<<<<<
4217
4217
  return __pyx_r;
4218
4218
}
4219
4219
 
4220
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":428
 
4220
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":428
4221
4221
 * 
4222
4222
 * 
4223
4223
 *     def encode(self):             # <<<<<<<<<<<<<<
4239
4239
  __Pyx_RefNannySetupContext("encode");
4240
4240
  __pyx_v_pystr = Py_None; __Pyx_INCREF(Py_None);
4241
4241
 
4242
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":435
 
4242
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":435
4243
4243
 *         returned string may contain binary values, including NULLs.
4244
4244
 *         """
4245
4245
 *         cdef size_t nalloc = 0             # <<<<<<<<<<<<<<
4248
4248
 */
4249
4249
  __pyx_v_nalloc = 0;
4250
4250
 
4251
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":436
 
4251
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":436
4252
4252
 *         """
4253
4253
 *         cdef size_t nalloc = 0
4254
4254
 *         cdef char* buf = NULL             # <<<<<<<<<<<<<<
4257
4257
 */
4258
4258
  __pyx_v_buf = NULL;
4259
4259
 
4260
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":438
 
4260
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":438
4261
4261
 *         cdef char* buf = NULL
4262
4262
 * 
4263
4263
 *         H5Tencode(self.id, NULL, &nalloc)             # <<<<<<<<<<<<<<
4270
4270
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4271
4271
  __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tencode(__pyx_t_2, NULL, (&__pyx_v_nalloc)); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 438; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4272
4272
 
4273
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":439
 
4273
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":439
4274
4274
 * 
4275
4275
 *         H5Tencode(self.id, NULL, &nalloc)
4276
4276
 *         buf = <char*>emalloc(sizeof(char)*nalloc)             # <<<<<<<<<<<<<<
4280
4280
  __pyx_t_4 = __pyx_f_4h5py_5utils_emalloc(((sizeof(char)) * __pyx_v_nalloc)); if (unlikely(__pyx_t_4 == NULL && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 439; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4281
4281
  __pyx_v_buf = ((char *)__pyx_t_4);
4282
4282
 
4283
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":440
 
4283
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":440
4284
4284
 *         H5Tencode(self.id, NULL, &nalloc)
4285
4285
 *         buf = <char*>emalloc(sizeof(char)*nalloc)
4286
4286
 *         try:             # <<<<<<<<<<<<<<
4289
4289
 */
4290
4290
  /*try:*/ {
4291
4291
 
4292
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":441
 
4292
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":441
4293
4293
 *         buf = <char*>emalloc(sizeof(char)*nalloc)
4294
4294
 *         try:
4295
4295
 *             H5Tencode(self.id, <unsigned char*>buf, &nalloc)             # <<<<<<<<<<<<<<
4302
4302
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4303
4303
    __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tencode(__pyx_t_2, ((unsigned char *)__pyx_v_buf), (&__pyx_v_nalloc)); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 441; __pyx_clineno = __LINE__; goto __pyx_L6;}
4304
4304
 
4305
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":442
 
4305
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":442
4306
4306
 *         try:
4307
4307
 *             H5Tencode(self.id, <unsigned char*>buf, &nalloc)
4308
4308
 *             pystr = PyBytes_FromStringAndSize(buf, nalloc)             # <<<<<<<<<<<<<<
4316
4316
    __pyx_t_1 = 0;
4317
4317
  }
4318
4318
 
4319
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":444
 
4319
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":444
4320
4320
 *             pystr = PyBytes_FromStringAndSize(buf, nalloc)
4321
4321
 *         finally:
4322
4322
 *             efree(buf)             # <<<<<<<<<<<<<<
4350
4350
    }
4351
4351
  }
4352
4352
 
4353
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":446
 
4353
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":446
4354
4354
 *             efree(buf)
4355
4355
 * 
4356
4356
 *         return pystr             # <<<<<<<<<<<<<<
4375
4375
  return __pyx_r;
4376
4376
}
4377
4377
 
4378
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":449
 
4378
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":449
4379
4379
 * 
4380
4380
 * 
4381
4381
 *     def __reduce__(self):             # <<<<<<<<<<<<<<
4391
4391
  PyObject *__pyx_t_3 = NULL;
4392
4392
  __Pyx_RefNannySetupContext("__reduce__");
4393
4393
 
4394
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":450
 
4394
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":450
4395
4395
 * 
4396
4396
 *     def __reduce__(self):
4397
4397
 *         return (type(self), (-1,), self.encode())             # <<<<<<<<<<<<<<
4438
4438
  return __pyx_r;
4439
4439
}
4440
4440
 
4441
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":453
 
4441
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":453
4442
4442
 * 
4443
4443
 * 
4444
4444
 *     def __setstate__(self, char* state):             # <<<<<<<<<<<<<<
4463
4463
  return NULL;
4464
4464
  __pyx_L4_argument_unpacking_done:;
4465
4465
 
4466
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":454
 
4466
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":454
4467
4467
 * 
4468
4468
 *     def __setstate__(self, char* state):
4469
4469
 *         self.id = H5Tdecode(<unsigned char*>state)             # <<<<<<<<<<<<<<
4488
4488
  return __pyx_r;
4489
4489
}
4490
4490
 
4491
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":466
 
4491
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":466
4492
4492
 * 
4493
4493
 * 
4494
4494
 *     def get_array_ndims(self):             # <<<<<<<<<<<<<<
4505
4505
  int __pyx_t_3;
4506
4506
  __Pyx_RefNannySetupContext("get_array_ndims");
4507
4507
 
4508
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":471
 
4508
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":471
4509
4509
 *         Get the rank of the given array datatype.
4510
4510
 *         """
4511
4511
 *         return H5Tget_array_ndims(self.id)             # <<<<<<<<<<<<<<
4536
4536
  return __pyx_r;
4537
4537
}
4538
4538
 
4539
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":474
 
4539
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":474
4540
4540
 * 
4541
4541
 * 
4542
4542
 *     def get_array_dims(self):             # <<<<<<<<<<<<<<
4556
4556
  void *__pyx_t_4;
4557
4557
  __Pyx_RefNannySetupContext("get_array_dims");
4558
4558
 
4559
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":481
 
4559
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":481
4560
4560
 *         """
4561
4561
 *         cdef hsize_t rank
4562
4562
 *         cdef hsize_t* dims = NULL             # <<<<<<<<<<<<<<
4565
4565
 */
4566
4566
  __pyx_v_dims = NULL;
4567
4567
 
4568
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":483
 
4568
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":483
4569
4569
 *         cdef hsize_t* dims = NULL
4570
4570
 * 
4571
4571
 *         rank = H5Tget_array_dims(self.id, NULL, NULL)             # <<<<<<<<<<<<<<
4579
4579
  __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tget_array_dims(__pyx_t_2, NULL, NULL); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 483; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4580
4580
  __pyx_v_rank = __pyx_t_3;
4581
4581
 
4582
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":484
 
4582
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":484
4583
4583
 * 
4584
4584
 *         rank = H5Tget_array_dims(self.id, NULL, NULL)
4585
4585
 *         dims = <hsize_t*>emalloc(sizeof(hsize_t)*rank)             # <<<<<<<<<<<<<<
4589
4589
  __pyx_t_4 = __pyx_f_4h5py_5utils_emalloc(((sizeof(hsize_t)) * __pyx_v_rank)); if (unlikely(__pyx_t_4 == NULL && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4590
4590
  __pyx_v_dims = ((hsize_t *)__pyx_t_4);
4591
4591
 
4592
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":485
 
4592
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":485
4593
4593
 *         rank = H5Tget_array_dims(self.id, NULL, NULL)
4594
4594
 *         dims = <hsize_t*>emalloc(sizeof(hsize_t)*rank)
4595
4595
 *         try:             # <<<<<<<<<<<<<<
4598
4598
 */
4599
4599
  /*try:*/ {
4600
4600
 
4601
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":486
 
4601
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":486
4602
4602
 *         dims = <hsize_t*>emalloc(sizeof(hsize_t)*rank)
4603
4603
 *         try:
4604
4604
 *             H5Tget_array_dims(self.id, dims, NULL)             # <<<<<<<<<<<<<<
4611
4611
    __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4612
4612
    __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tget_array_dims(__pyx_t_2, __pyx_v_dims, NULL); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 486; __pyx_clineno = __LINE__; goto __pyx_L6;}
4613
4613
 
4614
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":487
 
4614
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":487
4615
4615
 *         try:
4616
4616
 *             H5Tget_array_dims(self.id, dims, NULL)
4617
4617
 *             return convert_dims(dims, rank)             # <<<<<<<<<<<<<<
4626
4626
    goto __pyx_L5;
4627
4627
  }
4628
4628
 
4629
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":489
 
4629
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":489
4630
4630
 *             return convert_dims(dims, rank)
4631
4631
 *         finally:
4632
4632
 *             efree(dims)             # <<<<<<<<<<<<<<
4675
4675
  return __pyx_r;
4676
4676
}
4677
4677
 
4678
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":491
 
4678
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":491
4679
4679
 *             efree(dims)
4680
4680
 * 
4681
4681
 *     cdef object py_dtype(self):             # <<<<<<<<<<<<<<
4695
4695
  __pyx_v_base_dtype = Py_None; __Pyx_INCREF(Py_None);
4696
4696
  __pyx_v_shape = Py_None; __Pyx_INCREF(Py_None);
4697
4697
 
4698
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":494
 
4698
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":494
4699
4699
 *         # Numpy translation function for array types
4700
4700
 *         cdef TypeID tmp_type
4701
4701
 *         tmp_type = self.get_super()             # <<<<<<<<<<<<<<
4712
4712
  __pyx_v_tmp_type = ((struct __pyx_obj_4h5py_3h5t_TypeID *)__pyx_t_2);
4713
4713
  __pyx_t_2 = 0;
4714
4714
 
4715
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":496
 
4715
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":496
4716
4716
 *         tmp_type = self.get_super()
4717
4717
 * 
4718
4718
 *         base_dtype = tmp_type.py_dtype()             # <<<<<<<<<<<<<<
4725
4725
  __pyx_v_base_dtype = __pyx_t_2;
4726
4726
  __pyx_t_2 = 0;
4727
4727
 
4728
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":498
 
4728
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":498
4729
4729
 *         base_dtype = tmp_type.py_dtype()
4730
4730
 * 
4731
4731
 *         shape = self.get_array_dims()             # <<<<<<<<<<<<<<
4741
4741
  __pyx_v_shape = __pyx_t_1;
4742
4742
  __pyx_t_1 = 0;
4743
4743
 
4744
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":499
 
4744
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":499
4745
4745
 * 
4746
4746
 *         shape = self.get_array_dims()
4747
4747
 *         return dtype( (base_dtype, shape) )             # <<<<<<<<<<<<<<
4785
4785
  return __pyx_r;
4786
4786
}
4787
4787
 
4788
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":509
 
4788
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":509
4789
4789
 * 
4790
4790
 * 
4791
4791
 *     def set_tag(self, char* tag):             # <<<<<<<<<<<<<<
4812
4812
  return NULL;
4813
4813
  __pyx_L4_argument_unpacking_done:;
4814
4814
 
4815
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":515
 
4815
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":515
4816
4816
 *         Limited to 256 characters.
4817
4817
 *         """
4818
4818
 *         H5Tset_tag(self.id, tag)             # <<<<<<<<<<<<<<
4837
4837
  return __pyx_r;
4838
4838
}
4839
4839
 
4840
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":518
 
4840
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":518
4841
4841
 * 
4842
4842
 * 
4843
4843
 *     def get_tag(self):             # <<<<<<<<<<<<<<
4856
4856
  char *__pyx_t_3;
4857
4857
  __Pyx_RefNannySetupContext("get_tag");
4858
4858
 
4859
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":523
 
4859
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":523
4860
4860
 *         Get the tag associated with an opaque datatype.
4861
4861
 *         """
4862
4862
 *         cdef char* buf = NULL             # <<<<<<<<<<<<<<
4865
4865
 */
4866
4866
  __pyx_v_buf = NULL;
4867
4867
 
4868
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":525
 
4868
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":525
4869
4869
 *         cdef char* buf = NULL
4870
4870
 * 
4871
4871
 *         try:             # <<<<<<<<<<<<<<
4874
4874
 */
4875
4875
  /*try:*/ {
4876
4876
 
4877
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":526
 
4877
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":526
4878
4878
 * 
4879
4879
 *         try:
4880
4880
 *             buf = H5Tget_tag(self.id)             # <<<<<<<<<<<<<<
4888
4888
    __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tget_tag(__pyx_t_2); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 526; __pyx_clineno = __LINE__; goto __pyx_L6;}
4889
4889
    __pyx_v_buf = __pyx_t_3;
4890
4890
 
4891
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":527
 
4891
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":527
4892
4892
 *         try:
4893
4893
 *             buf = H5Tget_tag(self.id)
4894
4894
 *             assert buf != NULL             # <<<<<<<<<<<<<<
4902
4902
    }
4903
4903
    #endif
4904
4904
 
4905
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":528
 
4905
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":528
4906
4906
 *             buf = H5Tget_tag(self.id)
4907
4907
 *             assert buf != NULL
4908
4908
 *             tag = buf             # <<<<<<<<<<<<<<
4911
4911
 */
4912
4912
    __pyx_v_tag = __pyx_v_buf;
4913
4913
 
4914
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":529
 
4914
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":529
4915
4915
 *             assert buf != NULL
4916
4916
 *             tag = buf
4917
4917
 *             return tag             # <<<<<<<<<<<<<<
4926
4926
    goto __pyx_L5;
4927
4927
  }
4928
4928
 
4929
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":531
 
4929
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":531
4930
4930
 *             return tag
4931
4931
 *         finally:
4932
4932
 *             free(buf)             # <<<<<<<<<<<<<<
4975
4975
  return __pyx_r;
4976
4976
}
4977
4977
 
4978
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":533
 
4978
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":533
4979
4979
 *             free(buf)
4980
4980
 * 
4981
4981
 *     cdef object py_dtype(self):             # <<<<<<<<<<<<<<
4989
4989
  PyObject *__pyx_t_2 = NULL;
4990
4990
  __Pyx_RefNannySetupContext("py_dtype");
4991
4991
 
4992
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":535
 
4992
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":535
4993
4993
 *     cdef object py_dtype(self):
4994
4994
 *         # Numpy translation function for opaque types
4995
4995
 *         return dtype("|V" + str(self.get_size()))             # <<<<<<<<<<<<<<
5038
5038
  return __pyx_r;
5039
5039
}
5040
5040
 
5041
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":544
 
5041
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":544
5042
5042
 * 
5043
5043
 * 
5044
5044
 *     def is_variable_str(self):             # <<<<<<<<<<<<<<
5055
5055
  htri_t __pyx_t_3;
5056
5056
  __Pyx_RefNannySetupContext("is_variable_str");
5057
5057
 
5058
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":549
 
5058
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":549
5059
5059
 *         Determine if the given string datatype is a variable-length string.
5060
5060
 *         """
5061
5061
 *         return <bint>(H5Tis_variable_str(self.id))             # <<<<<<<<<<<<<<
5086
5086
  return __pyx_r;
5087
5087
}
5088
5088
 
5089
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":552
 
5089
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":552
5090
5090
 * 
5091
5091
 * 
5092
5092
 *     def get_cset(self):             # <<<<<<<<<<<<<<
5103
5103
  H5T_cset_t __pyx_t_3;
5104
5104
  __Pyx_RefNannySetupContext("get_cset");
5105
5105
 
5106
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":557
 
5106
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":557
5107
5107
 *         Retrieve the character set used for a string.
5108
5108
 *         """
5109
5109
 *         return <int>H5Tget_cset(self.id)             # <<<<<<<<<<<<<<
5134
5134
  return __pyx_r;
5135
5135
}
5136
5136
 
5137
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":560
 
5137
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":560
5138
5138
 * 
5139
5139
 * 
5140
5140
 *     def set_cset(self, int cset):             # <<<<<<<<<<<<<<
5161
5161
  return NULL;
5162
5162
  __pyx_L4_argument_unpacking_done:;
5163
5163
 
5164
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":565
 
5164
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":565
5165
5165
 *         Set the character set used for a string.
5166
5166
 *         """
5167
5167
 *         H5Tset_cset(self.id, <H5T_cset_t>cset)             # <<<<<<<<<<<<<<
5186
5186
  return __pyx_r;
5187
5187
}
5188
5188
 
5189
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":568
 
5189
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":568
5190
5190
 * 
5191
5191
 * 
5192
5192
 *     def get_strpad(self):             # <<<<<<<<<<<<<<
5203
5203
  H5T_str_t __pyx_t_3;
5204
5204
  __Pyx_RefNannySetupContext("get_strpad");
5205
5205
 
5206
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":582
 
5206
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":582
5207
5207
 *             Pad buffer with spaces (FORTRAN style)
5208
5208
 *         """
5209
5209
 *         return <int>H5Tget_strpad(self.id)             # <<<<<<<<<<<<<<
5234
5234
  return __pyx_r;
5235
5235
}
5236
5236
 
5237
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":585
 
5237
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":585
5238
5238
 * 
5239
5239
 * 
5240
5240
 *     def set_strpad(self, int pad):             # <<<<<<<<<<<<<<
5261
5261
  return NULL;
5262
5262
  __pyx_L4_argument_unpacking_done:;
5263
5263
 
5264
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":599
 
5264
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":599
5265
5265
 *             Pad buffer with spaces (FORTRAN style)
5266
5266
 *         """
5267
5267
 *         H5Tset_strpad(self.id, <H5T_str_t>pad)             # <<<<<<<<<<<<<<
5286
5286
  return __pyx_r;
5287
5287
}
5288
5288
 
5289
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":601
 
5289
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":601
5290
5290
 *         H5Tset_strpad(self.id, <H5T_str_t>pad)
5291
5291
 * 
5292
5292
 *     cdef object py_dtype(self):             # <<<<<<<<<<<<<<
5302
5302
  PyObject *__pyx_t_4 = NULL;
5303
5303
  __Pyx_RefNannySetupContext("py_dtype");
5304
5304
 
5305
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":603
 
5305
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":603
5306
5306
 *     cdef object py_dtype(self):
5307
5307
 *         # Numpy translation function for string types
5308
5308
 *         if self.is_variable_str():             # <<<<<<<<<<<<<<
5318
5318
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5319
5319
  if (__pyx_t_3) {
5320
5320
 
5321
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":604
 
5321
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":604
5322
5322
 *         # Numpy translation function for string types
5323
5323
 *         if self.is_variable_str():
5324
5324
 *             return special_dtype(vlen=bytes)             # <<<<<<<<<<<<<<
5342
5342
  }
5343
5343
  __pyx_L3:;
5344
5344
 
5345
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":606
 
5345
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":606
5346
5346
 *             return special_dtype(vlen=bytes)
5347
5347
 * 
5348
5348
 *         return dtype("|S" + str(self.get_size()))             # <<<<<<<<<<<<<<
5392
5392
  return __pyx_r;
5393
5393
}
5394
5394
 
5395
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":635
 
5395
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":635
5396
5396
 *     """
5397
5397
 * 
5398
5398
 *     cdef object py_dtype(self):             # <<<<<<<<<<<<<<
5409
5409
  PyObject *__pyx_t_5 = NULL;
5410
5410
  __Pyx_RefNannySetupContext("py_dtype");
5411
5411
 
5412
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":636
 
5412
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":636
5413
5413
 * 
5414
5414
 *     cdef object py_dtype(self):
5415
5415
 *         if H5Tequal(self.id, H5T_STD_REF_OBJ):             # <<<<<<<<<<<<<<
5423
5423
  __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tequal(__pyx_t_2, H5T_STD_REF_OBJ); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5424
5424
  if (__pyx_t_3) {
5425
5425
 
5426
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":637
 
5426
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":637
5427
5427
 *     cdef object py_dtype(self):
5428
5428
 *         if H5Tequal(self.id, H5T_STD_REF_OBJ):
5429
5429
 *             return special_dtype(ref=Reference)             # <<<<<<<<<<<<<<
5446
5446
    goto __pyx_L3;
5447
5447
  }
5448
5448
 
5449
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":638
 
5449
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":638
5450
5450
 *         if H5Tequal(self.id, H5T_STD_REF_OBJ):
5451
5451
 *             return special_dtype(ref=Reference)
5452
5452
 *         elif H5Tequal(self.id, H5T_STD_REF_DSETREG):             # <<<<<<<<<<<<<<
5460
5460
  __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tequal(__pyx_t_2, H5T_STD_REF_DSETREG); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 638; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5461
5461
  if (__pyx_t_3) {
5462
5462
 
5463
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":639
 
5463
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":639
5464
5464
 *             return special_dtype(ref=Reference)
5465
5465
 *         elif H5Tequal(self.id, H5T_STD_REF_DSETREG):
5466
5466
 *             return special_dtype(ref=RegionReference)             # <<<<<<<<<<<<<<
5484
5484
  }
5485
5485
  /*else*/ {
5486
5486
 
5487
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":641
 
5487
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":641
5488
5488
 *             return special_dtype(ref=RegionReference)
5489
5489
 *         else:
5490
5490
 *             raise TypeError("Unknown reference type")             # <<<<<<<<<<<<<<
5519
5519
  return __pyx_r;
5520
5520
}
5521
5521
 
5522
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":653
 
5522
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":653
5523
5523
 * 
5524
5524
 * 
5525
5525
 *     def get_order(self):             # <<<<<<<<<<<<<<
5536
5536
  H5T_order_t __pyx_t_3;
5537
5537
  __Pyx_RefNannySetupContext("get_order");
5538
5538
 
5539
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":661
 
5539
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":661
5540
5540
 *         - ORDER_BE
5541
5541
 *         """
5542
5542
 *         return <int>H5Tget_order(self.id)             # <<<<<<<<<<<<<<
5567
5567
  return __pyx_r;
5568
5568
}
5569
5569
 
5570
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":664
 
5570
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":664
5571
5571
 * 
5572
5572
 * 
5573
5573
 *     def set_order(self, int order):             # <<<<<<<<<<<<<<
5594
5594
  return NULL;
5595
5595
  __pyx_L4_argument_unpacking_done:;
5596
5596
 
5597
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":672
 
5597
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":672
5598
5598
 *         - ORDER_BE
5599
5599
 *         """
5600
5600
 *         H5Tset_order(self.id, <H5T_order_t>order)             # <<<<<<<<<<<<<<
5619
5619
  return __pyx_r;
5620
5620
}
5621
5621
 
5622
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":675
 
5622
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":675
5623
5623
 * 
5624
5624
 * 
5625
5625
 *     def get_precision(self):             # <<<<<<<<<<<<<<
5636
5636
  hsize_t __pyx_t_3;
5637
5637
  __Pyx_RefNannySetupContext("get_precision");
5638
5638
 
5639
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":680
 
5639
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":680
5640
5640
 *         Get the number of significant bits (excludes padding).
5641
5641
 *         """
5642
5642
 *         return H5Tget_precision(self.id)             # <<<<<<<<<<<<<<
5667
5667
  return __pyx_r;
5668
5668
}
5669
5669
 
5670
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":683
 
5670
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":683
5671
5671
 * 
5672
5672
 * 
5673
5673
 *     def set_precision(self, size_t precision):             # <<<<<<<<<<<<<<
5694
5694
  return NULL;
5695
5695
  __pyx_L4_argument_unpacking_done:;
5696
5696
 
5697
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":688
 
5697
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":688
5698
5698
 *         Set the number of significant bits (excludes padding).
5699
5699
 *         """
5700
5700
 *         H5Tset_precision(self.id, precision)             # <<<<<<<<<<<<<<
5719
5719
  return __pyx_r;
5720
5720
}
5721
5721
 
5722
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":691
 
5722
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":691
5723
5723
 * 
5724
5724
 * 
5725
5725
 *     def get_offset(self):             # <<<<<<<<<<<<<<
5736
5736
  int __pyx_t_3;
5737
5737
  __Pyx_RefNannySetupContext("get_offset");
5738
5738
 
5739
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":696
 
5739
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":696
5740
5740
 *         Get the offset of the first significant bit.
5741
5741
 *         """
5742
5742
 *         return H5Tget_offset(self.id)             # <<<<<<<<<<<<<<
5767
5767
  return __pyx_r;
5768
5768
}
5769
5769
 
5770
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":699
 
5770
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":699
5771
5771
 * 
5772
5772
 * 
5773
5773
 *     def set_offset(self, size_t offset):             # <<<<<<<<<<<<<<
5794
5794
  return NULL;
5795
5795
  __pyx_L4_argument_unpacking_done:;
5796
5796
 
5797
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":704
 
5797
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":704
5798
5798
 *         Set the offset of the first significant bit.
5799
5799
 *         """
5800
5800
 *         H5Tset_offset(self.id, offset)             # <<<<<<<<<<<<<<
5819
5819
  return __pyx_r;
5820
5820
}
5821
5821
 
5822
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":707
 
5822
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":707
5823
5823
 * 
5824
5824
 * 
5825
5825
 *     def get_pad(self):             # <<<<<<<<<<<<<<
5840
5840
  PyObject *__pyx_t_5 = NULL;
5841
5841
  __Pyx_RefNannySetupContext("get_pad");
5842
5842
 
5843
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":718
 
5843
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":718
5844
5844
 *         cdef H5T_pad_t lsb
5845
5845
 *         cdef H5T_pad_t msb
5846
5846
 *         H5Tget_pad(self.id, &lsb, &msb)             # <<<<<<<<<<<<<<
5853
5853
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5854
5854
  __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tget_pad(__pyx_t_2, (&__pyx_v_lsb), (&__pyx_v_msb)); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5855
5855
 
5856
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":719
 
5856
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":719
5857
5857
 *         cdef H5T_pad_t msb
5858
5858
 *         H5Tget_pad(self.id, &lsb, &msb)
5859
5859
 *         return (<int>lsb, <int>msb)             # <<<<<<<<<<<<<<
5891
5891
  return __pyx_r;
5892
5892
}
5893
5893
 
5894
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":722
 
5894
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":722
5895
5895
 * 
5896
5896
 * 
5897
5897
 *     def set_pad(self, int lsb, int msb):             # <<<<<<<<<<<<<<
5951
5951
  return NULL;
5952
5952
  __pyx_L4_argument_unpacking_done:;
5953
5953
 
5954
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":731
 
5954
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":731
5955
5955
 *         - PAD_BACKGROUND
5956
5956
 *         """
5957
5957
 *         H5Tset_pad(self.id, <H5T_pad_t>lsb, <H5T_pad_t>msb)             # <<<<<<<<<<<<<<
5976
5976
  return __pyx_r;
5977
5977
}
5978
5978
 
5979
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":741
 
5979
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":741
5980
5980
 * 
5981
5981
 * 
5982
5982
 *     def get_sign(self):             # <<<<<<<<<<<<<<
5993
5993
  H5T_sign_t __pyx_t_3;
5994
5994
  __Pyx_RefNannySetupContext("get_sign");
5995
5995
 
5996
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":752
 
5996
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":752
5997
5997
 *             Signed 2's complement
5998
5998
 *         """
5999
5999
 *         return <int>H5Tget_sign(self.id)             # <<<<<<<<<<<<<<
6024
6024
  return __pyx_r;
6025
6025
}
6026
6026
 
6027
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":755
 
6027
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":755
6028
6028
 * 
6029
6029
 * 
6030
6030
 *     def set_sign(self, int sign):             # <<<<<<<<<<<<<<
6051
6051
  return NULL;
6052
6052
  __pyx_L4_argument_unpacking_done:;
6053
6053
 
6054
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":766
 
6054
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":766
6055
6055
 *             Signed 2's complement
6056
6056
 *         """
6057
6057
 *         H5Tset_sign(self.id, <H5T_sign_t>sign)             # <<<<<<<<<<<<<<
6076
6076
  return __pyx_r;
6077
6077
}
6078
6078
 
6079
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":768
 
6079
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":768
6080
6080
 *         H5Tset_sign(self.id, <H5T_sign_t>sign)
6081
6081
 * 
6082
6082
 *     cdef object py_dtype(self):             # <<<<<<<<<<<<<<
6091
6091
  PyObject *__pyx_t_3 = NULL;
6092
6092
  __Pyx_RefNannySetupContext("py_dtype");
6093
6093
 
6094
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":770
 
6094
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":770
6095
6095
 *     cdef object py_dtype(self):
6096
6096
 *         # Translation function for integer types
6097
6097
 *         return dtype( _order_map[self.get_order()] +             # <<<<<<<<<<<<<<
6100
6100
 */
6101
6101
  __Pyx_XDECREF(__pyx_r);
6102
6102
 
6103
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":771
 
6103
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":771
6104
6104
 *         # Translation function for integer types
6105
6105
 *         return dtype( _order_map[self.get_order()] +
6106
6106
 *                       _sign_map[self.get_sign()] + str(self.get_size()) )             # <<<<<<<<<<<<<<
6110
6110
  __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_self), __pyx_n_s__get_order); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 770; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6111
6111
  __Pyx_GOTREF(__pyx_t_1);
6112
6112
 
6113
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":770
 
6113
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":770
6114
6114
 *     cdef object py_dtype(self):
6115
6115
 *         # Translation function for integer types
6116
6116
 *         return dtype( _order_map[self.get_order()] +             # <<<<<<<<<<<<<<
6124
6124
  __Pyx_GOTREF(__pyx_t_1);
6125
6125
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6126
6126
 
6127
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":771
 
6127
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":771
6128
6128
 *         # Translation function for integer types
6129
6129
 *         return dtype( _order_map[self.get_order()] +
6130
6130
 *                       _sign_map[self.get_sign()] + str(self.get_size()) )             # <<<<<<<<<<<<<<
6186
6186
  return __pyx_r;
6187
6187
}
6188
6188
 
6189
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":781
 
6189
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":781
6190
6190
 * 
6191
6191
 * 
6192
6192
 *     def get_fields(self):             # <<<<<<<<<<<<<<
6213
6213
  PyObject *__pyx_t_8 = NULL;
6214
6214
  __Pyx_RefNannySetupContext("get_fields");
6215
6215
 
6216
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":794
 
6216
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":794
6217
6217
 *         """
6218
6218
 *         cdef size_t spos, epos, esize, mpos, msize
6219
6219
 *         H5Tget_fields(self.id, &spos, &epos, &esize, &mpos, &msize)             # <<<<<<<<<<<<<<
6226
6226
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6227
6227
  __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tget_fields(__pyx_t_2, (&__pyx_v_spos), (&__pyx_v_epos), (&__pyx_v_esize), (&__pyx_v_mpos), (&__pyx_v_msize)); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6228
6228
 
6229
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":795
 
6229
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":795
6230
6230
 *         cdef size_t spos, epos, esize, mpos, msize
6231
6231
 *         H5Tget_fields(self.id, &spos, &epos, &esize, &mpos, &msize)
6232
6232
 *         return (spos, epos, esize, mpos, msize)             # <<<<<<<<<<<<<<
6282
6282
  return __pyx_r;
6283
6283
}
6284
6284
 
6285
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":798
 
6285
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":798
6286
6286
 * 
6287
6287
 * 
6288
6288
 *     def set_fields(self, size_t spos, size_t epos, size_t esize,             # <<<<<<<<<<<<<<
6372
6372
  return NULL;
6373
6373
  __pyx_L4_argument_unpacking_done:;
6374
6374
 
6375
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":805
 
6375
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":805
6376
6376
 *         argument definitions.
6377
6377
 *         """
6378
6378
 *         H5Tset_fields(self.id, spos, epos, esize, mpos, msize)             # <<<<<<<<<<<<<<
6397
6397
  return __pyx_r;
6398
6398
}
6399
6399
 
6400
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":808
 
6400
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":808
6401
6401
 * 
6402
6402
 * 
6403
6403
 *     def get_ebias(self):             # <<<<<<<<<<<<<<
6414
6414
  size_t __pyx_t_3;
6415
6415
  __Pyx_RefNannySetupContext("get_ebias");
6416
6416
 
6417
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":813
 
6417
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":813
6418
6418
 *         Get the exponent bias.
6419
6419
 *         """
6420
6420
 *         return H5Tget_ebias(self.id)             # <<<<<<<<<<<<<<
6445
6445
  return __pyx_r;
6446
6446
}
6447
6447
 
6448
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":816
 
6448
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":816
6449
6449
 * 
6450
6450
 * 
6451
6451
 *     def set_ebias(self, size_t ebias):             # <<<<<<<<<<<<<<
6472
6472
  return NULL;
6473
6473
  __pyx_L4_argument_unpacking_done:;
6474
6474
 
6475
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":821
 
6475
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":821
6476
6476
 *         Set the exponent bias.
6477
6477
 *         """
6478
6478
 *         H5Tset_ebias(self.id, ebias)             # <<<<<<<<<<<<<<
6497
6497
  return __pyx_r;
6498
6498
}
6499
6499
 
6500
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":824
 
6500
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":824
6501
6501
 * 
6502
6502
 * 
6503
6503
 *     def get_norm(self):             # <<<<<<<<<<<<<<
6514
6514
  H5T_norm_t __pyx_t_3;
6515
6515
  __Pyx_RefNannySetupContext("get_norm");
6516
6516
 
6517
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":833
 
6517
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":833
6518
6518
 *         - NORM_NONE
6519
6519
 *         """
6520
6520
 *         return <int>H5Tget_norm(self.id)             # <<<<<<<<<<<<<<
6545
6545
  return __pyx_r;
6546
6546
}
6547
6547
 
6548
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":836
 
6548
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":836
6549
6549
 * 
6550
6550
 * 
6551
6551
 *     def set_norm(self, int norm):             # <<<<<<<<<<<<<<
6572
6572
  return NULL;
6573
6573
  __pyx_L4_argument_unpacking_done:;
6574
6574
 
6575
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":845
 
6575
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":845
6576
6576
 *         - NORM_NONE
6577
6577
 *         """
6578
6578
 *         H5Tset_norm(self.id, <H5T_norm_t>norm)             # <<<<<<<<<<<<<<
6597
6597
  return __pyx_r;
6598
6598
}
6599
6599
 
6600
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":848
 
6600
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":848
6601
6601
 * 
6602
6602
 * 
6603
6603
 *     def get_inpad(self):             # <<<<<<<<<<<<<<
6614
6614
  H5T_pad_t __pyx_t_3;
6615
6615
  __Pyx_RefNannySetupContext("get_inpad");
6616
6616
 
6617
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":857
 
6617
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":857
6618
6618
 *         - PAD_BACKGROUND
6619
6619
 *         """
6620
6620
 *         return <int>H5Tget_inpad(self.id)             # <<<<<<<<<<<<<<
6645
6645
  return __pyx_r;
6646
6646
}
6647
6647
 
6648
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":860
 
6648
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":860
6649
6649
 * 
6650
6650
 * 
6651
6651
 *     def set_inpad(self, int pad_code):             # <<<<<<<<<<<<<<
6672
6672
  return NULL;
6673
6673
  __pyx_L4_argument_unpacking_done:;
6674
6674
 
6675
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":869
 
6675
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":869
6676
6676
 *         - PAD_BACKGROUND
6677
6677
 *         """
6678
6678
 *         H5Tset_inpad(self.id, <H5T_pad_t>pad_code)             # <<<<<<<<<<<<<<
6697
6697
  return __pyx_r;
6698
6698
}
6699
6699
 
6700
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":871
 
6700
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":871
6701
6701
 *         H5Tset_inpad(self.id, <H5T_pad_t>pad_code)
6702
6702
 * 
6703
6703
 *     cdef object py_dtype(self):             # <<<<<<<<<<<<<<
6712
6712
  PyObject *__pyx_t_3 = NULL;
6713
6713
  __Pyx_RefNannySetupContext("py_dtype");
6714
6714
 
6715
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":873
 
6715
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":873
6716
6716
 *     cdef object py_dtype(self):
6717
6717
 *         # Translation function for floating-point types
6718
6718
 *         return dtype( _order_map[self.get_order()] + "f" + \             # <<<<<<<<<<<<<<
6732
6732
  __Pyx_GOTREF(__pyx_t_2);
6733
6733
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6734
6734
 
6735
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":874
 
6735
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":874
6736
6736
 *         # Translation function for floating-point types
6737
6737
 *         return dtype( _order_map[self.get_order()] + "f" + \
6738
6738
 *                       str(self.get_size()) )             # <<<<<<<<<<<<<<
6782
6782
  return __pyx_r;
6783
6783
}
6784
6784
 
6785
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":886
 
6785
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":886
6786
6786
 * 
6787
6787
 * 
6788
6788
 *     def get_nmembers(self):             # <<<<<<<<<<<<<<
6799
6799
  int __pyx_t_3;
6800
6800
  __Pyx_RefNannySetupContext("get_nmembers");
6801
6801
 
6802
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":891
 
6802
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":891
6803
6803
 *         Determine the number of members in a compound or enumerated type.
6804
6804
 *         """
6805
6805
 *         return H5Tget_nmembers(self.id)             # <<<<<<<<<<<<<<
6830
6830
  return __pyx_r;
6831
6831
}
6832
6832
 
6833
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":894
 
6833
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":894
6834
6834
 * 
6835
6835
 * 
6836
6836
 *     def get_member_name(self, int member):             # <<<<<<<<<<<<<<
6862
6862
  __pyx_L4_argument_unpacking_done:;
6863
6863
  __pyx_v_pyname = ((PyObject *)Py_None); __Pyx_INCREF(Py_None);
6864
6864
 
6865
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":901
 
6865
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":901
6866
6866
 *         """
6867
6867
 *         cdef char* name
6868
6868
 *         name = NULL             # <<<<<<<<<<<<<<
6871
6871
 */
6872
6872
  __pyx_v_name = NULL;
6873
6873
 
6874
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":903
 
6874
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":903
6875
6875
 *         name = NULL
6876
6876
 * 
6877
6877
 *         if member < 0:             # <<<<<<<<<<<<<<
6881
6881
  __pyx_t_1 = (__pyx_v_member < 0);
6882
6882
  if (__pyx_t_1) {
6883
6883
 
6884
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":904
 
6884
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":904
6885
6885
 * 
6886
6886
 *         if member < 0:
6887
6887
 *             raise ValueError("Member index must be non-negative.")             # <<<<<<<<<<<<<<
6903
6903
  }
6904
6904
  __pyx_L5:;
6905
6905
 
6906
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":906
 
6906
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":906
6907
6907
 *             raise ValueError("Member index must be non-negative.")
6908
6908
 * 
6909
6909
 *         try:             # <<<<<<<<<<<<<<
6912
6912
 */
6913
6913
  /*try:*/ {
6914
6914
 
6915
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":907
 
6915
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":907
6916
6916
 * 
6917
6917
 *         try:
6918
6918
 *             name = H5Tget_member_name(self.id, member)             # <<<<<<<<<<<<<<
6926
6926
    __pyx_t_5 = __pyx_f_4h5py_4defs_H5Tget_member_name(__pyx_t_4, __pyx_v_member); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 907; __pyx_clineno = __LINE__; goto __pyx_L7;}
6927
6927
    __pyx_v_name = __pyx_t_5;
6928
6928
 
6929
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":908
 
6929
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":908
6930
6930
 *         try:
6931
6931
 *             name = H5Tget_member_name(self.id, member)
6932
6932
 *             assert name != NULL             # <<<<<<<<<<<<<<
6940
6940
    }
6941
6941
    #endif
6942
6942
 
6943
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":909
 
6943
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":909
6944
6944
 *             name = H5Tget_member_name(self.id, member)
6945
6945
 *             assert name != NULL
6946
6946
 *             pyname = <bytes>name             # <<<<<<<<<<<<<<
6954
6954
    __pyx_t_3 = 0;
6955
6955
  }
6956
6956
 
6957
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":911
 
6957
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":911
6958
6958
 *             pyname = <bytes>name
6959
6959
 *         finally:
6960
6960
 *             free(name)             # <<<<<<<<<<<<<<
6989
6989
    }
6990
6990
  }
6991
6991
 
6992
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":913
 
6992
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":913
6993
6993
 *             free(name)
6994
6994
 * 
6995
6995
 *         return pyname             # <<<<<<<<<<<<<<
7015
7015
  return __pyx_r;
7016
7016
}
7017
7017
 
7018
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":916
 
7018
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":916
7019
7019
 * 
7020
7020
 * 
7021
7021
 *     def get_member_index(self, char* name):             # <<<<<<<<<<<<<<
7042
7042
  return NULL;
7043
7043
  __pyx_L4_argument_unpacking_done:;
7044
7044
 
7045
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":922
 
7045
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":922
7046
7046
 *         identified by a string name.
7047
7047
 *         """
7048
7048
 *         return H5Tget_member_index(self.id, name)             # <<<<<<<<<<<<<<
7073
7073
  return __pyx_r;
7074
7074
}
7075
7075
 
7076
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":933
 
7076
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":933
7077
7077
 * 
7078
7078
 * 
7079
7079
 *     def get_member_class(self, int member):             # <<<<<<<<<<<<<<
7102
7102
  return NULL;
7103
7103
  __pyx_L4_argument_unpacking_done:;
7104
7104
 
7105
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":939
 
7105
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":939
7106
7106
 *         identified by its index (0 <= member < nmembers).
7107
7107
 *         """
7108
7108
 *         if member < 0:             # <<<<<<<<<<<<<<
7112
7112
  __pyx_t_1 = (__pyx_v_member < 0);
7113
7113
  if (__pyx_t_1) {
7114
7114
 
7115
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":940
 
7115
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":940
7116
7116
 *         """
7117
7117
 *         if member < 0:
7118
7118
 *             raise ValueError("Member index must be non-negative.")             # <<<<<<<<<<<<<<
7134
7134
  }
7135
7135
  __pyx_L5:;
7136
7136
 
7137
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":941
 
7137
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":941
7138
7138
 *         if member < 0:
7139
7139
 *             raise ValueError("Member index must be non-negative.")
7140
7140
 *         return H5Tget_member_class(self.id, member)             # <<<<<<<<<<<<<<
7166
7166
  return __pyx_r;
7167
7167
}
7168
7168
 
7169
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":945
 
7169
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":945
7170
7170
 * 
7171
7171
 * 
7172
7172
 *     def get_member_offset(self, int member):             # <<<<<<<<<<<<<<
7195
7195
  return NULL;
7196
7196
  __pyx_L4_argument_unpacking_done:;
7197
7197
 
7198
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":951
 
7198
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":951
7199
7199
 *         member of a compound datatype.
7200
7200
 *         """
7201
7201
 *         if member < 0:             # <<<<<<<<<<<<<<
7205
7205
  __pyx_t_1 = (__pyx_v_member < 0);
7206
7206
  if (__pyx_t_1) {
7207
7207
 
7208
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":952
 
7208
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":952
7209
7209
 *         """
7210
7210
 *         if member < 0:
7211
7211
 *             raise ValueError("Member index must be non-negative.")             # <<<<<<<<<<<<<<
7227
7227
  }
7228
7228
  __pyx_L5:;
7229
7229
 
7230
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":953
 
7230
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":953
7231
7231
 *         if member < 0:
7232
7232
 *             raise ValueError("Member index must be non-negative.")
7233
7233
 *         return H5Tget_member_offset(self.id, member)             # <<<<<<<<<<<<<<
7259
7259
  return __pyx_r;
7260
7260
}
7261
7261
 
7262
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":956
 
7262
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":956
7263
7263
 * 
7264
7264
 * 
7265
7265
 *     def get_member_type(self, int member):             # <<<<<<<<<<<<<<
7288
7288
  return NULL;
7289
7289
  __pyx_L4_argument_unpacking_done:;
7290
7290
 
7291
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":962
 
7291
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":962
7292
7292
 *         index.
7293
7293
 *         """
7294
7294
 *         if member < 0:             # <<<<<<<<<<<<<<
7298
7298
  __pyx_t_1 = (__pyx_v_member < 0);
7299
7299
  if (__pyx_t_1) {
7300
7300
 
7301
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":963
 
7301
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":963
7302
7302
 *         """
7303
7303
 *         if member < 0:
7304
7304
 *             raise ValueError("Member index must be non-negative.")             # <<<<<<<<<<<<<<
7320
7320
  }
7321
7321
  __pyx_L5:;
7322
7322
 
7323
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":964
 
7323
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":964
7324
7324
 *         if member < 0:
7325
7325
 *             raise ValueError("Member index must be non-negative.")
7326
7326
 *         return typewrap(H5Tget_member_type(self.id, member))             # <<<<<<<<<<<<<<
7352
7352
  return __pyx_r;
7353
7353
}
7354
7354
 
7355
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":967
 
7355
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":967
7356
7356
 * 
7357
7357
 * 
7358
7358
 *     def insert(self, char* name, size_t offset, TypeID field not None):             # <<<<<<<<<<<<<<
7424
7424
  __pyx_L4_argument_unpacking_done:;
7425
7425
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_field), __pyx_ptype_4h5py_3h5t_TypeID, 0, "field", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 967; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7426
7426
 
7427
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":974
 
7427
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":974
7428
7428
 *         in bytes.
7429
7429
 *         """
7430
7430
 *         H5Tinsert(self.id, name, offset, field.id)             # <<<<<<<<<<<<<<
7453
7453
  return __pyx_r;
7454
7454
}
7455
7455
 
7456
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":977
 
7456
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":977
7457
7457
 * 
7458
7458
 * 
7459
7459
 *     def pack(self):             # <<<<<<<<<<<<<<
7470
7470
  herr_t __pyx_t_3;
7471
7471
  __Pyx_RefNannySetupContext("pack");
7472
7472
 
7473
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":983
 
7473
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":983
7474
7474
 *         alignment rules) from a compound datatype.
7475
7475
 *         """
7476
7476
 *         H5Tpack(self.id)             # <<<<<<<<<<<<<<
7495
7495
  return __pyx_r;
7496
7496
}
7497
7497
 
7498
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":985
 
7498
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":985
7499
7499
 *         H5Tpack(self.id)
7500
7500
 * 
7501
7501
 *     cdef object py_dtype(self):             # <<<<<<<<<<<<<<
7542
7542
  __pyx_v_typeobj = ((PyArray_Descr *)Py_None); __Pyx_INCREF(Py_None);
7543
7543
  __pyx_v_x = Py_None; __Pyx_INCREF(Py_None);
7544
7544
 
7545
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":991
 
7545
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":991
7546
7546
 *         cdef list field_types
7547
7547
 *         cdef int nfields
7548
7548
 *         field_names = []             # <<<<<<<<<<<<<<
7555
7555
  __pyx_v_field_names = __pyx_t_1;
7556
7556
  __pyx_t_1 = 0;
7557
7557
 
7558
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":992
 
7558
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":992
7559
7559
 *         cdef int nfields
7560
7560
 *         field_names = []
7561
7561
 *         field_types = []             # <<<<<<<<<<<<<<
7568
7568
  __pyx_v_field_types = __pyx_t_1;
7569
7569
  __pyx_t_1 = 0;
7570
7570
 
7571
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":993
 
7571
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":993
7572
7572
 *         field_names = []
7573
7573
 *         field_types = []
7574
7574
 *         nfields = self.get_nmembers()             # <<<<<<<<<<<<<<
7584
7584
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
7585
7585
  __pyx_v_nfields = __pyx_t_3;
7586
7586
 
7587
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":995
 
7587
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":995
7588
7588
 *         nfields = self.get_nmembers()
7589
7589
 * 
7590
7590
 *         import sys             # <<<<<<<<<<<<<<
7597
7597
  __pyx_v_sys = __pyx_t_2;
7598
7598
  __pyx_t_2 = 0;
7599
7599
 
7600
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":999
 
7600
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":999
7601
7601
 *         # First step: read field names and their Numpy dtypes into
7602
7602
 *         # two separate arrays.
7603
7603
 *         for i from 0 <= i < nfields:             # <<<<<<<<<<<<<<
7607
7607
  __pyx_t_3 = __pyx_v_nfields;
7608
7608
  for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
7609
7609
 
7610
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1000
 
7610
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1000
7611
7611
 *         # two separate arrays.
7612
7612
 *         for i from 0 <= i < nfields:
7613
7613
 *             tmp_type = self.get_member_type(i)             # <<<<<<<<<<<<<<
7632
7632
    __pyx_v_tmp_type = ((struct __pyx_obj_4h5py_3h5t_TypeID *)__pyx_t_1);
7633
7633
    __pyx_t_1 = 0;
7634
7634
 
7635
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1001
 
7635
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1001
7636
7636
 *         for i from 0 <= i < nfields:
7637
7637
 *             tmp_type = self.get_member_type(i)
7638
7638
 *             name = self.get_member_name(i)             # <<<<<<<<<<<<<<
7656
7656
    __pyx_v_name = __pyx_t_4;
7657
7657
    __pyx_t_4 = 0;
7658
7658
 
7659
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1002
 
7659
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1002
7660
7660
 *             tmp_type = self.get_member_type(i)
7661
7661
 *             name = self.get_member_name(i)
7662
7662
 *             field_names.append(name)             # <<<<<<<<<<<<<<
7668
7668
    }
7669
7669
    __pyx_t_5 = PyList_Append(((PyObject *)__pyx_v_field_names), __pyx_v_name); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7670
7670
 
7671
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1003
 
7671
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1003
7672
7672
 *             name = self.get_member_name(i)
7673
7673
 *             field_names.append(name)
7674
7674
 *             field_types.append(tmp_type.py_dtype())             # <<<<<<<<<<<<<<
7684
7684
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7685
7685
  }
7686
7686
 
7687
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1007
 
7687
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1007
7688
7688
 * 
7689
7689
 *         # 1. Check if it should be converted to a complex number
7690
7690
 *         if len(field_names) == 2                                and \             # <<<<<<<<<<<<<<
7698
7698
  __pyx_t_7 = (__pyx_t_6 == 2);
7699
7699
  if (__pyx_t_7) {
7700
7700
 
7701
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1008
 
7701
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1008
7702
7702
 *         # 1. Check if it should be converted to a complex number
7703
7703
 *         if len(field_names) == 2                                and \
7704
7704
 *             tuple(field_names) == (cfg._r_name, cfg._i_name)    and \             # <<<<<<<<<<<<<<
7736
7736
    __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
7737
7737
    if (__pyx_t_9) {
7738
7738
 
7739
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1009
 
7739
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1009
7740
7740
 *         if len(field_names) == 2                                and \
7741
7741
 *             tuple(field_names) == (cfg._r_name, cfg._i_name)    and \
7742
7742
 *             field_types[0] == field_types[1]                    and \             # <<<<<<<<<<<<<<
7755
7755
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7756
7756
      if (__pyx_t_10) {
7757
7757
 
7758
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1010
 
7758
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1010
7759
7759
 *             tuple(field_names) == (cfg._r_name, cfg._i_name)    and \
7760
7760
 *             field_types[0] == field_types[1]                    and \
7761
7761
 *             field_types[0].kind == 'f':             # <<<<<<<<<<<<<<
7786
7786
  }
7787
7787
  if (__pyx_t_9) {
7788
7788
 
7789
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1012
 
7789
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1012
7790
7790
 *             field_types[0].kind == 'f':
7791
7791
 * 
7792
7792
 *             bstring = field_types[0].str             # <<<<<<<<<<<<<<
7802
7802
    __pyx_v_bstring = __pyx_t_2;
7803
7803
    __pyx_t_2 = 0;
7804
7804
 
7805
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1013
 
7805
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1013
7806
7806
 * 
7807
7807
 *             bstring = field_types[0].str
7808
7808
 *             blen = int(bstring[2:])             # <<<<<<<<<<<<<<
7823
7823
    __pyx_v_blen = __pyx_t_2;
7824
7824
    __pyx_t_2 = 0;
7825
7825
 
7826
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1014
 
7826
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1014
7827
7827
 *             bstring = field_types[0].str
7828
7828
 *             blen = int(bstring[2:])
7829
7829
 *             nstring = bstring[0] + "c" + str(2*blen)             # <<<<<<<<<<<<<<
7853
7853
    __pyx_v_nstring = __pyx_t_8;
7854
7854
    __pyx_t_8 = 0;
7855
7855
 
7856
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1015
 
7856
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1015
7857
7857
 *             blen = int(bstring[2:])
7858
7858
 *             nstring = bstring[0] + "c" + str(2*blen)
7859
7859
 *             typeobj = dtype(nstring)             # <<<<<<<<<<<<<<
7875
7875
  }
7876
7876
  /*else*/ {
7877
7877
 
7878
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1019
 
7878
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1019
7879
7879
 *         # 2. Otherwise, read all fields of the compound type, in HDF5 order.
7880
7880
 *         else:
7881
7881
 *             if sys.version[0] == '3':             # <<<<<<<<<<<<<<
7894
7894
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
7895
7895
    if (__pyx_t_9) {
7896
7896
 
7897
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1020
 
7897
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1020
7898
7898
 *         else:
7899
7899
 *             if sys.version[0] == '3':
7900
7900
 *                 field_names = [x.decode('utf8') for x in field_names]             # <<<<<<<<<<<<<<
7937
7937
    }
7938
7938
    __pyx_L6:;
7939
7939
 
7940
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1021
 
7940
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1021
7941
7941
 *             if sys.version[0] == '3':
7942
7942
 *                 field_names = [x.decode('utf8') for x in field_names]
7943
7943
 *             typeobj = dtype(list(zip(field_names, field_types)))             # <<<<<<<<<<<<<<
7977
7977
  }
7978
7978
  __pyx_L5:;
7979
7979
 
7980
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1023
 
7980
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1023
7981
7981
 *             typeobj = dtype(list(zip(field_names, field_types)))
7982
7982
 * 
7983
7983
 *         return typeobj             # <<<<<<<<<<<<<<
8015
8015
  return __pyx_r;
8016
8016
}
8017
8017
 
8018
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1031
 
8018
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1031
8019
8019
 *     """
8020
8020
 * 
8021
8021
 *     cdef int enum_convert(self, long long *buf, int reverse) except -1:             # <<<<<<<<<<<<<<
8036
8036
  herr_t __pyx_t_7;
8037
8037
  __Pyx_RefNannySetupContext("enum_convert");
8038
8038
 
8039
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1039
 
8039
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1039
8040
8040
 *         cdef H5T_class_t class_code
8041
8041
 * 
8042
8042
 *         class_code = H5Tget_class(self.id)             # <<<<<<<<<<<<<<
8050
8050
  __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tget_class(__pyx_t_2); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1039; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
8051
8051
  __pyx_v_class_code = __pyx_t_3;
8052
8052
 
8053
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1040
 
8053
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1040
8054
8054
 * 
8055
8055
 *         class_code = H5Tget_class(self.id)
8056
8056
 *         if class_code != H5T_ENUM:             # <<<<<<<<<<<<<<
8060
8060
  __pyx_t_4 = (__pyx_v_class_code != H5T_ENUM);
8061
8061
  if (__pyx_t_4) {
8062
8062
 
8063
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1041
 
8063
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1041
8064
8064
 *         class_code = H5Tget_class(self.id)
8065
8065
 *         if class_code != H5T_ENUM:
8066
8066
 *             raise ValueError("This type (class %d) is not of class ENUM" % class_code)             # <<<<<<<<<<<<<<
8087
8087
  }
8088
8088
  __pyx_L3:;
8089
8089
 
8090
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1043
 
8090
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1043
8091
8091
 *             raise ValueError("This type (class %d) is not of class ENUM" % class_code)
8092
8092
 * 
8093
8093
 *         basetype = H5Tget_super(self.id)             # <<<<<<<<<<<<<<
8101
8101
  __pyx_t_6 = __pyx_f_4h5py_4defs_H5Tget_super(__pyx_t_2); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1043; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
8102
8102
  __pyx_v_basetype = __pyx_t_6;
8103
8103
 
8104
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1044
 
8104
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1044
8105
8105
 * 
8106
8106
 *         basetype = H5Tget_super(self.id)
8107
8107
 *         assert basetype > 0             # <<<<<<<<<<<<<<
8115
8115
  }
8116
8116
  #endif
8117
8117
 
8118
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1046
 
8118
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1046
8119
8119
 *         assert basetype > 0
8120
8120
 * 
8121
8121
 *         try:             # <<<<<<<<<<<<<<
8124
8124
 */
8125
8125
  /*try:*/ {
8126
8126
 
8127
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1047
 
8127
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1047
8128
8128
 * 
8129
8129
 *         try:
8130
8130
 *             if not reverse:             # <<<<<<<<<<<<<<
8134
8134
    __pyx_t_4 = (!__pyx_v_reverse);
8135
8135
    if (__pyx_t_4) {
8136
8136
 
8137
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1048
 
8137
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1048
8138
8138
 *         try:
8139
8139
 *             if not reverse:
8140
8140
 *                 H5Tconvert(H5T_NATIVE_LLONG, basetype, 1, buf, NULL, H5P_DEFAULT)             # <<<<<<<<<<<<<<
8146
8146
    }
8147
8147
    /*else*/ {
8148
8148
 
8149
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1050
 
8149
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1050
8150
8150
 *                 H5Tconvert(H5T_NATIVE_LLONG, basetype, 1, buf, NULL, H5P_DEFAULT)
8151
8151
 *             else:
8152
8152
 *                 H5Tconvert(basetype, H5T_NATIVE_LLONG, 1, buf, NULL, H5P_DEFAULT)             # <<<<<<<<<<<<<<
8158
8158
    __pyx_L7:;
8159
8159
  }
8160
8160
 
8161
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1052
 
8161
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1052
8162
8162
 *                 H5Tconvert(basetype, H5T_NATIVE_LLONG, 1, buf, NULL, H5P_DEFAULT)
8163
8163
 *         finally:
8164
8164
 *             H5Tclose(basetype)             # <<<<<<<<<<<<<<
8214
8214
  return __pyx_r;
8215
8215
}
8216
8216
 
8217
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1055
 
8217
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1055
8218
8218
 * 
8219
8219
 * 
8220
8220
 *     def enum_insert(self, char* name, long long value):             # <<<<<<<<<<<<<<
8276
8276
  return NULL;
8277
8277
  __pyx_L4_argument_unpacking_done:;
8278
8278
 
8279
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1065
 
8279
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1065
8280
8280
 *         cdef long long buf
8281
8281
 * 
8282
8282
 *         buf = value             # <<<<<<<<<<<<<<
8285
8285
 */
8286
8286
  __pyx_v_buf = __pyx_v_value;
8287
8287
 
8288
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1066
 
8288
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1066
8289
8289
 * 
8290
8290
 *         buf = value
8291
8291
 *         self.enum_convert(&buf, 0)             # <<<<<<<<<<<<<<
8294
8294
 */
8295
8295
  __pyx_t_1 = ((struct __pyx_vtabstruct_4h5py_3h5t_TypeEnumID *)((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_vtab)->enum_convert(((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)__pyx_v_self), (&__pyx_v_buf), 0); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1066; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
8296
8296
 
8297
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1067
 
8297
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1067
8298
8298
 *         buf = value
8299
8299
 *         self.enum_convert(&buf, 0)
8300
8300
 *         H5Tenum_insert(self.id, name, &buf)             # <<<<<<<<<<<<<<
8319
8319
  return __pyx_r;
8320
8320
}
8321
8321
 
8322
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1070
 
8322
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1070
8323
8323
 * 
8324
8324
 * 
8325
8325
 *     def enum_nameof(self, long long value):             # <<<<<<<<<<<<<<
8352
8352
  __pyx_L4_argument_unpacking_done:;
8353
8353
  __pyx_v_retstring = Py_None; __Pyx_INCREF(Py_None);
8354
8354
 
8355
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1081
 
8355
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1081
8356
8356
 *         cdef long long buf
8357
8357
 * 
8358
8358
 *         buf = value             # <<<<<<<<<<<<<<
8361
8361
 */
8362
8362
  __pyx_v_buf = __pyx_v_value;
8363
8363
 
8364
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1082
 
8364
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1082
8365
8365
 * 
8366
8366
 *         buf = value
8367
8367
 *         self.enum_convert(&buf, 0)             # <<<<<<<<<<<<<<
8370
8370
 */
8371
8371
  __pyx_t_1 = ((struct __pyx_vtabstruct_4h5py_3h5t_TypeEnumID *)((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_vtab)->enum_convert(((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)__pyx_v_self), (&__pyx_v_buf), 0); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1082; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
8372
8372
 
8373
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1083
 
8373
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1083
8374
8374
 *         buf = value
8375
8375
 *         self.enum_convert(&buf, 0)
8376
8376
 *         retval = H5Tenum_nameof(self.id, &buf, name, 1024)             # <<<<<<<<<<<<<<
8384
8384
  __pyx_t_4 = __pyx_f_4h5py_4defs_H5Tenum_nameof(__pyx_t_3, (&__pyx_v_buf), __pyx_v_name, 1024); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1083; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
8385
8385
  __pyx_v_retval = __pyx_t_4;
8386
8386
 
8387
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1084
 
8387
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1084
8388
8388
 *         self.enum_convert(&buf, 0)
8389
8389
 *         retval = H5Tenum_nameof(self.id, &buf, name, 1024)
8390
8390
 *         assert retval >= 0             # <<<<<<<<<<<<<<
8398
8398
  }
8399
8399
  #endif
8400
8400
 
8401
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1085
 
8401
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1085
8402
8402
 *         retval = H5Tenum_nameof(self.id, &buf, name, 1024)
8403
8403
 *         assert retval >= 0
8404
8404
 *         retstring = name             # <<<<<<<<<<<<<<
8411
8411
  __pyx_v_retstring = ((PyObject *)__pyx_t_2);
8412
8412
  __pyx_t_2 = 0;
8413
8413
 
8414
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1086
 
8414
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1086
8415
8415
 *         assert retval >= 0
8416
8416
 *         retstring = name
8417
8417
 *         return retstring             # <<<<<<<<<<<<<<
8436
8436
  return __pyx_r;
8437
8437
}
8438
8438
 
8439
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1089
 
8439
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1089
8440
8440
 * 
8441
8441
 * 
8442
8442
 *     def enum_valueof(self, char* name):             # <<<<<<<<<<<<<<
8465
8465
  return NULL;
8466
8466
  __pyx_L4_argument_unpacking_done:;
8467
8467
 
8468
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1096
 
8468
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1096
8469
8469
 *         cdef long long buf
8470
8470
 * 
8471
8471
 *         H5Tenum_valueof(self.id, name, &buf)             # <<<<<<<<<<<<<<
8478
8478
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
8479
8479
  __pyx_t_3 = __pyx_f_4h5py_4defs_H5Tenum_valueof(__pyx_t_2, __pyx_v_name, (&__pyx_v_buf)); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1096; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
8480
8480
 
8481
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1097
 
8481
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1097
8482
8482
 * 
8483
8483
 *         H5Tenum_valueof(self.id, name, &buf)
8484
8484
 *         self.enum_convert(&buf, 1)             # <<<<<<<<<<<<<<
8487
8487
 */
8488
8488
  __pyx_t_4 = ((struct __pyx_vtabstruct_4h5py_3h5t_TypeEnumID *)((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_vtab)->enum_convert(((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)__pyx_v_self), (&__pyx_v_buf), 1); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1097; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
8489
8489
 
8490
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1098
 
8490
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1098
8491
8491
 *         H5Tenum_valueof(self.id, name, &buf)
8492
8492
 *         self.enum_convert(&buf, 1)
8493
8493
 *         return buf             # <<<<<<<<<<<<<<
8513
8513
  return __pyx_r;
8514
8514
}
8515
8515
 
8516
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1101
 
8516
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1101
8517
8517
 * 
8518
8518
 * 
8519
8519
 *     def get_member_value(self, int idx):             # <<<<<<<<<<<<<<
8545
8545
  return NULL;
8546
8546
  __pyx_L4_argument_unpacking_done:;
8547
8547
 
8548
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1109
 
8548
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1109
8549
8549
 *         cdef hid_t ptype
8550
8550
 *         cdef long long val
8551
8551
 *         ptype = 0             # <<<<<<<<<<<<<<
8554
8554
 */
8555
8555
  __pyx_v_ptype = 0;
8556
8556
 
8557
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1111
 
8557
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1111
8558
8558
 *         ptype = 0
8559
8559
 * 
8560
8560
 *         if idx < 0:             # <<<<<<<<<<<<<<
8564
8564
  __pyx_t_1 = (__pyx_v_idx < 0);
8565
8565
  if (__pyx_t_1) {
8566
8566
 
8567
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1112
 
8567
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1112
8568
8568
 * 
8569
8569
 *         if idx < 0:
8570
8570
 *             raise ValueError("Index must be non-negative.")             # <<<<<<<<<<<<<<
8586
8586
  }
8587
8587
  __pyx_L5:;
8588
8588
 
8589
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1114
 
8589
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1114
8590
8590
 *             raise ValueError("Index must be non-negative.")
8591
8591
 * 
8592
8592
 *         H5Tget_member_value(self.id, idx, &val)             # <<<<<<<<<<<<<<
8599
8599
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
8600
8600
  __pyx_t_5 = __pyx_f_4h5py_4defs_H5Tget_member_value(__pyx_t_4, __pyx_v_idx, (&__pyx_v_val)); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
8601
8601
 
8602
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1115
 
8602
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1115
8603
8603
 * 
8604
8604
 *         H5Tget_member_value(self.id, idx, &val)
8605
8605
 *         self.enum_convert(&val, 1)             # <<<<<<<<<<<<<<
8608
8608
 */
8609
8609
  __pyx_t_6 = ((struct __pyx_vtabstruct_4h5py_3h5t_TypeEnumID *)((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_vtab)->enum_convert(((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)__pyx_v_self), (&__pyx_v_val), 1); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1115; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
8610
8610
 
8611
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1116
 
8611
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1116
8612
8612
 *         H5Tget_member_value(self.id, idx, &val)
8613
8613
 *         self.enum_convert(&val, 1)
8614
8614
 *         return val             # <<<<<<<<<<<<<<
8635
8635
  return __pyx_r;
8636
8636
}
8637
8637
 
8638
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1118
 
8638
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1118
8639
8639
 *         return val
8640
8640
 * 
8641
8641
 *     cdef object py_dtype(self):             # <<<<<<<<<<<<<<
8666
8666
  __pyx_v_val = Py_None; __Pyx_INCREF(Py_None);
8667
8667
  __pyx_v_ref = ((PyObject *)Py_None); __Pyx_INCREF(Py_None);
8668
8668
 
8669
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1121
 
8669
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1121
8670
8670
 *         # Translation function for enum types
8671
8671
 * 
8672
8672
 *         cdef TypeID basetype = self.get_super()             # <<<<<<<<<<<<<<
8682
8682
  __pyx_v_basetype = ((struct __pyx_obj_4h5py_3h5t_TypeID *)__pyx_t_2);
8683
8683
  __pyx_t_2 = 0;
8684
8684
 
8685
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1123
 
8685
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1123
8686
8686
 *         cdef TypeID basetype = self.get_super()
8687
8687
 * 
8688
8688
 *         nmembers = self.get_nmembers()             # <<<<<<<<<<<<<<
8698
8698
  __pyx_v_nmembers = __pyx_t_1;
8699
8699
  __pyx_t_1 = 0;
8700
8700
 
8701
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1124
 
8701
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1124
8702
8702
 * 
8703
8703
 *         nmembers = self.get_nmembers()
8704
8704
 *         members = {}             # <<<<<<<<<<<<<<
8711
8711
  __pyx_v_members = __pyx_t_1;
8712
8712
  __pyx_t_1 = 0;
8713
8713
 
8714
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1126
 
8714
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1126
8715
8715
 *         members = {}
8716
8716
 * 
8717
8717
 *         for idx in xrange(nmembers):             # <<<<<<<<<<<<<<
8752
8752
    __pyx_v_idx = __pyx_t_2;
8753
8753
    __pyx_t_2 = 0;
8754
8754
 
8755
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1127
 
8755
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1127
8756
8756
 * 
8757
8757
 *         for idx in xrange(nmembers):
8758
8758
 *             name = self.get_member_name(idx)             # <<<<<<<<<<<<<<
8774
8774
    __pyx_v_name = __pyx_t_5;
8775
8775
    __pyx_t_5 = 0;
8776
8776
 
8777
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1128
 
8777
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1128
8778
8778
 *         for idx in xrange(nmembers):
8779
8779
 *             name = self.get_member_name(idx)
8780
8780
 *             val = self.get_member_value(idx)             # <<<<<<<<<<<<<<
8796
8796
    __pyx_v_val = __pyx_t_2;
8797
8797
    __pyx_t_2 = 0;
8798
8798
 
8799
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1129
 
8799
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1129
8800
8800
 *             name = self.get_member_name(idx)
8801
8801
 *             val = self.get_member_value(idx)
8802
8802
 *             members[name] = val             # <<<<<<<<<<<<<<
8807
8807
  }
8808
8808
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
8809
8809
 
8810
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1131
 
8810
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1131
8811
8811
 *             members[name] = val
8812
8812
 * 
8813
8813
 *         ref = {cfg._f_name: 0, cfg._t_name: 1}             # <<<<<<<<<<<<<<
8834
8834
  __pyx_v_ref = __pyx_t_1;
8835
8835
  __pyx_t_1 = 0;
8836
8836
 
8837
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1134
 
8837
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1134
8838
8838
 * 
8839
8839
 *         # Boolean types have priority over standard enums
8840
8840
 *         if members == ref:             # <<<<<<<<<<<<<<
8847
8847
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
8848
8848
  if (__pyx_t_6) {
8849
8849
 
8850
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1135
 
8850
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1135
8851
8851
 *         # Boolean types have priority over standard enums
8852
8852
 *         if members == ref:
8853
8853
 *             return dtype('bool')             # <<<<<<<<<<<<<<
8870
8870
  }
8871
8871
  __pyx_L5:;
8872
8872
 
8873
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1137
 
8873
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1137
8874
8874
 *             return dtype('bool')
8875
8875
 * 
8876
8876
 *         return special_dtype(enum=(basetype.py_dtype(), members))             # <<<<<<<<<<<<<<
8924
8924
  return __pyx_r;
8925
8925
}
8926
8926
 
8927
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1158
 
8927
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1158
8928
8928
 * cdef dict _uint_nt = {1: H5T_NATIVE_UINT8, 2: H5T_NATIVE_UINT16, 4: H5T_NATIVE_UINT32, 8: H5T_NATIVE_UINT64}
8929
8929
 * 
8930
8930
 * cdef TypeFloatID _c_float(dtype dt):             # <<<<<<<<<<<<<<
8944
8944
  PyObject *__pyx_t_7 = NULL;
8945
8945
  __Pyx_RefNannySetupContext("_c_float");
8946
8946
 
8947
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1162
 
8947
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1162
8948
8948
 *     cdef hid_t tid
8949
8949
 * 
8950
8950
 *     try:             # <<<<<<<<<<<<<<
8959
8959
    __Pyx_XGOTREF(__pyx_save_exc_tb);
8960
8960
    /*try:*/ {
8961
8961
 
8962
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1163
 
8962
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1163
8963
8963
 * 
8964
8964
 *     try:
8965
8965
 *         if dt.byteorder == c'<':             # <<<<<<<<<<<<<<
8969
8969
      switch (__pyx_v_dt->byteorder) {
8970
8970
        case '<':
8971
8971
 
8972
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1164
 
8972
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1164
8973
8973
 *     try:
8974
8974
 *         if dt.byteorder == c'<':
8975
8975
 *             tid =  _float_le[dt.elsize]             # <<<<<<<<<<<<<<
8983
8983
        __pyx_v_tid = __pyx_t_2;
8984
8984
        break;
8985
8985
 
8986
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1165
 
8986
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1165
8987
8987
 *         if dt.byteorder == c'<':
8988
8988
 *             tid =  _float_le[dt.elsize]
8989
8989
 *         elif dt.byteorder == c'>':             # <<<<<<<<<<<<<<
8992
8992
 */
8993
8993
        case '>':
8994
8994
 
8995
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1166
 
8995
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1166
8996
8996
 *             tid =  _float_le[dt.elsize]
8997
8997
 *         elif dt.byteorder == c'>':
8998
8998
 *             tid =  _float_be[dt.elsize]             # <<<<<<<<<<<<<<
9007
9007
        break;
9008
9008
        default:
9009
9009
 
9010
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1168
 
9010
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1168
9011
9011
 *             tid =  _float_be[dt.elsize]
9012
9012
 *         else:
9013
9013
 *             tid =  _float_nt[dt.elsize]             # <<<<<<<<<<<<<<
9029
9029
    __pyx_L3_error:;
9030
9030
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
9031
9031
 
9032
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1169
 
9032
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1169
9033
9033
 *         else:
9034
9034
 *             tid =  _float_nt[dt.elsize]
9035
9035
 *     except KeyError:             # <<<<<<<<<<<<<<
9044
9044
      __Pyx_GOTREF(__pyx_t_4);
9045
9045
      __Pyx_GOTREF(__pyx_t_5);
9046
9046
 
9047
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1170
 
9047
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1170
9048
9048
 *             tid =  _float_nt[dt.elsize]
9049
9049
 *     except KeyError:
9050
9050
 *         raise TypeError("Unsupported float size (%s)" % dt.elsize)             # <<<<<<<<<<<<<<
9086
9086
    __pyx_L10_try_end:;
9087
9087
  }
9088
9088
 
9089
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1172
 
9089
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1172
9090
9090
 *         raise TypeError("Unsupported float size (%s)" % dt.elsize)
9091
9091
 * 
9092
9092
 *     return TypeFloatID(H5Tcopy(tid))             # <<<<<<<<<<<<<<
9125
9125
  return __pyx_r;
9126
9126
}
9127
9127
 
9128
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1174
 
9128
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1174
9129
9129
 *     return TypeFloatID(H5Tcopy(tid))
9130
9130
 * 
9131
9131
 * cdef TypeIntegerID _c_int(dtype dt):             # <<<<<<<<<<<<<<
9146
9146
  PyObject *__pyx_t_8 = NULL;
9147
9147
  __Pyx_RefNannySetupContext("_c_int");
9148
9148
 
9149
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1178
 
9149
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1178
9150
9150
 *     cdef hid_t tid
9151
9151
 * 
9152
9152
 *     try:             # <<<<<<<<<<<<<<
9161
9161
    __Pyx_XGOTREF(__pyx_save_exc_tb);
9162
9162
    /*try:*/ {
9163
9163
 
9164
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1179
 
9164
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1179
9165
9165
 * 
9166
9166
 *     try:
9167
9167
 *         if dt.kind == c'i':             # <<<<<<<<<<<<<<
9171
9171
      switch (__pyx_v_dt->kind) {
9172
9172
        case 'i':
9173
9173
 
9174
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1180
 
9174
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1180
9175
9175
 *     try:
9176
9176
 *         if dt.kind == c'i':
9177
9177
 *             if dt.byteorder == c'<':             # <<<<<<<<<<<<<<
9181
9181
        __pyx_t_1 = (__pyx_v_dt->byteorder == '<');
9182
9182
        if (__pyx_t_1) {
9183
9183
 
9184
 
          /* "/home/tachyon/h5py/h5py/h5t.pyx":1181
 
9184
          /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1181
9185
9185
 *         if dt.kind == c'i':
9186
9186
 *             if dt.byteorder == c'<':
9187
9187
 *                 tid = _int_le[dt.elsize]             # <<<<<<<<<<<<<<
9196
9196
          goto __pyx_L11;
9197
9197
        }
9198
9198
 
9199
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1182
 
9199
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1182
9200
9200
 *             if dt.byteorder == c'<':
9201
9201
 *                 tid = _int_le[dt.elsize]
9202
9202
 *             elif dt.byteorder == c'>':             # <<<<<<<<<<<<<<
9206
9206
        __pyx_t_1 = (__pyx_v_dt->byteorder == '>');
9207
9207
        if (__pyx_t_1) {
9208
9208
 
9209
 
          /* "/home/tachyon/h5py/h5py/h5t.pyx":1183
 
9209
          /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1183
9210
9210
 *                 tid = _int_le[dt.elsize]
9211
9211
 *             elif dt.byteorder == c'>':
9212
9212
 *                 tid = _int_be[dt.elsize]             # <<<<<<<<<<<<<<
9222
9222
        }
9223
9223
        /*else*/ {
9224
9224
 
9225
 
          /* "/home/tachyon/h5py/h5py/h5t.pyx":1185
 
9225
          /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1185
9226
9226
 *                 tid = _int_be[dt.elsize]
9227
9227
 *             else:
9228
9228
 *                 tid = _int_nt[dt.elsize]             # <<<<<<<<<<<<<<
9238
9238
        __pyx_L11:;
9239
9239
        break;
9240
9240
 
9241
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1186
 
9241
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1186
9242
9242
 *             else:
9243
9243
 *                 tid = _int_nt[dt.elsize]
9244
9244
 *         elif dt.kind == c'u':             # <<<<<<<<<<<<<<
9247
9247
 */
9248
9248
        case 'u':
9249
9249
 
9250
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1187
 
9250
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1187
9251
9251
 *                 tid = _int_nt[dt.elsize]
9252
9252
 *         elif dt.kind == c'u':
9253
9253
 *             if dt.byteorder == c'<':             # <<<<<<<<<<<<<<
9257
9257
        __pyx_t_1 = (__pyx_v_dt->byteorder == '<');
9258
9258
        if (__pyx_t_1) {
9259
9259
 
9260
 
          /* "/home/tachyon/h5py/h5py/h5t.pyx":1188
 
9260
          /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1188
9261
9261
 *         elif dt.kind == c'u':
9262
9262
 *             if dt.byteorder == c'<':
9263
9263
 *                 tid = _uint_le[dt.elsize]             # <<<<<<<<<<<<<<
9272
9272
          goto __pyx_L12;
9273
9273
        }
9274
9274
 
9275
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1189
 
9275
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1189
9276
9276
 *             if dt.byteorder == c'<':
9277
9277
 *                 tid = _uint_le[dt.elsize]
9278
9278
 *             elif dt.byteorder == c'>':             # <<<<<<<<<<<<<<
9282
9282
        __pyx_t_1 = (__pyx_v_dt->byteorder == '>');
9283
9283
        if (__pyx_t_1) {
9284
9284
 
9285
 
          /* "/home/tachyon/h5py/h5py/h5t.pyx":1190
 
9285
          /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1190
9286
9286
 *                 tid = _uint_le[dt.elsize]
9287
9287
 *             elif dt.byteorder == c'>':
9288
9288
 *                 tid = _uint_be[dt.elsize]             # <<<<<<<<<<<<<<
9298
9298
        }
9299
9299
        /*else*/ {
9300
9300
 
9301
 
          /* "/home/tachyon/h5py/h5py/h5t.pyx":1192
 
9301
          /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1192
9302
9302
 *                 tid = _uint_be[dt.elsize]
9303
9303
 *             else:
9304
9304
 *                 tid = _uint_nt[dt.elsize]             # <<<<<<<<<<<<<<
9315
9315
        break;
9316
9316
        default:
9317
9317
 
9318
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1194
 
9318
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1194
9319
9319
 *                 tid = _uint_nt[dt.elsize]
9320
9320
 *         else:
9321
9321
 *             raise TypeError('Illegal int kind "%s"' % dt.kind)             # <<<<<<<<<<<<<<
9349
9349
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
9350
9350
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
9351
9351
 
9352
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1195
 
9352
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1195
9353
9353
 *         else:
9354
9354
 *             raise TypeError('Illegal int kind "%s"' % dt.kind)
9355
9355
 *     except KeyError:             # <<<<<<<<<<<<<<
9364
9364
      __Pyx_GOTREF(__pyx_t_2);
9365
9365
      __Pyx_GOTREF(__pyx_t_6);
9366
9366
 
9367
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1196
 
9367
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1196
9368
9368
 *             raise TypeError('Illegal int kind "%s"' % dt.kind)
9369
9369
 *     except KeyError:
9370
9370
 *         raise TypeError("Unsupported integer size (%s)" % dt.elsize)             # <<<<<<<<<<<<<<
9406
9406
    __pyx_L10_try_end:;
9407
9407
  }
9408
9408
 
9409
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1198
 
9409
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1198
9410
9410
 *         raise TypeError("Unsupported integer size (%s)" % dt.elsize)
9411
9411
 * 
9412
9412
 *     return TypeIntegerID(H5Tcopy(tid))             # <<<<<<<<<<<<<<
9445
9445
  return __pyx_r;
9446
9446
}
9447
9447
 
9448
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1200
 
9448
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1200
9449
9449
 *     return TypeIntegerID(H5Tcopy(tid))
9450
9450
 * 
9451
9451
 * cdef TypeEnumID _c_enum(dtype dt, dict vals):             # <<<<<<<<<<<<<<
9470
9470
  __pyx_v_out = ((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)Py_None); __Pyx_INCREF(Py_None);
9471
9471
  __pyx_v_name = Py_None; __Pyx_INCREF(Py_None);
9472
9472
 
9473
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1205
 
9473
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1205
9474
9474
 *     cdef TypeEnumID out
9475
9475
 * 
9476
9476
 *     base = _c_int(dt)             # <<<<<<<<<<<<<<
9483
9483
  __pyx_v_base = ((struct __pyx_obj_4h5py_3h5t_TypeIntegerID *)__pyx_t_1);
9484
9484
  __pyx_t_1 = 0;
9485
9485
 
9486
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1207
 
9486
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1207
9487
9487
 *     base = _c_int(dt)
9488
9488
 * 
9489
9489
 *     out = TypeEnumID(H5Tenum_create(base.id))             # <<<<<<<<<<<<<<
9509
9509
  __pyx_v_out = ((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)__pyx_t_1);
9510
9510
  __pyx_t_1 = 0;
9511
9511
 
9512
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1208
 
9512
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1208
9513
9513
 * 
9514
9514
 *     out = TypeEnumID(H5Tenum_create(base.id))
9515
9515
 *     for name in sorted(vals):             # <<<<<<<<<<<<<<
9550
9550
    __pyx_v_name = __pyx_t_4;
9551
9551
    __pyx_t_4 = 0;
9552
9552
 
9553
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1209
 
9553
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1209
9554
9554
 *     out = TypeEnumID(H5Tenum_create(base.id))
9555
9555
 *     for name in sorted(vals):
9556
9556
 *         out.enum_insert(name, vals[name])             # <<<<<<<<<<<<<<
9577
9577
  }
9578
9578
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9579
9579
 
9580
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1210
 
9580
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1210
9581
9581
 *     for name in sorted(vals):
9582
9582
 *         out.enum_insert(name, vals[name])
9583
9583
 *     return out             # <<<<<<<<<<<<<<
9607
9607
  return __pyx_r;
9608
9608
}
9609
9609
 
9610
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1212
 
9610
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1212
9611
9611
 *     return out
9612
9612
 * 
9613
9613
 * cdef TypeEnumID _c_bool(dtype dt):             # <<<<<<<<<<<<<<
9625
9625
  __Pyx_RefNannySetupContext("_c_bool");
9626
9626
  __pyx_v_out = ((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)Py_None); __Pyx_INCREF(Py_None);
9627
9627
 
9628
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1217
 
9628
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1217
9629
9629
 * 
9630
9630
 *     cdef TypeEnumID out
9631
9631
 *     out = TypeEnumID(H5Tenum_create(H5T_NATIVE_INT8))             # <<<<<<<<<<<<<<
9647
9647
  __pyx_v_out = ((struct __pyx_obj_4h5py_3h5t_TypeEnumID *)__pyx_t_2);
9648
9648
  __pyx_t_2 = 0;
9649
9649
 
9650
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1219
 
9650
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1219
9651
9651
 *     out = TypeEnumID(H5Tenum_create(H5T_NATIVE_INT8))
9652
9652
 * 
9653
9653
 *     out.enum_insert(cfg._f_name, 0)             # <<<<<<<<<<<<<<
9675
9675
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
9676
9676
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
9677
9677
 
9678
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1220
 
9678
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1220
9679
9679
 * 
9680
9680
 *     out.enum_insert(cfg._f_name, 0)
9681
9681
 *     out.enum_insert(cfg._t_name, 1)             # <<<<<<<<<<<<<<
9703
9703
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
9704
9704
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
9705
9705
 
9706
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1222
 
9706
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1222
9707
9707
 *     out.enum_insert(cfg._t_name, 1)
9708
9708
 * 
9709
9709
 *     return out             # <<<<<<<<<<<<<<
9730
9730
  return __pyx_r;
9731
9731
}
9732
9732
 
9733
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1224
 
9733
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1224
9734
9734
 *     return out
9735
9735
 * 
9736
9736
 * cdef TypeArrayID _c_array(dtype dt, int logical):             # <<<<<<<<<<<<<<
9757
9757
  __pyx_v_type_base = ((struct __pyx_obj_4h5py_3h5t_TypeID *)Py_None); __Pyx_INCREF(Py_None);
9758
9758
  __pyx_v_shape = Py_None; __Pyx_INCREF(Py_None);
9759
9759
 
9760
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1230
 
9760
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1230
9761
9761
 *     cdef object shape
9762
9762
 * 
9763
9763
 *     base, shape = dt.subdtype             # <<<<<<<<<<<<<<
9797
9797
    __pyx_t_3 = 0;
9798
9798
  }
9799
9799
 
9800
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1231
 
9800
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1231
9801
9801
 * 
9802
9802
 *     base, shape = dt.subdtype
9803
9803
 *     try:             # <<<<<<<<<<<<<<
9812
9812
    __Pyx_XGOTREF(__pyx_save_exc_tb);
9813
9813
    /*try:*/ {
9814
9814
 
9815
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1232
 
9815
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1232
9816
9816
 *     base, shape = dt.subdtype
9817
9817
 *     try:
9818
9818
 *         shape = tuple(shape)             # <<<<<<<<<<<<<<
9841
9841
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
9842
9842
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
9843
9843
 
9844
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1233
 
9844
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1233
9845
9845
 *     try:
9846
9846
 *         shape = tuple(shape)
9847
9847
 *     except TypeError:             # <<<<<<<<<<<<<<
9856
9856
      __Pyx_GOTREF(__pyx_t_1);
9857
9857
      __Pyx_GOTREF(__pyx_t_2);
9858
9858
 
9859
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1234
 
9859
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1234
9860
9860
 *         shape = tuple(shape)
9861
9861
 *     except TypeError:
9862
9862
 *         try:             # <<<<<<<<<<<<<<
9871
9871
        __Pyx_XGOTREF(__pyx_save_exc_tb);
9872
9872
        /*try:*/ {
9873
9873
 
9874
 
          /* "/home/tachyon/h5py/h5py/h5t.pyx":1235
 
9874
          /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1235
9875
9875
 *     except TypeError:
9876
9876
 *         try:
9877
9877
 *             shape = (int(shape),)             # <<<<<<<<<<<<<<
9903
9903
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
9904
9904
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
9905
9905
 
9906
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1236
 
9906
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1236
9907
9907
 *         try:
9908
9908
 *             shape = (int(shape),)
9909
9909
 *         except TypeError:             # <<<<<<<<<<<<<<
9918
9918
          __Pyx_GOTREF(__pyx_t_6);
9919
9919
          __Pyx_GOTREF(__pyx_t_7);
9920
9920
 
9921
 
          /* "/home/tachyon/h5py/h5py/h5t.pyx":1237
 
9921
          /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1237
9922
9922
 *             shape = (int(shape),)
9923
9923
 *         except TypeError:
9924
9924
 *             raise TypeError("Array shape for dtype must be a sequence or integer")             # <<<<<<<<<<<<<<
9973
9973
    __pyx_L10_try_end:;
9974
9974
  }
9975
9975
 
9976
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1238
 
9976
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1238
9977
9977
 *         except TypeError:
9978
9978
 *             raise TypeError("Array shape for dtype must be a sequence or integer")
9979
9979
 *     type_base = py_create(base, logical=logical)             # <<<<<<<<<<<<<<
10003
10003
  __pyx_v_type_base = ((struct __pyx_obj_4h5py_3h5t_TypeID *)__pyx_t_7);
10004
10004
  __pyx_t_7 = 0;
10005
10005
 
10006
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1239
 
10006
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1239
10007
10007
 *             raise TypeError("Array shape for dtype must be a sequence or integer")
10008
10008
 *     type_base = py_create(base, logical=logical)
10009
10009
 *     return array_create(type_base, shape)             # <<<<<<<<<<<<<<
10052
10052
  return __pyx_r;
10053
10053
}
10054
10054
 
10055
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1241
 
10055
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1241
10056
10056
 *     return array_create(type_base, shape)
10057
10057
 * 
10058
10058
 * cdef TypeOpaqueID _c_opaque(dtype dt):             # <<<<<<<<<<<<<<
10068
10068
  PyObject *__pyx_t_4 = NULL;
10069
10069
  __Pyx_RefNannySetupContext("_c_opaque");
10070
10070
 
10071
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1243
 
10071
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1243
10072
10072
 * cdef TypeOpaqueID _c_opaque(dtype dt):
10073
10073
 *     # Opaque
10074
10074
 *     return TypeOpaqueID(H5Tcreate(H5T_OPAQUE, dt.itemsize))             # <<<<<<<<<<<<<<
10108
10108
  return __pyx_r;
10109
10109
}
10110
10110
 
10111
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1245
 
10111
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1245
10112
10112
 *     return TypeOpaqueID(H5Tcreate(H5T_OPAQUE, dt.itemsize))
10113
10113
 * 
10114
10114
 * cdef TypeStringID _c_string(dtype dt):             # <<<<<<<<<<<<<<
10126
10126
  PyObject *__pyx_t_5 = NULL;
10127
10127
  __Pyx_RefNannySetupContext("_c_string");
10128
10128
 
10129
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1249
 
10129
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1249
10130
10130
 *     cdef hid_t tid
10131
10131
 * 
10132
10132
 *     tid = H5Tcopy(H5T_C_S1)             # <<<<<<<<<<<<<<
10136
10136
  __pyx_t_1 = __pyx_f_4h5py_4defs_H5Tcopy(H5T_C_S1); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1249; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10137
10137
  __pyx_v_tid = __pyx_t_1;
10138
10138
 
10139
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1250
 
10139
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1250
10140
10140
 * 
10141
10141
 *     tid = H5Tcopy(H5T_C_S1)
10142
10142
 *     H5Tset_size(tid, dt.itemsize)             # <<<<<<<<<<<<<<
10149
10149
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
10150
10150
  __pyx_t_4 = __pyx_f_4h5py_4defs_H5Tset_size(__pyx_v_tid, __pyx_t_3); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10151
10151
 
10152
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1251
 
10152
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1251
10153
10153
 *     tid = H5Tcopy(H5T_C_S1)
10154
10154
 *     H5Tset_size(tid, dt.itemsize)
10155
10155
 *     H5Tset_strpad(tid, H5T_STR_NULLPAD)             # <<<<<<<<<<<<<<
10158
10158
 */
10159
10159
  __pyx_t_4 = __pyx_f_4h5py_4defs_H5Tset_strpad(__pyx_v_tid, H5T_STR_NULLPAD); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10160
10160
 
10161
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1252
 
10161
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1252
10162
10162
 *     H5Tset_size(tid, dt.itemsize)
10163
10163
 *     H5Tset_strpad(tid, H5T_STR_NULLPAD)
10164
10164
 *     return TypeStringID(tid)             # <<<<<<<<<<<<<<
10193
10193
  return __pyx_r;
10194
10194
}
10195
10195
 
10196
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1254
 
10196
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1254
10197
10197
 *     return TypeStringID(tid)
10198
10198
 * 
10199
10199
 * cdef TypeCompoundID _c_complex(dtype dt):             # <<<<<<<<<<<<<<
10219
10219
  herr_t __pyx_t_7;
10220
10220
  __Pyx_RefNannySetupContext("_c_complex");
10221
10221
 
10222
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1261
 
10222
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1261
10223
10223
 *     cdef size_t size, off_r, off_i
10224
10224
 * 
10225
10225
 *     cdef size_t length = dt.itemsize             # <<<<<<<<<<<<<<
10232
10232
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
10233
10233
  __pyx_v_length = __pyx_t_2;
10234
10234
 
10235
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1262
 
10235
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1262
10236
10236
 * 
10237
10237
 *     cdef size_t length = dt.itemsize
10238
10238
 *     cdef char byteorder = dt.byteorder             # <<<<<<<<<<<<<<
10241
10241
 */
10242
10242
  __pyx_v_byteorder = __pyx_v_dt->byteorder;
10243
10243
 
10244
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1264
 
10244
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1264
10245
10245
 *     cdef char byteorder = dt.byteorder
10246
10246
 * 
10247
10247
 *     if length == 8:             # <<<<<<<<<<<<<<
10251
10251
  switch (__pyx_v_length) {
10252
10252
    case 8:
10253
10253
 
10254
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1265
 
10254
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1265
10255
10255
 * 
10256
10256
 *     if length == 8:
10257
10257
 *         size = h5py_size_n64             # <<<<<<<<<<<<<<
10260
10260
 */
10261
10261
    __pyx_v_size = h5py_size_n64;
10262
10262
 
10263
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1266
 
10263
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1266
10264
10264
 *     if length == 8:
10265
10265
 *         size = h5py_size_n64
10266
10266
 *         off_r = h5py_offset_n64_real             # <<<<<<<<<<<<<<
10269
10269
 */
10270
10270
    __pyx_v_off_r = h5py_offset_n64_real;
10271
10271
 
10272
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1267
 
10272
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1267
10273
10273
 *         size = h5py_size_n64
10274
10274
 *         off_r = h5py_offset_n64_real
10275
10275
 *         off_i = h5py_offset_n64_imag             # <<<<<<<<<<<<<<
10278
10278
 */
10279
10279
    __pyx_v_off_i = h5py_offset_n64_imag;
10280
10280
 
10281
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1268
 
10281
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1268
10282
10282
 *         off_r = h5py_offset_n64_real
10283
10283
 *         off_i = h5py_offset_n64_imag
10284
10284
 *         if byteorder == c'<':             # <<<<<<<<<<<<<<
10288
10288
    __pyx_t_3 = (__pyx_v_byteorder == '<');
10289
10289
    if (__pyx_t_3) {
10290
10290
 
10291
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1269
 
10291
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1269
10292
10292
 *         off_i = h5py_offset_n64_imag
10293
10293
 *         if byteorder == c'<':
10294
10294
 *             tid_sub = H5T_IEEE_F32LE             # <<<<<<<<<<<<<<
10299
10299
      goto __pyx_L3;
10300
10300
    }
10301
10301
 
10302
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1270
 
10302
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1270
10303
10303
 *         if byteorder == c'<':
10304
10304
 *             tid_sub = H5T_IEEE_F32LE
10305
10305
 *         elif byteorder == c'>':             # <<<<<<<<<<<<<<
10309
10309
    __pyx_t_3 = (__pyx_v_byteorder == '>');
10310
10310
    if (__pyx_t_3) {
10311
10311
 
10312
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1271
 
10312
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1271
10313
10313
 *             tid_sub = H5T_IEEE_F32LE
10314
10314
 *         elif byteorder == c'>':
10315
10315
 *             tid_sub = H5T_IEEE_F32BE             # <<<<<<<<<<<<<<
10321
10321
    }
10322
10322
    /*else*/ {
10323
10323
 
10324
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1273
 
10324
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1273
10325
10325
 *             tid_sub = H5T_IEEE_F32BE
10326
10326
 *         else:
10327
10327
 *             tid_sub = H5T_NATIVE_FLOAT             # <<<<<<<<<<<<<<
10333
10333
    __pyx_L3:;
10334
10334
    break;
10335
10335
 
10336
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1274
 
10336
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1274
10337
10337
 *         else:
10338
10338
 *             tid_sub = H5T_NATIVE_FLOAT
10339
10339
 *     elif length == 16:             # <<<<<<<<<<<<<<
10342
10342
 */
10343
10343
    case 16:
10344
10344
 
10345
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1275
 
10345
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1275
10346
10346
 *             tid_sub = H5T_NATIVE_FLOAT
10347
10347
 *     elif length == 16:
10348
10348
 *         size = h5py_size_n128             # <<<<<<<<<<<<<<
10351
10351
 */
10352
10352
    __pyx_v_size = h5py_size_n128;
10353
10353
 
10354
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1276
 
10354
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1276
10355
10355
 *     elif length == 16:
10356
10356
 *         size = h5py_size_n128
10357
10357
 *         off_r = h5py_offset_n128_real             # <<<<<<<<<<<<<<
10360
10360
 */
10361
10361
    __pyx_v_off_r = h5py_offset_n128_real;
10362
10362
 
10363
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1277
 
10363
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1277
10364
10364
 *         size = h5py_size_n128
10365
10365
 *         off_r = h5py_offset_n128_real
10366
10366
 *         off_i = h5py_offset_n128_imag             # <<<<<<<<<<<<<<
10369
10369
 */
10370
10370
    __pyx_v_off_i = h5py_offset_n128_imag;
10371
10371
 
10372
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1278
 
10372
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1278
10373
10373
 *         off_r = h5py_offset_n128_real
10374
10374
 *         off_i = h5py_offset_n128_imag
10375
10375
 *         if byteorder == c'<':             # <<<<<<<<<<<<<<
10379
10379
    __pyx_t_3 = (__pyx_v_byteorder == '<');
10380
10380
    if (__pyx_t_3) {
10381
10381
 
10382
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1279
 
10382
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1279
10383
10383
 *         off_i = h5py_offset_n128_imag
10384
10384
 *         if byteorder == c'<':
10385
10385
 *             tid_sub = H5T_IEEE_F64LE             # <<<<<<<<<<<<<<
10390
10390
      goto __pyx_L4;
10391
10391
    }
10392
10392
 
10393
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1280
 
10393
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1280
10394
10394
 *         if byteorder == c'<':
10395
10395
 *             tid_sub = H5T_IEEE_F64LE
10396
10396
 *         elif byteorder == c'>':             # <<<<<<<<<<<<<<
10400
10400
    __pyx_t_3 = (__pyx_v_byteorder == '>');
10401
10401
    if (__pyx_t_3) {
10402
10402
 
10403
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1281
 
10403
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1281
10404
10404
 *             tid_sub = H5T_IEEE_F64LE
10405
10405
 *         elif byteorder == c'>':
10406
10406
 *             tid_sub = H5T_IEEE_F64BE             # <<<<<<<<<<<<<<
10412
10412
    }
10413
10413
    /*else*/ {
10414
10414
 
10415
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1283
 
10415
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1283
10416
10416
 *             tid_sub = H5T_IEEE_F64BE
10417
10417
 *         else:
10418
10418
 *             tid_sub = H5T_NATIVE_DOUBLE             # <<<<<<<<<<<<<<
10425
10425
    break;
10426
10426
    default:
10427
10427
 
10428
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1285
 
10428
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1285
10429
10429
 *             tid_sub = H5T_NATIVE_DOUBLE
10430
10430
 *     else:
10431
10431
 *         raise TypeError("Illegal length %d for complex dtype" % length)             # <<<<<<<<<<<<<<
10451
10451
    break;
10452
10452
  }
10453
10453
 
10454
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1287
 
10454
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1287
10455
10455
 *         raise TypeError("Illegal length %d for complex dtype" % length)
10456
10456
 * 
10457
10457
 *     tid = H5Tcreate(H5T_COMPOUND, size)             # <<<<<<<<<<<<<<
10461
10461
  __pyx_t_5 = __pyx_f_4h5py_4defs_H5Tcreate(H5T_COMPOUND, __pyx_v_size); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10462
10462
  __pyx_v_tid = __pyx_t_5;
10463
10463
 
10464
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1288
 
10464
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1288
10465
10465
 * 
10466
10466
 *     tid = H5Tcreate(H5T_COMPOUND, size)
10467
10467
 *     H5Tinsert(tid, cfg._r_name, off_r, tid_sub)             # <<<<<<<<<<<<<<
10477
10477
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
10478
10478
  __pyx_t_7 = __pyx_f_4h5py_4defs_H5Tinsert(__pyx_v_tid, __pyx_t_6, __pyx_v_off_r, __pyx_v_tid_sub); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10479
10479
 
10480
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1289
 
10480
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1289
10481
10481
 *     tid = H5Tcreate(H5T_COMPOUND, size)
10482
10482
 *     H5Tinsert(tid, cfg._r_name, off_r, tid_sub)
10483
10483
 *     H5Tinsert(tid, cfg._i_name, off_i, tid_sub)             # <<<<<<<<<<<<<<
10493
10493
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
10494
10494
  __pyx_t_7 = __pyx_f_4h5py_4defs_H5Tinsert(__pyx_v_tid, __pyx_t_6, __pyx_v_off_i, __pyx_v_tid_sub); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10495
10495
 
10496
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1291
 
10496
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1291
10497
10497
 *     H5Tinsert(tid, cfg._i_name, off_i, tid_sub)
10498
10498
 * 
10499
10499
 *     return TypeCompoundID(tid)             # <<<<<<<<<<<<<<
10528
10528
  return __pyx_r;
10529
10529
}
10530
10530
 
10531
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1293
 
10531
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1293
10532
10532
 *     return TypeCompoundID(tid)
10533
10533
 * 
10534
10534
 * cdef TypeCompoundID _c_compound(dtype dt, int logical):             # <<<<<<<<<<<<<<
10563
10563
  __pyx_v_name = Py_None; __Pyx_INCREF(Py_None);
10564
10564
  __pyx_v_ename = Py_None; __Pyx_INCREF(Py_None);
10565
10565
 
10566
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1301
 
10566
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1301
10567
10567
 *     cdef size_t offset
10568
10568
 * 
10569
10569
 *     cdef dict fields = dt.fields             # <<<<<<<<<<<<<<
10574
10574
  __Pyx_INCREF(__pyx_v_dt->fields);
10575
10575
  __pyx_v_fields = ((PyObject *)__pyx_v_dt->fields);
10576
10576
 
10577
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1302
 
10577
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1302
10578
10578
 * 
10579
10579
 *     cdef dict fields = dt.fields
10580
10580
 *     cdef tuple names = dt.names             # <<<<<<<<<<<<<<
10587
10587
  __pyx_v_names = ((PyObject *)__pyx_t_1);
10588
10588
  __pyx_t_1 = 0;
10589
10589
 
10590
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1305
 
10590
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1305
10591
10591
 * 
10592
10592
 *     # Initial size MUST be 1 to avoid segfaults (issue 166)
10593
10593
 *     tid = H5Tcreate(H5T_COMPOUND, 1)             # <<<<<<<<<<<<<<
10597
10597
  __pyx_t_2 = __pyx_f_4h5py_4defs_H5Tcreate(H5T_COMPOUND, 1); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10598
10598
  __pyx_v_tid = __pyx_t_2;
10599
10599
 
10600
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1307
 
10600
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1307
10601
10601
 *     tid = H5Tcreate(H5T_COMPOUND, 1)
10602
10602
 * 
10603
10603
 *     offset = 0             # <<<<<<<<<<<<<<
10606
10606
 */
10607
10607
  __pyx_v_offset = 0;
10608
10608
 
10609
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1308
 
10609
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1308
10610
10610
 * 
10611
10611
 *     offset = 0
10612
10612
 *     for name in names:             # <<<<<<<<<<<<<<
10625
10625
    __pyx_v_name = __pyx_t_4;
10626
10626
    __pyx_t_4 = 0;
10627
10627
 
10628
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1309
 
10628
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1309
10629
10629
 *     offset = 0
10630
10630
 *     for name in names:
10631
10631
 *         ename = name.encode('utf8') if isinstance(name, unicode) else name             # <<<<<<<<<<<<<<
10655
10655
    __pyx_v_ename = __pyx_t_4;
10656
10656
    __pyx_t_4 = 0;
10657
10657
 
10658
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1310
 
10658
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1310
10659
10659
 *     for name in names:
10660
10660
 *         ename = name.encode('utf8') if isinstance(name, unicode) else name
10661
10661
 *         dt_tmp = dt.fields[name][0]             # <<<<<<<<<<<<<<
10672
10672
    __pyx_v_dt_tmp = ((PyArray_Descr *)__pyx_t_8);
10673
10673
    __pyx_t_8 = 0;
10674
10674
 
10675
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1311
 
10675
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1311
10676
10676
 *         ename = name.encode('utf8') if isinstance(name, unicode) else name
10677
10677
 *         dt_tmp = dt.fields[name][0]
10678
10678
 *         type_tmp = py_create(dt_tmp, logical=logical)             # <<<<<<<<<<<<<<
10702
10702
    __pyx_v_type_tmp = ((struct __pyx_obj_4h5py_3h5t_TypeID *)__pyx_t_6);
10703
10703
    __pyx_t_6 = 0;
10704
10704
 
10705
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1312
 
10705
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1312
10706
10706
 *         dt_tmp = dt.fields[name][0]
10707
10707
 *         type_tmp = py_create(dt_tmp, logical=logical)
10708
10708
 *         H5Tset_size(tid, offset+type_tmp.get_size())             # <<<<<<<<<<<<<<
10724
10724
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
10725
10725
    __pyx_t_10 = __pyx_f_4h5py_4defs_H5Tset_size(__pyx_v_tid, __pyx_t_9); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10726
10726
 
10727
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1313
 
10727
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1313
10728
10728
 *         type_tmp = py_create(dt_tmp, logical=logical)
10729
10729
 *         H5Tset_size(tid, offset+type_tmp.get_size())
10730
10730
 *         H5Tinsert(tid, ename, offset, type_tmp.id)             # <<<<<<<<<<<<<<
10738
10738
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
10739
10739
    __pyx_t_10 = __pyx_f_4h5py_4defs_H5Tinsert(__pyx_v_tid, __pyx_t_11, __pyx_v_offset, __pyx_t_2); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1313; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10740
10740
 
10741
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1314
 
10741
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1314
10742
10742
 *         H5Tset_size(tid, offset+type_tmp.get_size())
10743
10743
 *         H5Tinsert(tid, ename, offset, type_tmp.id)
10744
10744
 *         offset += type_tmp.get_size()             # <<<<<<<<<<<<<<
10756
10756
  }
10757
10757
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
10758
10758
 
10759
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1316
 
10759
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1316
10760
10760
 *         offset += type_tmp.get_size()
10761
10761
 * 
10762
10762
 *     return TypeCompoundID(tid)             # <<<<<<<<<<<<<<
10800
10800
  return __pyx_r;
10801
10801
}
10802
10802
 
10803
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1318
 
10803
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1318
10804
10804
 *     return TypeCompoundID(tid)
10805
10805
 * 
10806
10806
 * cdef TypeStringID _c_vlen_str(object basetype):             # <<<<<<<<<<<<<<
10817
10817
  PyObject *__pyx_t_4 = NULL;
10818
10818
  __Pyx_RefNannySetupContext("_c_vlen_str");
10819
10819
 
10820
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1321
 
10820
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1321
10821
10821
 *     # Variable-length strings
10822
10822
 *     cdef hid_t tid
10823
10823
 *     tid = H5Tcopy(H5T_C_S1)             # <<<<<<<<<<<<<<
10827
10827
  __pyx_t_1 = __pyx_f_4h5py_4defs_H5Tcopy(H5T_C_S1); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1321; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10828
10828
  __pyx_v_tid = __pyx_t_1;
10829
10829
 
10830
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1322
 
10830
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1322
10831
10831
 *     cdef hid_t tid
10832
10832
 *     tid = H5Tcopy(H5T_C_S1)
10833
10833
 *     H5Tset_size(tid, H5T_VARIABLE)             # <<<<<<<<<<<<<<
10836
10836
 */
10837
10837
  __pyx_t_2 = __pyx_f_4h5py_4defs_H5Tset_size(__pyx_v_tid, H5T_VARIABLE); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
10838
10838
 
10839
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1323
 
10839
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1323
10840
10840
 *     tid = H5Tcopy(H5T_C_S1)
10841
10841
 *     H5Tset_size(tid, H5T_VARIABLE)
10842
10842
 *     return TypeStringID(tid)             # <<<<<<<<<<<<<<
10871
10871
  return __pyx_r;
10872
10872
}
10873
10873
 
10874
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1325
 
10874
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1325
10875
10875
 *     return TypeStringID(tid)
10876
10876
 * 
10877
10877
 * cdef TypeReferenceID _c_ref(object refclass):             # <<<<<<<<<<<<<<
10886
10886
  PyObject *__pyx_t_3 = NULL;
10887
10887
  __Pyx_RefNannySetupContext("_c_ref");
10888
10888
 
10889
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1326
 
10889
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1326
10890
10890
 * 
10891
10891
 * cdef TypeReferenceID _c_ref(object refclass):
10892
10892
 *     if refclass is Reference:             # <<<<<<<<<<<<<<
10896
10896
  __pyx_t_1 = (__pyx_v_refclass == ((PyObject *)((PyObject*)__pyx_ptype_4h5py_3h5r_Reference)));
10897
10897
  if (__pyx_t_1) {
10898
10898
 
10899
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1327
 
10899
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1327
10900
10900
 * cdef TypeReferenceID _c_ref(object refclass):
10901
10901
 *     if refclass is Reference:
10902
10902
 *         return STD_REF_OBJ             # <<<<<<<<<<<<<<
10913
10913
    goto __pyx_L3;
10914
10914
  }
10915
10915
 
10916
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1328
 
10916
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1328
10917
10917
 *     if refclass is Reference:
10918
10918
 *         return STD_REF_OBJ
10919
10919
 *     elif refclass is RegionReference:             # <<<<<<<<<<<<<<
10923
10923
  __pyx_t_1 = (__pyx_v_refclass == ((PyObject *)((PyObject*)__pyx_ptype_4h5py_3h5r_RegionReference)));
10924
10924
  if (__pyx_t_1) {
10925
10925
 
10926
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1329
 
10926
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1329
10927
10927
 *         return STD_REF_OBJ
10928
10928
 *     elif refclass is RegionReference:
10929
10929
 *         return STD_REF_DSETREG             # <<<<<<<<<<<<<<
10941
10941
  }
10942
10942
  __pyx_L3:;
10943
10943
 
10944
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1330
 
10944
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1330
10945
10945
 *     elif refclass is RegionReference:
10946
10946
 *         return STD_REF_DSETREG
10947
10947
 *     raise TypeError("Unrecognized reference code")             # <<<<<<<<<<<<<<
10973
10973
  return __pyx_r;
10974
10974
}
10975
10975
 
10976
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1332
 
10976
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1332
10977
10977
 *     raise TypeError("Unrecognized reference code")
10978
10978
 * 
10979
10979
 * cpdef TypeID py_create(object dtype_in, bint logical=0):             # <<<<<<<<<<<<<<
11006
11006
  __pyx_v_vlen = Py_None; __Pyx_INCREF(Py_None);
11007
11007
  __pyx_v_refclass = Py_None; __Pyx_INCREF(Py_None);
11008
11008
 
11009
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1349
 
11009
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1349
11010
11010
 *         length string type.
11011
11011
 *     """
11012
11012
 *     cdef dtype dt = dtype(dtype_in)             # <<<<<<<<<<<<<<
11024
11024
  __pyx_v_dt = ((PyArray_Descr *)__pyx_t_2);
11025
11025
  __pyx_t_2 = 0;
11026
11026
 
11027
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1350
 
11027
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1350
11028
11028
 *     """
11029
11029
 *     cdef dtype dt = dtype(dtype_in)
11030
11030
 *     cdef char kind = dt.kind             # <<<<<<<<<<<<<<
11033
11033
 */
11034
11034
  __pyx_v_kind = __pyx_v_dt->kind;
11035
11035
 
11036
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1353
 
11036
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1353
11037
11037
 * 
11038
11038
 *     # Float
11039
11039
 *     if kind == c'f':             # <<<<<<<<<<<<<<
11043
11043
  __pyx_t_3 = (__pyx_v_kind == 'f');
11044
11044
  if (__pyx_t_3) {
11045
11045
 
11046
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1354
 
11046
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1354
11047
11047
 *     # Float
11048
11048
 *     if kind == c'f':
11049
11049
 *         return _c_float(dt)             # <<<<<<<<<<<<<<
11059
11059
    goto __pyx_L3;
11060
11060
  }
11061
11061
 
11062
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1357
 
11062
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1357
11063
11063
 * 
11064
11064
 *     # Integer
11065
11065
 *     elif kind == c'u' or kind == c'i':             # <<<<<<<<<<<<<<
11077
11077
  }
11078
11078
  if (__pyx_t_3) {
11079
11079
 
11080
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1359
 
11080
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1359
11081
11081
 *     elif kind == c'u' or kind == c'i':
11082
11082
 * 
11083
11083
 *         if logical:             # <<<<<<<<<<<<<<
11086
11086
 */
11087
11087
    if (__pyx_v_logical) {
11088
11088
 
11089
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1361
 
11089
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1361
11090
11090
 *         if logical:
11091
11091
 *             # Check for an enumeration hint
11092
11092
 *             enum_vals = check_dtype(enum=dt)             # <<<<<<<<<<<<<<
11106
11106
      __pyx_v_enum_vals = __pyx_t_4;
11107
11107
      __pyx_t_4 = 0;
11108
11108
 
11109
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1362
 
11109
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1362
11110
11110
 *             # Check for an enumeration hint
11111
11111
 *             enum_vals = check_dtype(enum=dt)
11112
11112
 *             if enum_vals is not None:             # <<<<<<<<<<<<<<
11116
11116
      __pyx_t_3 = (__pyx_v_enum_vals != Py_None);
11117
11117
      if (__pyx_t_3) {
11118
11118
 
11119
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1363
 
11119
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1363
11120
11120
 *             enum_vals = check_dtype(enum=dt)
11121
11121
 *             if enum_vals is not None:
11122
11122
 *                 return _c_enum(dt, enum_vals)             # <<<<<<<<<<<<<<
11137
11137
    }
11138
11138
    __pyx_L4:;
11139
11139
 
11140
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1365
 
11140
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1365
11141
11141
 *                 return _c_enum(dt, enum_vals)
11142
11142
 * 
11143
11143
 *         return _c_int(dt)             # <<<<<<<<<<<<<<
11153
11153
    goto __pyx_L3;
11154
11154
  }
11155
11155
 
11156
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1368
 
11156
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1368
11157
11157
 * 
11158
11158
 *     # Complex
11159
11159
 *     elif kind == c'c':             # <<<<<<<<<<<<<<
11163
11163
  __pyx_t_3 = (__pyx_v_kind == 'c');
11164
11164
  if (__pyx_t_3) {
11165
11165
 
11166
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1369
 
11166
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1369
11167
11167
 *     # Complex
11168
11168
 *     elif kind == c'c':
11169
11169
 *         return _c_complex(dt)             # <<<<<<<<<<<<<<
11179
11179
    goto __pyx_L3;
11180
11180
  }
11181
11181
 
11182
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1372
 
11182
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1372
11183
11183
 * 
11184
11184
 *     # Compound
11185
11185
 *     elif kind == c'V' and dt.names is not None:             # <<<<<<<<<<<<<<
11198
11198
  }
11199
11199
  if (__pyx_t_6) {
11200
11200
 
11201
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1373
 
11201
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1373
11202
11202
 *     # Compound
11203
11203
 *     elif kind == c'V' and dt.names is not None:
11204
11204
 *         return _c_compound(dt, logical)             # <<<<<<<<<<<<<<
11214
11214
    goto __pyx_L3;
11215
11215
  }
11216
11216
 
11217
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1376
 
11217
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1376
11218
11218
 * 
11219
11219
 *     # Array or opaque
11220
11220
 *     elif kind == c'V':             # <<<<<<<<<<<<<<
11224
11224
  __pyx_t_6 = (__pyx_v_kind == 'V');
11225
11225
  if (__pyx_t_6) {
11226
11226
 
11227
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1377
 
11227
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1377
11228
11228
 *     # Array or opaque
11229
11229
 *     elif kind == c'V':
11230
11230
 *         if dt.subdtype is not None:             # <<<<<<<<<<<<<<
11237
11237
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
11238
11238
    if (__pyx_t_6) {
11239
11239
 
11240
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1378
 
11240
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1378
11241
11241
 *     elif kind == c'V':
11242
11242
 *         if dt.subdtype is not None:
11243
11243
 *             return _c_array(dt, logical)             # <<<<<<<<<<<<<<
11254
11254
    }
11255
11255
    /*else*/ {
11256
11256
 
11257
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1380
 
11257
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1380
11258
11258
 *             return _c_array(dt, logical)
11259
11259
 *         else:
11260
11260
 *             return _c_opaque(dt)             # <<<<<<<<<<<<<<
11272
11272
    goto __pyx_L3;
11273
11273
  }
11274
11274
 
11275
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1383
 
11275
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1383
11276
11276
 * 
11277
11277
 *     # String
11278
11278
 *     elif kind == c'S':             # <<<<<<<<<<<<<<
11282
11282
  __pyx_t_6 = (__pyx_v_kind == 'S');
11283
11283
  if (__pyx_t_6) {
11284
11284
 
11285
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1384
 
11285
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1384
11286
11286
 *     # String
11287
11287
 *     elif kind == c'S':
11288
11288
 *         return _c_string(dt)             # <<<<<<<<<<<<<<
11298
11298
    goto __pyx_L3;
11299
11299
  }
11300
11300
 
11301
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1387
 
11301
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1387
11302
11302
 * 
11303
11303
 *     # Boolean
11304
11304
 *     elif kind == c'b':             # <<<<<<<<<<<<<<
11308
11308
  __pyx_t_6 = (__pyx_v_kind == 'b');
11309
11309
  if (__pyx_t_6) {
11310
11310
 
11311
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1388
 
11311
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1388
11312
11312
 *     # Boolean
11313
11313
 *     elif kind == c'b':
11314
11314
 *         return _c_bool(dt)             # <<<<<<<<<<<<<<
11324
11324
    goto __pyx_L3;
11325
11325
  }
11326
11326
 
11327
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1391
 
11327
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1391
11328
11328
 * 
11329
11329
 *     # Object types (including those with vlen hints)
11330
11330
 *     elif kind == c'O':             # <<<<<<<<<<<<<<
11334
11334
  __pyx_t_6 = (__pyx_v_kind == 'O');
11335
11335
  if (__pyx_t_6) {
11336
11336
 
11337
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1393
 
11337
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1393
11338
11338
 *     elif kind == c'O':
11339
11339
 * 
11340
11340
 *         if logical:             # <<<<<<<<<<<<<<
11343
11343
 */
11344
11344
    if (__pyx_v_logical) {
11345
11345
 
11346
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1394
 
11346
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1394
11347
11347
 * 
11348
11348
 *         if logical:
11349
11349
 *             vlen = check_dtype(vlen=dt)             # <<<<<<<<<<<<<<
11363
11363
      __pyx_v_vlen = __pyx_t_2;
11364
11364
      __pyx_t_2 = 0;
11365
11365
 
11366
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1395
 
11366
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1395
11367
11367
 *         if logical:
11368
11368
 *             vlen = check_dtype(vlen=dt)
11369
11369
 *             if vlen is not None:             # <<<<<<<<<<<<<<
11373
11373
      __pyx_t_6 = (__pyx_v_vlen != Py_None);
11374
11374
      if (__pyx_t_6) {
11375
11375
 
11376
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1396
 
11376
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1396
11377
11377
 *             vlen = check_dtype(vlen=dt)
11378
11378
 *             if vlen is not None:
11379
11379
 *                 return _c_vlen_str(vlen)             # <<<<<<<<<<<<<<
11390
11390
      }
11391
11391
      __pyx_L8:;
11392
11392
 
11393
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1398
 
11393
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1398
11394
11394
 *                 return _c_vlen_str(vlen)
11395
11395
 * 
11396
11396
 *             refclass = check_dtype(ref=dt)             # <<<<<<<<<<<<<<
11410
11410
      __pyx_v_refclass = __pyx_t_4;
11411
11411
      __pyx_t_4 = 0;
11412
11412
 
11413
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1399
 
11413
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1399
11414
11414
 * 
11415
11415
 *             refclass = check_dtype(ref=dt)
11416
11416
 *             if refclass is not None:             # <<<<<<<<<<<<<<
11420
11420
      __pyx_t_6 = (__pyx_v_refclass != Py_None);
11421
11421
      if (__pyx_t_6) {
11422
11422
 
11423
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1400
 
11423
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1400
11424
11424
 *             refclass = check_dtype(ref=dt)
11425
11425
 *             if refclass is not None:
11426
11426
 *                     return _c_ref(refclass)             # <<<<<<<<<<<<<<
11437
11437
      }
11438
11438
      __pyx_L9:;
11439
11439
 
11440
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1402
 
11440
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1402
11441
11441
 *                     return _c_ref(refclass)
11442
11442
 * 
11443
11443
 *             raise TypeError("Object dtype %r has no native HDF5 equivalent" % (dt,))             # <<<<<<<<<<<<<<
11467
11467
    }
11468
11468
    __pyx_L7:;
11469
11469
 
11470
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1404
 
11470
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1404
11471
11471
 *             raise TypeError("Object dtype %r has no native HDF5 equivalent" % (dt,))
11472
11472
 * 
11473
11473
 *         return PYTHON_OBJECT             # <<<<<<<<<<<<<<
11485
11485
  }
11486
11486
  /*else*/ {
11487
11487
 
11488
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1408
 
11488
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1408
11489
11489
 *     # Unrecognized
11490
11490
 *     else:
11491
11491
 *         raise TypeError("No conversion path for dtype: %s" % repr(dt))             # <<<<<<<<<<<<<<
11529
11529
  return __pyx_r;
11530
11530
}
11531
11531
 
11532
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1332
 
11532
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1332
11533
11533
 *     raise TypeError("Unrecognized reference code")
11534
11534
 * 
11535
11535
 * cpdef TypeID py_create(object dtype_in, bint logical=0):             # <<<<<<<<<<<<<<
11615
11615
  return __pyx_r;
11616
11616
}
11617
11617
 
11618
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1410
 
11618
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1410
11619
11619
 *         raise TypeError("No conversion path for dtype: %s" % repr(dt))
11620
11620
 * 
11621
11621
 * def special_dtype(**kwds):             # <<<<<<<<<<<<<<
11655
11655
  __pyx_v_dt = Py_None; __Pyx_INCREF(Py_None);
11656
11656
  __pyx_v_enum_vals = Py_None; __Pyx_INCREF(Py_None);
11657
11657
 
11658
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1430
 
11658
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1430
11659
11659
 *     """
11660
11660
 * 
11661
11661
 *     if len(kwds) != 1:             # <<<<<<<<<<<<<<
11669
11669
  __pyx_t_2 = (__pyx_t_1 != 1);
11670
11670
  if (__pyx_t_2) {
11671
11671
 
11672
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1431
 
11672
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1431
11673
11673
 * 
11674
11674
 *     if len(kwds) != 1:
11675
11675
 *         raise TypeError("Exactly one keyword may be provided")             # <<<<<<<<<<<<<<
11691
11691
  }
11692
11692
  __pyx_L5:;
11693
11693
 
11694
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1433
 
11694
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1433
11695
11695
 *         raise TypeError("Exactly one keyword may be provided")
11696
11696
 * 
11697
11697
 *     name, val = kwds.popitem()             # <<<<<<<<<<<<<<
11732
11732
    __pyx_t_5 = 0;
11733
11733
  }
11734
11734
 
11735
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1435
 
11735
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1435
11736
11736
 *     name, val = kwds.popitem()
11737
11737
 * 
11738
11738
 *     if name == 'vlen':             # <<<<<<<<<<<<<<
11745
11745
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
11746
11746
  if (__pyx_t_2) {
11747
11747
 
11748
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1436
 
11748
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1436
11749
11749
 * 
11750
11750
 *     if name == 'vlen':
11751
11751
 *         if val is not bytes:             # <<<<<<<<<<<<<<
11755
11755
    __pyx_t_2 = (__pyx_v_val != ((PyObject *)((PyObject*)&PyBytes_Type)));
11756
11756
    if (__pyx_t_2) {
11757
11757
 
11758
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1437
 
11758
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1437
11759
11759
 *     if name == 'vlen':
11760
11760
 *         if val is not bytes:
11761
11761
 *             raise NotImplementedError("Only byte-string vlens are currently supported")             # <<<<<<<<<<<<<<
11777
11777
    }
11778
11778
    __pyx_L7:;
11779
11779
 
11780
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1439
 
11780
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1439
11781
11781
 *             raise NotImplementedError("Only byte-string vlens are currently supported")
11782
11782
 * 
11783
11783
 *         return dtype(('O', [( ({'type': val},'vlen'), 'O' )] ))             # <<<<<<<<<<<<<<
11832
11832
  }
11833
11833
  __pyx_L6:;
11834
11834
 
11835
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1441
 
11835
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1441
11836
11836
 *         return dtype(('O', [( ({'type': val},'vlen'), 'O' )] ))
11837
11837
 * 
11838
11838
 *     if name == 'enum':             # <<<<<<<<<<<<<<
11845
11845
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
11846
11846
  if (__pyx_t_2) {
11847
11847
 
11848
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1443
 
11848
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1443
11849
11849
 *     if name == 'enum':
11850
11850
 * 
11851
11851
 *         try:             # <<<<<<<<<<<<<<
11860
11860
      __Pyx_XGOTREF(__pyx_save_exc_tb);
11861
11861
      /*try:*/ {
11862
11862
 
11863
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1444
 
11863
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1444
11864
11864
 * 
11865
11865
 *         try:
11866
11866
 *             dt, enum_vals = val             # <<<<<<<<<<<<<<
11904
11904
      __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
11905
11905
      __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
11906
11906
 
11907
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1445
 
11907
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1445
11908
11908
 *         try:
11909
11909
 *             dt, enum_vals = val
11910
11910
 *         except TypeError:             # <<<<<<<<<<<<<<
11919
11919
        __Pyx_GOTREF(__pyx_t_5);
11920
11920
        __Pyx_GOTREF(__pyx_t_4);
11921
11921
 
11922
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1446
 
11922
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1446
11923
11923
 *             dt, enum_vals = val
11924
11924
 *         except TypeError:
11925
11925
 *             raise TypeError("Enums must be created from a 2-tuple (basetype, values_dict)")             # <<<<<<<<<<<<<<
11956
11956
      __pyx_L16_try_end:;
11957
11957
    }
11958
11958
 
11959
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1448
 
11959
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1448
11960
11960
 *             raise TypeError("Enums must be created from a 2-tuple (basetype, values_dict)")
11961
11961
 * 
11962
11962
 *         dt = dtype(dt)             # <<<<<<<<<<<<<<
11975
11975
    __pyx_v_dt = __pyx_t_5;
11976
11976
    __pyx_t_5 = 0;
11977
11977
 
11978
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1449
 
11978
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1449
11979
11979
 * 
11980
11980
 *         dt = dtype(dt)
11981
11981
 *         if dt.kind not in "iu":             # <<<<<<<<<<<<<<
11988
11988
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
11989
11989
    if (__pyx_t_2) {
11990
11990
 
11991
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1450
 
11991
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1450
11992
11992
 *         dt = dtype(dt)
11993
11993
 *         if dt.kind not in "iu":
11994
11994
 *             raise TypeError("Only integer types can be used as enums")             # <<<<<<<<<<<<<<
12010
12010
    }
12011
12011
    __pyx_L19:;
12012
12012
 
12013
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1452
 
12013
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1452
12014
12014
 *             raise TypeError("Only integer types can be used as enums")
12015
12015
 * 
12016
12016
 *         return dtype((dt, [( ({'vals': enum_vals},'enum'), dt )] ))             # <<<<<<<<<<<<<<
12065
12065
  }
12066
12066
  __pyx_L8:;
12067
12067
 
12068
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1454
 
12068
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1454
12069
12069
 *         return dtype((dt, [( ({'vals': enum_vals},'enum'), dt )] ))
12070
12070
 * 
12071
12071
 *     if name == 'ref':             # <<<<<<<<<<<<<<
12078
12078
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
12079
12079
  if (__pyx_t_2) {
12080
12080
 
12081
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1456
 
12081
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1456
12082
12082
 *     if name == 'ref':
12083
12083
 * 
12084
12084
 *         if val not in (Reference, RegionReference):             # <<<<<<<<<<<<<<
12106
12106
    __pyx_t_9 = __pyx_t_2;
12107
12107
    if (__pyx_t_9) {
12108
12108
 
12109
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1457
 
12109
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1457
12110
12110
 * 
12111
12111
 *         if val not in (Reference, RegionReference):
12112
12112
 *             raise ValueError("Ref class must be Reference or RegionReference")             # <<<<<<<<<<<<<<
12128
12128
    }
12129
12129
    __pyx_L21:;
12130
12130
 
12131
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1459
 
12131
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1459
12132
12132
 *             raise ValueError("Ref class must be Reference or RegionReference")
12133
12133
 * 
12134
12134
 *         return dtype(('O', [( ({'type': val},'ref'), 'O' )] ))             # <<<<<<<<<<<<<<
12183
12183
  }
12184
12184
  __pyx_L20:;
12185
12185
 
12186
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1461
 
12186
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1461
12187
12187
 *         return dtype(('O', [( ({'type': val},'ref'), 'O' )] ))
12188
12188
 * 
12189
12189
 *     raise TypeError('Unknown special type "%s"' % name)             # <<<<<<<<<<<<<<
12225
12225
  return __pyx_r;
12226
12226
}
12227
12227
 
12228
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1463
 
12228
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1463
12229
12229
 *     raise TypeError('Unknown special type "%s"' % name)
12230
12230
 * 
12231
12231
 * def check_dtype(**kwds):             # <<<<<<<<<<<<<<
12265
12265
  __pyx_v_tpl = Py_None; __Pyx_INCREF(Py_None);
12266
12266
  __pyx_v_hint_dict = Py_None; __Pyx_INCREF(Py_None);
12267
12267
 
12268
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1483
 
12268
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1483
12269
12269
 *     """
12270
12270
 * 
12271
12271
 *     if len(kwds) != 1:             # <<<<<<<<<<<<<<
12279
12279
  __pyx_t_2 = (__pyx_t_1 != 1);
12280
12280
  if (__pyx_t_2) {
12281
12281
 
12282
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1484
 
12282
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1484
12283
12283
 * 
12284
12284
 *     if len(kwds) != 1:
12285
12285
 *         raise TypeError("Exactly one keyword may be provided")             # <<<<<<<<<<<<<<
12301
12301
  }
12302
12302
  __pyx_L5:;
12303
12303
 
12304
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1486
 
12304
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1486
12305
12305
 *         raise TypeError("Exactly one keyword may be provided")
12306
12306
 * 
12307
12307
 *     name, dt = kwds.popitem()             # <<<<<<<<<<<<<<
12342
12342
    __pyx_t_5 = 0;
12343
12343
  }
12344
12344
 
12345
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1488
 
12345
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1488
12346
12346
 *     name, dt = kwds.popitem()
12347
12347
 * 
12348
12348
 *     if name not in ('vlen', 'enum', 'ref'):             # <<<<<<<<<<<<<<
12380
12380
  __pyx_t_2 = __pyx_t_7;
12381
12381
  if (__pyx_t_2) {
12382
12382
 
12383
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1489
 
12383
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1489
12384
12384
 * 
12385
12385
 *     if name not in ('vlen', 'enum', 'ref'):
12386
12386
 *         raise TypeError('Unknown special type "%s"' % name)             # <<<<<<<<<<<<<<
12404
12404
  }
12405
12405
  __pyx_L6:;
12406
12406
 
12407
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1491
 
12407
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1491
12408
12408
 *         raise TypeError('Unknown special type "%s"' % name)
12409
12409
 * 
12410
12410
 *     hintkey = 'type' if name is not 'enum' else 'vals'             # <<<<<<<<<<<<<<
12423
12423
  __pyx_v_hintkey = ((PyObject *)__pyx_t_3);
12424
12424
  __pyx_t_3 = 0;
12425
12425
 
12426
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1493
 
12426
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1493
12427
12427
 *     hintkey = 'type' if name is not 'enum' else 'vals'
12428
12428
 * 
12429
12429
 *     if dt.fields is not None and name in dt.fields:             # <<<<<<<<<<<<<<
12445
12445
  }
12446
12446
  if (__pyx_t_8) {
12447
12447
 
12448
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1494
 
12448
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1494
12449
12449
 * 
12450
12450
 *     if dt.fields is not None and name in dt.fields:
12451
12451
 *         tpl = dt.fields[name]             # <<<<<<<<<<<<<<
12461
12461
    __pyx_v_tpl = __pyx_t_5;
12462
12462
    __pyx_t_5 = 0;
12463
12463
 
12464
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1495
 
12464
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1495
12465
12465
 *     if dt.fields is not None and name in dt.fields:
12466
12466
 *         tpl = dt.fields[name]
12467
12467
 *         if len(tpl) == 3:             # <<<<<<<<<<<<<<
12472
12472
    __pyx_t_8 = (__pyx_t_1 == 3);
12473
12473
    if (__pyx_t_8) {
12474
12474
 
12475
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1496
 
12475
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1496
12476
12476
 *         tpl = dt.fields[name]
12477
12477
 *         if len(tpl) == 3:
12478
12478
 *             hint_dict = tpl[2]             # <<<<<<<<<<<<<<
12485
12485
      __pyx_v_hint_dict = __pyx_t_5;
12486
12486
      __pyx_t_5 = 0;
12487
12487
 
12488
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1497
 
12488
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1497
12489
12489
 *         if len(tpl) == 3:
12490
12490
 *             hint_dict = tpl[2]
12491
12491
 *             if hintkey in hint_dict:             # <<<<<<<<<<<<<<
12495
12495
      __pyx_t_8 = ((PySequence_Contains(__pyx_v_hint_dict, __pyx_v_hintkey))); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
12496
12496
      if (__pyx_t_8) {
12497
12497
 
12498
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1498
 
12498
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1498
12499
12499
 *             hint_dict = tpl[2]
12500
12500
 *             if hintkey in hint_dict:
12501
12501
 *                 return hint_dict[hintkey]             # <<<<<<<<<<<<<<
12518
12518
  }
12519
12519
  __pyx_L7:;
12520
12520
 
12521
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1500
 
12521
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1500
12522
12522
 *                 return hint_dict[hintkey]
12523
12523
 * 
12524
12524
 *     return None             # <<<<<<<<<<<<<<
12551
12551
  return __pyx_r;
12552
12552
}
12553
12553
 
12554
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1502
 
12554
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1502
12555
12555
 *     return None
12556
12556
 * 
12557
12557
 * def convert(TypeID src not None, TypeID dst not None, size_t n,             # <<<<<<<<<<<<<<
12588
12588
    Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
12589
12589
    PyObject* values[6] = {0,0,0,0,0,0};
12590
12590
 
12591
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1503
 
12591
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1503
12592
12592
 * 
12593
12593
 * def convert(TypeID src not None, TypeID dst not None, size_t n,
12594
12594
 *             ndarray buf not None, ndarray bkg=None, ObjectID dxpl=None):             # <<<<<<<<<<<<<<
12682
12682
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_bkg), __pyx_ptype_4h5py_5numpy_ndarray, 1, "bkg", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
12683
12683
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dxpl), __pyx_ptype_4h5py_8_objects_ObjectID, 1, "dxpl", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
12684
12684
 
12685
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1512
 
12685
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1512
12686
12686
 *     one is not supplied.
12687
12687
 *     """
12688
12688
 *     cdef void* bkg_ = NULL             # <<<<<<<<<<<<<<
12691
12691
 */
12692
12692
  __pyx_v_bkg_ = NULL;
12693
12693
 
12694
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1513
 
12694
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1513
12695
12695
 *     """
12696
12696
 *     cdef void* bkg_ = NULL
12697
12697
 *     cdef void* buf_ = buf.data             # <<<<<<<<<<<<<<
12700
12700
 */
12701
12701
  __pyx_v_buf_ = __pyx_v_buf->data;
12702
12702
 
12703
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1515
 
12703
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1515
12704
12704
 *     cdef void* buf_ = buf.data
12705
12705
 * 
12706
12706
 *     if bkg is None and (src.detect_class(H5T_COMPOUND) or             # <<<<<<<<<<<<<<
12726
12726
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
12727
12727
    if (!__pyx_t_5) {
12728
12728
 
12729
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1516
 
12729
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1516
12730
12730
 * 
12731
12731
 *     if bkg is None and (src.detect_class(H5T_COMPOUND) or
12732
12732
 *                         dst.detect_class(H5T_COMPOUND)):             # <<<<<<<<<<<<<<
12758
12758
  }
12759
12759
  if (__pyx_t_5) {
12760
12760
 
12761
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1517
 
12761
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1517
12762
12762
 *     if bkg is None and (src.detect_class(H5T_COMPOUND) or
12763
12763
 *                         dst.detect_class(H5T_COMPOUND)):
12764
12764
 *         bkg = buf.copy()             # <<<<<<<<<<<<<<
12778
12778
  }
12779
12779
  __pyx_L6:;
12780
12780
 
12781
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1518
 
12781
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1518
12782
12782
 *                         dst.detect_class(H5T_COMPOUND)):
12783
12783
 *         bkg = buf.copy()
12784
12784
 *     if bkg is not None:             # <<<<<<<<<<<<<<
12788
12788
  __pyx_t_5 = (((PyObject *)__pyx_v_bkg) != Py_None);
12789
12789
  if (__pyx_t_5) {
12790
12790
 
12791
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1519
 
12791
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1519
12792
12792
 *         bkg = buf.copy()
12793
12793
 *     if bkg is not None:
12794
12794
 *         bkg_ = bkg.data             # <<<<<<<<<<<<<<
12800
12800
  }
12801
12801
  __pyx_L7:;
12802
12802
 
12803
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1521
 
12803
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1521
12804
12804
 *         bkg_ = bkg.data
12805
12805
 * 
12806
12806
 *     H5Tconvert(src.id, dst.id, n, buf_, bkg_, pdefault(dxpl))             # <<<<<<<<<<<<<<
12832
12832
  return __pyx_r;
12833
12833
}
12834
12834
 
12835
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1523
 
12835
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1523
12836
12836
 *     H5Tconvert(src.id, dst.id, n, buf_, bkg_, pdefault(dxpl))
12837
12837
 * 
12838
12838
 * def find(TypeID src not None, TypeID dst not None):             # <<<<<<<<<<<<<<
12901
12901
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_src), __pyx_ptype_4h5py_3h5t_TypeID, 0, "src", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
12902
12902
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dst), __pyx_ptype_4h5py_3h5t_TypeID, 0, "dst", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
12903
12903
 
12904
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1533
 
12904
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1533
12905
12905
 *     """
12906
12906
 *     cdef H5T_cdata_t *data
12907
12907
 *     cdef H5T_conv_t result = NULL             # <<<<<<<<<<<<<<
12910
12910
 */
12911
12911
  __pyx_v_result = NULL;
12912
12912
 
12913
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1535
 
12913
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1535
12914
12914
 *     cdef H5T_conv_t result = NULL
12915
12915
 * 
12916
12916
 *     try:             # <<<<<<<<<<<<<<
12925
12925
    __Pyx_XGOTREF(__pyx_save_exc_tb);
12926
12926
    /*try:*/ {
12927
12927
 
12928
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1536
 
12928
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1536
12929
12929
 * 
12930
12930
 *     try:
12931
12931
 *         result = H5Tfind(src.id, dst.id, &data)             # <<<<<<<<<<<<<<
12943
12943
      __pyx_t_4 = __pyx_f_4h5py_4defs_H5Tfind(__pyx_t_2, __pyx_t_3, (&__pyx_v_data)); if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1536; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
12944
12944
      __pyx_v_result = __pyx_t_4;
12945
12945
 
12946
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1537
 
12946
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1537
12947
12947
 *     try:
12948
12948
 *         result = H5Tfind(src.id, dst.id, &data)
12949
12949
 *         if result == NULL:             # <<<<<<<<<<<<<<
12953
12953
      __pyx_t_5 = (__pyx_v_result == NULL);
12954
12954
      if (__pyx_t_5) {
12955
12955
 
12956
 
        /* "/home/tachyon/h5py/h5py/h5t.pyx":1538
 
12956
        /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1538
12957
12957
 *         result = H5Tfind(src.id, dst.id, &data)
12958
12958
 *         if result == NULL:
12959
12959
 *             return None             # <<<<<<<<<<<<<<
12968
12968
      }
12969
12969
      __pyx_L14:;
12970
12970
 
12971
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1539
 
12971
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1539
12972
12972
 *         if result == NULL:
12973
12973
 *             return None
12974
12974
 *         return (data[0].need_bkg,)             # <<<<<<<<<<<<<<
13001
13001
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
13002
13002
    __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
13003
13003
 
13004
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":1540
 
13004
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1540
13005
13005
 *             return None
13006
13006
 *         return (data[0].need_bkg,)
13007
13007
 *     except:             # <<<<<<<<<<<<<<
13015
13015
      __Pyx_GOTREF(__pyx_t_1);
13016
13016
      __Pyx_GOTREF(__pyx_t_7);
13017
13017
 
13018
 
      /* "/home/tachyon/h5py/h5py/h5t.pyx":1541
 
13018
      /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1541
13019
13019
 *         return (data[0].need_bkg,)
13020
13020
 *     except:
13021
13021
 *         return None             # <<<<<<<<<<<<<<
13068
13068
  return __pyx_r;
13069
13069
}
13070
13070
 
13071
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1548
 
13071
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1548
13072
13072
 * import warnings
13073
13073
 * 
13074
13074
 * cpdef dtype py_new_enum(object dt_in, dict enum_vals):             # <<<<<<<<<<<<<<
13084
13084
  PyObject *__pyx_t_3 = NULL;
13085
13085
  __Pyx_RefNannySetupContext("py_new_enum");
13086
13086
 
13087
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1554
 
13087
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1554
13088
13088
 *     """
13089
13089
 *     #warnings.warn("Deprecated; use special_dtype(enum=(dtype, values)) instead", DeprecationWarning)
13090
13090
 *     return special_dtype(enum = (dt_in, enum_vals))             # <<<<<<<<<<<<<<
13129
13129
  return __pyx_r;
13130
13130
}
13131
13131
 
13132
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1548
 
13132
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1548
13133
13133
 * import warnings
13134
13134
 * 
13135
13135
 * cpdef dtype py_new_enum(object dt_in, dict enum_vals):             # <<<<<<<<<<<<<<
13207
13207
  return __pyx_r;
13208
13208
}
13209
13209
 
13210
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1556
 
13210
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1556
13211
13211
 *     return special_dtype(enum = (dt_in, enum_vals))
13212
13212
 * 
13213
13213
 * cpdef dict py_get_enum(object dt):             # <<<<<<<<<<<<<<
13223
13223
  PyObject *__pyx_t_3 = NULL;
13224
13224
  __Pyx_RefNannySetupContext("py_get_enum");
13225
13225
 
13226
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1562
 
13226
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1562
13227
13227
 *     """
13228
13228
 *     #warnings.warn("Deprecated; use check_dtype(enum=dtype) instead", DeprecationWarning)
13229
13229
 *     return check_dtype(enum=dt)             # <<<<<<<<<<<<<<
13259
13259
  return __pyx_r;
13260
13260
}
13261
13261
 
13262
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1556
 
13262
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1556
13263
13263
 *     return special_dtype(enum = (dt_in, enum_vals))
13264
13264
 * 
13265
13265
 * cpdef dict py_get_enum(object dt):             # <<<<<<<<<<<<<<
13293
13293
  return __pyx_r;
13294
13294
}
13295
13295
 
13296
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1564
 
13296
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1564
13297
13297
 *     return check_dtype(enum=dt)
13298
13298
 * 
13299
13299
 * cpdef dtype py_new_vlen(object kind):             # <<<<<<<<<<<<<<
13309
13309
  PyObject *__pyx_t_3 = NULL;
13310
13310
  __Pyx_RefNannySetupContext("py_new_vlen");
13311
13311
 
13312
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1570
 
13312
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1570
13313
13313
 *     """
13314
13314
 *     #warnings.warn("Deprecated; use special_dtype(vlen=basetype) instead", DeprecationWarning)
13315
13315
 *     return special_dtype(vlen=kind)             # <<<<<<<<<<<<<<
13345
13345
  return __pyx_r;
13346
13346
}
13347
13347
 
13348
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1564
 
13348
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1564
13349
13349
 *     return check_dtype(enum=dt)
13350
13350
 * 
13351
13351
 * cpdef dtype py_new_vlen(object kind):             # <<<<<<<<<<<<<<
13379
13379
  return __pyx_r;
13380
13380
}
13381
13381
 
13382
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1572
 
13382
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1572
13383
13383
 *     return special_dtype(vlen=kind)
13384
13384
 * 
13385
13385
 * cpdef object py_get_vlen(object dt_in):             # <<<<<<<<<<<<<<
13395
13395
  PyObject *__pyx_t_3 = NULL;
13396
13396
  __Pyx_RefNannySetupContext("py_get_vlen");
13397
13397
 
13398
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1578
 
13398
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1578
13399
13399
 *     """
13400
13400
 *     #warnings.warn("Deprecated; use check_dtype(vlen=dtype) instead", DeprecationWarning)
13401
13401
 *     return check_dtype(vlen=dt_in)             # <<<<<<<<<<<<<<
13430
13430
  return __pyx_r;
13431
13431
}
13432
13432
 
13433
 
/* "/home/tachyon/h5py/h5py/h5t.pyx":1572
 
13433
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1572
13434
13434
 *     return special_dtype(vlen=kind)
13435
13435
 * 
13436
13436
 * cpdef object py_get_vlen(object dt_in):             # <<<<<<<<<<<<<<
13464
13464
  return __pyx_r;
13465
13465
}
13466
13466
 
13467
 
/* "/home/tachyon/h5py/h5py/h5r.pxd":27
 
13467
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5r.pxd":27
13468
13468
 * 
13469
13469
 *     cdef ref_u ref
13470
13470
 *     cdef readonly int typecode             # <<<<<<<<<<<<<<
13496
13496
  return __pyx_r;
13497
13497
}
13498
13498
 
13499
 
/* "/home/tachyon/h5py/h5py/h5r.pxd":28
 
13499
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5r.pxd":28
13500
13500
 *     cdef ref_u ref
13501
13501
 *     cdef readonly int typecode
13502
13502
 *     cdef readonly size_t typesize             # <<<<<<<<<<<<<<
13528
13528
  return __pyx_r;
13529
13529
}
13530
13530
 
13531
 
/* "/home/tachyon/h5py/h5py/_objects.pxd":6
 
13531
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/_objects.pxd":6
13532
13532
 * 
13533
13533
 *     cdef object __weakref__
13534
13534
 *     cdef readonly hid_t id             # <<<<<<<<<<<<<<
13560
13560
  return __pyx_r;
13561
13561
}
13562
13562
 
13563
 
/* "/home/tachyon/h5py/h5py/_objects.pxd":7
 
13563
/* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/_objects.pxd":7
13564
13564
 *     cdef object __weakref__
13565
13565
 *     cdef readonly hid_t id
13566
13566
 *     cdef readonly int locked             # <<<<<<<<<<<<<<
16984
16984
  Py_DECREF(__pyx_t_3); __pyx_t_3 = 0;
16985
16985
  /*--- Execution code ---*/
16986
16986
 
16987
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":31
 
16987
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":31
16988
16988
 * from utils cimport  emalloc, efree, \
16989
16989
 *                     require_tuple, convert_dims, convert_tuple
16990
16990
 * import _conv             # <<<<<<<<<<<<<<
16996
16996
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s___conv, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
16997
16997
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
16998
16998
 
16999
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":34
 
16999
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":34
17000
17000
 * 
17001
17001
 * # Runtime imports
17002
17002
 * import sys             # <<<<<<<<<<<<<<
17008
17008
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__sys, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17009
17009
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17010
17010
 
17011
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":35
 
17011
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":35
17012
17012
 * # Runtime imports
17013
17013
 * import sys
17014
17014
 * from h5 import get_config             # <<<<<<<<<<<<<<
17029
17029
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17030
17030
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
17031
17031
 
17032
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":37
 
17032
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":37
17033
17033
 * from h5 import get_config
17034
17034
 * 
17035
17035
 * cfg = get_config()             # <<<<<<<<<<<<<<
17044
17044
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__cfg, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17045
17045
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17046
17046
 
17047
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":83
 
17047
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":83
17048
17048
 * 
17049
17049
 * # Enumeration H5T_class_t
17050
17050
 * NO_CLASS  = H5T_NO_CLASS             # <<<<<<<<<<<<<<
17056
17056
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NO_CLASS, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17057
17057
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17058
17058
 
17059
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":84
 
17059
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":84
17060
17060
 * # Enumeration H5T_class_t
17061
17061
 * NO_CLASS  = H5T_NO_CLASS
17062
17062
 * INTEGER   = H5T_INTEGER             # <<<<<<<<<<<<<<
17068
17068
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__INTEGER, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17069
17069
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17070
17070
 
17071
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":85
 
17071
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":85
17072
17072
 * NO_CLASS  = H5T_NO_CLASS
17073
17073
 * INTEGER   = H5T_INTEGER
17074
17074
 * FLOAT     = H5T_FLOAT             # <<<<<<<<<<<<<<
17080
17080
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__FLOAT, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17081
17081
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17082
17082
 
17083
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":86
 
17083
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":86
17084
17084
 * INTEGER   = H5T_INTEGER
17085
17085
 * FLOAT     = H5T_FLOAT
17086
17086
 * TIME      = H5T_TIME             # <<<<<<<<<<<<<<
17092
17092
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TIME, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17093
17093
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17094
17094
 
17095
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":87
 
17095
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":87
17096
17096
 * FLOAT     = H5T_FLOAT
17097
17097
 * TIME      = H5T_TIME
17098
17098
 * STRING    = H5T_STRING             # <<<<<<<<<<<<<<
17104
17104
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STRING, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17105
17105
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17106
17106
 
17107
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":88
 
17107
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":88
17108
17108
 * TIME      = H5T_TIME
17109
17109
 * STRING    = H5T_STRING
17110
17110
 * BITFIELD  = H5T_BITFIELD             # <<<<<<<<<<<<<<
17116
17116
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__BITFIELD, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17117
17117
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17118
17118
 
17119
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":89
 
17119
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":89
17120
17120
 * STRING    = H5T_STRING
17121
17121
 * BITFIELD  = H5T_BITFIELD
17122
17122
 * OPAQUE    = H5T_OPAQUE             # <<<<<<<<<<<<<<
17128
17128
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__OPAQUE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17129
17129
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17130
17130
 
17131
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":90
 
17131
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":90
17132
17132
 * BITFIELD  = H5T_BITFIELD
17133
17133
 * OPAQUE    = H5T_OPAQUE
17134
17134
 * COMPOUND  = H5T_COMPOUND             # <<<<<<<<<<<<<<
17140
17140
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__COMPOUND, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17141
17141
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17142
17142
 
17143
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":91
 
17143
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":91
17144
17144
 * OPAQUE    = H5T_OPAQUE
17145
17145
 * COMPOUND  = H5T_COMPOUND
17146
17146
 * REFERENCE = H5T_REFERENCE             # <<<<<<<<<<<<<<
17152
17152
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__REFERENCE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17153
17153
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17154
17154
 
17155
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":92
 
17155
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":92
17156
17156
 * COMPOUND  = H5T_COMPOUND
17157
17157
 * REFERENCE = H5T_REFERENCE
17158
17158
 * ENUM      = H5T_ENUM             # <<<<<<<<<<<<<<
17164
17164
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ENUM, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17165
17165
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17166
17166
 
17167
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":93
 
17167
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":93
17168
17168
 * REFERENCE = H5T_REFERENCE
17169
17169
 * ENUM      = H5T_ENUM
17170
17170
 * VLEN      = H5T_VLEN             # <<<<<<<<<<<<<<
17176
17176
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__VLEN, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17177
17177
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17178
17178
 
17179
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":94
 
17179
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":94
17180
17180
 * ENUM      = H5T_ENUM
17181
17181
 * VLEN      = H5T_VLEN
17182
17182
 * ARRAY     = H5T_ARRAY             # <<<<<<<<<<<<<<
17188
17188
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ARRAY, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17189
17189
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17190
17190
 
17191
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":97
 
17191
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":97
17192
17192
 * 
17193
17193
 * # Enumeration H5T_sign_t
17194
17194
 * SGN_NONE   = H5T_SGN_NONE             # <<<<<<<<<<<<<<
17200
17200
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__SGN_NONE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17201
17201
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17202
17202
 
17203
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":98
 
17203
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":98
17204
17204
 * # Enumeration H5T_sign_t
17205
17205
 * SGN_NONE   = H5T_SGN_NONE
17206
17206
 * SGN_2      = H5T_SGN_2             # <<<<<<<<<<<<<<
17212
17212
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__SGN_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17213
17213
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17214
17214
 
17215
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":101
 
17215
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":101
17216
17216
 * 
17217
17217
 * # Enumeration H5T_order_t
17218
17218
 * ORDER_LE    = H5T_ORDER_LE             # <<<<<<<<<<<<<<
17224
17224
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ORDER_LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17225
17225
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17226
17226
 
17227
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":102
 
17227
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":102
17228
17228
 * # Enumeration H5T_order_t
17229
17229
 * ORDER_LE    = H5T_ORDER_LE
17230
17230
 * ORDER_BE    = H5T_ORDER_BE             # <<<<<<<<<<<<<<
17236
17236
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ORDER_BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17237
17237
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17238
17238
 
17239
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":103
 
17239
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":103
17240
17240
 * ORDER_LE    = H5T_ORDER_LE
17241
17241
 * ORDER_BE    = H5T_ORDER_BE
17242
17242
 * ORDER_VAX   = H5T_ORDER_VAX             # <<<<<<<<<<<<<<
17248
17248
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ORDER_VAX, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17249
17249
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17250
17250
 
17251
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":104
 
17251
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":104
17252
17252
 * ORDER_BE    = H5T_ORDER_BE
17253
17253
 * ORDER_VAX   = H5T_ORDER_VAX
17254
17254
 * ORDER_NONE  = H5T_ORDER_NONE             # <<<<<<<<<<<<<<
17260
17260
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ORDER_NONE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17261
17261
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17262
17262
 
17263
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":106
 
17263
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":106
17264
17264
 * ORDER_NONE  = H5T_ORDER_NONE
17265
17265
 * 
17266
17266
 * DIR_DEFAULT = H5T_DIR_DEFAULT             # <<<<<<<<<<<<<<
17272
17272
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__DIR_DEFAULT, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17273
17273
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17274
17274
 
17275
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":107
 
17275
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":107
17276
17276
 * 
17277
17277
 * DIR_DEFAULT = H5T_DIR_DEFAULT
17278
17278
 * DIR_ASCEND  = H5T_DIR_ASCEND             # <<<<<<<<<<<<<<
17284
17284
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__DIR_ASCEND, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17285
17285
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17286
17286
 
17287
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":108
 
17287
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":108
17288
17288
 * DIR_DEFAULT = H5T_DIR_DEFAULT
17289
17289
 * DIR_ASCEND  = H5T_DIR_ASCEND
17290
17290
 * DIR_DESCEND = H5T_DIR_DESCEND             # <<<<<<<<<<<<<<
17296
17296
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__DIR_DESCEND, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17297
17297
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17298
17298
 
17299
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":111
 
17299
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":111
17300
17300
 * 
17301
17301
 * # Enumeration H5T_str_t
17302
17302
 * STR_NULLTERM = H5T_STR_NULLTERM             # <<<<<<<<<<<<<<
17308
17308
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STR_NULLTERM, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17309
17309
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17310
17310
 
17311
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":112
 
17311
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":112
17312
17312
 * # Enumeration H5T_str_t
17313
17313
 * STR_NULLTERM = H5T_STR_NULLTERM
17314
17314
 * STR_NULLPAD  = H5T_STR_NULLPAD             # <<<<<<<<<<<<<<
17320
17320
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STR_NULLPAD, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17321
17321
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17322
17322
 
17323
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":113
 
17323
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":113
17324
17324
 * STR_NULLTERM = H5T_STR_NULLTERM
17325
17325
 * STR_NULLPAD  = H5T_STR_NULLPAD
17326
17326
 * STR_SPACEPAD = H5T_STR_SPACEPAD             # <<<<<<<<<<<<<<
17332
17332
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STR_SPACEPAD, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17333
17333
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17334
17334
 
17335
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":116
 
17335
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":116
17336
17336
 * 
17337
17337
 * # Enumeration H5T_norm_t
17338
17338
 * NORM_IMPLIED = H5T_NORM_IMPLIED             # <<<<<<<<<<<<<<
17344
17344
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NORM_IMPLIED, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17345
17345
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17346
17346
 
17347
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":117
 
17347
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":117
17348
17348
 * # Enumeration H5T_norm_t
17349
17349
 * NORM_IMPLIED = H5T_NORM_IMPLIED
17350
17350
 * NORM_MSBSET = H5T_NORM_MSBSET             # <<<<<<<<<<<<<<
17356
17356
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NORM_MSBSET, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17357
17357
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17358
17358
 
17359
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":118
 
17359
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":118
17360
17360
 * NORM_IMPLIED = H5T_NORM_IMPLIED
17361
17361
 * NORM_MSBSET = H5T_NORM_MSBSET
17362
17362
 * NORM_NONE = H5T_NORM_NONE             # <<<<<<<<<<<<<<
17368
17368
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NORM_NONE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17369
17369
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17370
17370
 
17371
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":121
 
17371
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":121
17372
17372
 * 
17373
17373
 * # Enumeration H5T_cset_t:
17374
17374
 * CSET_ASCII = H5T_CSET_ASCII             # <<<<<<<<<<<<<<
17380
17380
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__CSET_ASCII, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17381
17381
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17382
17382
 
17383
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":124
 
17383
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":124
17384
17384
 * 
17385
17385
 * # Enumeration H5T_pad_t:
17386
17386
 * PAD_ZERO = H5T_PAD_ZERO             # <<<<<<<<<<<<<<
17392
17392
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PAD_ZERO, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17393
17393
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17394
17394
 
17395
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":125
 
17395
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":125
17396
17396
 * # Enumeration H5T_pad_t:
17397
17397
 * PAD_ZERO = H5T_PAD_ZERO
17398
17398
 * PAD_ONE = H5T_PAD_ONE             # <<<<<<<<<<<<<<
17404
17404
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PAD_ONE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17405
17405
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17406
17406
 
17407
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":126
 
17407
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":126
17408
17408
 * PAD_ZERO = H5T_PAD_ZERO
17409
17409
 * PAD_ONE = H5T_PAD_ONE
17410
17410
 * PAD_BACKGROUND = H5T_PAD_BACKGROUND             # <<<<<<<<<<<<<<
17416
17416
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PAD_BACKGROUND, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17417
17417
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17418
17418
 
17419
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":128
 
17419
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":128
17420
17420
 * PAD_BACKGROUND = H5T_PAD_BACKGROUND
17421
17421
 * 
17422
17422
 * if sys.byteorder == "little":    # Custom python addition             # <<<<<<<<<<<<<<
17435
17435
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17436
17436
  if (__pyx_t_6) {
17437
17437
 
17438
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":129
 
17438
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":129
17439
17439
 * 
17440
17440
 * if sys.byteorder == "little":    # Custom python addition
17441
17441
 *     ORDER_NATIVE = H5T_ORDER_LE             # <<<<<<<<<<<<<<
17450
17450
  }
17451
17451
  /*else*/ {
17452
17452
 
17453
 
    /* "/home/tachyon/h5py/h5py/h5t.pyx":131
 
17453
    /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":131
17454
17454
 *     ORDER_NATIVE = H5T_ORDER_LE
17455
17455
 * else:
17456
17456
 *     ORDER_NATIVE = H5T_ORDER_BE             # <<<<<<<<<<<<<<
17464
17464
  }
17465
17465
  __pyx_L2:;
17466
17466
 
17467
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":134
 
17467
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":134
17468
17468
 * 
17469
17469
 * # For conversion
17470
17470
 * BKG_NO = H5T_BKG_NO             # <<<<<<<<<<<<<<
17476
17476
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__BKG_NO, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17477
17477
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17478
17478
 
17479
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":135
 
17479
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":135
17480
17480
 * # For conversion
17481
17481
 * BKG_NO = H5T_BKG_NO
17482
17482
 * BKG_TEMP = H5T_BKG_TEMP             # <<<<<<<<<<<<<<
17488
17488
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__BKG_TEMP, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17489
17489
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17490
17490
 
17491
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":136
 
17491
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":136
17492
17492
 * BKG_NO = H5T_BKG_NO
17493
17493
 * BKG_TEMP = H5T_BKG_TEMP
17494
17494
 * BKG_YES = H5T_BKG_YES             # <<<<<<<<<<<<<<
17500
17500
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__BKG_YES, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17501
17501
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17502
17502
 
17503
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":141
 
17503
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":141
17504
17504
 * 
17505
17505
 * # IEEE floating-point
17506
17506
 * IEEE_F32LE = lockid(H5T_IEEE_F32LE)             # <<<<<<<<<<<<<<
17512
17512
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IEEE_F32LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17513
17513
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17514
17514
 
17515
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":142
 
17515
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":142
17516
17516
 * # IEEE floating-point
17517
17517
 * IEEE_F32LE = lockid(H5T_IEEE_F32LE)
17518
17518
 * IEEE_F32BE = lockid(H5T_IEEE_F32BE)             # <<<<<<<<<<<<<<
17524
17524
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IEEE_F32BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17525
17525
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17526
17526
 
17527
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":143
 
17527
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":143
17528
17528
 * IEEE_F32LE = lockid(H5T_IEEE_F32LE)
17529
17529
 * IEEE_F32BE = lockid(H5T_IEEE_F32BE)
17530
17530
 * IEEE_F64LE = lockid(H5T_IEEE_F64LE)             # <<<<<<<<<<<<<<
17536
17536
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IEEE_F64LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17537
17537
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17538
17538
 
17539
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":144
 
17539
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":144
17540
17540
 * IEEE_F32BE = lockid(H5T_IEEE_F32BE)
17541
17541
 * IEEE_F64LE = lockid(H5T_IEEE_F64LE)
17542
17542
 * IEEE_F64BE = lockid(H5T_IEEE_F64BE)             # <<<<<<<<<<<<<<
17548
17548
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IEEE_F64BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17549
17549
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17550
17550
 
17551
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":147
 
17551
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":147
17552
17552
 * 
17553
17553
 * # Signed 2's complement integer types
17554
17554
 * STD_I8LE  = lockid(H5T_STD_I8LE)             # <<<<<<<<<<<<<<
17560
17560
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_I8LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17561
17561
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17562
17562
 
17563
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":148
 
17563
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":148
17564
17564
 * # Signed 2's complement integer types
17565
17565
 * STD_I8LE  = lockid(H5T_STD_I8LE)
17566
17566
 * STD_I16LE = lockid(H5T_STD_I16LE)             # <<<<<<<<<<<<<<
17572
17572
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_I16LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17573
17573
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17574
17574
 
17575
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":149
 
17575
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":149
17576
17576
 * STD_I8LE  = lockid(H5T_STD_I8LE)
17577
17577
 * STD_I16LE = lockid(H5T_STD_I16LE)
17578
17578
 * STD_I32LE = lockid(H5T_STD_I32LE)             # <<<<<<<<<<<<<<
17584
17584
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_I32LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17585
17585
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17586
17586
 
17587
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":150
 
17587
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":150
17588
17588
 * STD_I16LE = lockid(H5T_STD_I16LE)
17589
17589
 * STD_I32LE = lockid(H5T_STD_I32LE)
17590
17590
 * STD_I64LE = lockid(H5T_STD_I64LE)             # <<<<<<<<<<<<<<
17596
17596
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_I64LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17597
17597
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17598
17598
 
17599
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":152
 
17599
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":152
17600
17600
 * STD_I64LE = lockid(H5T_STD_I64LE)
17601
17601
 * 
17602
17602
 * STD_I8BE  = lockid(H5T_STD_I8BE)             # <<<<<<<<<<<<<<
17608
17608
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_I8BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17609
17609
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17610
17610
 
17611
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":153
 
17611
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":153
17612
17612
 * 
17613
17613
 * STD_I8BE  = lockid(H5T_STD_I8BE)
17614
17614
 * STD_I16BE = lockid(H5T_STD_I16BE)             # <<<<<<<<<<<<<<
17620
17620
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_I16BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17621
17621
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17622
17622
 
17623
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":154
 
17623
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":154
17624
17624
 * STD_I8BE  = lockid(H5T_STD_I8BE)
17625
17625
 * STD_I16BE = lockid(H5T_STD_I16BE)
17626
17626
 * STD_I32BE = lockid(H5T_STD_I32BE)             # <<<<<<<<<<<<<<
17632
17632
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_I32BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17633
17633
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17634
17634
 
17635
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":155
 
17635
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":155
17636
17636
 * STD_I16BE = lockid(H5T_STD_I16BE)
17637
17637
 * STD_I32BE = lockid(H5T_STD_I32BE)
17638
17638
 * STD_I64BE = lockid(H5T_STD_I64BE)             # <<<<<<<<<<<<<<
17644
17644
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_I64BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17645
17645
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17646
17646
 
17647
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":158
 
17647
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":158
17648
17648
 * 
17649
17649
 * # Unsigned integers
17650
17650
 * STD_U8LE  = lockid(H5T_STD_U8LE)             # <<<<<<<<<<<<<<
17656
17656
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_U8LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17657
17657
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17658
17658
 
17659
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":159
 
17659
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":159
17660
17660
 * # Unsigned integers
17661
17661
 * STD_U8LE  = lockid(H5T_STD_U8LE)
17662
17662
 * STD_U16LE = lockid(H5T_STD_U16LE)             # <<<<<<<<<<<<<<
17668
17668
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_U16LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17669
17669
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17670
17670
 
17671
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":160
 
17671
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":160
17672
17672
 * STD_U8LE  = lockid(H5T_STD_U8LE)
17673
17673
 * STD_U16LE = lockid(H5T_STD_U16LE)
17674
17674
 * STD_U32LE = lockid(H5T_STD_U32LE)             # <<<<<<<<<<<<<<
17680
17680
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_U32LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17681
17681
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17682
17682
 
17683
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":161
 
17683
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":161
17684
17684
 * STD_U16LE = lockid(H5T_STD_U16LE)
17685
17685
 * STD_U32LE = lockid(H5T_STD_U32LE)
17686
17686
 * STD_U64LE = lockid(H5T_STD_U64LE)             # <<<<<<<<<<<<<<
17692
17692
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_U64LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17693
17693
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17694
17694
 
17695
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":163
 
17695
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":163
17696
17696
 * STD_U64LE = lockid(H5T_STD_U64LE)
17697
17697
 * 
17698
17698
 * STD_U8BE  = lockid(H5T_STD_U8BE)             # <<<<<<<<<<<<<<
17704
17704
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_U8BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17705
17705
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17706
17706
 
17707
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":164
 
17707
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":164
17708
17708
 * 
17709
17709
 * STD_U8BE  = lockid(H5T_STD_U8BE)
17710
17710
 * STD_U16BE = lockid(H5T_STD_U16BE)             # <<<<<<<<<<<<<<
17716
17716
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_U16BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17717
17717
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17718
17718
 
17719
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":165
 
17719
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":165
17720
17720
 * STD_U8BE  = lockid(H5T_STD_U8BE)
17721
17721
 * STD_U16BE = lockid(H5T_STD_U16BE)
17722
17722
 * STD_U32BE = lockid(H5T_STD_U32BE)             # <<<<<<<<<<<<<<
17728
17728
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_U32BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17729
17729
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17730
17730
 
17731
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":166
 
17731
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":166
17732
17732
 * STD_U16BE = lockid(H5T_STD_U16BE)
17733
17733
 * STD_U32BE = lockid(H5T_STD_U32BE)
17734
17734
 * STD_U64BE = lockid(H5T_STD_U64BE)             # <<<<<<<<<<<<<<
17740
17740
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_U64BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17741
17741
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17742
17742
 
17743
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":169
 
17743
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":169
17744
17744
 * 
17745
17745
 * # Native types by bytesize
17746
17746
 * NATIVE_INT8 = lockid(H5T_NATIVE_INT8)             # <<<<<<<<<<<<<<
17752
17752
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NATIVE_INT8, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17753
17753
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17754
17754
 
17755
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":170
 
17755
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":170
17756
17756
 * # Native types by bytesize
17757
17757
 * NATIVE_INT8 = lockid(H5T_NATIVE_INT8)
17758
17758
 * NATIVE_UINT8 = lockid(H5T_NATIVE_UINT8)             # <<<<<<<<<<<<<<
17764
17764
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NATIVE_UINT8, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17765
17765
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17766
17766
 
17767
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":171
 
17767
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":171
17768
17768
 * NATIVE_INT8 = lockid(H5T_NATIVE_INT8)
17769
17769
 * NATIVE_UINT8 = lockid(H5T_NATIVE_UINT8)
17770
17770
 * NATIVE_INT16 = lockid(H5T_NATIVE_INT16)             # <<<<<<<<<<<<<<
17776
17776
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NATIVE_INT16, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17777
17777
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17778
17778
 
17779
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":172
 
17779
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":172
17780
17780
 * NATIVE_UINT8 = lockid(H5T_NATIVE_UINT8)
17781
17781
 * NATIVE_INT16 = lockid(H5T_NATIVE_INT16)
17782
17782
 * NATIVE_UINT16 = lockid(H5T_NATIVE_UINT16)             # <<<<<<<<<<<<<<
17788
17788
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NATIVE_UINT16, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17789
17789
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17790
17790
 
17791
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":173
 
17791
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":173
17792
17792
 * NATIVE_INT16 = lockid(H5T_NATIVE_INT16)
17793
17793
 * NATIVE_UINT16 = lockid(H5T_NATIVE_UINT16)
17794
17794
 * NATIVE_INT32 = lockid(H5T_NATIVE_INT32)             # <<<<<<<<<<<<<<
17800
17800
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NATIVE_INT32, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17801
17801
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17802
17802
 
17803
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":174
 
17803
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":174
17804
17804
 * NATIVE_UINT16 = lockid(H5T_NATIVE_UINT16)
17805
17805
 * NATIVE_INT32 = lockid(H5T_NATIVE_INT32)
17806
17806
 * NATIVE_UINT32 = lockid(H5T_NATIVE_UINT32)             # <<<<<<<<<<<<<<
17812
17812
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NATIVE_UINT32, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17813
17813
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17814
17814
 
17815
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":175
 
17815
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":175
17816
17816
 * NATIVE_INT32 = lockid(H5T_NATIVE_INT32)
17817
17817
 * NATIVE_UINT32 = lockid(H5T_NATIVE_UINT32)
17818
17818
 * NATIVE_INT64 = lockid(H5T_NATIVE_INT64)             # <<<<<<<<<<<<<<
17824
17824
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NATIVE_INT64, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17825
17825
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17826
17826
 
17827
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":176
 
17827
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":176
17828
17828
 * NATIVE_UINT32 = lockid(H5T_NATIVE_UINT32)
17829
17829
 * NATIVE_INT64 = lockid(H5T_NATIVE_INT64)
17830
17830
 * NATIVE_UINT64 = lockid(H5T_NATIVE_UINT64)             # <<<<<<<<<<<<<<
17836
17836
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NATIVE_UINT64, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17837
17837
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17838
17838
 
17839
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":177
 
17839
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":177
17840
17840
 * NATIVE_INT64 = lockid(H5T_NATIVE_INT64)
17841
17841
 * NATIVE_UINT64 = lockid(H5T_NATIVE_UINT64)
17842
17842
 * NATIVE_FLOAT = lockid(H5T_NATIVE_FLOAT)             # <<<<<<<<<<<<<<
17848
17848
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NATIVE_FLOAT, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17849
17849
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17850
17850
 
17851
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":178
 
17851
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":178
17852
17852
 * NATIVE_UINT64 = lockid(H5T_NATIVE_UINT64)
17853
17853
 * NATIVE_FLOAT = lockid(H5T_NATIVE_FLOAT)
17854
17854
 * NATIVE_DOUBLE = lockid(H5T_NATIVE_DOUBLE)             # <<<<<<<<<<<<<<
17860
17860
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NATIVE_DOUBLE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17861
17861
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17862
17862
 
17863
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":181
 
17863
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":181
17864
17864
 * 
17865
17865
 * # Unix time types
17866
17866
 * UNIX_D32LE = lockid(H5T_UNIX_D32LE)             # <<<<<<<<<<<<<<
17872
17872
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__UNIX_D32LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17873
17873
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17874
17874
 
17875
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":182
 
17875
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":182
17876
17876
 * # Unix time types
17877
17877
 * UNIX_D32LE = lockid(H5T_UNIX_D32LE)
17878
17878
 * UNIX_D64LE = lockid(H5T_UNIX_D64LE)             # <<<<<<<<<<<<<<
17884
17884
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__UNIX_D64LE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17885
17885
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17886
17886
 
17887
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":183
 
17887
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":183
17888
17888
 * UNIX_D32LE = lockid(H5T_UNIX_D32LE)
17889
17889
 * UNIX_D64LE = lockid(H5T_UNIX_D64LE)
17890
17890
 * UNIX_D32BE = lockid(H5T_UNIX_D32BE)             # <<<<<<<<<<<<<<
17896
17896
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__UNIX_D32BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17897
17897
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17898
17898
 
17899
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":184
 
17899
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":184
17900
17900
 * UNIX_D64LE = lockid(H5T_UNIX_D64LE)
17901
17901
 * UNIX_D32BE = lockid(H5T_UNIX_D32BE)
17902
17902
 * UNIX_D64BE = lockid(H5T_UNIX_D64BE)             # <<<<<<<<<<<<<<
17908
17908
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__UNIX_D64BE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17909
17909
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17910
17910
 
17911
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":187
 
17911
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":187
17912
17912
 * 
17913
17913
 * # Reference types
17914
17914
 * STD_REF_OBJ = lockid(H5T_STD_REF_OBJ)             # <<<<<<<<<<<<<<
17920
17920
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_REF_OBJ, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17921
17921
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17922
17922
 
17923
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":188
 
17923
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":188
17924
17924
 * # Reference types
17925
17925
 * STD_REF_OBJ = lockid(H5T_STD_REF_OBJ)
17926
17926
 * STD_REF_DSETREG = lockid(H5T_STD_REF_DSETREG)             # <<<<<<<<<<<<<<
17932
17932
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__STD_REF_DSETREG, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 188; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17933
17933
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17934
17934
 
17935
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":191
 
17935
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":191
17936
17936
 * 
17937
17937
 * # Null terminated (C) and Fortran string types
17938
17938
 * C_S1 = lockid(H5T_C_S1)             # <<<<<<<<<<<<<<
17944
17944
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__C_S1, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17945
17945
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17946
17946
 
17947
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":192
 
17947
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":192
17948
17948
 * # Null terminated (C) and Fortran string types
17949
17949
 * C_S1 = lockid(H5T_C_S1)
17950
17950
 * FORTRAN_S1 = lockid(H5T_FORTRAN_S1)             # <<<<<<<<<<<<<<
17956
17956
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__FORTRAN_S1, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17957
17957
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17958
17958
 
17959
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":193
 
17959
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":193
17960
17960
 * C_S1 = lockid(H5T_C_S1)
17961
17961
 * FORTRAN_S1 = lockid(H5T_FORTRAN_S1)
17962
17962
 * VARIABLE = H5T_VARIABLE             # <<<<<<<<<<<<<<
17968
17968
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__VARIABLE, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17969
17969
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17970
17970
 
17971
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":196
 
17971
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":196
17972
17972
 * 
17973
17973
 * # Character sets
17974
17974
 * CSET_ASCII = H5T_CSET_ASCII             # <<<<<<<<<<<<<<
17980
17980
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__CSET_ASCII, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17981
17981
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17982
17982
 
17983
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":197
 
17983
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":197
17984
17984
 * # Character sets
17985
17985
 * CSET_ASCII = H5T_CSET_ASCII
17986
17986
 * CSET_UTF8 = H5T_CSET_UTF8             # <<<<<<<<<<<<<<
17992
17992
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__CSET_UTF8, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
17993
17993
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
17994
17994
 
17995
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":200
 
17995
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":200
17996
17996
 * 
17997
17997
 * # Custom Python object pointer type
17998
17998
 * PYTHON_OBJECT = lockid(_conv.get_python_obj())             # <<<<<<<<<<<<<<
18014
18014
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PYTHON_OBJECT, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
18015
18015
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
18016
18016
 
18017
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":203
 
18017
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":203
18018
18018
 * 
18019
18019
 * # Translation tables for HDF5 -> NumPy dtype conversion
18020
18020
 * cdef dict _order_map = { H5T_ORDER_NONE: '|', H5T_ORDER_LE: '<', H5T_ORDER_BE: '>'}             # <<<<<<<<<<<<<<
18041
18041
  __pyx_v_4h5py_3h5t__order_map = __pyx_t_4;
18042
18042
  __pyx_t_4 = 0;
18043
18043
 
18044
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":204
 
18044
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":204
18045
18045
 * # Translation tables for HDF5 -> NumPy dtype conversion
18046
18046
 * cdef dict _order_map = { H5T_ORDER_NONE: '|', H5T_ORDER_LE: '<', H5T_ORDER_BE: '>'}
18047
18047
 * cdef dict _sign_map  = { H5T_SGN_NONE: 'u', H5T_SGN_2: 'i' }             # <<<<<<<<<<<<<<
18064
18064
  __pyx_v_4h5py_3h5t__sign_map = __pyx_t_4;
18065
18065
  __pyx_t_4 = 0;
18066
18066
 
18067
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1146
 
18067
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1146
18068
18068
 * # transient and unlocked.
18069
18069
 * 
18070
18070
 * cdef dict _float_le = {4: H5T_IEEE_F32LE, 8: H5T_IEEE_F64LE}             # <<<<<<<<<<<<<<
18087
18087
  __pyx_v_4h5py_3h5t__float_le = __pyx_t_4;
18088
18088
  __pyx_t_4 = 0;
18089
18089
 
18090
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1147
 
18090
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1147
18091
18091
 * 
18092
18092
 * cdef dict _float_le = {4: H5T_IEEE_F32LE, 8: H5T_IEEE_F64LE}
18093
18093
 * cdef dict _float_be = {4: H5T_IEEE_F32BE, 8: H5T_IEEE_F64BE}             # <<<<<<<<<<<<<<
18110
18110
  __pyx_v_4h5py_3h5t__float_be = __pyx_t_4;
18111
18111
  __pyx_t_4 = 0;
18112
18112
 
18113
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1148
 
18113
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1148
18114
18114
 * cdef dict _float_le = {4: H5T_IEEE_F32LE, 8: H5T_IEEE_F64LE}
18115
18115
 * cdef dict _float_be = {4: H5T_IEEE_F32BE, 8: H5T_IEEE_F64BE}
18116
18116
 * cdef dict _float_nt = {4: H5T_NATIVE_FLOAT, 8: H5T_NATIVE_DOUBLE}             # <<<<<<<<<<<<<<
18133
18133
  __pyx_v_4h5py_3h5t__float_nt = __pyx_t_4;
18134
18134
  __pyx_t_4 = 0;
18135
18135
 
18136
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1150
 
18136
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1150
18137
18137
 * cdef dict _float_nt = {4: H5T_NATIVE_FLOAT, 8: H5T_NATIVE_DOUBLE}
18138
18138
 * 
18139
18139
 * cdef dict _int_le = {1: H5T_STD_I8LE, 2: H5T_STD_I16LE, 4: H5T_STD_I32LE, 8: H5T_STD_I64LE}             # <<<<<<<<<<<<<<
18164
18164
  __pyx_v_4h5py_3h5t__int_le = __pyx_t_4;
18165
18165
  __pyx_t_4 = 0;
18166
18166
 
18167
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1151
 
18167
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1151
18168
18168
 * 
18169
18169
 * cdef dict _int_le = {1: H5T_STD_I8LE, 2: H5T_STD_I16LE, 4: H5T_STD_I32LE, 8: H5T_STD_I64LE}
18170
18170
 * cdef dict _int_be = {1: H5T_STD_I8BE, 2: H5T_STD_I16BE, 4: H5T_STD_I32BE, 8: H5T_STD_I64BE}             # <<<<<<<<<<<<<<
18195
18195
  __pyx_v_4h5py_3h5t__int_be = __pyx_t_4;
18196
18196
  __pyx_t_4 = 0;
18197
18197
 
18198
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1152
 
18198
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1152
18199
18199
 * cdef dict _int_le = {1: H5T_STD_I8LE, 2: H5T_STD_I16LE, 4: H5T_STD_I32LE, 8: H5T_STD_I64LE}
18200
18200
 * cdef dict _int_be = {1: H5T_STD_I8BE, 2: H5T_STD_I16BE, 4: H5T_STD_I32BE, 8: H5T_STD_I64BE}
18201
18201
 * cdef dict _int_nt = {1: H5T_NATIVE_INT8, 2: H5T_NATIVE_INT16, 4: H5T_NATIVE_INT32, 8: H5T_NATIVE_INT64}             # <<<<<<<<<<<<<<
18226
18226
  __pyx_v_4h5py_3h5t__int_nt = __pyx_t_4;
18227
18227
  __pyx_t_4 = 0;
18228
18228
 
18229
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1154
 
18229
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1154
18230
18230
 * cdef dict _int_nt = {1: H5T_NATIVE_INT8, 2: H5T_NATIVE_INT16, 4: H5T_NATIVE_INT32, 8: H5T_NATIVE_INT64}
18231
18231
 * 
18232
18232
 * cdef dict _uint_le = {1: H5T_STD_U8LE, 2: H5T_STD_U16LE, 4: H5T_STD_U32LE, 8: H5T_STD_U64LE}             # <<<<<<<<<<<<<<
18257
18257
  __pyx_v_4h5py_3h5t__uint_le = __pyx_t_4;
18258
18258
  __pyx_t_4 = 0;
18259
18259
 
18260
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1155
 
18260
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1155
18261
18261
 * 
18262
18262
 * cdef dict _uint_le = {1: H5T_STD_U8LE, 2: H5T_STD_U16LE, 4: H5T_STD_U32LE, 8: H5T_STD_U64LE}
18263
18263
 * cdef dict _uint_be = {1: H5T_STD_U8BE, 2: H5T_STD_U16BE, 4: H5T_STD_U32BE, 8: H5T_STD_U64BE}             # <<<<<<<<<<<<<<
18288
18288
  __pyx_v_4h5py_3h5t__uint_be = __pyx_t_4;
18289
18289
  __pyx_t_4 = 0;
18290
18290
 
18291
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1156
 
18291
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1156
18292
18292
 * cdef dict _uint_le = {1: H5T_STD_U8LE, 2: H5T_STD_U16LE, 4: H5T_STD_U32LE, 8: H5T_STD_U64LE}
18293
18293
 * cdef dict _uint_be = {1: H5T_STD_U8BE, 2: H5T_STD_U16BE, 4: H5T_STD_U32BE, 8: H5T_STD_U64BE}
18294
18294
 * cdef dict _uint_nt = {1: H5T_NATIVE_UINT8, 2: H5T_NATIVE_UINT16, 4: H5T_NATIVE_UINT32, 8: H5T_NATIVE_UINT64}             # <<<<<<<<<<<<<<
18319
18319
  __pyx_v_4h5py_3h5t__uint_nt = __pyx_t_4;
18320
18320
  __pyx_t_4 = 0;
18321
18321
 
18322
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1546
 
18322
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1546
18323
18323
 * # Deprecated functions
18324
18324
 * 
18325
18325
 * import warnings             # <<<<<<<<<<<<<<
18331
18331
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s__warnings, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
18332
18332
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
18333
18333
 
18334
 
  /* "/home/tachyon/h5py/h5py/h5t.pyx":1
 
18334
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/h5t.pyx":1
18335
18335
 * #+             # <<<<<<<<<<<<<<
18336
18336
 * #
18337
18337
 * # This file is part of h5py, a low-level Python interface to the HDF5 library.
18956
18956
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_4)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
18957
18957
  __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0;
18958
18958
 
18959
 
  /* "/home/tachyon/h5py/h5py/_objects.pxd":7
 
18959
  /* "/home/tachyon/.jenkins/jobs/h5py-release/workspace/h5py/_objects.pxd":7
18960
18960
 *     cdef object __weakref__
18961
18961
 *     cdef readonly hid_t id
18962
18962
 *     cdef readonly int locked             # <<<<<<<<<<<<<<