X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fdiff%2FArrayDiffFormatter.php;h=70a963ba107091e2ed2481d9ff29a6d5540152e9;hb=c349b9557e6237887cc6f555ec68a635c9c1982e;hp=331ce7d1605be8af55f72b76bb3fdcaab0d7001d;hpb=ddff639b7566f72f0c2dda302280de2ee6774b7f;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/diff/ArrayDiffFormatter.php b/includes/diff/ArrayDiffFormatter.php index 331ce7d160..70a963ba10 100644 --- a/includes/diff/ArrayDiffFormatter.php +++ b/includes/diff/ArrayDiffFormatter.php @@ -29,51 +29,54 @@ * @ingroup DifferenceEngine */ class ArrayDiffFormatter extends DiffFormatter { + /** - * @param $diff - * @return array + * @param Diff $diff A Diff object. + * + * @return array[] List of associative arrays, each describing a difference. */ public function format( $diff ) { $oldline = 1; $newline = 1; - $retval = array(); - foreach ( $diff->edits as $edit ) { - switch ( $edit->type ) { + $retval = []; + foreach ( $diff->getEdits() as $edit ) { + switch ( $edit->getType() ) { case 'add': - foreach ( $edit->closing as $l ) { - $retval[] = array( + foreach ( $edit->getClosing() as $line ) { + $retval[] = [ 'action' => 'add', - 'new' => $l, + 'new' => $line, 'newline' => $newline++ - ); + ]; } break; case 'delete': - foreach ( $edit->orig as $l ) { - $retval[] = array( + foreach ( $edit->getOrig() as $line ) { + $retval[] = [ 'action' => 'delete', - 'old' => $l, + 'old' => $line, 'oldline' => $oldline++, - ); + ]; } break; case 'change': - foreach ( $edit->orig as $i => $l ) { - $retval[] = array( + foreach ( $edit->getOrig() as $key => $line ) { + $retval[] = [ 'action' => 'change', - 'old' => $l, - 'new' => isset( $edit->closing[$i] ) ? $edit->closing[$i] : null, + 'old' => $line, + 'new' => $edit->getClosing( $key ), 'oldline' => $oldline++, 'newline' => $newline++, - ); + ]; } break; case 'copy': - $oldline += count( $edit->orig ); - $newline += count( $edit->orig ); + $oldline += count( $edit->getOrig() ); + $newline += count( $edit->getOrig() ); } } return $retval; } + }