Make PyTimeAccess::get_fold return bool

This commit is contained in:
kangalioo 2021-01-20 20:44:40 +01:00 committed by David Hewitt
parent 28aff42e80
commit 87ee51fb86
2 changed files with 8 additions and 7 deletions

View File

@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
- Add FFI definition `PyCFunction_CheckExact` for Python 3.9 and later. [#1425](https://github.com/PyO3/pyo3/pull/1425)
### Changed
- Change `PyTimeAcces::get_fold()` to return a `bool` instead of a `u8`. [#1397](https://github.com/PyO3/pyo3/pull/1397)
- Deprecate FFI definition `PyCFunction_Call` for Python 3.9 and later. [#1425](https://github.com/PyO3/pyo3/pull/1425)
- Deprecate FFI definitions `PyModule_GetFilename`, `PyMethodDef_INIT`. [#1425](https://github.com/PyO3/pyo3/pull/1425)

View File

@ -58,7 +58,7 @@ pub trait PyTimeAccess {
fn get_second(&self) -> u8;
fn get_microsecond(&self) -> u32;
#[cfg(not(PyPy))]
fn get_fold(&self) -> u8;
fn get_fold(&self) -> bool;
}
/// Bindings around `datetime.date`
@ -256,8 +256,8 @@ impl PyTimeAccess for PyDateTime {
}
#[cfg(not(PyPy))]
fn get_fold(&self) -> u8 {
unsafe { PyDateTime_DATE_GET_FOLD(self.as_ptr()) as u8 }
fn get_fold(&self) -> bool {
unsafe { PyDateTime_DATE_GET_FOLD(self.as_ptr()) > 0 }
}
}
@ -338,8 +338,8 @@ impl PyTimeAccess for PyTime {
}
#[cfg(not(PyPy))]
fn get_fold(&self) -> u8 {
unsafe { PyDateTime_TIME_GET_FOLD(self.as_ptr()) as u8 }
fn get_fold(&self) -> bool {
unsafe { PyDateTime_TIME_GET_FOLD(self.as_ptr()) != 0 }
}
}
@ -421,8 +421,8 @@ mod tests {
let a = PyDateTime::new_with_fold(py, 2021, 1, 23, 20, 32, 40, 341516, None, false);
let b = PyDateTime::new_with_fold(py, 2021, 1, 23, 20, 32, 40, 341516, None, true);
assert_eq!(a.unwrap().get_fold(), 0);
assert_eq!(b.unwrap().get_fold(), 1);
assert_eq!(a.unwrap().get_fold(), false);
assert_eq!(b.unwrap().get_fold(), true);
});
}
}