1
1
mirror of https://github.com/github/semantic.git synced 2024-12-29 09:55:52 +03:00
Commit Graph

501 Commits

Author SHA1 Message Date
Rob Rix
d3e8b2ba80 Stub in a function to align diffs. 2016-03-21 13:26:38 -04:00
Rob Rix
89537b4f81 Aligned diffs are split diffs. 2016-03-21 13:10:28 -04:00
Rob Rix
a3e253804d 🔥 theseBoth. 2016-03-21 13:06:00 -04:00
Rob Rix
6422cb38a4 Define AlignedDiff as Joining These two terms. 2016-03-21 12:53:41 -04:00
Rob Rix
c16d725773 Remove a redundant import. 2016-03-21 09:30:54 -04:00
Rob Rix
dc0b5f0355 Revert "Stub in a Fix type for the sake of experimentation."
This reverts commit 91e8730e7e331abf10406c3d866796bb7f8b6d4f.
2016-03-18 15:16:22 -04:00
Rob Rix
9f1b7fc80f Truncate branches for the moment. 2016-03-18 15:15:05 -04:00
Rob Rix
ee81295592 Don’t bind leaf values. 2016-03-18 15:01:11 -04:00
Rob Rix
35215da076 Construct Aligned in alignSyntax. 2016-03-18 15:00:28 -04:00
Rob Rix
63f6389950 Define alignSyntax by case analysis. 2016-03-18 14:58:49 -04:00
Rob Rix
a11bc809df Remove the constructor parameter from alignTermBy and rename it. 2016-03-18 14:58:01 -04:00
Rob Rix
30e1da5a12 Use alignSyntax to construct Aligned functors. 2016-03-18 14:56:48 -04:00
Rob Rix
21356e0144 Add alignSyntax to split a leaf by its lines.
Doesn’t yet operate on branches. Invalidates some other assumptions.
2016-03-18 14:56:32 -04:00
Rob Rix
d318b6565c Get first and second from Data.Bifunctor instead of Control.Arrow. 2016-03-18 14:53:52 -04:00
Rob Rix
cceeffe360 The annotations are in Join. 2016-03-18 14:30:22 -04:00
Rob Rix
bad7878953 Pass the sources to alignTermBy. 2016-03-18 14:18:19 -04:00
Rob Rix
2900eb1f71 alignPatch takes the sources. 2016-03-18 14:15:49 -04:00
Rob Rix
8c791fb638 Annotate aligned diffs with These Info Info for marginal reductions in dubiousness. 2016-03-18 14:03:13 -04:00
Rob Rix
0e36a8af38 Rename the parameter to note its plurality. 2016-03-18 14:00:19 -04:00
Rob Rix
2a5f465a66 Slightly less dubiously, Aligned diffs carry Both Info. 2016-03-18 13:58:04 -04:00
Rob Rix
b9fc6d86e2 Aligned diffs carry Info.
This is extremely dubious, but it’s a start.
2016-03-18 13:55:41 -04:00
Rob Rix
77fd84f831 Run alignPatch in Cofree instead of Fix. 2016-03-18 13:46:56 -04:00
Rob Rix
82e29e2df7 Define anamorphisms over Cofree. 2016-03-18 12:50:16 -04:00
Rob Rix
bf87e931b7 Move the annotated hylo from Interpreter into Term. 2016-03-18 12:43:29 -04:00
Rob Rix
495204ce90 Extract a function to align terms. 2016-03-18 12:08:26 -04:00
Rob Rix
e61d8a27ff Stub in a type synonym for aligned diffs. 2016-03-18 12:02:07 -04:00
Rob Rix
00c3a2ef9f Spike out a function aligning Terms in Patches. 2016-03-18 12:01:59 -04:00
Rob Rix
23ba7c0ae6 hylo over Fix. 2016-03-18 12:00:00 -04:00
Rob Rix
ea6fd75131 cata over Fix. 2016-03-18 11:59:54 -04:00
Rob Rix
793025e65f ana over Fix. 2016-03-18 11:59:48 -04:00
Rob Rix
235e2207e8 Stub in a Fix type for the sake of experimentation. 2016-03-18 11:59:37 -04:00
Rob Rix
daba89d6b0 Be precise as to which cata we mean. 2016-03-18 11:59:19 -04:00
Rob Rix
f3c6f8b3f6 Compute lines within Adjoined. 2016-03-15 10:58:54 -04:00
Rob Rix
a46915b58c Inline rangeUntilNext. 2016-03-15 10:36:18 -04:00
Rob Rix
86b3d700a4 Rename placeChildAndRangeInContainer to match makeContextLines. 2016-03-15 09:23:14 -04:00
Rob Rix
9c69c1b6a6 🔥 unionLineRangesFrom. 2016-03-15 09:22:39 -04:00
Rob Rix
5677e6abf9 Reindent some stuff. 2016-03-15 08:56:18 -04:00
Rob Rix
745765417e Use makeContextLines to construct the leading context. 2016-03-15 08:55:04 -04:00
Rob Rix
c3fa0eb986 Extract and rename pairWithNothing. 2016-03-15 08:54:35 -04:00
Rob Rix
cfa9ae8987 🔥 redundant imports. 2016-03-14 22:49:47 -04:00
Rob Rix
aaa2fe9f36 Revert "What if we aligned in These?"
This reverts commit a43335ef084db66616188c0b166b4ea563d2c0e2.
2016-03-14 20:43:45 -04:00
Rob Rix
1e48770ce1 What if we aligned in These?
It wouldn’t work, that’s what!
2016-03-14 20:43:35 -04:00
Rob Rix
34a76bfe93 🔥 alignRows again. 2016-03-14 19:45:08 -04:00
Rob Rix
aa36f83da3 Diff over TotalCrosswalk functors. 2016-03-14 19:45:02 -04:00
Rob Rix
93414f43ad Diff entirely within Both. 2016-03-14 19:17:44 -04:00
Rob Rix
83ea2f1254 Restore the documentation for alignRows. 2016-03-14 19:16:48 -04:00
Rob Rix
79ff5f9395 Re-add alignRows. 2016-03-14 19:15:40 -04:00
Rob Rix
ec4b30eee7 Rename the range to next indices function. 2016-03-14 15:56:09 -04:00
Rob Rix
5eded53479 Patch returns its values in These. 2016-03-14 15:40:35 -04:00
Rob Rix
f079f41933 fmap inline. 2016-03-14 14:57:39 -04:00
Rob Rix
7e631f06d6 Fix a misaligned guard. 2016-03-14 14:56:56 -04:00
Rob Rix
3742f22eb6 mappend directly instead of building up a list. 2016-03-14 14:56:32 -04:00
Rob Rix
80c24de3ba 🔥 AlignFunction. 2016-03-14 14:54:09 -04:00
Rob Rix
f2a6895c6d Constrain childLines to Crosswalk functors. 2016-03-14 14:53:25 -04:00
Rob Rix
b4415d7b93 Constrain adjoinChildren to Crosswalk functors. 2016-03-14 14:52:34 -04:00
Rob Rix
54a12b9c22 splitAbstractedTerm is constrained to Crosswalk functors. 2016-03-14 14:50:54 -04:00
Rob Rix
65f759069c Use a let because nested wheres are a bit gross. 2016-03-14 14:32:48 -04:00
Rob Rix
1f62641fd3 Move makeBranchTerm into adjoinChildren. 2016-03-14 14:31:24 -04:00
Rob Rix
c877cdf0d2 s/MaybeBoth/BothMaybe. 2016-03-14 14:13:46 -04:00
Rob Rix
48df75b7ed Align diffs in MaybeBoth. 2016-03-14 14:13:06 -04:00
Rob Rix
3b5f2a47b3 🔥 adjoinRows. 2016-03-14 10:35:35 -04:00
Rob Rix
79ac625dc8 Align by mappending Adjoined values. 2016-03-14 10:35:31 -04:00
Rob Rix
e968825b62 Generalize makeBranchTerm to Foldable Functors. 2016-03-14 10:00:48 -04:00
Rob Rix
59edb8ff41 splitPatchByLines returns Adjoined. 2016-03-11 17:59:58 -05:00
Rob Rix
536053ef73 Use the Monoid instance to concatenate lists.
This will allow us to swap lists out for some other Monoid.
2016-03-11 15:29:12 -05:00
Rob Rix
48af1161e7 adjoinRows takes an AlignFunction. 2016-03-11 14:27:56 -05:00
Rob Rix
a23eb6f5f8 Merge branch 'data-dot-adjoined' into adjoin-associatively
# Conflicts:
#	src/Alignment.hs
2016-03-11 13:26:12 -05:00
Rob Rix
840658720c Export a limited list of symbols. 2016-03-11 12:29:17 -05:00
Rob Rix
eb6133da70 Document childLines. 2016-03-11 12:00:06 -05:00
Rob Rix
78a095ceb7 Document adjoinChildren. 2016-03-11 11:54:39 -05:00
Rob Rix
b50e348e06 Move childRanges into childLines. 2016-03-11 11:46:36 -05:00
Rob Rix
363c6e4c72 Document AlignFunction. 2016-03-11 11:29:36 -05:00
Rob Rix
98de90ddba Use the AlignFunction type synonym more widely. 2016-03-11 11:27:49 -05:00
Rob Rix
9a65904fc5 Generalize AlignFunction from lists to arbitrary Align Applicative functors. 2016-03-11 11:27:01 -05:00
Rob Rix
b3c65733ba Remove redundant parentheses. 2016-03-11 11:25:36 -05:00
Rob Rix
5320af4637 Extract the align function parameter type into a type synonym. 2016-03-11 11:25:15 -05:00
Rob Rix
39dd494c80 Don’t close empty lines when aligning. 2016-03-10 20:14:02 -05:00
Rob Rix
55318b5f2b Name a bunch of parts of childLines. 2016-03-10 20:06:16 -05:00
Rob Rix
d84b112d91 Make the align parameter explicitly act on Lines. 2016-03-10 15:39:07 -05:00
Rob Rix
0361a5ea8c alignRows to pad out diffs. 2016-03-10 15:20:08 -05:00
Rob Rix
264cd8cbff Document alignRows. 2016-03-10 15:07:49 -05:00
Rob Rix
7572ddb79c Add a function to align rows.
This takes over from zipDefaults.
2016-03-10 15:06:03 -05:00
Rob Rix
75133aad3f 🔥 openRangePair. 2016-03-10 09:29:54 -05:00
Rob Rix
0e07398b59 🔥 the predicate parameters in coalescing and adjoining. 2016-03-10 09:19:47 -05:00
Rob Rix
5c82d1820b Use pureBy to construct lines. 2016-03-10 09:19:07 -05:00
Rob Rix
60ad5cf634 Document linesInRangeOfSource. 2016-03-10 09:08:49 -05:00
Rob Rix
f2c8d75879 Construct open or closed lines up front. 2016-03-10 09:05:16 -05:00
Rob Rix
4b29ee9916 Use the linesInRangeOfSource wrapper for leaf lines. 2016-03-10 09:02:21 -05:00
Rob Rix
6105e7ce6b Use the linesInRangeOfSource wrapper for context lines. 2016-03-10 08:53:40 -05:00
Rob Rix
d844acd9ae Add a wrapper around actualLineRanges. 2016-03-10 08:53:24 -05:00
Rob Rix
f2bb06c9c3 Reuse lineIncrement. 2016-03-10 00:56:31 -05:00
Rob Rix
9614994e53 Use the isEmpty predicate to test for line emptiness. 2016-03-10 00:37:21 -05:00
Rob Rix
bff4908e16 🔥 Data.Option. 2016-03-09 09:52:53 -05:00
Rob Rix
94aa9be081 🔥 rowRangesBy. 2016-03-09 09:40:06 -05:00
Rob Rix
a50a62d54f Note the alignment function in splitAbstractedTerm’s docs. 2016-03-09 09:36:12 -05:00
Rob Rix
3a28598e86 🔥 a redundant import. 2016-03-09 09:33:14 -05:00
Rob Rix
01afcbf5b4 🔥 splitAnnotatedByLines. 2016-03-09 09:33:08 -05:00
Rob Rix
be1f548c61 splitDiffByLines uses splitAbstractedTerm. 2016-03-09 09:30:18 -05:00
Rob Rix
402dafa6e3 Constrain the aligning function to Monoids. 2016-03-09 09:30:00 -05:00
Rob Rix
2930a96aed Pointfree. 2016-03-09 09:23:28 -05:00
Rob Rix
129055ea42 Sort keyed nodes with the assistance of an unaligning function. 2016-03-09 05:28:34 -05:00
Rob Rix
55260afb2b Expand the Row type in rowRanges. 2016-03-09 05:24:21 -05:00
Rob Rix
5d150fd816 Abstract splitAbstractedTerm over an alignment function. 2016-03-09 05:02:54 -05:00
Rob Rix
789a7d1be8 Abstract splitAbstractedTerm over an Applicative Traversable Functor. 2016-03-09 04:57:30 -05:00
Rob Rix
2a2e274084 Define splitAbstractedTerm over adjoinChildren. 2016-03-09 04:45:30 -05:00
Rob Rix
1274522dbd The Monoid instance already distributes. 2016-03-09 04:20:43 -05:00
Rob Rix
da0aff3d5f Extract the common construction stuff into a function. 2016-03-09 04:19:09 -05:00
Rob Rix
2acf80d633 Only pass a single constructor in. 2016-03-09 04:17:39 -05:00
Rob Rix
2efbb0f87d Use adjoinRowsBy. 2016-03-09 04:14:31 -05:00
Rob Rix
73aa926bdc Generalize adjoinRowsBy to any Applicative with an aligning function. 2016-03-09 04:13:09 -05:00
Rob Rix
8c36e46452 Expand the Row type synonym in adjoinRowsBy. 2016-03-09 04:09:46 -05:00
Rob Rix
4e1b48a356 Don’t pass in the adjoining function. 2016-03-09 04:09:35 -05:00
Rob Rix
dd5b94a4a2 Splitting annotated diffs uses the extracted adjoining function. 2016-03-09 04:04:51 -05:00
Rob Rix
9c180e3c48 Extract the adjoining function. 2016-03-09 04:02:00 -05:00
Rob Rix
9cebf83c5c Use the extracted childLines function for terms. 2016-03-09 03:09:13 -05:00
Rob Rix
b62d2633cc Use the extracted childLines function for diffs. 2016-03-09 02:51:42 -05:00
Rob Rix
7051991dd4 Copy the comment about increasing ranges down. 2016-03-09 02:50:31 -05:00
Rob Rix
cc73c29978 Extract the computation of child lines. 2016-03-09 02:50:02 -05:00
Rob Rix
064d7768fa Extract the computation of childRanges. 2016-03-09 02:49:05 -05:00
Rob Rix
683fc20989 Replace zipWithDefaults with zipDefaults. 2016-03-09 02:08:22 -05:00
Rob Rix
086a3d53cb 🔥 Row. 2016-03-09 01:39:18 -05:00
Rob Rix
51b9472aa4 Move the Row type synonym into Alignment.hs. 2016-03-09 01:38:59 -05:00
Rob Rix
6e735f8119 Move adjoinRowsBy into Alignment.hs. 2016-03-09 01:36:40 -05:00
Rob Rix
820d38847c 🔥 makeRow. 2016-03-09 01:35:47 -05:00
Rob Rix
cb66328f79 Replace Row with a type synonym for Both. 2016-03-09 01:35:01 -05:00
Rob Rix
ebbf19953e Stop treating EmptyLine as distinct from an empty line. 2016-03-09 00:58:09 -05:00
Rob Rix
9f26748f3b Abstract splitAnnotatedByLines over a makeTerm parameter function. 2016-03-08 23:37:11 -05:00
Rob Rix
b3db1e2bd0 Don’t reconstruct child ranges unnecessarily. 2016-03-08 23:21:02 -05:00
Rob Rix
1d54d34d77 Move the $ onto the previous line. 2016-03-08 23:01:37 -05:00
Rob Rix
e63d2b3c59 Correct the openness predicate for ranges. 2016-03-08 22:13:31 -05:00
Rob Rix
0bc811e3c1 Replace MaybeOpen with simple predicates. 2016-03-08 22:07:38 -05:00
Rob Rix
19316c600c Move the $ onto the previous line. 2016-03-07 19:40:05 -05:00
Rob Rix
40ad5700cc Rename adjoinLinesByR to adjoinLinesBy. 2016-03-07 19:36:37 -05:00
Rob Rix
f7b4ecc1c1 Rename adjoinRowsByR to adjoinRowsBy. 2016-03-07 19:36:16 -05:00
Rob Rix
ef2556aa46 Remove a redundant import. 2016-03-07 19:10:39 -05:00
Rob Rix
8f08dab33b Correct row numbering. 2016-03-07 17:13:51 -05:00
Rob Rix
bd1a3886a8 Adjoin rows to the right. 2016-03-07 16:26:49 -05:00
Rob Rix
30acf85299 Fold rightwards when adjoining. 2016-03-07 16:09:45 -05:00
Rob Rix
dd2b6b5532 Fold rightwards through diffs. 2016-03-07 16:05:40 -05:00
Rob Rix
2901586210 Correct some spacing. 2016-03-07 15:54:46 -05:00
Rob Rix
9c926017c5 Fold rightwards through terms. 2016-03-07 15:52:12 -05:00
Rob Rix
4b3bdb184e Adjoin in line. 2016-03-07 15:43:48 -05:00
Rob Rix
3015c409cc 🔥 the nested calls to adjoin.
`adjoinChildLines` & `adjoinChildRows` do this for us.
2016-03-07 15:41:37 -05:00
Rob Rix
0053558161 Expand wrapRowContents in place. 2016-03-07 13:57:23 -05:00
Rob Rix
30b3450981 Take hlint’s advice. 2016-03-07 13:14:34 -05:00
Rob Rix
3c3f171c16 Capture the child ranges in a variable. 2016-03-07 13:12:23 -05:00
Rob Rix
c895c001d1 Reformat adjoining across several lines.. 2016-03-07 13:07:19 -05:00
Rob Rix
ae70cc61c2 Document the Ranges in splitDiffbyLines’ return value. 2016-03-07 12:05:21 -05:00
Rob Rix
7a1a283402 🔥 tearDown. 2016-03-04 21:13:14 -05:00
Rob Rix
abcd9803f3 Pass the Info & Syntax in directly. 2016-03-04 21:12:49 -05:00
Rob Rix
6610745868 an. 2016-03-04 21:09:00 -05:00
Rob Rix
5c06ecc6d0 Define splitAbstractedTerm by catamorphism (more or less). 2016-03-04 21:07:26 -05:00
Rob Rix
e979a40087 Remove some unnecessary parentheses. 2016-03-04 20:46:20 -05:00
Rob Rix
5fdcfbbce9 Tear down diffs with a lambda. 2016-03-04 20:29:04 -05:00
Rob Rix
619fde974d Tacit definition of splitDiffByLines. 2016-03-04 20:26:40 -05:00
Rob Rix
f546977b33 splitAnnotatedByLines takes Both Infos directly. 2016-03-04 20:25:33 -05:00
Rob Rix
cd895d6f87 Re-enable sorting via rowRanges. 2016-03-04 20:18:57 -05:00
Rob Rix
3829f0b064 Rewrite diffRanges as rowRanges. 2016-03-04 20:18:49 -05:00
Rob Rix
7cb85f6571 Define splitDiffByLines by catamorphism. 2016-03-04 19:53:47 -05:00
Rob Rix
bb00235f4c Swap the order of the operands to splitDiffByLines. 2016-03-04 19:29:57 -05:00
Rob Rix
3a555df147 Swap the order of the operands to splitPatchByLines. 2016-03-04 19:07:54 -05:00
Rob Rix
4a4eb23cb5 Fold eagerly. 2016-03-04 18:53:35 -05:00
Rob Rix
c80c764db8 🔥 makeRanges. 2016-03-04 17:35:03 -05:00
Rob Rix
9b00836f17 Use normal Applicative style instead of makeRanges. 2016-03-04 17:34:53 -05:00
Rob Rix
999f036436 makeRanges can be defined with normal Applicative stuff. 2016-03-04 17:33:14 -05:00
Rob Rix
63b6c9a0c2 Simplify the wrapRowContents call. 2016-03-04 17:20:54 -05:00
Rob Rix
2e6eaefc0b Construct term/range pairs in makeBranchTerm. 2016-03-04 17:17:17 -05:00
Rob Rix
89db51fdf9 Union ranges from the previous indices. 2016-03-04 17:13:53 -05:00
Rob Rix
36190c5f57 🔥 the previous indices. 2016-03-04 13:11:27 -05:00
Rob Rix
c575203ef4 Union the ranges from a specific starting range. 2016-03-04 13:07:34 -05:00
Rob Rix
61e43f8c02 splitPatchByLines doesn’t take previous indices. 2016-03-04 12:28:48 -05:00
Rob Rix
0cf7ba393d Alignment returns ranged Rows. 2016-03-04 12:26:40 -05:00
Rob Rix
7a68324ddc Document makeRanges. 2016-03-04 10:01:47 -05:00
Rob Rix
b03a9ac73b Document unionLineRanges. 2016-03-04 10:00:35 -05:00
Rob Rix
4e732bc3d5 Remove some pointless parentheses. 2016-03-04 09:57:55 -05:00
Rob Rix
83e1324d5d Extract makeRanges to top-level scope. 2016-03-04 09:48:40 -05:00
Rob Rix
9b594b5967 Rename rangeForChildLines to unionLineRanges. 2016-03-04 09:42:49 -05:00
Rob Rix
1bd2cda3ca Extract the rangeForChildLines function. 2016-03-04 09:41:57 -05:00
Rob Rix
5f93a253ff fmap law. 2016-03-04 09:26:58 -05:00
Rob Rix
e933e13078 Rename wrap to makeBranchTerm. 2016-03-04 09:17:51 -05:00
Rob Rix
1af5f93512 Get the ranges using getSplitAnnotation. 2016-03-04 09:16:55 -05:00
Rob Rix
628e1426fc Combine the syntax and term constructor functions. 2016-03-04 09:05:18 -05:00
Rob Rix
ea1f53b653 Document wrap. 2016-03-04 08:54:59 -05:00
Rob Rix
4b6873dfdd Remove the inner wrap definition from splitAbstractedTerm. 2016-03-04 08:53:53 -05:00
Rob Rix
1fc20959eb Generalize the type of wrap over inTerm and outTerm parameters. 2016-03-04 08:53:26 -05:00
Rob Rix
5d8b596dda Remove some redundant parentheses. 2016-03-04 08:46:51 -05:00
Rob Rix
5aef110720 Pass the categories to wrap instead of closing over them. 2016-03-04 08:46:17 -05:00
Rob Rix
ea21e16dae Pass the term constructor to wrap instead of closing over it. 2016-03-04 08:45:47 -05:00
Rob Rix
031d50719c Use the abstracted wrap function for annotated rows. 2016-03-04 08:39:54 -05:00
Rob Rix
8b156501e0 Add a wrap function abstracted over a term constructor at the top level. 2016-03-04 08:39:40 -05:00
Rob Rix
0491aac345 Union the ranges from the previous indices. 2016-03-03 16:06:45 -05:00
Rob Rix
7a3da76448 splitAbstractedTerm returns lines containing diff/range pairs. 2016-03-03 13:41:56 -05:00
Rob Rix
aed575fa29 Pass the Range around as the second field. 2016-03-03 12:50:01 -05:00
Rob Rix
568cfa863f Single code path for zipping patches up. 2016-03-03 12:31:47 -05:00
Rob Rix
7a03c23018 Abstract the constructor over the patch. 2016-03-03 12:30:23 -05:00
Rob Rix
ff31489bce Don’t even bind these. 2016-03-03 12:28:51 -05:00
Rob Rix
26abb3da7f Unwrap Maybes into the correct ranges for either side. 2016-03-03 12:28:18 -05:00
Rob Rix
c59913da98 Unpack with maybe instead of sequencing. 2016-03-03 12:19:28 -05:00
Rob Rix
f646a14d3b Transpose replacements through unPatch. 2016-03-03 12:07:09 -05:00
Rob Rix
cc652215ac Correct the splitAbstractedTerm docs. 2016-03-03 11:46:31 -05:00
Rob Rix
c6a8aa2593 Generalize term to distinct inTerm and outTerm types. 2016-03-03 11:42:25 -05:00
Rob Rix
edc3e16e97 🔥 splitTermByLines. 2016-03-03 11:41:05 -05:00
Rob Rix
7d407c6305 Document splitAbstractedTerm. 2016-03-03 11:40:52 -05:00
Rob Rix
15026e2049 Call into splitAbstractedTerm directly for insertions/deletions too. 2016-03-03 11:36:33 -05:00
Rob Rix
a649b59eac Call into splitAbstractedTerm directly for replacements. 2016-03-03 11:33:49 -05:00
Rob Rix
88732315da Implement splitTermByLines via splitAbstractedTerm. 2016-03-03 11:29:03 -05:00
Rob Rix
a05ac7ff64 Add splitAbstractedTerm which abstracts splitTermByLines away from Term leaf Info. 2016-03-03 11:27:29 -05:00
Rob Rix
4837a5e2fb Merge branch 'moved-terms-in-keyed-nodes-shouldn’t-crash' into refactor-alignment
# Conflicts:
#	src/Alignment.hs
2016-03-03 11:05:30 -05:00
Rob Rix
5d725d69c6 Document why we’re doing this funky test. 2016-03-03 10:56:31 -05:00
Rob Rix
22ddd29583 Skip rows for bad ranges. 2016-03-03 10:53:41 -05:00
Rob Rix
8445b988b4 Revert "Add a safeRange function."
This reverts commit 2e6a8abcfd604438f22b143f86a244bab19d694e.
2016-03-03 10:42:16 -05:00
Rob Rix
e22210357d Revert "Make safe ranges."
This reverts commit 0dcfc48c8d9e441a9620adef6fc7832ef2796685.
2016-03-03 10:42:13 -05:00
Rob Rix
30c63a34a5 Revert "Add a type annotation for safeRange."
This reverts commit b456a9bfd53efec7cb61c204762773a2fdd5995e.
2016-03-03 10:42:06 -05:00
Rob Rix
9981e98a77 Revert "Move safeRange into the Range module."
This reverts commit 781f940cad93db3954ddb9f2ddd9de23c432a68f.
2016-03-03 10:42:03 -05:00
Rob Rix
e31091ecd4 Revert "Construct term ranges safely."
This reverts commit 75165616b5e550b40027118bdc67d9c25c39ae32.
2016-03-03 10:41:50 -05:00
Rob Rix
f0e5340e3c 🔥 some Copointed constraints. 2016-03-03 10:16:04 -05:00
Rob Rix
6479f02047 🔥 contextRows. 2016-03-03 10:15:23 -05:00
Rob Rix
c64e3f7ca1 Zip context ranges into leading context rows correctly. 2016-03-03 10:15:10 -05:00
Rob Rix
4d49c9f098 Zip context rows into trailing context correctly. 2016-03-03 10:13:16 -05:00
Rob Rix
00f0a877d8 Zip context rows into leaves correctly. 2016-03-03 10:10:58 -05:00
Rob Rix
ac8d2c9689 contextRows returns Both Ranges, not Rows. 2016-03-03 09:41:33 -05:00
Rob Rix
c19073ab84 🔥 openDiff. 2016-03-03 09:03:15 -05:00
Rob Rix
8e78339c39 🔥 openTerm. 2016-03-03 09:02:33 -05:00
Rob Rix
12b15f5d33 Remove Copointed constraints from the wrap functions. 2016-03-03 08:54:59 -05:00
Rob Rix
34c4c7f559 🔥 import of Data.Either. 2016-03-03 08:48:37 -05:00
Rob Rix
3461e5f3d4 🔥 openEither. 2016-03-03 08:48:29 -05:00
Rob Rix
4f9d866be4 🔥 getInfo. 2016-03-03 08:47:59 -05:00
Rob Rix
3a23d7792b fmap with &&&. 2016-03-03 08:47:37 -05:00
Rob Rix
48aacb98bc Simplify the definition of getRange. 2016-03-03 08:37:56 -05:00
Rob Rix
da941ccf06 Simplify the definition of getInfo. 2016-03-03 08:37:25 -05:00
Rob Rix
af031dfbc7 Simplify the definition of getRange. 2016-03-03 08:36:23 -05:00
Rob Rix
3d1d98e566 Add a getInfo function. 2016-03-03 08:35:36 -05:00
Rob Rix
d2c26ad37d Rewrite getRange to not be in Either. 2016-03-03 08:30:55 -05:00
Rob Rix
4023f6b285 Revert "🔥 getRange."
This reverts commit fa1913c8cec28fa9f677ebf5df2e70f1c76694f2.
2016-03-03 08:30:06 -05:00
Rob Rix
bfa909ebc0 🔥 getRange. 2016-03-03 08:19:25 -05:00
Rob Rix
2896687652 Process annotated rows in (Range, _) pairs. 2016-03-03 08:19:08 -05:00
Rob Rix
7f085a7c6d Use openRangePair instead of the ad hoc lambda. 2016-03-03 07:59:25 -05:00
Rob Rix
660cc1ad8b Document openRangePair. 2016-03-03 07:59:03 -05:00
Rob Rix
f1b8e91723 Add an open… function for (Range, _) pairs. 2016-03-03 07:58:36 -05:00
Rob Rix
31e9b0e875 🔥 getRange. 2016-03-03 07:55:16 -05:00
Rob Rix
a2775737b6 Revert "Define a pairEither function."
This reverts commit a51ca2c7e3616bef93f20d8e57db0dd7c53d0eb8.
2016-03-03 07:54:20 -05:00
Rob Rix
03e1982ec3 Pass Terms around as Range/Maybe term pairs. 2016-03-03 07:53:23 -05:00
Rob Rix
9b16c90a8f Define a pairEither function. 2016-03-03 07:35:15 -05:00
Rob Rix
b5ac83df44 Much simpler definition of getRange. 2016-03-03 00:56:32 -05:00
Rob Rix
f930c37484 Simpler definition of getRange over terms. 2016-03-03 00:55:24 -05:00
Rob Rix
8b2a87be62 Remove Has. 2016-03-02 23:24:13 -05:00
Rob Rix
dd0014d07b Use Copointed instead of Has. 2016-03-02 23:23:34 -05:00
Rob Rix
9182ac04ca Merge branch 'moved-terms-in-keyed-nodes-shouldn’t-crash' into copointed 2016-03-02 23:18:52 -05:00
Rob Rix
4a7b4b4e4f Replace extract with copoint. 2016-03-02 23:11:24 -05:00
Rob Rix
2fcbe7a0d0 Construct term ranges safely. 2016-03-02 18:55:21 -05:00