Skip to content

Commit

Permalink
Merge pull request #1397 from kangalioo/get_fold_bool
Browse files Browse the repository at this point in the history
Make PyTimeAccess::get_fold() return bool instead of u8
  • Loading branch information
davidhewitt authored Feb 14, 2021
2 parents 83821bd + 87ee51f commit 442a04e
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 7 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -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`. [#1425](https://github.com/PyO3/pyo3/pull/1425)

Expand Down
14 changes: 7 additions & 7 deletions src/types/datetime.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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`
Expand Down Expand Up @@ -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 }
}
}

Expand Down Expand Up @@ -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 }
}
}

Expand Down Expand Up @@ -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);
});
}
}

0 comments on commit 442a04e

Please sign in to comment.