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

24194 Commits

Author SHA1 Message Date
Rob Rix
4467627d38 Align the State fields. 2018-06-28 10:50:16 -04:00
Rob Rix
0b3a192a56 Note some TODOs. 2018-06-28 10:33:33 -04:00
Rob Rix
0a75f0a388 Rename Delta back to Offset. 2018-06-28 10:30:00 -04:00
Charlie Somerville
b8892e731f change Env.{pairs, unpairs} to take Bindings instead, add flatPairs 2018-06-28 13:59:03 +10:00
Charlie Somerville
d49d3ef764 add Bindings newtype representing a single scope level 2018-06-28 13:46:49 +10:00
Patrick Thomson
d008d14411 no -XLambdaCase 2018-06-27 20:52:27 -04:00
Rob Rix
6769baff22 Rename DetPar to Assignment. 2018-06-27 19:46:24 -04:00
Rob Rix
32fd7400d6 Hold a value to produce at the end of input. 2018-06-27 19:45:52 -04:00
Rob Rix
6edb93dd0e Advance the state with advanceState. 2018-06-27 19:29:21 -04:00
Rob Rix
d6d7ce0efa Compute the span accurately at nodes. 2018-06-27 19:26:58 -04:00
Rob Rix
4fb9a6067f Line the lines/columns. 2018-06-27 19:24:08 -04:00
Rob Rix
86ada732f3 Rename Offset to Delta. 2018-06-27 19:21:04 -04:00
Rob Rix
be0ce7e0e8 Define a function to advance the State. 2018-06-27 19:19:58 -04:00
Rob Rix
ec8e77a9b3 Define a Semigroup instance for Offset. 2018-06-27 19:18:37 -04:00
Rob Rix
118dd47838 f determines s. 2018-06-27 19:12:16 -04:00
Rob Rix
b658356726 Swap the parameters to Assigning. 2018-06-27 19:11:28 -04:00
Rob Rix
e17c546a0a Define a Join instance for Offset. 2018-06-27 19:08:42 -04:00
Rob Rix
ea4b61693f Generalize Measured over the measurement type. 2018-06-27 19:06:41 -04:00
Rob Rix
e565d54509 Define a class of Measured types. 2018-06-27 19:05:36 -04:00
Rob Rix
ee8e09b20c Get the Spans for Errors from the State. 2018-06-27 19:02:19 -04:00
Rob Rix
892985a265 Carry an Offset along with the input. 2018-06-27 19:01:18 -04:00
Rob Rix
73dbaa9794 Don’t qualify booleans. 2018-06-27 18:56:38 -04:00
Rob Rix
357e910630 Derive Eq, Ord, & Show instances for Offset. 2018-06-27 18:55:13 -04:00
Rob Rix
3fc71d3950 Define a Lower instance for Offset. 2018-06-27 18:51:26 -04:00
Rob Rix
2885a34e3a Define a Lower instance for Pos. 2018-06-27 18:51:07 -04:00
Rob Rix
0e99b6c525 Define a datatype of Offsets. 2018-06-27 18:50:01 -04:00
Rob Rix
5c7d3a3f65 Rename Input to State. 2018-06-27 18:45:41 -04:00
Rob Rix
fa8bd4614c Add a synonym for a type of tables. 2018-06-27 18:45:17 -04:00
Patrick Thomson
9b1620f2f1 Fix lints.
No idea how these got through CI, but here's a fix.
2018-06-27 18:11:19 -04:00
Patrick Thomson
330fb1be36 Ensure gRPC ImportGraphs don't duplicate edges and vertices.
The previous code for generating an adjacency list from an algebraic
graph incorrectly assumed that each distinct vertex in the graph would
be `traverse`d once and only once. This is not true, as a vertex that
is connected to N other vertices will appear in N separate `Connect`
instances within the graph, and was leading to extreme redundancies in
graphs served over gRPC.

To work around this, as each vertex is encountered and tagged with a
unique value, the vertex-tag pair is stored in a hashmap. Subsequent
vertices are looked up in the environment; if there is a matching
hash, the original tag for that vertex is used.
2018-06-27 17:48:48 -04:00
Rob Rix
7be414166b Use Alternative instead of our home-grown <!> operator. 2018-06-27 17:16:04 -04:00
Rob Rix
b65beaa674 Avoid the partial pattern match. 2018-06-27 17:13:44 -04:00
Rob Rix
66f67263bc Report errors using Data.Error. 2018-06-27 16:37:42 -04:00
Rob Rix
cf2d178160 Report errors. 2018-06-27 16:34:41 -04:00
Rob Rix
afdab831bf Stub in an initial, bad deterministic parser. 2018-06-27 16:32:17 -04:00
Josh Vera
140c5dcd38 Merge pull request #1995 from github/json-fixtures
JSON fixtures
2018-06-27 15:54:20 -04:00
Rob Rix
c338fca8b0 Stub in a module for deterministic assignments. 2018-06-27 14:27:15 -04:00
Rob Rix
985236d913 Don’t bother with explicit error handling. 2018-06-27 14:24:40 -04:00
Rob Rix
1e82044bd1 Assign parse errors inside the value node. 2018-06-27 14:23:20 -04:00
Rob Rix
4fe23a6196 Assign parse errors in branches. 2018-06-27 14:22:49 -04:00
Rob Rix
17773cf413 Assign values using branchNode. 2018-06-27 14:21:39 -04:00
Rob Rix
4c23da2c1d Assign hashes using branchNode. 2018-06-27 14:21:19 -04:00
Rob Rix
d8622425fd Assign key-value pairs using branchNode. 2018-06-27 14:20:42 -04:00
Rob Rix
4987b1c684 Assign arrays using branchNode. 2018-06-27 14:19:00 -04:00
Rob Rix
4f048dd1e0 Assign number literals using leafNode. 2018-06-27 14:17:33 -04:00
Rob Rix
e20fcf4ec5 Assign string literals using leafNode. 2018-06-27 14:17:06 -04:00
Rob Rix
21e18dcea9 Assign boolean literals using leafNode. 2018-06-27 14:16:00 -04:00
Rob Rix
fb1003b799 Assign null using leafNode. 2018-06-27 14:14:28 -04:00
Rob Rix
b688dfdcd9 We aren’t using type operators. 2018-06-27 14:14:00 -04:00
Rob Rix
e5a43d9fe5 We aren’t using rank-n types. 2018-06-27 14:13:42 -04:00