1
1
mirror of https://github.com/github/semantic.git synced 2024-12-21 13:51:44 +03:00
Commit Graph

19705 Commits

Author SHA1 Message Date
Rob Rix
4eb0e76bee
Use square brackets for collections. 2019-10-03 14:24:00 -04:00
Rob Rix
722f8d3a18
Special-case empty collections. 2019-10-03 14:22:46 -04:00
Rob Rix
9439145b2b
Increase indentation. 2019-10-03 14:21:02 -04:00
Rob Rix
67e2909b05
Simplify the formatting of compositions. 2019-10-03 14:17:29 -04:00
Rob Rix
546c1d0e64
List the imports explicitly. 2019-10-03 14:15:47 -04:00
Rob Rix
7b74525d2f
Specialize for the wrapper types and format accordingly. 2019-10-03 14:11:51 -04:00
Rob Rix
7dabb9a972
Use a list literal. 2019-10-03 13:50:47 -04:00
Rob Rix
70c309aaec
Tweak to alignment. 2019-10-03 13:43:21 -04:00
Rob Rix
90341c1138
Merge branch 'master' into semantic-java 2019-10-03 13:24:52 -04:00
Rob Rix
779b1154c6
Allow s-expr rendering for Java & precise Python. 2019-10-03 12:58:06 -04:00
Timothy Clem
f8c76b2329 Merge remote-tracking branch 'origin/master' into proto-lens 2019-10-03 09:48:06 -07:00
Rob Rix
88f9fc88c7
Define a SExprTerm instance for Precise python. 2019-10-03 12:47:18 -04:00
Rob Rix
b322d2674e
Define a SExprTerm instance for Java. 2019-10-03 12:47:10 -04:00
Rob Rix
4ffa6c4a26
sexprTerm is pure. 2019-10-03 12:46:03 -04:00
Rob Rix
e1a18eeb05
Bypass serialize and call into the s-expression serialization code directly. 2019-10-03 12:45:16 -04:00
Timothy Clem
32f6e9dfb9 ++proto-lens-jsonpb to handle excluding default fields 2019-10-03 08:41:30 -07:00
Rob Rix
867a65c575
Don’t print L1/R1. 2019-10-03 02:50:42 -04:00
Rob Rix
70b24a476d
Define a GToSExpression instance for :.:. 2019-10-03 02:42:08 -04:00
Rob Rix
feac508bb5
Update Precise.hs
Define a GToSExpression instance for Rec1.
2019-10-03 02:40:44 -04:00
Rob Rix
4b0ec75528
Define a GToSExpression instance for Par1. 2019-10-03 02:39:22 -04:00
Rob Rix
48cf558a72
Define ToSExpression at * -> *. 2019-10-03 02:38:01 -04:00
Rob Rix
310e3a36ee
Use ambiguous types instead of proxies. 2019-10-03 02:29:36 -04:00
Rob Rix
8e9fe4e58a
Rename toSExpressionWithStrategy to toSExpression'. 2019-10-03 02:28:59 -04:00
Rob Rix
09070aaf33
Rename ToSExpressionWithStrategy to ToSExpressionBy. 2019-10-03 02:28:32 -04:00
Rob Rix
14e8fd1c50
Merge branch 'master' into semantic-java 2019-10-02 20:51:14 -04:00
Rob Rix
54324a98a7
Merge branch 'master' into list-parsers-independently 2019-10-02 20:27:30 -04:00
Patrick Thomson
2231f7e749 Make runParse return an Either TSParseException. 2019-10-02 18:44:51 -04:00
Rob Rix
914f69add8
🔥 the à la carte Java stuff. 2019-10-02 18:02:50 -04:00
Rob Rix
150ce9b7f3
There isn’t any à la carte Java. 2019-10-02 18:01:31 -04:00
Rob Rix
30d11fe288
Merge branch 'list-parsers-independently' into semantic-java 2019-10-02 17:44:51 -04:00
Rob Rix
116e5b385a
Merge branch 'master' into semantic-java 2019-10-02 17:32:09 -04:00
Timothy Clem
54eb044136 Minor cleanup 2019-10-02 14:21:02 -07:00
Timothy Clem
5fbcca4fe4 Merge remote-tracking branch 'origin/master' into proto-lens 2019-10-02 13:49:32 -07:00
Timothy Clem
85bf7e72ec Use tclem/proto-lens-jsonpb 2019-10-02 13:14:16 -07:00
Rob Rix
e55426cff1
Weaken the language extension to MonoLocalBinds. 2019-10-02 15:51:40 -04:00
Rob Rix
ce8928e9a2
📝 AnalysisClasses. 2019-10-02 15:50:45 -04:00
Rob Rix
898eb8a22d
Reformat AnalysisClasses. 2019-10-02 15:50:45 -04:00
Rob Rix
e0bc6dc9a8
Update src/Semantic/Api/Terms.hs
Co-Authored-By: Patrick Thomson <patrickt@github.com>
2019-10-02 15:31:56 -04:00
Rob Rix
34aaec96d7
📝 the parameters to diffWith/decoratingDiffWith. 2019-10-02 15:30:21 -04:00
Rob Rix
f5f3124efa
📝 diffWith/decoratingDiffWith. 2019-10-02 15:26:15 -04:00
Rob Rix
0c3170edc4
📝 DiffFor. 2019-10-02 15:21:13 -04:00
Rob Rix
e4346562d6
📝 DiffTerms. 2019-10-02 15:18:48 -04:00
Rob Rix
8b705faefc
Rename the DiffFor result variable. 2019-10-02 15:18:29 -04:00
Rob Rix
843b49b26d
🔥 HasDiffFor. 2019-10-02 15:18:13 -04:00
Rob Rix
7433b7e6b1
📝 parseWith & parsePairWith’s parameters. 2019-10-02 15:16:35 -04:00
Rob Rix
3dd91ec21a
Fix some docs. 2019-10-02 15:13:48 -04:00
Rob Rix
87e72d1e0e
Give a kind signature for the constraint parameter to SomeAnalysisParser. 2019-10-02 15:13:40 -04:00
Rob Rix
80fbd7184f
📝 the abstract parsers. 2019-10-02 15:05:33 -04:00
Rob Rix
17481f566e
📝 SomeParser. 2019-10-02 14:52:45 -04:00
Rob Rix
fd94a1d3f2
📝 the canonical sets of parsers. 2019-10-02 14:48:36 -04:00
Rob Rix
2d21661c85
📝 parseWith/parsePairWith. 2019-10-02 14:47:11 -04:00
Rob Rix
a7c366cde2
Use Map instead of lists of pairs for the parsers. 2019-10-02 14:45:16 -04:00
Rob Rix
ecd283ac43
Rename precisePythonParser to pythonParserPrecise. 2019-10-02 14:10:59 -04:00
Rob Rix
1a1cdc9acb
🔥 the export of precisePythonParser. 2019-10-02 14:10:05 -04:00
Rob Rix
2a8d57fa6d
Merge branch 'master' into list-parsers-independently 2019-10-02 14:08:26 -04:00
Rob Rix
9c981030b9
🔥 ApplyAll. 2019-10-02 14:05:57 -04:00
Rob Rix
66801bf4f6
SomeAnalysisParser uses a single constraint. 2019-10-02 14:05:04 -04:00
Rob Rix
ce3fe3fbe7
Eliminate a few uses of Join. 2019-10-02 13:57:46 -04:00
Rob Rix
4a6da6903d
🔥 redundant language extensions. 2019-10-02 13:53:08 -04:00
Rob Rix
49fe06d576
🔥 the & typeclass. 2019-10-02 13:51:35 -04:00
Patrick Thomson
cf7f403c0d
Merge branch 'master' into safer-exceptions-over-tree-sitter-ffi 2019-10-02 13:48:14 -04:00
Rob Rix
56f8f5f666
Define an analogue of diffWith which does no decoration. 2019-10-02 13:43:41 -04:00
Rob Rix
6b77558d69
Rename diffWith to decoratingDiffWith. 2019-10-02 13:42:15 -04:00
Rob Rix
21f36e1161
Weaken from GADTs to MonoLocalBinds. 2019-10-02 13:35:32 -04:00
Rob Rix
3ec0981e47
🔥 DiffActions. 2019-10-02 13:30:44 -04:00
Rob Rix
f98471a614
🔥 SomeTermPair. 2019-10-02 13:30:39 -04:00
Rob Rix
fdc0fb6dcc
🔥 Decorate. 2019-10-02 13:29:15 -04:00
Rob Rix
2fb8a77ef2
🔥 doParse. 2019-10-02 13:28:56 -04:00
Rob Rix
a5307843c6
🔥 doDiff. 2019-10-02 13:28:08 -04:00
Rob Rix
99f9edf65f
Use diffWith for summaries. 2019-10-02 13:26:52 -04:00
Rob Rix
dd01c89463
Use diffWith for legacy summaries. 2019-10-02 13:25:42 -04:00
Rob Rix
2be893baf0
🔥 diffParsers. 2019-10-02 13:24:56 -04:00
Rob Rix
af17fb489b
Use diffWith for JSON trees. 2019-10-02 13:24:26 -04:00
Rob Rix
e7013d8c90
Use diffWith for JSON graphs. 2019-10-02 13:23:56 -04:00
Rob Rix
e3734e4165
Use diffWith for DOT. 2019-10-02 13:22:59 -04:00
Rob Rix
a6466b86a2
Use diffWith for show. 2019-10-02 13:22:18 -04:00
Rob Rix
4f50381c4c
Use diffWith to diff s-expressions. 2019-10-02 13:21:21 -04:00
Rob Rix
85509fa339
Explicitly list the type parameters for diffWith. 2019-10-02 13:21:08 -04:00
Rob Rix
5cee2da207
Prove DiffTerms for each of the sets of parsers. 2019-10-02 13:20:56 -04:00
Rob Rix
cf37d082d1
Define sets of parsers for each diff output format. 2019-10-02 13:18:02 -04:00
Rob Rix
589a567e60
Export diffWith. 2019-10-02 13:17:49 -04:00
Rob Rix
4036affcf2
Define a helper to run a diff with a specific set of parsers. 2019-10-02 13:15:07 -04:00
Rob Rix
052c99ec12
Define a typeclass for joining constraints together. 2019-10-02 13:14:25 -04:00
Rob Rix
a888d6722e
Generalize diffTerms to require only DiffTerms. 2019-10-02 13:04:46 -04:00
Rob Rix
4d2fd76b2d
Bifoldable (DiffFor term) is a superclass of DiffTerms. 2019-10-02 13:03:59 -04:00
Rob Rix
2c9349087c
Construct the canonical list of diff parsers. 2019-10-02 12:38:14 -04:00
Rob Rix
e8a89bfddc
Use a class for diff actions. 2019-10-02 12:38:01 -04:00
Rob Rix
8418813e5b
Define all of the diffing actions using HasDiffFor. 2019-10-02 12:32:47 -04:00
Rob Rix
678d586ec5
Define a HasDiffFor class with a type family for the diff. 2019-10-02 12:32:07 -04:00
Patrick Thomson
bbf3554bd7 Move and export the exception type. 2019-10-02 12:23:59 -04:00
Patrick Thomson
4c4329f295 Use Exception.try and throw to handle errors from tree-sitter FFI.
The crossing into IO and across the FFI boundary is a dangerous
journey. A `try` call handles all possible dynamic/IO-bound
exceptions, and enables the use of a more precise error type on our
end (rather than `String`) and makes downstream code simpler (we just
pass on the thrown `SomeException` rather than throwing a new one
based on a `Left String`).
2019-10-02 12:12:05 -04:00
Rob Rix
e8279b9081
Define an action to parse BlobPairs with a single parser. 2019-10-02 12:11:20 -04:00
Patrick Thomson
ca2f8a65a8
Merge branch 'master' into abstract-actions-over-terms 2019-10-02 12:07:35 -04:00
Rob Rix
f07c8a0c98
Use parseWith to produce tags. 2019-10-02 12:05:02 -04:00
Rob Rix
7454477ecc
Compute tags via a more general interface.
This allows us to 🔥 ALaCarteTerm.
2019-10-02 12:01:06 -04:00
Rob Rix
9f97649a33
Swap the order of the source & symbols to summarize params. 2019-10-02 11:57:26 -04:00
Rob Rix
b285e612d9
Move parseWith into Control.Effect.Parse. 2019-10-02 11:46:54 -04:00
Rob Rix
fc9a579085
🔥 doParse. 2019-10-02 11:44:29 -04:00
Rob Rix
837916e922
Use parseWith for JSONGraphTerm. 2019-10-02 11:43:40 -04:00
Rob Rix
41652c96ab
Use parseWith for JSONTreeTerm. 2019-10-02 11:41:21 -04:00