in src/dt.c [235:249]
dt_status_t dt_apply_offset(const dt_timestamp_t *lhs, const dt_offset_t *rhs, dt_timestamp_t *result)
{
if (dt_validate_timestamp(lhs) != DT_TRUE || dt_validate_offset(rhs) != DT_TRUE || !result) {
return DT_INVALID_ARGUMENT;
}
if (rhs->is_forward) {
return dt_apply_interval_forward(lhs, &rhs->duration, result);
} else {
return dt_apply_interval_backward(lhs, &rhs->duration, result);
}
return DT_OK;
}