public function addChild($child, $name = null, $type = self::TYPE_DEFAULT) {
		if (! $child instanceof Descriptor) {
			$child = new static($child, $type);
		}
		
		if ($name === null) {
			$this->_children[] = $child;
			return $child;
		}
		
		$this->_children[$name] = $child;
		return $child;
	}