Lines Matching defs:level

46 those 5-bit blocks will encode a position on a single tree level.
54 (level 1) +---+ -- +----+----+----+ -- +----+
57 a 2nd level node | 0 | .. | 10 | 11 | 12 | .. | 31 | 0b01011 = 11 (2)
61 a 3rd level node | 0 | .. | 04 | 05 | 06 | .. | 31 | 0b00101 = 5 (3)
65 a 4th level node | 0 | .. | 04 | 29 | 30 | 31 | 0b11101 = 29 (4)
69 a 5th level node | 0 | .. | 17 | 18 | 19 | .. | 31 | 0b10010 = 18 (5)
75 a 6th level node | 0 | .. | 15 | 16 | 17 | .. | 31 | 0b00000 = 0 (6)
99 we used to illustrate the high-level idea in the previous section.
105 only as an indirection level - their pointers point to other nodes in
181 When kI == NULL, vI points to another tree level.
207 High-level functions accept a PyHamtObject object and dispatch to
208 lower-level functions depending on what kind of node h_root points to.
304 /* Low-level iterator protocol type.
362 _PyUnicodeWriter *writer, int level);
457 _hamt_dump_ident(_PyUnicodeWriter *writer, int level)
459 /* Write `' ' * level` to the `writer` */
470 num = PyLong_FromLong((long)level);
817 than 16 nodes at one level of the tree, we no longer
909 /* We have less than 16 keys at this level; let's just
1013 tree level, and we cannot simply move tree levels
1184 _PyUnicodeWriter *writer, int level)
1192 if (_hamt_dump_ident(writer, level + 1)) {
1221 if (_hamt_dump_ident(writer, level + 2)) {
1231 writer, level + 2))
1320 /* Set a new key to this level (currently a Collision node)
1406 we're replacing on this tree level.
1592 _PyUnicodeWriter *writer, int level)
1598 if (_hamt_dump_ident(writer, level + 1)) {
1612 if (_hamt_dump_ident(writer, level + 2)) {
1681 /* Set a new key to this level (currently a Collision node)
1869 tree level, and we cannot simply move tree levels
1974 _PyUnicodeWriter *writer, int level)
1980 if (_hamt_dump_ident(writer, level + 1)) {
1993 if (_hamt_dump_ident(writer, level + 2)) {
2001 if (hamt_node_dump(node->a_array[i], writer, level + 1)) {
2121 _PyUnicodeWriter *writer, int level)
2131 (PyHamtNode_Bitmap *)node, writer, level);
2135 (PyHamtNode_Array *)node, writer, level);
2140 (PyHamtNode_Collision *)node, writer, level);
2171 int8_t level = iter->i_level;
2173 PyHamtNode_Bitmap *node = (PyHamtNode_Bitmap *)(iter->i_nodes[level]);
2174 Py_ssize_t pos = iter->i_pos[level];
2186 iter->i_pos[level] = pos + 2;
2188 int8_t next_level = level + 1;
2200 iter->i_pos[level] = pos + 2;
2208 int8_t level = iter->i_level;
2210 PyHamtNode_Collision *node = (PyHamtNode_Collision *)(iter->i_nodes[level]);
2211 Py_ssize_t pos = iter->i_pos[level];
2224 iter->i_pos[level] = pos + 2;
2232 int8_t level = iter->i_level;
2234 PyHamtNode_Array *node = (PyHamtNode_Array *)(iter->i_nodes[level]);
2235 Py_ssize_t pos = iter->i_pos[level];
2248 iter->i_pos[level] = i + 1;
2250 int8_t next_level = level + 1;
2293 /////////////////////////////////// HAMT high-level functions