• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef Py_INTERNAL_SETOBJECT_H
2 #define Py_INTERNAL_SETOBJECT_H
3 #ifdef __cplusplus
4 extern "C" {
5 #endif
6 
7 #ifndef Py_BUILD_CORE
8 #  error "this header requires Py_BUILD_CORE define"
9 #endif
10 
11 // Export for '_abc' shared extension
12 PyAPI_FUNC(int) _PySet_NextEntry(
13     PyObject *set,
14     Py_ssize_t *pos,
15     PyObject **key,
16     Py_hash_t *hash);
17 
18 // Export for '_pickle' shared extension
19 PyAPI_FUNC(int) _PySet_NextEntryRef(
20     PyObject *set,
21     Py_ssize_t *pos,
22     PyObject **key,
23     Py_hash_t *hash);
24 
25 // Export for '_pickle' shared extension
26 PyAPI_FUNC(int) _PySet_Update(PyObject *set, PyObject *iterable);
27 
28 // Export for the gdb plugin's (python-gdb.py) benefit
29 PyAPI_DATA(PyObject *) _PySet_Dummy;
30 
31 PyAPI_FUNC(int) _PySet_Contains(PySetObject *so, PyObject *key);
32 
33 // Clears the set without acquiring locks. Used by _PyCode_Fini.
34 extern void _PySet_ClearInternal(PySetObject *so);
35 
36 #ifdef __cplusplus
37 }
38 #endif
39 #endif  // !Py_INTERNAL_SETOBJECT_H
40