Method code for $root.chparents()

[Turn on line numbering]
arg @parents;
var parent, cur;

if (!(| .perms(sender(), 'manager) |))
    (> .perms(caller(), $root, $sys) <);
(> $sys.touch() <);
if (!parents)
    throw(~noparents, "There must be at least 1 parent for each object.");

// Notify new parents of impending change.
cur = parents();
for parent in (parents) {
    if (!(parent in cur))
        (> parent.will_inherit(sender()) <);
}

// Everything's okay, go ahead and try it.
.change_parents(parents);

["// Created as a part of ColdCore, see: @help Credit"]

the Cold Dark