original_string: private function parseRow(
          \stdClass $dataRow,
          NodePath $nodePath,
          array $parentCols = [],
          $outerObjectHash = null
      ) {
          $csvRow = new CsvRow($this->getHeaders($nodePath, $parentCols));
          // Generate parent ID for arrays
          $arrayParentId = $this->getPrimaryKeyValue($dataRow, $nodePath, $outerObjectHash);
          $columns = $this->structure->getColumnTypes($nodePath);
          foreach (array_replace($columns, $parentCols) as $column => $dataType) {
              $this->parseField($dataRow, $csvRow, $arrayParentId, $column, $dataType, $nodePath);
          }
  
          return $csvRow;
      }
code: private function parseRow(
          \stdClass $dataRow,
          NodePath $nodePath,
          array $parentCols = [],
          $outerObjectHash = null
      ) {
          $csvRow = new CsvRow($this->getHeaders($nodePath, $parentCols));
          // Generate parent ID for arrays
          $arrayParentId = $this->getPrimaryKeyValue($dataRow, $nodePath, $outerObjectHash);
          $columns = $this->structure->getColumnTypes($nodePath);
          foreach (array_replace($columns, $parentCols) as $column => $dataType) {
              $this->parseField($dataRow, $csvRow, $arrayParentId, $column, $dataType, $nodePath);
          }
  
          return $csvRow;
      }
code_tokens: private function parseRow ( \ stdClass $ dataRow , NodePath $ nodePath , array $ parentCols = [ ] , $ outerObjectHash = null ) { $ csvRow = new CsvRow ( $ this -> getHeaders ( $ nodePath , $ parentCols ) ) ; // Generate parent ID for arrays $ arrayParentId = $ this -> getPrimaryKeyValue ( $ dataRow , $ nodePath , $ outerObjectHash ) ; $ columns = $ this -> structure -> getColumnTypes ( $ nodePath ) ; foreach ( array_replace ( $ columns , $ parentCols ) as $ column => $ dataType ) { $ this -> parseField ( $ dataRow , $ csvRow , $ arrayParentId , $ column , $ dataType , $ nodePath ) ; } return $ csvRow ; }
docstring: Parse a single row
  If the row contains an array, it's recursively parsed
  
  @param \stdClass $dataRow Input data
  @param NodePath $nodePath
  @param array $parentCols to inject parent columns, which aren't part of $this->struct
  @param string $outerObjectHash Outer object hash to distinguish different parents in deep nested arrays
  @return CsvRow
docstring_tokens: Parse a single row If the row contains an array it s recursively parsed