ILIAS  trunk Revision v12.0_alpha-377-g3641b37b9db
MappedDiff Class Reference
+ Inheritance diagram for MappedDiff:
+ Collaboration diagram for MappedDiff:

Public Member Functions

 __construct ( $from_lines, $to_lines, $mapped_from_lines, $mapped_to_lines)
 Constructor. More...
 
- Public Member Functions inherited from Diff
 __construct ($from_lines, $to_lines)
 Constructor. More...
 
 reverse ()
 Compute reversed Diff. More...
 
 isEmpty ()
 Check for empty diff. More...
 
 lcs ()
 Compute the length of the Longest Common Subsequence (LCS). More...
 
 orig ()
 Get the original set of lines. More...
 
 closing ()
 Get the closing set of lines. More...
 
 _check ($from_lines, $to_lines)
 Check a Diff for validity. More...
 

Additional Inherited Members

- Data Fields inherited from Diff
 $edits
 

Detailed Description

Definition at line 764 of file class.WordLevelDiff.php.

Constructor & Destructor Documentation

◆ __construct()

MappedDiff::__construct (   $from_lines,
  $to_lines,
  $mapped_from_lines,
  $mapped_to_lines 
)

Constructor.

Computes diff between sequences of strings.

This can be used to compute things like case-insensitve diffs, or diffs which ignore changes in white-space.

Parameters
$from_linesarray An array of strings. (Typically these are lines from a file.)
$to_linesarray An array of strings.
$mapped_from_linesarray This array should have the same size number of elements as $from_lines. The elements in $mapped_from_lines and $mapped_to_lines are what is actually compared when computing the diff.
$mapped_to_linesarray This array should have the same number of elements as $to_lines.

Definition at line 789 of file class.WordLevelDiff.php.

794 {
795 $fname = 'MappedDiff::MappedDiff';
796 //wfProfileIn( $fname );
797
798 assert(sizeof($from_lines) == sizeof($mapped_from_lines));
799 assert(sizeof($to_lines) == sizeof($mapped_to_lines));
800
801 parent::__construct($mapped_from_lines, $mapped_to_lines);
802
803 $xi = $yi = 0;
804 for ($i = 0; $i < sizeof($this->edits); $i++) {
805 $orig = &$this->edits[$i]->orig;
806 if (is_array($orig)) {
807 $orig = array_slice($from_lines, $xi, sizeof($orig));
808 $xi += sizeof($orig);
809 }
810
811 $closing = &$this->edits[$i]->closing;
812 if (is_array($closing)) {
813 $closing = array_slice($to_lines, $yi, sizeof($closing));
814 $yi += sizeof($closing);
815 }
816 }
817 //wfProfileOut( $fname );
818 }
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc

References Diff\$edits, and ILIAS\GlobalScreen\Provider\__construct().

+ Here is the call graph for this function:

The documentation for this class was generated from the following file: