From: Daniel Kinzler Date: Wed, 28 Mar 2012 13:09:54 +0000 (+0000) Subject: mark _DiffOf_XXX etc for refactoring X-Git-Tag: 1.31.0-rc.0~22097^2^2~273 X-Git-Url: http://git.cyclocoop.org/%22%20.%20generer_url_ecrire%28%22statistiques_visites%22%2C%22%22%29%20.%20%22?a=commitdiff_plain;h=f3d41892fce76d8a89e55a4f91b9770cbaf9abf4;p=lhc%2Fweb%2Fwiklou.git mark _DiffOf_XXX etc for refactoring --- diff --git a/includes/diff/DairikiDiff.php b/includes/diff/DairikiDiff.php index c935eee284..925003c8e7 100644 --- a/includes/diff/DairikiDiff.php +++ b/includes/diff/DairikiDiff.php @@ -15,7 +15,7 @@ * @private * @ingroup DifferenceEngine */ -class _DiffOp { +class _DiffOp { #FIXME: no longer private! var $type; var $orig; var $closing; @@ -44,7 +44,7 @@ class _DiffOp { * @private * @ingroup DifferenceEngine */ -class _DiffOp_Copy extends _DiffOp { +class _DiffOp_Copy extends _DiffOp { #FIXME: no longer private! var $type = 'copy'; function __construct( $orig, $closing = false ) { @@ -68,7 +68,7 @@ class _DiffOp_Copy extends _DiffOp { * @private * @ingroup DifferenceEngine */ -class _DiffOp_Delete extends _DiffOp { +class _DiffOp_Delete extends _DiffOp { #FIXME: no longer private! var $type = 'delete'; function __construct( $lines ) { @@ -89,7 +89,7 @@ class _DiffOp_Delete extends _DiffOp { * @private * @ingroup DifferenceEngine */ -class _DiffOp_Add extends _DiffOp { +class _DiffOp_Add extends _DiffOp { #FIXME: no longer private! var $type = 'add'; function __construct( $lines ) { @@ -110,7 +110,7 @@ class _DiffOp_Add extends _DiffOp { * @private * @ingroup DifferenceEngine */ -class _DiffOp_Change extends _DiffOp { +class _DiffOp_Change extends _DiffOp { #FIXME: no longer private! var $type = 'change'; function __construct( $orig, $closing ) { @@ -150,7 +150,7 @@ class _DiffOp_Change extends _DiffOp { * @private * @ingroup DifferenceEngine */ -class _DiffEngine { +class _DiffEngine { #FIXME: no longer private! const MAX_XREF_LENGTH = 10000; @@ -637,7 +637,7 @@ class _DiffEngine { * @private * @ingroup DifferenceEngine */ -class Diff { +class Diff extends DiffResult { var $edits; /** @@ -647,12 +647,35 @@ class Diff { * @param $from_lines array An array of strings. * (Typically these are lines from a file.) * @param $to_lines array An array of strings. + * @param $eng _DiffEngine|null The diff engine to use. */ - function __construct( $from_lines, $to_lines ) { - $eng = new _DiffEngine; - $this->edits = $eng->diff( $from_lines, $to_lines ); - // $this->_check($from_lines, $to_lines); + function __construct( $from_lines, $to_lines, $eng = null ) { + if ( !$eng ) $eng = new _DiffEngine(); + + $edits = $eng->diff( $from_lines, $to_lines ); + + parent::__construct( $edits ); + + //$this->_check( $from_lines, $to_lines ); } +} + +/** + * Class representing the result of 'diffin' two sequences of strings. + * @todo document + * @private + * @ingroup DifferenceEngine + */ +class DiffResult { + + /** + * Constructor. + * + * @param $edits array An array of Edit. + */ + function __construct( $edits ) { + $this->edits = $edits; + } /** * Compute reversed Diff.