Lines Matching refs:parent

38     parent: NodePtr<K, V>,  field
98 parent: NodePtr::null(), in new()
151 self.parent().left() == *self in is_left_child()
156 self.parent().right() == *self in is_right_child()
184 if temp.parent().is_null() { in next()
188 return temp.parent(); in next()
190 temp = temp.parent(); in next()
202 if temp.parent().is_null() { in prev()
206 return temp.parent(); in prev()
208 temp = temp.parent(); in prev()
214 fn set_parent(&mut self, parent: NodePtr<K, V>) { in set_parent()
218 unsafe { (*self.0).parent = parent } in set_parent()
238 fn parent(&self) -> NodePtr<K, V> { in parent() method
242 unsafe { (*self.0).parent } in parent()
396 *node.parent().0, in tree_print()
877 temp.set_parent(node.parent()); in left_rotate()
880 } else if node == node.parent().left() { in left_rotate()
881 node.parent().set_left(temp); in left_rotate()
883 node.parent().set_right(temp); in left_rotate()
912 temp.set_parent(node.parent()); in right_rotate()
915 } else if node == node.parent().right() { in right_rotate()
916 node.parent().set_right(temp); in right_rotate()
918 node.parent().set_left(temp); in right_rotate()
954 let mut parent; in insert_fixup() localVariable
957 while node.parent().is_red_color() { in insert_fixup()
958 parent = node.parent(); in insert_fixup()
959 gparent = parent.parent(); in insert_fixup()
961 if parent == gparent.left() { in insert_fixup()
966 parent.set_black_color(); in insert_fixup()
973 if parent.right() == node { in insert_fixup()
974 self.left_rotate(parent); in insert_fixup()
975 swap(&mut parent, &mut node); in insert_fixup()
979 parent.set_black_color(); in insert_fixup()
987 parent.set_black_color(); in insert_fixup()
994 if parent.left() == node { in insert_fixup()
995 self.right_rotate(parent); in insert_fixup()
996 swap(&mut parent, &mut node); in insert_fixup()
1000 parent.set_black_color(); in insert_fixup()
1227 unsafe fn delete_fixup(&mut self, mut node: NodePtr<K, V>, mut parent: NodePtr<K, V>) { in delete_fixup()
1230 if parent.left() == node { in delete_fixup()
1231 other = parent.right(); in delete_fixup()
1235 parent.set_red_color(); in delete_fixup()
1236 self.left_rotate(parent); in delete_fixup()
1237 other = parent.right(); in delete_fixup()
1243 node = parent; in delete_fixup()
1244 parent = node.parent(); in delete_fixup()
1251 other = parent.right(); in delete_fixup()
1254 other.set_color(parent.get_color()); in delete_fixup()
1255 parent.set_black_color(); in delete_fixup()
1257 self.left_rotate(parent); in delete_fixup()
1262 other = parent.left(); in delete_fixup()
1266 parent.set_red_color(); in delete_fixup()
1267 self.right_rotate(parent); in delete_fixup()
1268 other = parent.left(); in delete_fixup()
1274 node = parent; in delete_fixup()
1275 parent = node.parent(); in delete_fixup()
1282 other = parent.left(); in delete_fixup()
1285 other.set_color(parent.get_color()); in delete_fixup()
1286 parent.set_black_color(); in delete_fixup()
1288 self.right_rotate(parent); in delete_fixup()
1301 let mut parent; in delete() localVariable
1312 } else if node.parent().left() == node { in delete()
1313 node.parent().set_left(replace); in delete()
1315 node.parent().set_right(replace); in delete()
1321 parent = replace.parent(); in delete()
1323 if parent == node { in delete()
1324 parent = replace; in delete()
1327 child.set_parent(parent); in delete()
1329 parent.set_left(child); in delete()
1334 replace.set_parent(node.parent()); in delete()
1340 self.delete_fixup(child, parent); in delete()
1353 parent = node.parent(); in delete()
1356 child.set_parent(parent); in delete()
1361 } else if parent.left() == node { in delete()
1362 parent.set_left(child); in delete()
1364 parent.set_right(child); in delete()
1368 self.delete_fixup(child, parent); in delete()