@@ -53,7 +53,7 @@ inline dynd::nd::array make_strided_array(const dynd::ndt::type &dtp,
5353
5454 dynd::intrusive_ptr<dynd::memory_block_data> result;
5555 char *data_ptr = NULL ;
56- if (array_tp.get_kind () == dynd::memory_kind ) {
56+ if (array_tp.get_base_id () == dynd::memory_id ) {
5757 result = dynd::make_array_memory_block (array_tp.get_arrmeta_size ());
5858 array_tp.extended <dynd::ndt::base_memory_type>()->data_alloc (&data_ptr,
5959 data_size);
@@ -66,7 +66,7 @@ inline dynd::nd::array make_strided_array(const dynd::ndt::type &dtp,
6666 }
6767
6868 if (array_tp.get_flags () & dynd::type_flag_zeroinit) {
69- if (array_tp.get_kind () == dynd::memory_kind ) {
69+ if (array_tp.get_base_id () == dynd::memory_id ) {
7070 array_tp.extended <dynd::ndt::base_memory_type>()->data_zeroinit (
7171 data_ptr, data_size);
7272 }
@@ -163,12 +163,12 @@ inline std::string array_repr(const dynd::nd::array &n)
163163inline PyObject *array_nonzero (const dynd::nd::array &n)
164164{
165165 // Implements the nonzero/conversion to boolean slot
166- switch (n.get_type ().value_type ().get_kind ()) {
167- case dynd::bool_kind :
168- case dynd::uint_kind :
169- case dynd::sint_kind :
170- case dynd::real_kind :
171- case dynd::complex_kind :
166+ switch (n.get_type ().value_type ().get_base_id ()) {
167+ case dynd::bool_kind_id :
168+ case dynd::uint_kind_id :
169+ case dynd::int_kind_id :
170+ case dynd::float_kind_id :
171+ case dynd::complex_kind_id :
172172 // Follow Python in not raising errors here
173173 if (n.as <bool >(dynd::assign_error_nocheck)) {
174174 Py_INCREF (Py_True);
@@ -178,7 +178,7 @@ inline PyObject *array_nonzero(const dynd::nd::array &n)
178178 Py_INCREF (Py_False);
179179 return Py_False;
180180 }
181- case dynd::string_kind : {
181+ case dynd::string_kind_id : {
182182 // Follow Python, return True if the string is nonempty, False otherwise
183183 dynd::nd::array n_eval = n.eval ();
184184 const dynd::ndt::base_string_type *bsd =
@@ -195,7 +195,7 @@ inline PyObject *array_nonzero(const dynd::nd::array &n)
195195 return Py_False;
196196 }
197197 }
198- case dynd::bytes_kind : {
198+ case dynd::bytes_kind_id : {
199199 // Return True if there is a non-zero byte, False otherwise
200200 dynd::nd::array n_eval = n.eval ();
201201 const dynd::ndt::base_bytes_type *bbd =
@@ -215,12 +215,6 @@ inline PyObject *array_nonzero(const dynd::nd::array &n)
215215 Py_INCREF (Py_False);
216216 return Py_False;
217217 }
218- case dynd::datetime_kind: {
219- // Dates and datetimes are never zero
220- // TODO: What to do with NA value?
221- Py_INCREF (Py_True);
222- return Py_True;
223- }
224218 default :
225219 // TODO: Implement nd.any and nd.all, mention them
226220 // here like NumPy does.
@@ -401,7 +395,7 @@ inline dynd::nd::array nd_fields(const dynd::nd::array &n, PyObject *field_list)
401395
402396 // TODO: Move this implementation into dynd
403397 dynd::ndt::type fdt = n.get_dtype ();
404- if (fdt.get_kind () != dynd::struct_kind ) {
398+ if (fdt.get_id () != dynd::struct_id ) {
405399 std::stringstream ss;
406400 ss << " nd.fields must be given a dynd array of 'struct' kind, not " ;
407401 ss << fdt;
@@ -457,7 +451,7 @@ inline dynd::nd::array nd_fields(const dynd::nd::array &n, PyObject *field_list)
457451 char *dst_arrmeta = result.get ()->metadata ();
458452 const char *src_arrmeta = n.get ()->metadata ();
459453 while (tmp_dt.get_ndim () > 0 ) {
460- if (tmp_dt.get_kind () != dynd::dim_kind ) {
454+ if (tmp_dt.get_base_id () != dynd::dim_kind_id ) {
461455 throw std::runtime_error (
462456 " nd.fields doesn't support dimensions with pointers yet" );
463457 }
0 commit comments