You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.1 KiB
40 lines
1.1 KiB
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
|
<pkgmetadata>
|
|
<maintainer type="project">
|
|
<email>haskell@gentoo.org</email>
|
|
<name>Gentoo Haskell</name>
|
|
</maintainer>
|
|
<upstream>
|
|
<remote-id type="github">haskellari/tree-diff</remote-id>
|
|
</upstream>
|
|
<longdescription>
|
|
Common diff algorithm works on list structures:
|
|
|
|
@
|
|
diff :: Eq a => [a] -> [a] -> [Edit a]
|
|
@
|
|
|
|
This package works on trees.
|
|
|
|
@
|
|
treeDiff :: Eq a => Tree a -> Tree a -> Edit (EditTree a)
|
|
@
|
|
|
|
This package also provides a way to diff arbitrary ADTs,
|
|
using @Generics@-derivable helpers.
|
|
|
|
This package differs from <http://hackage.haskell.org/package/gdiff gdiff>,
|
|
in a two ways: @tree-diff@ doesn't have patch function,
|
|
and the "edit-script" is a tree itself, which is useful for pretty-printing.
|
|
|
|
@
|
|
>>> prettyEditExpr $ ediff (Foo 42 [True, False] "old") (Foo 42 [False, False, True] "new")
|
|
Foo
|
|
{fooBool = [-True, +False, False, +True],
|
|
fooInt = 42,
|
|
fooString = -"old" +"new"}
|
|
@
|
|
</longdescription>
|
|
</pkgmetadata>
|