FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
cpython/Include/cpython/dictobject.h at master · python-emscripten/cpython · GitHub
python-emscripten
cpython
Repository navigation
Code
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
cpython
/
Include
/
cpython
/
dictobject.h
Copy path
More file actions
More file actions
Latest commit
History
History
History
84 lines (69 loc) · 3.64 KB
Breadcrumbs
cpython
/
Include
/
cpython
/
dictobject.h
Copy path
File metadata and controls
84 lines (69 loc) · 3.64 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#ifndef
Py_CPYTHON_DICTOBJECT_H
# error
"this header file must not be included directly"
#endif
typedef
struct
_dictkeysobject
PyDictKeysObject
;
/* The ma_values pointer is NULL for a combined table
* or points to an array of PyObject* for a split table
*/
typedef
struct
{
PyObject_HEAD
/* Number of items in the dictionary */
Py_ssize_t
ma_used
;
/* Dictionary version: globally unique, value change each time
the dictionary is modified */
uint64_t
ma_version_tag
;
PyDictKeysObject
*
ma_keys
;
/* If ma_values is NULL, the table is "combined": keys and values
are stored in ma_keys.
If ma_values is not NULL, the table is splitted:
keys are stored in ma_keys and values are stored in ma_values */
PyObject
*
*
ma_values
;
}
PyDictObject
;
PyAPI_FUNC
(
PyObject
*
)
_PyDict_GetItem_KnownHash
(
PyObject
*
mp
,
PyObject
*
key
,
Py_hash_t
hash
);
PyAPI_FUNC
(
PyObject
*
)
_PyDict_GetItemIdWithError
(
PyObject
*
dp
,
struct
_Py_Identifier
*
key
);
PyAPI_FUNC
(
PyObject
*
)
_PyDict_GetItemStringWithError
(
PyObject
*
,
const
char
*
);
PyAPI_FUNC
(
PyObject
*
)
PyDict_SetDefault
(
PyObject
*
mp
,
PyObject
*
key
,
PyObject
*
defaultobj
);
PyAPI_FUNC
(
int
)
_PyDict_SetItem_KnownHash
(
PyObject
*
mp
,
PyObject
*
key
,
PyObject
*
item
,
Py_hash_t
hash
);
PyAPI_FUNC
(
int
)
_PyDict_DelItem_KnownHash
(
PyObject
*
mp
,
PyObject
*
key
,
Py_hash_t
hash
);
PyAPI_FUNC
(
int
)
_PyDict_DelItemIf
(
PyObject
*
mp
,
PyObject
*
key
,
int
(
*
predicate
)(
PyObject
*
value
));
PyDictKeysObject
*
_PyDict_NewKeysForClass
(
void
);
PyAPI_FUNC
(
PyObject
*
)
PyObject_GenericGetDict
(
PyObject
*
,
void
*
);
PyAPI_FUNC
(
int
)
_PyDict_Next
(
PyObject
*
mp
,
Py_ssize_t
*
pos
,
PyObject
*
*
key
,
PyObject
*
*
value
,
Py_hash_t
*
hash
);
/* Get the number of items of a dictionary. */
#define
PyDict_GET_SIZE
(
mp
) (assert(PyDict_Check(mp)),((PyDictObject *)mp)->ma_used)
PyAPI_FUNC
(
int
)
_PyDict_Contains
(
PyObject
*
mp
,
PyObject
*
key
,
Py_hash_t
hash
);
PyAPI_FUNC
(
PyObject
*
)
_PyDict_NewPresized
(
Py_ssize_t
minused
);
PyAPI_FUNC
(
void
)
_PyDict_MaybeUntrack
(
PyObject
*
mp
);
PyAPI_FUNC
(
int
)
_PyDict_HasOnlyStringKeys
(
PyObject
*
mp
);
Py_ssize_t
_PyDict_KeysSize
(
PyDictKeysObject
*
keys
);
PyAPI_FUNC
(
Py_ssize_t
)
_PyDict_SizeOf
(
PyDictObject
*
);
PyAPI_FUNC
(
PyObject
*
)
_PyDict_Pop
(
PyObject
*
,
PyObject
*
,
PyObject
*
);
PyObject
*
_PyDict_Pop_KnownHash
(
PyObject
*
,
PyObject
*
,
Py_hash_t
,
PyObject
*
);
PyObject
*
_PyDict_FromKeys
(
PyObject
*
,
PyObject
*
,
PyObject
*
);
#define
_PyDict_HasSplitTable
(
d
) ((d)->ma_values != NULL)
/* Like PyDict_Merge, but override can be 0, 1 or 2. If override is 0,
the first occurrence of a key wins, if override is 1, the last occurrence
of a key wins, if override is 2, a KeyError with conflicting key as
argument is raised.
*/
PyAPI_FUNC
(
int
)
_PyDict_MergeEx
(
PyObject
*
mp
,
PyObject
*
other
,
int
override
);
PyAPI_FUNC
(
PyObject
*
)
_PyDict_GetItemId
(
PyObject
*
dp
,
struct
_Py_Identifier
*
key
);
PyAPI_FUNC
(
int
)
_PyDict_SetItemId
(
PyObject
*
dp
,
struct
_Py_Identifier
*
key
,
PyObject
*
item
);
PyAPI_FUNC
(
int
)
_PyDict_DelItemId
(
PyObject
*
mp
,
struct
_Py_Identifier
*
key
);
PyAPI_FUNC
(
void
)
_PyDict_DebugMallocStats
(
FILE
*
out
);
int
_PyObjectDict_SetItem
(
PyTypeObject
*
tp
,
PyObject
*
*
dictptr
,
PyObject
*
name
,
PyObject
*
value
);
PyObject
*
_PyDict_LoadGlobal
(
PyDictObject
*
,
PyDictObject
*
,
PyObject
*
);
/* _PyDictView */
typedef
struct
{
PyObject_HEAD
PyDictObject
*
dv_dict
;
}
_PyDictViewObject
;
PyAPI_FUNC
(
PyObject
*
)
_PyDictView_New
(
PyObject
*
,
PyTypeObject
*
);
PyAPI_FUNC
(
PyObject
*
)
_PyDictView_Intersect
(
PyObject
*
self
,
PyObject
*
other
);
Back
|
FazBrowse Home
|
New Git URL