Skip to content

Commit 7da1de0

Browse files
authored
py: implement __len__ for StringDict
1 parent f712a5d commit 7da1de0

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

py/dict.go

+4
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,10 @@ func (a StringDict) M__str__() (Object, error) {
114114
return a.M__repr__()
115115
}
116116

117+
func (a StringDict) M__len__() (Object, error) {
118+
return Int(len(a)), nil
119+
}
120+
117121
func (a StringDict) M__repr__() (Object, error) {
118122
var out bytes.Buffer
119123
out.WriteRune('{')

py/tests/dict.py

+5
Original file line numberDiff line numberDiff line change
@@ -54,4 +54,9 @@
5454
assert a.__eq__({'a': 'b'}) == True
5555
assert a.__ne__({'a': 'b'}) == False
5656

57+
doc="__len__"
58+
a = {"a": "1", "b": "2"}
59+
assert a.__len__() == 2
60+
assert len(a) == 2
61+
5762
doc="finished"

0 commit comments

Comments
 (0)