public function set($name, $path)
{
if ($name[0] !== '@') {
throw new AliasException('`:name` must start with `@`', ['name' => $name]);
}
if (strpos($name, '@ns.') === 0) {
$this->_aliases[$name] = $path[0] === '@' ? $this->resolve($path) : $path;
} else {
$this->_aliases[$name] = $this->resolve($path);
}
return $this->_aliases[$name];
}