Rob Rix
|
253c3dfd7c
|
Replace HasTerm with a lens type.
|
2015-12-29 12:47:06 -05:00 |
|
Rob Rix
|
c274125ea0
|
RankNTypes.
Needed for our lens types.
|
2015-12-29 12:46:53 -05:00 |
|
Rob Rix
|
f685f57417
|
Depend on lens .
We were already bringing it in via rainbow, this just makes it explicit.
|
2015-12-29 12:46:40 -05:00 |
|
Rob Rix
|
981098f49e
|
Add a HasDiff typeclass.
Also much like a lens, only terrible.
|
2015-12-29 11:48:00 -05:00 |
|
Rob Rix
|
3ec8ebd2c0
|
Rename TermContainer → HasTerm.
|
2015-12-29 11:42:46 -05:00 |
|
Rob Rix
|
1af6717201
|
Filter out unsemantic context nodes using Either.
|
2015-12-29 11:17:29 -05:00 |
|
Rob Rix
|
890512fafb
|
Annotate the type of contextRows.
|
2015-12-29 11:02:42 -05:00 |
|
Rob Rix
|
36232f46a1
|
Annotate the type of adjoin .
|
2015-12-29 11:01:27 -05:00 |
|
Rob Rix
|
f7beee8c79
|
Annotate the type of wrap .
|
2015-12-29 11:00:33 -05:00 |
|
Rob Rix
|
5f9299cfe5
|
Annotate the type of getRange.
|
2015-12-29 10:57:32 -05:00 |
|
Rob Rix
|
2c95e64293
|
Annotate the type of adjoinChildRows.
|
2015-12-29 10:56:49 -05:00 |
|
Rob Rix
|
2429ac1333
|
Annotate the type of childRows.
|
2015-12-29 10:56:32 -05:00 |
|
Rob Rix
|
d769936602
|
Don’t filter out empty ranges.
This seems to be fine.
|
2015-12-29 10:24:47 -05:00 |
|
Rob Rix
|
19d0d77a0f
|
Source is Traversable.
|
2015-12-29 10:21:45 -05:00 |
|
Rob Rix
|
5416edbcc4
|
Generate syntax with String leaves.
This reverts commit 3c4056c094f88daf1b6aa5c7f41799aa595ccdce.
|
2015-12-29 10:21:09 -05:00 |
|
Rob Rix
|
2ddb8bd5a6
|
Revert "Type Families!!!"
This reverts commit 3c4056c094f88daf1b6aa5c7f41799aa595ccdce.
|
2015-12-29 10:17:00 -05:00 |
|
Rob Rix
|
d71368ffad
|
Revert "Generalize the leaf type again (via a type family in TermContainer)."
This reverts commit af37677e344e1dd3d6a6f782186a2b0983519652.
|
2015-12-29 10:14:57 -05:00 |
|
Rob Rix
|
99220ba440
|
Generalize the leaf type again (via a type family in TermContainer).
|
2015-12-29 10:07:33 -05:00 |
|
Rob Rix
|
09dae76194
|
Type Families!!!
|
2015-12-29 10:07:18 -05:00 |
|
Rob Rix
|
3c74757685
|
Use Either to filter out unnecessary context nodes.
|
2015-12-29 09:52:54 -05:00 |
|
Rob Rix
|
ac724f7d6c
|
Use concrete leaf types everywhere.
|
2015-12-29 09:51:50 -05:00 |
|
Rob Rix
|
cadf559d8b
|
Generalize openTerm to term containers.
|
2015-12-29 09:51:26 -05:00 |
|
Rob Rix
|
1fa2450c6e
|
String/Term pairs are term containers.
|
2015-12-29 09:51:00 -05:00 |
|
Rob Rix
|
938468f9b4
|
Terms are term containers.
|
2015-12-29 09:50:54 -05:00 |
|
Rob Rix
|
b738163094
|
Add a TermContainer typeclass.
It’s like a lens, but terrible and ad hoc.
|
2015-12-29 09:50:47 -05:00 |
|
Rob Rix
|
465b3e5207
|
Add a MaybeOpen value for Info.
|
2015-12-28 17:11:52 -05:00 |
|
Rob Rix
|
2a048984e3
|
Use fromMaybe to unpack in splitAnnotatedByLines.
|
2015-12-28 17:11:37 -05:00 |
|
Rob Rix
|
8a9f815e4e
|
Add an openEither MaybeOpen function.
|
2015-12-28 16:22:59 -05:00 |
|
Rob Rix
|
90cd354091
|
MaybeOpen characterizes adjoinRowsBy.
|
2015-12-28 16:20:03 -05:00 |
|
Rob Rix
|
79d0330df6
|
MaybeOpen characterizes adjoinLinesBy/openLineBy.
|
2015-12-28 16:19:42 -05:00 |
|
Rob Rix
|
c32e2c6d2f
|
Move MaybeOpen to the Line module.
|
2015-12-28 16:18:41 -05:00 |
|
Rob Rix
|
d5b819a6ab
|
Add a MaybeOpen type characterizing the open… functions.
|
2015-12-28 16:17:35 -05:00 |
|
Rob Rix
|
87e3fc728e
|
Apply the constructor parameter consistently.
|
2015-12-28 16:11:32 -05:00 |
|
Rob Rix
|
0d48c8c814
|
Filter out context branches.
|
2015-12-28 14:01:19 -05:00 |
|
Rob Rix
|
087052b9cd
|
Wrap Fixed line contents in a Fixed term.
|
2015-12-28 14:00:21 -05:00 |
|
Rob Rix
|
4a95975ece
|
Wrap Indexed line contents in an Indexed term.
|
2015-12-28 14:00:03 -05:00 |
|
Rob Rix
|
5556dfb2f7
|
Add a function to wrap a line’s contents in a branch.
|
2015-12-28 13:59:45 -05:00 |
|
Rob Rix
|
612fa4dc65
|
Add a getRange function over terms.
|
2015-12-28 13:59:27 -05:00 |
|
Rob Rix
|
1394b24a68
|
Revert "Move getRange to the top level."
This reverts commit 507484d90a3281f5c42157d82317545a90404617.
|
2015-12-28 13:58:24 -05:00 |
|
Rob Rix
|
9916f9a12c
|
isContextBranch doesn’t take a SplitDiff, just a Term.
|
2015-12-28 13:57:51 -05:00 |
|
Rob Rix
|
61edafe2d9
|
Move getRange to the top level.
|
2015-12-28 13:55:54 -05:00 |
|
Rob Rix
|
38f147c913
|
Require equatable leaves in terms.
|
2015-12-28 13:54:18 -05:00 |
|
Rob Rix
|
3c3221068b
|
Add a predicate to recognize context terms.
|
2015-12-28 13:54:07 -05:00 |
|
Rob Rix
|
d9d7ebbc84
|
Pattern match on the categories.
|
2015-12-28 13:52:40 -05:00 |
|
Rob Rix
|
b032e4964e
|
Don’t add context branches.
|
2015-12-28 13:49:01 -05:00 |
|
Rob Rix
|
aa4cb37eff
|
Add a predicate to test whether a node is a context branch.
|
2015-12-28 13:48:57 -05:00 |
|
Rob Rix
|
7c419d000e
|
Require leaves to be equatable.
|
2015-12-28 13:47:57 -05:00 |
|
Rob Rix
|
7dfc163047
|
Filter out empty ranges.
|
2015-12-28 13:03:34 -05:00 |
|
Rob Rix
|
989ef074df
|
Add an isEmpty predicate on Range.
|
2015-12-28 13:03:26 -05:00 |
|
Rob Rix
|
ec1635586d
|
Wrap the contents of Fixed nodes.
|
2015-12-28 12:52:53 -05:00 |
|