PyDictObject

Members

Variables

ma_fill
Py_ssize_t ma_fill;

_

ma_lookup
PyDictEntry* function(PyDictObject* mp, PyObject* key, Py_hash_t hash) ma_lookup;

_

ma_mask
Py_ssize_t ma_mask;

The table contains ma_mask + 1 slots, and that's a power of 2. We store the mask instead of the size because the mask is more frequently needed.

ma_smalltable
PyDictEntry[PyDict_MINSIZE] ma_smalltable;

_

ma_table
PyDictEntry* ma_table;

ma_table points to ma_smalltable for small tables, else to additional malloc'ed memory. ma_table is never NULL! This rule saves repeated runtime null-tests in the workhorse getitem and setitem calls.

ma_used
Py_ssize_t ma_used;

_

Meta