ext/cumo/include/cumo/narray.h in cumo-0.2.4 vs ext/cumo/include/cumo/narray.h in cumo-0.2.5

- old
+ new

@@ -194,14 +194,16 @@ extern VALUE cumo_cUInt64; extern VALUE cumo_cUInt32; extern VALUE cumo_cUInt16; extern VALUE cumo_cUInt8; extern VALUE cumo_cRObject; -extern VALUE cumo_na_cStep; #ifndef HAVE_RB_CCOMPLEX extern VALUE rb_cComplex; #endif +#ifdef HAVE_RB_ARITHMETIC_SEQUENCE_EXTRACT +extern VALUE rb_cArithSeq; +#endif extern VALUE cumo_sym_reduce; extern VALUE cumo_sym_option; extern VALUE cumo_sym_loop_opt; extern VALUE cumo_sym_init; @@ -263,9 +265,26 @@ unsigned int element_bits; unsigned int element_bytes; unsigned int element_stride; } cumo_narray_type_info_t; +// from ruby/enumerator.c +typedef struct { + VALUE obj; + ID meth; + VALUE args; + // use only above in this source + VALUE fib; + VALUE dst; + VALUE lookahead; + VALUE feedvalue; + VALUE stop_exc; + VALUE size; + // incompatible below depending on ruby version + //VALUE procs; // ruby 2.4 + //rb_enumerator_size_func *size_fn; // ruby 2.1-2.4 + //VALUE (*size_fn)(ANYARGS); // ruby 2.0 +} cumo_enumerator_t; static inline cumo_narray_t * cumo_na_get_narray_t(VALUE obj) { cumo_narray_t *na;