~tcuthbert/wordpress/openstack-objectstorage

« back to all changes in this revision

Viewing changes to vendor/sebastian/diff/README.md

  • Committer: Jacek Nykis
  • Date: 2015-02-11 15:35:31 UTC
  • Revision ID: jacek.nykis@canonical.com-20150211153531-hmy6zi0ov2qfkl0b
Initial commit

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Diff
 
2
 
 
3
Diff implementation for PHP, factored out of PHPUnit into a stand-alone component.
 
4
 
 
5
## Installation
 
6
 
 
7
To add this package as a local, per-project dependency to your project, simply add a dependency on `sebastian/diff` to your project's `composer.json` file. Here is a minimal example of a `composer.json` file that just defines a dependency on Diff:
 
8
 
 
9
    {
 
10
        "require": {
 
11
            "sebastian/diff": "*"
 
12
        }
 
13
    }
 
14
 
 
15
### Usage
 
16
 
 
17
The `Differ` class can be used to generate a textual representation of the difference between two strings:
 
18
 
 
19
```php
 
20
use SebastianBergmann\Diff\Differ;
 
21
 
 
22
$differ = new Differ;
 
23
print $differ->diff('foo', 'bar');
 
24
```
 
25
 
 
26
The code above yields the output below:
 
27
 
 
28
    --- Original
 
29
    +++ New
 
30
    @@ @@
 
31
    -foo
 
32
    +bar
 
33
 
 
34
The `Parser` class can be used to parse a unified diff into an object graph:
 
35
 
 
36
```php
 
37
use SebastianBergmann\Diff\Parser;
 
38
use SebastianBergmann\Git;
 
39
 
 
40
$git = new Git('/usr/local/src/money');
 
41
 
 
42
$diff = $git->getDiff(
 
43
  '948a1a07768d8edd10dcefa8315c1cbeffb31833',
 
44
  'c07a373d2399f3e686234c4f7f088d635eb9641b'
 
45
);
 
46
 
 
47
$parser = new Parser;
 
48
 
 
49
print_r($parser->parse($diff));
 
50
```
 
51
 
 
52
The code above yields the output below:
 
53
 
 
54
    Array
 
55
    (
 
56
        [0] => SebastianBergmann\Diff\Diff Object
 
57
            (
 
58
                [from:SebastianBergmann\Diff\Diff:private] => a/tests/MoneyTest.php
 
59
                [to:SebastianBergmann\Diff\Diff:private] => b/tests/MoneyTest.php
 
60
                [chunks:SebastianBergmann\Diff\Diff:private] => Array
 
61
                    (
 
62
                        [0] => SebastianBergmann\Diff\Chunk Object
 
63
                            (
 
64
                                [start:SebastianBergmann\Diff\Chunk:private] => 87
 
65
                                [startRange:SebastianBergmann\Diff\Chunk:private] => 7
 
66
                                [end:SebastianBergmann\Diff\Chunk:private] => 87
 
67
                                [endRange:SebastianBergmann\Diff\Chunk:private] => 7
 
68
                                [lines:SebastianBergmann\Diff\Chunk:private] => Array
 
69
                                    (
 
70
                                        [0] => SebastianBergmann\Diff\Line Object
 
71
                                            (
 
72
                                                [type:SebastianBergmann\Diff\Line:private] => 3
 
73
                                                [content:SebastianBergmann\Diff\Line:private] =>      * @covers SebastianBergmann\Money\Money::add
 
74
                                            )
 
75
 
 
76
                                        [1] => SebastianBergmann\Diff\Line Object
 
77
                                            (
 
78
                                                [type:SebastianBergmann\Diff\Line:private] => 3
 
79
                                                [content:SebastianBergmann\Diff\Line:private] =>      * @covers SebastianBergmann\Money\Money::newMoney
 
80
                                            )
 
81
 
 
82
                                        [2] => SebastianBergmann\Diff\Line Object
 
83
                                            (
 
84
                                                [type:SebastianBergmann\Diff\Line:private] => 3
 
85
                                                [content:SebastianBergmann\Diff\Line:private] =>      */
 
86
                                            )
 
87
 
 
88
                                        [3] => SebastianBergmann\Diff\Line Object
 
89
                                            (
 
90
                                                [type:SebastianBergmann\Diff\Line:private] => 2
 
91
                                                [content:SebastianBergmann\Diff\Line:private] =>     public function testAnotherMoneyWithSameCurrencyObjectCanBeAdded()
 
92
                                            )
 
93
 
 
94
                                        [4] => SebastianBergmann\Diff\Line Object
 
95
                                            (
 
96
                                                [type:SebastianBergmann\Diff\Line:private] => 1
 
97
                                                [content:SebastianBergmann\Diff\Line:private] =>     public function testAnotherMoneyObjectWithSameCurrencyCanBeAdded()
 
98
                                            )
 
99
 
 
100
                                        [5] => SebastianBergmann\Diff\Line Object
 
101
                                            (
 
102
                                                [type:SebastianBergmann\Diff\Line:private] => 3
 
103
                                                [content:SebastianBergmann\Diff\Line:private] =>     {
 
104
                                            )
 
105
 
 
106
                                        [6] => SebastianBergmann\Diff\Line Object
 
107
                                            (
 
108
                                                [type:SebastianBergmann\Diff\Line:private] => 3
 
109
                                                [content:SebastianBergmann\Diff\Line:private] =>         $a = new Money(1, new Currency('EUR'));
 
110
                                            )
 
111
 
 
112
                                        [7] => SebastianBergmann\Diff\Line Object
 
113
                                            (
 
114
                                                [type:SebastianBergmann\Diff\Line:private] => 3
 
115
                                                [content:SebastianBergmann\Diff\Line:private] =>         $b = new Money(2, new Currency('EUR'));
 
116
                                            )
 
117
 
 
118
                                    )
 
119
 
 
120
                            )
 
121
 
 
122
                    )
 
123
 
 
124
            )
 
125
 
 
126
    )