original_string: public function pathSet( $path, $value )
  	{
  		$path = $this->createPath($path);
  		if( $path[0] == 1 )
  		{
  			$this->offsetSet($path[1], $value);
  		}
  		else
  		{
  			$array = & $this->items;
  			for( $i = 1, $len = $path[0]; $i <= $len; $i++ )
  			{
  				$key = $path[$i];
  				if( $i == $len )
  				{
  					$array[$key] = $value;
  				}
  				else
  				{
  					if( !isset($array[$key]) || !is_array($array[$key]) )
  					{
  						$array[$key] = [];
  					}
  
  					$array = & $array[$key];
  				}
  			}
  		}
  		return $this;
  	}
code: public function pathSet( $path, $value )
  	{
  		$path = $this->createPath($path);
  		if( $path[0] == 1 )
  		{
  			$this->offsetSet($path[1], $value);
  		}
  		else
  		{
  			$array = & $this->items;
  			for( $i = 1, $len = $path[0]; $i <= $len; $i++ )
  			{
  				$key = $path[$i];
  				if( $i == $len )
  				{
  					$array[$key] = $value;
  				}
  				else
  				{
  					if( !isset($array[$key]) || !is_array($array[$key]) )
  					{
  						$array[$key] = [];
  					}
  
  					$array = & $array[$key];
  				}
  			}
  		}
  		return $this;
  	}
code_tokens: public function pathSet ( $ path , $ value ) { $ path = $ this -> createPath ( $ path ) ; if ( $ path [ 0 ] == 1 ) { $ this -> offsetSet ( $ path [ 1 ] , $ value ) ; } else { $ array = & $ this -> items ; for ( $ i = 1 , $ len = $ path [ 0 ] ; $ i <= $ len ; $ i ++ ) { $ key = $ path [ $ i ] ; if ( $ i == $ len ) { $ array [ $ key ] = $ value ; } else { if ( ! isset ( $ array [ $ key ] ) || ! is_array ( $ array [ $ key ] ) ) { $ array [ $ key ] = [ ] ; } $ array = & $ array [ $ key ] ; } } } return $ this ; }
docstring: Set value for path.
  
  @example $this->pathSet( 'a.b.c', $value ) => $this->items['a']['b']['c'] = $value;
  
  @param string $path
  @param mixed $value
  @return $this
docstring_tokens: Set value for path .