original_string: protected function wrapJsonFieldAndPath($column)
      {
          $parts = explode('->', $column, 2);
  
          $field = $this->wrap($parts[0]);
  
          $path = count($parts) > 1 ? ', '.$this->wrapJsonPath($parts[1], '->') : '';
  
          return [$field, $path];
      }
code: protected function wrapJsonFieldAndPath($column)
      {
          $parts = explode('->', $column, 2);
  
          $field = $this->wrap($parts[0]);
  
          $path = count($parts) > 1 ? ', '.$this->wrapJsonPath($parts[1], '->') : '';
  
          return [$field, $path];
      }
code_tokens: protected function wrapJsonFieldAndPath ( $ column ) { $ parts = explode ( '->' , $ column , 2 ) ; $ field = $ this -> wrap ( $ parts [ 0 ] ) ; $ path = count ( $ parts ) > 1 ? ', ' . $ this -> wrapJsonPath ( $ parts [ 1 ] , '->' ) : '' ; return [ $ field , $ path ] ; }
docstring: Split the given JSON selector into the field and the optional path and wrap them separately.
  
  @param  string  $column
  @return array
docstring_tokens: Split the given JSON selector into the field and the optional path and wrap them separately .