Rob Rix
|
b0aae13648
|
Unwrap TermFs recursively.
|
2017-05-09 13:48:55 -04:00 |
|
Rob Rix
|
1474c63c12
|
Pass the term functor to identifierFor.
|
2017-05-09 13:43:39 -04:00 |
|
Rob Rix
|
0a522a386d
|
Don’t pattern match against the term functor.
|
2017-05-09 13:39:49 -04:00 |
|
Rob Rix
|
aaf9b2b7d4
|
🔥 foldDiff & foldDiffWith.
|
2017-05-09 13:34:03 -04:00 |
|
Rob Rix
|
c166973676
|
Simplify mapAnnotations.
|
2017-05-09 13:33:17 -04:00 |
|
Rob Rix
|
118e94a2a7
|
Merge branch 'master' into generalize-table-of-contents-over-the-syntax-functor
|
2017-05-09 13:21:49 -04:00 |
|
Rob Rix
|
3c6d311255
|
🔥 a type signature mentioning Syntax.
|
2017-05-09 12:51:26 -04:00 |
|
Rob Rix
|
dde54fed6f
|
Move diffSource into the where clause.
|
2017-05-09 12:44:02 -04:00 |
|
Rob Rix
|
fd3dded127
|
Extract toInfo to the top level (again).
|
2017-05-09 12:40:18 -04:00 |
|
Rob Rix
|
a4a2425ada
|
Use a single code path for diff/term source.
|
2017-05-09 12:09:02 -04:00 |
|
Rob Rix
|
e578772376
|
More straightforward computation of the source for a given diff/term.
|
2017-05-09 12:04:25 -04:00 |
|
Rob Rix
|
58ed93f559
|
Don’t call toTermName for Pure nodes.
|
2017-05-09 11:58:35 -04:00 |
|
Rob Rix
|
a3ac8c308a
|
Don’t call toTermName for Free nodes.
|
2017-05-09 11:56:03 -04:00 |
|
Rob Rix
|
490820c79d
|
🔥 InSummarizable.
|
2017-05-09 11:16:17 -04:00 |
|
Rob Rix
|
d38b76f554
|
Reformat TOCSummary a bit further.
|
2017-05-09 11:13:17 -04:00 |
|
Rob Rix
|
c08bfe5e07
|
Represent parse errors with Nothing.
|
2017-05-09 11:08:18 -04:00 |
|
Rob Rix
|
239105b5fe
|
Combine DiffInfo’s constructors.
|
2017-05-09 11:02:15 -04:00 |
|
Rob Rix
|
fd618537a4
|
Clean up how we summarize leaf infos.
|
2017-05-09 10:28:16 -04:00 |
|
Rob Rix
|
901b67ca53
|
Factor the TOCSummary construction out.
|
2017-05-09 10:26:32 -04:00 |
|
Rob Rix
|
636b51ed92
|
Reformat TOCSummary.
|
2017-05-09 10:07:21 -04:00 |
|
Rob Rix
|
af5db72165
|
Tighten up labelling dupes.
|
2017-05-09 10:06:14 -04:00 |
|
Rob Rix
|
41e205639f
|
Simpler term name computation.
|
2017-05-08 17:41:59 -04:00 |
|
Rob Rix
|
e1093344a7
|
Simplify contextualization.
|
2017-05-08 17:39:21 -04:00 |
|
Rob Rix
|
c369867230
|
Simplify toJSONSummaries.
|
2017-05-08 17:16:48 -04:00 |
|
Rob Rix
|
28d858ce32
|
Use record syntax for every case in toInfo.
|
2017-05-08 17:14:21 -04:00 |
|
Rob Rix
|
f33f2d6622
|
Flatten various branches with foldMap.
|
2017-05-08 17:11:03 -04:00 |
|
Rob Rix
|
ac832e9e4c
|
fmap with fewer parens.
|
2017-05-08 17:09:37 -04:00 |
|
Rob Rix
|
48457f13cc
|
s/toTOCSummaries/summarize/
|
2017-05-08 16:52:03 -04:00 |
|
Rob Rix
|
a9b7903d8e
|
Contextualize ToC summaries in a foldMap.
|
2017-05-08 16:41:10 -04:00 |
|
Rob Rix
|
f41a5f120b
|
🔥 BranchInfo.
|
2017-05-08 16:00:29 -04:00 |
|
Rob Rix
|
51d548cb0a
|
🔥 flattenPatch.
traverse has different semantics, but I’m pretty sure the zipWith was problematic.
|
2017-05-08 15:50:13 -04:00 |
|
Rob Rix
|
967ded76a8
|
Move toTOCSummaries & termToDiffInfo into diffTOC.
|
2017-05-08 15:47:51 -04:00 |
|
Rob Rix
|
9750fa35ec
|
Map patches to ToC summaries without a second pass.
|
2017-05-08 15:20:22 -04:00 |
|
Rob Rix
|
03fc463c5c
|
Format Summarizable across several lines.
|
2017-05-08 15:11:12 -04:00 |
|
Rob Rix
|
2d6c485ace
|
Tighten up how we compute the summary key.
|
2017-05-08 13:21:40 -04:00 |
|
Rob Rix
|
301266a237
|
📝 foldDiff/foldDiffWith.
|
2017-05-08 12:48:49 -04:00 |
|
Rob Rix
|
2471b15e0d
|
Reformat the type signatures.
|
2017-05-08 12:44:36 -04:00 |
|
Rob Rix
|
d2f71809e6
|
Swap the order of the merge & algebra parameters.
|
2017-05-08 12:43:29 -04:00 |
|
Rob Rix
|
c6172239dd
|
s/Monoid/Semigroup/
|
2017-05-08 12:42:56 -04:00 |
|
Rob Rix
|
6f56bc980a
|
Define a convenience wrapper for foldDiffWith when the result is a Monoid.
|
2017-05-08 12:42:36 -04:00 |
|
Rob Rix
|
a4cb5c5a30
|
Add a merging function to foldDiff.
|
2017-05-08 12:41:26 -04:00 |
|
Rob Rix
|
9fee3b2bc5
|
🔥 modifyAnnotations.
|
2017-05-08 11:54:50 -04:00 |
|
Rob Rix
|
4fe2a4cec1
|
Simplify mapAnnotations with the Bifunctor instance.
|
2017-05-08 11:53:23 -04:00 |
|
Rob Rix
|
d1c9c69ed8
|
🔥 ScopedTypeVariables.
|
2017-05-08 11:52:36 -04:00 |
|
Rob Rix
|
535403e326
|
Define an eliminator for diffs.
|
2017-05-08 11:46:12 -04:00 |
|
Rob Rix
|
d74c5fc2d2
|
🔥 ScopedTypeVariables.
|
2017-05-08 11:37:20 -04:00 |
|
Rob Rix
|
60782087de
|
🔥 a redundant forall.
|
2017-05-08 11:37:10 -04:00 |
|
Rob Rix
|
cba78c805f
|
Specialize the leaf type.
|
2017-05-08 11:36:45 -04:00 |
|
Rob Rix
|
92be6ee6d1
|
Use the full types diffs & terms.
|
2017-05-08 11:35:34 -04:00 |
|
Rob Rix
|
b3fcde2abb
|
Avoid indirection for error summaries.
|
2017-05-08 11:32:25 -04:00 |
|
Rob Rix
|
3cede7da09
|
Represent NotSummarizable as Nothing.
|
2017-05-08 11:31:30 -04:00 |
|
Rob Rix
|
821b598e2a
|
Further tighten toTermName.
|
2017-05-08 11:24:25 -04:00 |
|
Rob Rix
|
6e411c7c85
|
Compute toTermName as a paramorphism.
|
2017-05-08 11:22:04 -04:00 |
|
Rob Rix
|
1b487b6907
|
🔥 offsetting in toTermName.
toTermName is a shallow traversal, so there’s little or no point in offsetting before recursive calls.
|
2017-05-08 11:18:23 -04:00 |
|
Rob Rix
|
2e98b4570d
|
Contextualize summaries in diffToTOCSummaries directly.
|
2017-05-08 11:16:37 -04:00 |
|
Rob Rix
|
9df2a73e38
|
Tighten up toTermName.
|
2017-05-08 11:16:23 -04:00 |
|
Rob Rix
|
76002f08c0
|
🔥 redundant parens.
|
2017-05-08 09:56:11 -04:00 |
|
Rob Rix
|
f3cf3cb1d1
|
🔥 SummarizableTerm.
|
2017-05-08 09:55:56 -04:00 |
|
Rob Rix
|
4894a5b286
|
Merge branch 'master' into generalize-alignment-over-the-syntax-functor
|
2017-05-08 09:50:38 -04:00 |
|
Rob Rix
|
7c100f5bfa
|
Clarify the indentation of assignment operators.
|
2017-05-08 09:47:09 -04:00 |
|
Rob Rix
|
6ce4496f14
|
Merge branch 'master' into opt-in-anonymous-nodes
|
2017-05-08 08:33:14 -04:00 |
|
Rob Rix
|
4274fdf6e3
|
Merge branch 'master' into generalize-alignment-over-the-syntax-functor
|
2017-05-08 08:28:01 -04:00 |
|
Rob Rix
|
8d8fa78b47
|
Simplify summarizable.
|
2017-05-05 16:34:16 -04:00 |
|
Timothy Clem
|
ab0a6d59dd
|
Merge branch 'master' into fix-json-output-again
|
2017-05-05 13:30:48 -07:00 |
|
Rob Rix
|
0c7af370f7
|
Define termToDiffInfo as a paramorphism.
|
2017-05-05 16:28:46 -04:00 |
|
Rob Rix
|
c73a79eb83
|
No need to qualify sourceSpan.
|
2017-05-05 16:19:49 -04:00 |
|
Rob Rix
|
a55b97b017
|
Use the named field accessor.
|
2017-05-05 16:08:51 -04:00 |
|
Rob Rix
|
2491dde0f9
|
Don’t bind the individual info functions.
|
2017-05-05 16:00:52 -04:00 |
|
Rob Rix
|
e667657d94
|
Bind the diff info functions at the top level.
|
2017-05-05 16:00:10 -04:00 |
|
Rob Rix
|
b6cc1cfac1
|
🔥 redundant parens.
|
2017-05-05 15:56:15 -04:00 |
|
Rob Rix
|
628bf46ed3
|
Don’t bind syntax.
|
2017-05-05 15:56:04 -04:00 |
|
Rob Rix
|
274095720b
|
Tighten up diffToTOCSummaries.
|
2017-05-05 15:54:38 -04:00 |
|
Rob Rix
|
f820af4f5a
|
Factor the application of toLeafInfos out.
|
2017-05-05 15:48:54 -04:00 |
|
Rob Rix
|
c3f510f83d
|
Rename toLeafInfos' to toLeafInfos.
|
2017-05-05 15:45:51 -04:00 |
|
Rob Rix
|
c6b49cba94
|
Simplify the termToDiffInfo definition by closing over the source.
|
2017-05-05 15:44:37 -04:00 |
|
Rob Rix
|
0ab53b002a
|
Flatten toTOCSummaries.
|
2017-05-05 15:33:16 -04:00 |
|
Rob Rix
|
948869066c
|
Even tighter.
|
2017-05-05 15:28:09 -04:00 |
|
Rob Rix
|
2ac1baef7a
|
Tighten up the definition of afterOrBefore.
|
2017-05-05 15:27:50 -04:00 |
|
Rob Rix
|
8cd74f6ea2
|
afterOrBefore always returns a value.
|
2017-05-05 15:26:26 -04:00 |
|
Rob Rix
|
286d751b7b
|
Merge branch 'master' into opt-in-anonymous-nodes
|
2017-05-05 13:47:07 -04:00 |
|
Rob Rix
|
ba32db8fc9
|
Merge branch 'master' into diffs-a-la-carte
|
2017-05-05 13:46:40 -04:00 |
|
Rob Rix
|
7b961977b7
|
Merge branch 'master' into generalize-alignment-over-the-syntax-functor
|
2017-05-05 13:46:23 -04:00 |
|
Timothy Clem
|
f2f6bb45d9
|
Don't parse blobs that don't exist
|
2017-05-05 10:06:58 -07:00 |
|
Timothy Clem
|
1959301204
|
Use a list to simplify json output concatenation
|
2017-05-05 09:09:45 -07:00 |
|
Timothy Clem
|
2b4d4a0e85
|
Bring back original json structure with 'sourceRange' and identifier only on specific nodes
|
2017-05-05 09:08:58 -07:00 |
|
Rob Rix
|
f14cd97cae
|
Merge branch 'master' into generalize-alignment-over-the-syntax-functor
|
2017-05-05 10:56:23 -04:00 |
|
Rob Rix
|
875fe1c5ae
|
Merge branch 'master' into assignment-best-practices
|
2017-05-05 10:56:19 -04:00 |
|
Rob Rix
|
1ca4d21c47
|
Merge branch 'master' into diffs-a-la-carte
|
2017-05-05 10:56:17 -04:00 |
|
Rob Rix
|
209a2de6b6
|
Merge branch 'master' into opt-in-anonymous-nodes
|
2017-05-05 10:56:14 -04:00 |
|
Timothy Clem
|
e53a8342a3
|
Missing one case for this monoid instance to be associative
|
2017-05-05 07:52:14 -07:00 |
|
Rob Rix
|
ccf92f9808
|
Rename setCharacterRange -> setByteRange.
|
2017-05-05 09:32:15 -04:00 |
|
Rob Rix
|
d9b6c51319
|
Extract the wrapInBranch lambda into a binding.
|
2017-05-05 09:31:23 -04:00 |
|
Rob Rix
|
634b8e450f
|
Apply the fusion law.
|
2017-05-05 09:30:27 -04:00 |
|
Rob Rix
|
bee7d1ee6a
|
Merge branch 'master' into fix-json-output
|
2017-05-05 09:06:30 -04:00 |
|
Timothy Clem
|
bea5d66f3f
|
Bit more nuanced of a monoid instance for Value
|
2017-05-04 14:56:53 -07:00 |
|
Timothy Clem
|
477165a4c2
|
Collapse up and remove unused language extensions
|
2017-05-04 14:56:08 -07:00 |
|
Rob Rix
|
231abd6cb5
|
Generalize alignment over the syntax functor.
|
2017-05-04 17:31:45 -04:00 |
|
Rob Rix
|
5d206c3c9a
|
Merge branch 'master' into assignment-best-practices
|
2017-05-04 13:18:18 -04:00 |
|
Rob Rix
|
e943a5372c
|
Merge branch 'master' into diffs-a-la-carte
|
2017-05-04 13:18:12 -04:00 |
|
Rob Rix
|
9f1a4bc778
|
Merge branch 'master' into opt-in-anonymous-nodes
|
2017-05-04 13:18:00 -04:00 |
|
Rob Rix
|
13d6b313cb
|
Document how tokens are skipped.
|
2017-05-04 13:11:09 -04:00 |
|
Rob Rix
|
d62b6170e6
|
Document optional.
|
2017-05-04 13:04:54 -04:00 |
|
Rob Rix
|
64ada1c6c2
|
Document some/many repetitions.
|
2017-05-04 13:03:46 -04:00 |
|
Rob Rix
|
da158b4a12
|
Document committed choice.
|
2017-05-04 12:58:00 -04:00 |
|
Rob Rix
|
7467fabfa4
|
Document combining assignments with the various instances.
|
2017-05-04 12:25:05 -04:00 |
|
Rob Rix
|
a30769167c
|
Document 'pure' assignments.
|
2017-05-04 11:29:44 -04:00 |
|
Rob Rix
|
9644561a8d
|
Document the basic primitives.
|
2017-05-04 11:27:43 -04:00 |
|
Rob Rix
|
dde29370de
|
Simplify the initial discussion of Assignments.
|
2017-05-04 11:06:25 -04:00 |
|
Rob Rix
|
838262df2d
|
Clarify the assignment-context bit.
|
2017-05-04 11:04:42 -04:00 |
|
Rob Rix
|
aed82c030d
|
Merge branch 'master' into opt-in-anonymous-nodes
|
2017-05-04 11:02:30 -04:00 |
|
Rob Rix
|
a656a94664
|
Merge branch 'master' into diffs-a-la-carte
|
2017-05-04 11:02:22 -04:00 |
|
Rob Rix
|
9d5b040c42
|
Merge remote-tracking branch 'origin/master' into assignment-best-practices
|
2017-05-04 11:01:31 -04:00 |
|
Rob Rix
|
68b813d51b
|
Merge branch 'master' into 🔥-split-renderer
|
2017-05-04 10:59:21 -04:00 |
|
Rob Rix
|
a14093bf06
|
Correct the usage for the -o flag.
|
2017-05-04 10:56:28 -04:00 |
|
Rob Rix
|
32a6901d38
|
📝 the module a bit.
|
2017-05-04 10:55:12 -04:00 |
|
Rob Rix
|
9c2b7dfbe0
|
🔥 Renderer.Split.
|
2017-05-04 10:10:45 -04:00 |
|
Rob Rix
|
d085b11789
|
🔥 the split diff renderer.
|
2017-05-04 10:09:29 -04:00 |
|
Rob Rix
|
d5e0cd5693
|
🔥 the split diff arguments constructor.
|
2017-05-04 10:09:19 -04:00 |
|
Rob Rix
|
f385a6e54f
|
🔥 the --split renderer flag.
|
2017-05-04 10:09:02 -04:00 |
|
Timothy Clem
|
31c01c0092
|
Give sExpressions output a trailing newline again
|
2017-05-03 14:11:37 -07:00 |
|
Timothy Clem
|
69b6c6b21e
|
Let reading from /dev/null throw - need emptySourceBlob for this case
|
2017-05-03 14:11:02 -07:00 |
|
Rob Rix
|
d10ca290b9
|
Use diffMaybe instead of maybeLinearly.
|
2017-05-03 16:58:43 -04:00 |
|
Rob Rix
|
45406c5c81
|
Define a combinator for diffing in Maybe.
|
2017-05-03 16:56:15 -04:00 |
|
Rob Rix
|
a0df4f8845
|
Skip wrapping in Maybe.
|
2017-05-03 16:52:56 -04:00 |
|
Rob Rix
|
8a2725f524
|
Merge branch 'master' into diffs-a-la-carte
|
2017-05-03 16:38:09 -04:00 |
|
Rob Rix
|
d524fa05bb
|
Define Align-based GAlign instances for [] and Maybe.
|
2017-05-03 16:24:05 -04:00 |
|
Timothy Clem
|
c9f69c32b5
|
++haskell-tree-sitter to use halt_on_error
|
2017-05-03 13:22:46 -07:00 |
|
Rob Rix
|
116e5b0e08
|
Derive GAlign instances for all of the à la carte syntax types.
|
2017-05-03 16:05:27 -04:00 |
|
Rob Rix
|
c189e786c5
|
Define a GAlign instance for Identity.
|
2017-05-03 16:00:13 -04:00 |
|
Rob Rix
|
1f6d044994
|
Define GAlign instances for Unions.
|
2017-05-03 15:58:27 -04:00 |
|
Rob Rix
|
ce50d2da71
|
🔥 the Functor context for GAlign.
|
2017-05-03 15:56:16 -04:00 |
|
Rob Rix
|
eb18e2ef6e
|
Move the GAlign instance for Syntax into Syntax’ module.
|
2017-05-03 15:45:07 -04:00 |
|
Rob Rix
|
028d760190
|
Revert "Reuse the canCompare parameter."
This reverts commit 2f4f50e8e41f64721f6e7cd887d22c16263b3e52.
|
2017-05-03 15:37:19 -04:00 |
|
Rob Rix
|
be3937cc42
|
Reuse the canCompare parameter.
|
2017-05-03 15:24:05 -04:00 |
|
Rob Rix
|
22e7e8ca3e
|
Generalize decompose over the general term-diffing algorithm computation.
|
2017-05-03 15:17:59 -04:00 |
|
Rob Rix
|
a212fc628d
|
s/cont/yield/.
|
2017-05-03 14:58:48 -04:00 |
|
Rob Rix
|
2e825ec90b
|
Generalize runAlgorithm and runAlgorithmSteps to arbitrary functors in Freer.
|
2017-05-03 14:54:41 -04:00 |
|
Rob Rix
|
744f8cfe2e
|
Generalize the algorithm running functions over arbitrary term/diff types.
|
2017-05-03 14:51:58 -04:00 |
|
Rob Rix
|
b7d5f03a1b
|
🔥 runAlgorithmStep.
|
2017-05-03 14:50:23 -04:00 |
|
Rob Rix
|
34807f26bb
|
runAlgorithmSteps is parameterized by the decomposition operation.
|
2017-05-03 14:50:10 -04:00 |
|
Rob Rix
|
2e2ff9d614
|
runAlgorithm is parameterized by the decomposition operation.
|
2017-05-03 14:45:46 -04:00 |
|
Rob Rix
|
77bdda7b7e
|
s/run/runAlgorithm/.
|
2017-05-03 14:38:11 -04:00 |
|
Rob Rix
|
cb7a5a7b57
|
runStep returns the continuation without wrapping in Either.
|
2017-05-03 14:35:54 -04:00 |
|
Rob Rix
|
459616e543
|
Merge branch 'master' into opt-in-anonymous-nodes
|
2017-05-03 14:27:03 -04:00 |
|
Rob Rix
|
11ca3a902b
|
🔥 a redundant constraint.
|
2017-05-03 13:55:18 -04:00 |
|
Rob Rix
|
363d21b607
|
Generalize s-expression rendering to arbitrary Foldables.
|
2017-05-03 13:43:32 -04:00 |
|
Rob Rix
|
1d024aafc9
|
Assign regular = assignments.
|
2017-05-03 11:52:38 -04:00 |
|
Rob Rix
|
8cc0526b23
|
Move assignment out into a separate top-level binding.
|
2017-05-03 11:51:22 -04:00 |
|
Rob Rix
|
159cf5772b
|
Assign ^=.
|
2017-05-03 11:50:01 -04:00 |
|
Rob Rix
|
53fde0b91b
|
Assign <<=.
|
2017-05-03 11:49:16 -04:00 |
|