[Turn on line numbering]arg name, @info; var i; (> .perms(sender()) <); if (info) { info = info[1]; for i in (info) { if (!(> .valid_setting_attr(@i) <)) info = dict_del(info, i[1]); } } else { info = #[]; } if (.all_defined_settings().contains(name)) throw(~setexists, "Setting \"" + name + "\" is already defined."); if (!$code_lib.valid_setting_id(name)) throw(~setbad, "Setting name \"" + name + "\" is unacceptable."); defined_settings = .defined_settings().add(name, info); return defined_settings[name];
// Created as a part of ColdCore, see: @help Credit