mirror of
https://github.com/python/cpython
synced 2026-09-29 12:10:30 +03:00
timedelta comparison and datetime addition: as the Python implementation
of datetime does, accept instances of subclasses too.
This commit is contained in:
parent
9914227caa
commit
aa7d849c7a
1 changed files with 4 additions and 4 deletions
|
|
@ -1666,7 +1666,7 @@ delta_richcompare(PyDateTime_Delta *self, PyObject *other, int op)
|
|||
{
|
||||
int diff = 42; /* nonsense */
|
||||
|
||||
if (PyDelta_CheckExact(other)) {
|
||||
if (PyDelta_Check(other)) {
|
||||
diff = GET_TD_DAYS(self) - GET_TD_DAYS(other);
|
||||
if (diff == 0) {
|
||||
diff = GET_TD_SECONDS(self) - GET_TD_SECONDS(other);
|
||||
|
|
@ -2299,7 +2299,7 @@ date_add(PyObject *left, PyObject *right)
|
|||
Py_INCREF(Py_NotImplemented);
|
||||
return Py_NotImplemented;
|
||||
}
|
||||
if (PyDate_CheckExact(left)) {
|
||||
if (PyDate_Check(left)) {
|
||||
/* date + ??? */
|
||||
if (PyDelta_Check(right))
|
||||
/* date + delta */
|
||||
|
|
@ -2328,8 +2328,8 @@ date_subtract(PyObject *left, PyObject *right)
|
|||
Py_INCREF(Py_NotImplemented);
|
||||
return Py_NotImplemented;
|
||||
}
|
||||
if (PyDate_CheckExact(left)) {
|
||||
if (PyDate_CheckExact(right)) {
|
||||
if (PyDate_Check(left)) {
|
||||
if (PyDate_Check(right)) {
|
||||
/* date - date */
|
||||
int left_ord = ymd_to_ord(GET_YEAR(left),
|
||||
GET_MONTH(left),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue