1
1
mirror of https://github.com/github/semantic.git synced 2024-11-28 18:23:44 +03:00
Commit Graph

3875 Commits

Author SHA1 Message Date
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