Rob Rix
|
5512f48ee5
|
Add a --split option.
|
2015-12-01 11:32:52 -05:00 |
|
Rob Rix
|
f655c414f7
|
Bind the diff outside the output.
|
2015-12-01 11:26:46 -05:00 |
|
Rob Rix
|
bfb982f69e
|
Only format unified diffs when --unified is used.
|
2015-12-01 11:24:33 -05:00 |
|
Rob Rix
|
e8609ba886
|
Remove files .
|
2015-12-01 11:22:28 -05:00 |
|
Rob Rix
|
0dbfbba869
|
Use the parsed arguments.
|
2015-12-01 11:22:26 -05:00 |
|
Rob Rix
|
250f52e01a
|
Parse the args with our parser.
|
2015-12-01 11:19:40 -05:00 |
|
Rob Rix
|
2976bb1f18
|
Add a parser for our arguments.
|
2015-12-01 11:15:13 -05:00 |
|
Rob Rix
|
b98839393d
|
Split the sources up into fields.
|
2015-12-01 11:15:05 -05:00 |
|
Rob Rix
|
3c1c4e6911
|
Add the model for our arguments.
|
2015-12-01 11:08:04 -05:00 |
|
Rob Rix
|
a2f190fb14
|
Export substring.
|
2015-11-27 12:49:46 -05:00 |
|
Rob Rix
|
4aa89bd919
|
Print out the unified diff.
|
2015-11-27 12:42:00 -05:00 |
|
Rob Rix
|
070e60f149
|
Alphabetical order.
|
2015-11-27 12:41:38 -05:00 |
|
Rob Rix
|
acfb27ba9b
|
Diff things.
|
2015-11-27 12:22:05 -05:00 |
|
Rob Rix
|
908d6b9de0
|
Ingest Keyed nodes.
|
2015-11-27 09:19:40 -05:00 |
|
Rob Rix
|
1ecad15128
|
Import Data.Map again.
|
2015-11-27 09:19:09 -05:00 |
|
Rob Rix
|
854e2f7013
|
withNamedChildren returns name/child pairs.
|
2015-11-27 09:19:02 -05:00 |
|
Rob Rix
|
2353cf3798
|
Rename the parameter.
|
2015-11-26 16:28:17 -05:00 |
|
Rob Rix
|
0e68767028
|
Close over the function.
|
2015-11-26 16:27:57 -05:00 |
|
Rob Rix
|
fdc2942411
|
Just return the result directly.
|
2015-11-26 16:27:22 -05:00 |
|
Rob Rix
|
3b24a3cd34
|
Parsing returns a Term.
|
2015-11-26 16:25:55 -05:00 |
|
Rob Rix
|
ae7235eb69
|
Use withCString instead of copying and freeing.
|
2015-11-26 16:24:57 -05:00 |
|
Rob Rix
|
4fd4c66f08
|
Rename parse to documentToTerm .
|
2015-11-26 16:22:27 -05:00 |
|
Rob Rix
|
253c461b12
|
Handle the alloca in parse .
|
2015-11-26 16:22:01 -05:00 |
|
Rob Rix
|
f27f35c683
|
Better error messages.
|
2015-11-26 16:21:54 -05:00 |
|
Rob Rix
|
ac470d3fbb
|
We no longer require a Storable instance for TSLength.
|
2015-11-26 16:17:25 -05:00 |
|
Rob Rix
|
8a2fac6816
|
Construct a singleton set.
|
2015-11-26 16:15:56 -05:00 |
|
Rob Rix
|
4505c0f7e3
|
Don’t qualify member and fromList .
|
2015-11-26 16:15:39 -05:00 |
|
Rob Rix
|
f6f4ea05ed
|
Don’t import Data.Map .
|
2015-11-26 16:14:34 -05:00 |
|
Rob Rix
|
54e931eabe
|
Handle the allocation within parseTreeSitterFile .
|
2015-11-26 16:09:16 -05:00 |
|
Rob Rix
|
be6dc5e627
|
Once more remove withAlloc.
|
2015-11-26 16:07:25 -05:00 |
|
Rob Rix
|
ab7fa792ed
|
Use alloca instead of withAlloc.
|
2015-11-26 16:07:21 -05:00 |
|
Rob Rix
|
018f4dcbd5
|
Operate strictly recursively.
This means we’re ensured of using allocations solely within the scopes
in which they are valid.
|
2015-11-26 16:07:04 -05:00 |
|
Rob Rix
|
19818231f5
|
We can safely alloca the root.
|
2015-11-26 15:37:57 -05:00 |
|
Rob Rix
|
49133ad240
|
Don’t import Generic.
|
2015-11-26 14:03:57 -05:00 |
|
Rob Rix
|
aaf4164e92
|
Don’t derive Generic.
|
2015-11-26 14:03:53 -05:00 |
|
Rob Rix
|
4d314d6729
|
Don’t import GHC.Prim.
|
2015-11-26 14:02:33 -05:00 |
|
Rob Rix
|
755cae0ae4
|
Don’t import CStorable.
|
2015-11-26 14:01:46 -05:00 |
|
Rob Rix
|
f15af07f2e
|
Don’t bother deriving CStorable.
|
2015-11-26 14:01:42 -05:00 |
|
Rob Rix
|
1e8c4b54ac
|
Just cheer when we’re done.
|
2015-11-26 14:01:16 -05:00 |
|
Rob Rix
|
1df3b71e2c
|
Rename the variable.
|
2015-11-25 18:42:21 -05:00 |
|
Rob Rix
|
5162128c40
|
What if malloc?
It no longer crashes, so, that’s cool.
|
2015-11-25 18:32:48 -05:00 |
|
Rob Rix
|
1eac4a8ab3
|
Fake out the storable instances.
|
2015-11-25 18:32:17 -05:00 |
|
Rob Rix
|
bf3fac3d53
|
What if these were records?
|
2015-11-25 18:32:05 -05:00 |
|
Rob Rix
|
b4bcc9ef47
|
Tidy up toTerm.
|
2015-11-25 18:31:54 -05:00 |
|
Rob Rix
|
d4d6210a19
|
Restore withAlloc.
|
2015-11-25 18:30:55 -05:00 |
|
Rob Rix
|
88e78d00d8
|
Fetch the node’s name once per node.
|
2015-11-25 17:11:43 -05:00 |
|
Rob Rix
|
7039beceea
|
Return fast on empty children lists.
|
2015-11-25 17:09:42 -05:00 |
|
Rob Rix
|
caf06cef5e
|
Don’t import the Haskell parser stuff.
|
2015-11-25 16:41:06 -05:00 |
|
Rob Rix
|
5158e28349
|
Up to but not including the count.
|
2015-11-25 15:22:18 -05:00 |
|
Rob Rix
|
4aadaae7b6
|
Convert name to a Haskell string.
|
2015-11-25 15:17:51 -05:00 |
|
Rob Rix
|
2fef254244
|
Disambiguate which member we mean.
|
2015-11-25 15:17:40 -05:00 |
|
Rob Rix
|
854225666b
|
Produce Fixed nodes.
|
2015-11-25 15:10:49 -05:00 |
|
Rob Rix
|
3f97be8df8
|
Remove withAlloc .
|
2015-11-25 15:05:24 -05:00 |
|
Rob Rix
|
ac6173fd8a
|
Just use alloca.
|
2015-11-25 15:05:10 -05:00 |
|
Rob Rix
|
debae6d3d4
|
Everything else is Indexed (for now).
|
2015-11-25 15:02:42 -05:00 |
|
Rob Rix
|
aa4de17445
|
Only use leaves for empty nodes.
|
2015-11-25 15:02:30 -05:00 |
|
Rob Rix
|
d6860a8934
|
Unpack the node and category another layer deep.
|
2015-11-25 15:02:11 -05:00 |
|
Rob Rix
|
855a8bc51b
|
Annotate terms with ranges.
|
2015-11-25 12:56:22 -05:00 |
|
Rob Rix
|
3f5ce3806d
|
Populate leaves with the substring for the node.
|
2015-11-25 12:54:42 -05:00 |
|
Rob Rix
|
8bc51c2f86
|
Compute a substring from a range.
|
2015-11-25 12:53:56 -05:00 |
|
Rob Rix
|
40a0bc0b91
|
Pass the contents of the file to toTerm.
|
2015-11-25 12:53:48 -05:00 |
|
Rob Rix
|
ba3e2d8256
|
Compute the range of a given node.
|
2015-11-25 12:51:11 -05:00 |
|
Rob Rix
|
c57dd1ef8f
|
Return the position & size directly.
Copying into TSLengths ended up being worst of both worlds.
|
2015-11-25 12:50:22 -05:00 |
|
Rob Rix
|
93e05435e5
|
Import position/size functions.
|
2015-11-25 12:25:06 -05:00 |
|
Rob Rix
|
5667f4d687
|
That is not where these live.
|
2015-11-25 12:24:07 -05:00 |
|
Rob Rix
|
1bb38abd71
|
Generalize withNode to withAlloc .
|
2015-11-25 12:19:39 -05:00 |
|
Rob Rix
|
2d60fea921
|
Remove the Kliesli import as we don’t actually use it.
|
2015-11-25 12:08:30 -05:00 |
|
Rob Rix
|
0f059a4299
|
Retrieve the named children of a node.
|
2015-11-25 12:06:21 -05:00 |
|
Rob Rix
|
b39bc3e33e
|
Produce a list of named children of a node.
|
2015-11-25 12:05:25 -05:00 |
|
Rob Rix
|
e87459d608
|
Import left-to-right Kliesli composition.
|
2015-11-25 12:05:05 -05:00 |
|
Rob Rix
|
17078ad865
|
Import the named child function.
|
2015-11-25 11:47:24 -05:00 |
|
Rob Rix
|
6c1688f7ef
|
Retrieve the named child count.
|
2015-11-25 11:43:36 -05:00 |
|
Rob Rix
|
9b35bd7f24
|
Import the named child count.
|
2015-11-25 11:43:31 -05:00 |
|
Rob Rix
|
3744714c59
|
Move the productions into toTerm .
|
2015-11-25 11:12:16 -05:00 |
|
Rob Rix
|
333bba93c5
|
Flesh out toTerm.
|
2015-11-25 10:52:48 -05:00 |
|
Rob Rix
|
b1a419e6ee
|
Pull toTerm out into global scope and parameterize by document .
|
2015-11-25 10:41:37 -05:00 |
|
Rob Rix
|
56ad4b9b9c
|
Retrieve the node’s name.
|
2015-11-25 10:39:13 -05:00 |
|
Rob Rix
|
3460632ab9
|
Import ts_node_p_name.
|
2015-11-25 10:09:05 -05:00 |
|
Rob Rix
|
277971ba16
|
Just Ptr, not Foreign.Ptr.
|
2015-11-25 10:06:14 -05:00 |
|
Rob Rix
|
cc7041f0e8
|
Match any category in the definition of toTerm.
|
2015-11-25 10:01:07 -05:00 |
|
Rob Rix
|
12e6c223b0
|
Add sets of keyed/fixed productions.
|
2015-11-25 10:00:52 -05:00 |
|
Rob Rix
|
5aa7306b78
|
Unambiguous unfolding.
|
2015-11-25 09:56:26 -05:00 |
|
Rob Rix
|
c95d2099b6
|
Hide unfoldM.
|
2015-11-25 09:56:14 -05:00 |
|
Rob Rix
|
a147cffe11
|
Use withNode for the root.
|
2015-11-25 09:38:28 -05:00 |
|
Rob Rix
|
048b1cb98f
|
Add a withNode function abstracting allocation & casting.
|
2015-11-25 09:37:44 -05:00 |
|
Rob Rix
|
ea490a3871
|
Rearrange the where clause &c.
|
2015-11-25 09:37:19 -05:00 |
|
Rob Rix
|
73c2ec7d33
|
Start unfolding a term.
|
2015-11-24 17:14:44 -05:00 |
|
Rob Rix
|
76784bf7e4
|
Extract parsing files.
|
2015-11-24 16:51:53 -05:00 |
|
Rob Rix
|
de65176a0a
|
Use withForeignPtr to clean up the root node.
|
2015-11-24 16:46:42 -05:00 |
|
Rob Rix
|
8c0496fb95
|
Just leak the root node already.
|
2015-11-24 16:42:10 -05:00 |
|
Rob Rix
|
0effaae938
|
Allocate a root node I guess.
|
2015-11-24 16:40:47 -05:00 |
|
Rob Rix
|
eaf365f4f6
|
Import the bridged TSNode thing.
|
2015-11-24 16:39:42 -05:00 |
|
Rob Rix
|
76e086cf8c
|
Implement Storable for TSLength.
|
2015-11-24 16:39:31 -05:00 |
|
Rob Rix
|
7879dccb63
|
TSNode’s fields are strict.
|
2015-11-24 14:35:56 -05:00 |
|
Rob Rix
|
2c5f17228b
|
TSLength’s fields are strict.
|
2015-11-24 14:35:40 -05:00 |
|
Rob Rix
|
cc3fd398b9
|
Extra space.
|
2015-11-24 14:32:12 -05:00 |
|
Rob Rix
|
31de4ca26b
|
Don’t use record syntax for TSNode.
|
2015-11-24 14:32:02 -05:00 |
|
Rob Rix
|
20b5fe1604
|
Don’t use record syntax for TSLength.
|
2015-11-24 14:31:41 -05:00 |
|
Rob Rix
|
778208b3b7
|
Nodes are product types.
|
2015-11-24 14:17:04 -05:00 |
|
Rob Rix
|
d60398f115
|
Include a node directly.
|
2015-11-24 14:16:56 -05:00 |
|