public function getDescendantsAndSelf( $columns = ['*'] )
	{
		if ( is_array( $columns ) )
			return $this->descendantsAndSelf()->get( $columns );

		$arguments = func_get_args();

		$limit = intval( array_shift( $arguments ) );
		$columns = array_shift( $arguments ) ?: ['*'];

		return $this->descendantsAndSelf()->limitDepth( $limit )->get( $columns );
	}
public function getDescendantsAndSelf( $columns = ['*'] )
	{
		if ( is_array( $columns ) )
			return $this->descendantsAndSelf()->get( $columns );

		$arguments = func_get_args();

		$limit = intval( array_shift( $arguments ) );
		$columns = array_shift( $arguments ) ?: ['*'];

		return $this->descendantsAndSelf()->limitDepth( $limit )->get( $columns );
	}
public function getDescendantsAndSelf ( $ columns = [ '*' ] ) { if ( is_array ( $ columns ) ) return $ this -> descendantsAndSelf ( ) -> get ( $ columns ) ; $ arguments = func_get_args ( ) ; $ limit = intval ( array_shift ( $ arguments ) ) ; $ columns = array_shift ( $ arguments ) ? : [ '*' ] ; return $ this -> descendantsAndSelf ( ) -> limitDepth ( $ limit ) -> get ( $ columns ) ; }
Retrieve all nested children an self.

@param  array $columns
@return Collection
Retrieve all nested children an self .