public function set($str)
	{
		if ($str instanceof Path) {
			$this->path->set($str->get());
		} else if ($str instanceof UrlPath) {
			$this->path->set($str->get());
		} else if (is_string($str)) {
			$this->path->set($str);
		} else {
			throw new \InvalidArgumentException('Unexpected type.');
		}
	}
public function set($str)
	{
		if ($str instanceof Path) {
			$this->path->set($str->get());
		} else if ($str instanceof UrlPath) {
			$this->path->set($str->get());
		} else if (is_string($str)) {
			$this->path->set($str);
		} else {
			throw new \InvalidArgumentException('Unexpected type.');
		}
	}
public function set ( $ str ) { if ( $ str instanceof Path ) { $ this -> path -> set ( $ str -> get ( ) ) ; } else if ( $ str instanceof UrlPath ) { $ this -> path -> set ( $ str -> get ( ) ) ; } else if ( is_string ( $ str ) ) { $ this -> path -> set ( $ str ) ; } else { throw new \ InvalidArgumentException ( 'Unexpected type.' ) ; } }
Sets the decoded path.

@param string|UrlPath|Path $str
@throws \InvalidArgumentException
Sets the decoded path .