Method code for $root.set_method_flags()

[Turn off line numbering]
  1: arg method, flags;
  2: var current;
  3: 
  4: if (!.is_writable_by(sender()))
  5:     throw(~perm, sender() + " cannot write to " + this());
  6: (> $sys.touch() <);
  7: current = method_flags(method);
  8: if (('locked in flags && !('locked in current)) && !$sys.is_system(sender()))
  9:     throw(~perm, "Only administrators can set the locked method flag.");
 10: if (('nooverride in flags && !('nooverride in current)) && !$sys.is_system(sender()))
 11:     throw(~perm, "Only administrators can set the nooverride method flag.");
 12: return set_method_flags(method, flags);

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

Tlon