Skip to content

Handling sets in cmp for dict view types #3298

Closed
@DimitrisJim

Description

@DimitrisJim

Currently, sets are not handled in comparisons with dict views:

In Python:

>>> d = {1: 2}
>>> d.keys() == set([1])
True

while in RustPython:

>>>>> d = {1: 2}
>>>>> d.keys() == set([1])
False

In CPython, the corresponding implementation (dictview_richcompare) calls another function that iterates through the view and continuously calls __contains__ on the other object (see all_contained_in function).

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions