MCPcopy Create free account
hub / github.com/numpy/numpy / can_cast_timedelta64_metadata

Function can_cast_timedelta64_metadata

numpy/core/src/multiarray/datetime.c:1416–1438  ·  view source on GitHub ↗

* This provides the casting rules for the TIMEDELTA data type metadata. */

Source from the content-addressed store, hash-verified

1414 * This provides the casting rules for the TIMEDELTA data type metadata.
1415 */
1416NPY_NO_EXPORT npy_bool
1417can_cast_timedelta64_metadata(PyArray_DatetimeMetaData *src_meta,
1418 PyArray_DatetimeMetaData *dst_meta,
1419 NPY_CASTING casting)
1420{
1421 switch (casting) {
1422 case NPY_UNSAFE_CASTING:
1423 return 1;
1424
1425 case NPY_SAME_KIND_CASTING:
1426 return can_cast_timedelta64_units(src_meta->base, dst_meta->base,
1427 casting);
1428
1429 case NPY_SAFE_CASTING:
1430 return can_cast_timedelta64_units(src_meta->base, dst_meta->base,
1431 casting) &&
1432 datetime_metadata_divides(src_meta, dst_meta, 1);
1433
1434 default:
1435 return src_meta->base == dst_meta->base &&
1436 src_meta->num == dst_meta->num;
1437 }
1438}
1439
1440/*
1441 * Tests whether a datetime64 can be cast from the source metadata

Calls 2

Tested by

no test coverage detected