Rob Rix
|
e4dd1e7cd8
|
Compute the sources and ranges in a single step.
|
2016-05-20 23:49:17 -04:00 |
|
Rob Rix
|
bdb02a4bf4
|
Compute the ranges for a list of elements.
|
2016-05-20 23:46:14 -04:00 |
|
Rob Rix
|
db6f2b6430
|
Arbitrary BranchElements’ contents contain their key, not a fresh key.
|
2016-05-20 23:19:44 -04:00 |
|
Rob Rix
|
96f94c9bdb
|
Shrink Child contents respecting their prefixes/suffixes.
|
2016-05-20 23:13:36 -04:00 |
|
Rob Rix
|
ff3691eac4
|
🔥 showThese.
|
2016-05-20 23:13:17 -04:00 |
|
Rob Rix
|
9acdb24243
|
🔥 toSource.
|
2016-05-20 22:42:46 -04:00 |
|
Rob Rix
|
5d9de67ecc
|
Use the Applicative instance to generate BranchElements.
|
2016-05-20 22:41:48 -04:00 |
|
Rob Rix
|
ea79ce4f04
|
Rewrite BranchElement/Source computations correctly.
|
2016-05-20 22:41:38 -04:00 |
|
Rob Rix
|
61c2bf0ccc
|
Simplify the Show instance for BranchElement.
|
2016-05-20 22:33:06 -04:00 |
|
Rob Rix
|
111b12846a
|
Arbitrary BranchElements have their contents set appropriately up front.
|
2016-05-20 22:32:00 -04:00 |
|
Rob Rix
|
bfcd3193da
|
Add a convenience to extract the contents from a branch element.
|
2016-05-20 22:25:41 -04:00 |
|
Rob Rix
|
26d31fa12a
|
Remove the comments describing the contents of Margin & Child since we no longer guarantee them.
|
2016-05-20 22:19:35 -04:00 |
|
Rob Rix
|
24af4c4af5
|
Add a function to align branch elements into their lines.
|
2016-05-20 22:17:39 -04:00 |
|
Rob Rix
|
30bfae37aa
|
Child, not Child'.
|
2016-05-20 22:13:36 -04:00 |
|
Rob Rix
|
e1110869e3
|
🔥 Child .
|
2016-05-20 22:11:48 -04:00 |
|
Rob Rix
|
2eba6e726e
|
toSource(s)/toChildLists operate over BranchElements.
|
2016-05-20 22:11:22 -04:00 |
|
Rob Rix
|
ed00a34bee
|
Shrink BranchElements.
|
2016-05-20 22:08:22 -04:00 |
|
Rob Rix
|
c7ed296e8b
|
Don’t re-quote the contents of branch elements.
|
2016-05-20 22:04:09 -04:00 |
|
Rob Rix
|
f830256a5c
|
Pretty-print Margin elements.
|
2016-05-20 22:03:39 -04:00 |
|
Rob Rix
|
f09f9cf3a2
|
Extract showThese to the top.
|
2016-05-20 22:03:13 -04:00 |
|
Rob Rix
|
097220a454
|
Pretty-print Child elements differently.
|
2016-05-20 22:02:29 -04:00 |
|
Rob Rix
|
919f32a650
|
Spike out an Arbitrary instance for BranchElement.
|
2016-05-20 21:59:46 -04:00 |
|
Rob Rix
|
419bcfe776
|
Add a Show instance over BranchElement.
|
2016-05-20 21:54:33 -04:00 |
|
Rob Rix
|
3aaa9f79ca
|
Stub in a type representing the elements of branches.
|
2016-05-20 21:50:52 -04:00 |
|
Rob Rix
|
6eabdd06eb
|
Compute a pair of Sources from a list of child lines.
|
2016-05-20 21:50:41 -04:00 |
|
Rob Rix
|
048c9d34c2
|
Add a function to compute lists of children.
|
2016-05-20 21:50:08 -04:00 |
|
Rob Rix
|
2541405fdc
|
Compute a Source from a list of children.
|
2016-05-20 21:49:29 -04:00 |
|
Rob Rix
|
aff7fbbc47
|
Ensure that we do not shrink when both childContents and childMargin are empty.
|
2016-05-20 16:40:25 -04:00 |
|
Rob Rix
|
0e86c8149a
|
Ensure that we can shrink when either childContents or childMargin is empty.
|
2016-05-20 16:39:58 -04:00 |
|
Rob Rix
|
21fac60bf1
|
Shrink contents and margins string-wise but not character-wise.
🎩 @rewinfrey
|
2016-05-20 16:32:28 -04:00 |
|
Rob Rix
|
bd286bfbce
|
Implement shrink over Child .
|
2016-05-20 16:29:09 -04:00 |
|
Rob Rix
|
97f6183a55
|
Destructure the child using RecordWildcards.
|
2016-05-20 16:13:15 -04:00 |
|
Rob Rix
|
2b65c06ffc
|
Add a Show instance for Child.
🎩 @rewinfrey
|
2016-05-20 16:07:13 -04:00 |
|
Rob Rix
|
1ae30309b4
|
Newlines are less common than other padding characters.
|
2016-05-20 16:06:49 -04:00 |
|
Rob Rix
|
f8e007bb46
|
Children contain asterisks and newlines.
|
2016-05-20 15:50:31 -04:00 |
|
Rob Rix
|
b0c0f13b61
|
Children have a string of contents.
|
2016-05-20 15:50:15 -04:00 |
|
Rob Rix
|
765ac74532
|
Generate arbitrary margins of spaces and newlines.
|
2016-05-20 15:44:47 -04:00 |
|
Rob Rix
|
5efb5d8987
|
Write the childMargin type as String to silence hlint.
|
2016-05-20 15:44:24 -04:00 |
|
Rob Rix
|
391b1da75e
|
Arbitrary child keys are alphanumeric.
|
2016-05-20 15:41:20 -04:00 |
|
Rob Rix
|
f2835ac7a6
|
Child keys are strings.
|
2016-05-20 15:40:40 -04:00 |
|
Rob Rix
|
13a90624de
|
Stub in a quick Arbitrary instance for Child.
|
2016-05-20 15:34:20 -04:00 |
|
Rob Rix
|
72455cdecd
|
Add a datatype to represent children for alignBranch property tests.
|
2016-05-20 15:34:11 -04:00 |
|
Rob Rix
|
5355143395
|
Add some pending properties.
|
2016-05-20 13:05:38 -04:00 |
|
Rob Rix
|
018f289fb5
|
Abstract PrettyDiff over a type parameter.
|
2016-05-20 12:39:56 -04:00 |
|
Rob Rix
|
cb2ffd188c
|
Add a test case of ungreedy asymmetrical node alignment.
|
2016-05-19 16:16:35 -04:00 |
|
Rob Rix
|
20627f764f
|
Test alignBranch instead of alignChildrenInRanges.
|
2016-05-19 13:40:10 -04:00 |
|
Rob Rix
|
ac17a13167
|
Test that context-only lines are paired up before the asymmetrical halves of split-up symmetrical children.
|
2016-05-19 12:52:51 -04:00 |
|
Rob Rix
|
d25f7ddc7f
|
Test that we align deletions on a line before insertions.
|
2016-05-19 12:22:48 -04:00 |
|
Rob Rix
|
1979f4e32f
|
Make it convenient to show the raw structures for strange failure cases.
|
2016-05-19 12:22:33 -04:00 |
|
Rob Rix
|
80f58f01e3
|
Do some gymnastics to allow our DSL to construct terms/diffs uniformly.
|
2016-05-19 12:12:11 -04:00 |
|
Rob Rix
|
198304d45d
|
Use the insert/delete constructors in the test fixtures.
|
2016-05-19 11:10:48 -04:00 |
|
Rob Rix
|
7bc9a358a5
|
Add PatchConstructible instances to Patch/SplitPatch.
|
2016-05-19 11:04:19 -04:00 |
|
Rob Rix
|
04ef584b6c
|
Add a typeclass to make patches/split patches.
|
2016-05-19 11:03:45 -04:00 |
|
Rob Rix
|
3e63b464f7
|
Test that symmetrical nodes are split if forced by earlier symmetrical nodes.
|
2016-05-19 09:01:15 -04:00 |
|
Rob Rix
|
c50493175b
|
Remove the redundant tests of asymmetrical nodes preceding/following symmetrical ones.
|
2016-05-19 00:21:41 -04:00 |
|
Rob Rix
|
24f98f7db9
|
Test that symmetrical nodes force alignment on both sides.
|
2016-05-19 00:19:08 -04:00 |
|
Rob Rix
|
17403fc2b2
|
Fix up the test of symmetrical nodes and following asymmetrical ones.
|
2016-05-19 00:18:49 -04:00 |
|
Rob Rix
|
b86ce458b0
|
Test that symmetrical nodes force alignment of later asymmetrical nodes on the same line.
|
2016-05-19 00:15:03 -04:00 |
|
Rob Rix
|
7d591e737f
|
Test that symmetrical nodes force alignment of earlier asymmetrical nodes on the same line.
|
2016-05-19 00:13:49 -04:00 |
|
Rob Rix
|
5c2d9b6b01
|
Change a test name.
|
2016-05-19 00:13:26 -04:00 |
|
Rob Rix
|
dc8d0d4fdf
|
Add punctuation characters to a test case to clarify the failure.
|
2016-05-18 17:22:16 -04:00 |
|
Rob Rix
|
7cfdeff5e5
|
Intersections with empty children have the same shape as the ranges.
|
2016-05-17 15:04:09 -04:00 |
|
Rob Rix
|
e40434f476
|
Test that we align insertions into empty branches without losing nodes.
|
2016-05-16 12:37:13 -04:00 |
|
Rob Rix
|
6f819341ab
|
Test that we align insertions which span the entirety of the thing.
|
2016-05-16 10:54:56 -04:00 |
|
Rob Rix
|
8f05beb023
|
Spacing for alignment.
|
2016-05-16 10:41:10 -04:00 |
|
Rob Rix
|
2008b63c17
|
Compute the maximum value in each element correctly.
|
2016-05-13 18:44:27 -04:00 |
|
Rob Rix
|
9567c44c57
|
Guarantee non-empty by prepending.
|
2016-05-13 18:38:19 -04:00 |
|
Rob Rix
|
c02e6c80a5
|
Pretty all the diffs.
|
2016-05-13 18:27:38 -04:00 |
|
Rob Rix
|
a5e11db66d
|
Pull align out to the top level.
|
2016-05-13 18:25:42 -04:00 |
|
Rob Rix
|
bdd03bb122
|
For now, children should be aligned at a higher priority than their parents.
This came out of https://github.com/github/semantic-diff/pull/558.
|
2016-05-13 10:51:52 -04:00 |
|
joshvera
|
170110ee8e
|
Fix up tests
|
2016-05-04 15:15:25 -04:00 |
|
Rob Rix
|
e70a50720c
|
alignChildrenInRanges always exhausts its inputs, so call it instead.
|
2016-04-27 17:44:15 -04:00 |
|
Rob Rix
|
9c008f1116
|
Add a (failing) test that numberedRows produces the correct counts.
|
2016-04-26 15:44:11 -04:00 |
|
Rob Rix
|
64dd8d93da
|
Add a function to get the counts of numbered rows.
|
2016-04-26 14:54:24 -04:00 |
|
Rob Rix
|
3ad8fb3b8a
|
Sort the imports.
|
2016-04-26 14:53:50 -04:00 |
|
Rob Rix
|
3366b94b5a
|
Simplify showLine a little further.
|
2016-04-25 15:08:20 -04:00 |
|
Rob Rix
|
ce9be615a6
|
Turn the bind around.
|
2016-04-25 15:04:55 -04:00 |
|
Rob Rix
|
632d2cf86b
|
Simplify padding.
|
2016-04-25 15:03:49 -04:00 |
|
Rob Rix
|
55af6c2001
|
Strip newlines inline.
|
2016-04-25 15:00:46 -04:00 |
|
Rob Rix
|
3a3458684d
|
Derive the Eq instance.
|
2016-04-25 14:59:20 -04:00 |
|
Rob Rix
|
237558fbed
|
Simplify showLine.
|
2016-04-25 14:59:00 -04:00 |
|
Rob Rix
|
7628d15a73
|
Filter newlines out completely.
|
2016-04-25 14:54:13 -04:00 |
|
Rob Rix
|
ca3ff15a4f
|
Prepend newlines so things line up nicely.
|
2016-04-25 14:52:24 -04:00 |
|
Rob Rix
|
077dfb8757
|
Show lines at the minimal width.
|
2016-04-25 14:51:25 -04:00 |
|
Rob Rix
|
643703821e
|
Use the where clause.
|
2016-04-25 14:49:47 -04:00 |
|
Rob Rix
|
2bc33b58b8
|
Concatenate the maybes.
|
2016-04-25 14:45:07 -04:00 |
|
Rob Rix
|
e9f5c4bc4f
|
Bind the shown lines.
|
2016-04-25 14:44:26 -04:00 |
|
Rob Rix
|
62f6844038
|
Map diffs into strings up front.
|
2016-04-25 14:43:07 -04:00 |
|
Rob Rix
|
f602dc90fe
|
Add a function to convert These -> (,).
|
2016-04-25 14:14:05 -04:00 |
|
Rob Rix
|
98a7c049b2
|
Clip when padding.
|
2016-04-25 14:13:01 -04:00 |
|
Rob Rix
|
bd0d8f0d02
|
Map the diffs into functions first up.
|
2016-04-25 14:08:04 -04:00 |
|
Rob Rix
|
dde8612347
|
Revert "Flip the arguments to showDiff."
This reverts commit 6808da41529f58593553730451185cc90b643ba7.
|
2016-04-25 14:06:43 -04:00 |
|
Rob Rix
|
a5f45ed699
|
Flip the arguments to showDiff.
|
2016-04-25 14:04:57 -04:00 |
|
Rob Rix
|
958dfe914c
|
Pad the first column of These.
|
2016-04-25 14:02:39 -04:00 |
|
Rob Rix
|
b9b5382b3d
|
Use the pad function for This.
|
2016-04-25 14:01:45 -04:00 |
|
Rob Rix
|
e214dc3c1d
|
Add a function to pad strings out.
|
2016-04-25 14:01:39 -04:00 |
|
Rob Rix
|
1fb647ae9d
|
Drop the broken min .
|
2016-04-25 13:56:57 -04:00 |
|
Rob Rix
|
d9c2bb8e4c
|
Strip newlines in the output diff.
|
2016-04-25 13:55:39 -04:00 |
|
Rob Rix
|
938b89f8db
|
Add a function to strip newlines from a Functor.
|
2016-04-25 13:55:33 -04:00 |
|
Rob Rix
|
aa87f65466
|
Pad out This lines.
|
2016-04-25 13:47:21 -04:00 |
|