[Turn on line numbering]
arg name, definer, value;
var i, args;
(> .perms(sender()) <);
i = (> definer.setting_info(name) <);
if (dict_contains(i, 'parse)) {
args = sublist(i['parse], 2);
if ((| find_method(i['parse][1]) |))
value = (> .(i['parse][1])(value, @args) <);
else
value = (> $settings_lib.(i['parse][1])(value, @args) <);
}
if (dict_contains(i, 'set))
(> .(i['set][1])(name, definer, value, @sublist(i['set], 2)) <);
else
settings = dict_add(settings || #[], name, value);
// $#Edited: 20 Sep 98 16:48 $user_sean
["// Created as a part of ColdCore, see: @help Credit"]