8000 Implemented ``toSet'', ``toFrozenSet'', and ``fromSet''. · packetloop/haskell-cpython@2de5ed5 · GitHub
[go: up one dir, main page]

Skip to content

Commit 2de5ed5

Browse files
committed
Implemented toSet'', toFrozenSet'', and ``fromSet''.
1 parent 292b1f8 commit 2de5ed5

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

CPython/Types/Set.chs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ module CPython.Types.Set
3333
, clear
3434
) where
3535
import CPython.Internal
36+
import CPython.Types.Tuple (toTuple, iterableToTuple, fromTuple)
3637

3738
#include <hscpython-shim.h>
3839

@@ -66,10 +67,10 @@ instance AnySet FrozenSet
6667
{} -> `Type' peekStaticObject* #}
6768

6869
toSet :: [SomeObject] -> IO Set
69-
toSet = undefined
70+
toSet xs = toTuple xs >>= iterableToSet
7071

7172
toFrozenSet :: [SomeObject] -> IO FrozenSet
72-
toFrozenSet = undefined
73+
toFrozenSet xs = toTuple xs >>= iterableToFrozenSet
7374

7475
{# fun PySet_New as iterableToSet
7576
`Object obj' =>
@@ -82,7 +83,7 @@ toFrozenSet = undefined
8283
} -> `FrozenSet' stealObject* #}
8384

8485
fromSet :: AnySet set => set -> IO [SomeObject]
85-
fromSet set = undefined
86+
fromSet set = iterableToTuple set >>= fromTuple
8687

8788
{# fun PySet_Size as size
8889
`AnySet set' =>

0 commit comments

Comments
 (0)
0