parent $user_parsers
object $command_aliases_parser
var $root child_index 0
var $root fertile 0
var $root manager $command_aliases_parser
var $root owners [$core]
var $root writable [$core]
var $root readable ['parameters, 'methods, 'code]
var $root trusted []
var $root owned [$command_aliases_parser]
var $root inited 1
var $root dbref 'command_aliases_parser
method parse
arg user, str, next_parser, [other_parsers];
var alias, match, i, result;
for alias in (user.command_aliases()) {
match = match_pattern(alias[1], str);
if (match != 0) {
str = alias[2];
for i in [1 .. listlen(match)]
str = strsub(str, "%" + tostr(i), match[i]);
break;
}
}
result = next_parser.parse(user, str, @other_parsers);
if ((match != 0) && (result == 'failed))
return ("Command converted to \"" + str) + "\" but not understood.";
return result;
.