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
|
0b735a697d
|
None of these may be NULL.
|
2015-11-25 15:01:27 -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
|
6444566952
|
Bridge node sizing.
|
2015-11-25 12:22:21 -05:00 |
|
Rob Rix
|
81d529dee8
|
Bridge node positions.
|
2015-11-25 12:21:47 -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
|
4f63394379
|
Add a wrapper function for getting the child at a specific index.
|
2015-11-25 11:46:34 -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
|
5b6c88b6b8
|
Add a bridging function wrapping ts_node_named_child_count.
|
2015-11-25 11:42: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
|
8030d173a2
|
Bridge a function for getting a node’s name.
|
2015-11-25 10:08:16 -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
|
cb08d79464
|
Add some bridges and stuff.
|
2015-11-24 16:39:20 -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 |
|
Rob Rix
|
ff5797fde5
|
TSLength is many things.
|
2015-11-24 14:13:41 -05:00 |
|
Rob Rix
|
3bc87b03aa
|
Add a TSLength type.
|
2015-11-24 14:13:15 -05:00 |
|
Rob Rix
|
9b47c6af58
|
Fetch the root node.
This crashes; `TSNode` is not an opaque pointer to a struct, it’s
actually a product type.
|
2015-11-24 14:08:29 -05:00 |
|
Rob Rix
|
a97dc752d8
|
Try importing the root node getter.
|
2015-11-24 14:08:08 -05:00 |
|
Rob Rix
|
13bc8afef6
|
In fact, free the document first.
|
2015-11-24 13:53:42 -05:00 |
|
Rob Rix
|
86bf87b6a8
|
Free the document at the end too I guess.
|
2015-11-24 13:53:35 -05:00 |
|
Rob Rix
|
7ab0b76abf
|
Import ts_document_free.
|
2015-11-24 13:53:13 -05:00 |
|
Rob Rix
|
c2cc953e9c
|
Parse the document.
|
2015-11-24 13:52:45 -05:00 |
|
Rob Rix
|
d1c33c2ef4
|
Import ts_document_parse.
|
2015-11-24 13:52:16 -05:00 |
|
Rob Rix
|
009025d22a
|
Free the input string.
|
2015-11-24 13:51:34 -05:00 |
|
Rob Rix
|
4b0dae5eb7
|
Set the input string.
|
2015-11-24 13:51:21 -05:00 |
|
Rob Rix
|
f8918f815e
|
Build an empty C string.
|
2015-11-24 13:51:18 -05:00 |
|
Rob Rix
|
dea11341b4
|
Import ts_document_set_input_string.
|
2015-11-24 13:50:10 -05:00 |
|
Rob Rix
|
8944e704c1
|
Set the document’s language.
|
2015-11-24 13:46:00 -05:00 |
|
Rob Rix
|
186bf4578a
|
Select the language.
|
2015-11-24 13:45:54 -05:00 |
|
Rob Rix
|
2569450ea6
|
It actually takes a language too.
|
2015-11-24 13:45:12 -05:00 |
|
Rob Rix
|
77ff71011e
|
Import ts_document_set_language.
|
2015-11-24 13:44:24 -05:00 |
|
Rob Rix
|
0383f8fa7b
|
Add a space.
|
2015-11-24 13:42:09 -05:00 |
|
Rob Rix
|
682beed88e
|
Make a document and print the size.
|
2015-11-24 13:41:30 -05:00 |
|
Rob Rix
|
8faa070a67
|
Handle errors.
|
2015-11-24 13:40:07 -05:00 |
|
Rob Rix
|
d71b7769b9
|
Import ts_document_make.
|
2015-11-24 13:23:29 -05:00 |
|
Rob Rix
|
34ccb0e368
|
Import the language type as TSLanguage.
|
2015-11-24 13:23:18 -05:00 |
|
Rob Rix
|
4e5da737bd
|
Import ts_language_c .
|
2015-11-24 13:15:45 -05:00 |
|
Rob Rix
|
217fd1529c
|
Delete all the Haskell parsing stuff.
|
2015-11-24 10:18:56 -05:00 |
|
Rob Rix
|
b2ed7144e2
|
Ingest data declarations, sort of.
|
2015-11-24 10:16:37 -05:00 |
|
Rob Rix
|
5d5921001b
|
Ingest type declarations, sort of.
|
2015-11-24 10:16:25 -05:00 |
|
Rob Rix
|
eb51a0cd18
|
Add HsName to Leaf.
|
2015-11-24 10:16:17 -05:00 |
|
Rob Rix
|
5c6a2ca1bc
|
fromMaybe .
|
2015-11-20 13:21:09 -08:00 |
|
Rob Rix
|
9cf6a823ef
|
Ingest HsImportDecl.
|
2015-11-20 13:02:29 -08:00 |
|
Rob Rix
|
37e61a75e6
|
Ingest export specifiers.
|
2015-11-20 13:00:10 -08:00 |
|
Rob Rix
|
9a4d1725fc
|
Add a Leaf type with some constructors.
|
2015-11-20 12:59:53 -08:00 |
|
Rob Rix
|
af0ebfa696
|
Ingest exports/imports/declarations.
|
2015-11-20 08:55:19 -08:00 |
|
Rob Rix
|
2ac3f65b15
|
Stub in ingestion of exports/imports/declarations.
|
2015-11-20 08:55:08 -08:00 |
|
Rob Rix
|
bf2c4bc18b
|
Pretend like we can make a module into a term.
|
2015-11-20 08:50:11 -08:00 |
|
Rob Rix
|
58cffa4e4c
|
Read some files in.
|
2015-11-20 08:36:54 -08:00 |
|
Rob Rix
|
28f93515bb
|
Remove the fixtures.
|
2015-11-20 08:12:00 -08:00 |
|
Rob Rix
|
891d2b75a1
|
Use unit in the fixtures.
|
2015-11-19 12:04:07 -08:00 |
|
Rob Rix
|
e6385e2832
|
Diffs are annotated.
|
2015-11-19 11:27:31 -08:00 |
|
Rob Rix
|
680465dfbf
|
Abstract Diff over an annotation type.
|
2015-11-18 13:23:47 -08:00 |
|
Rob Rix
|
5129bc455b
|
Move the diff fixture thing to the executable.
|
2015-11-18 11:45:23 -08:00 |
|
Rob Rix
|
c56cc6cb74
|
We don’t need to import these.
|
2015-11-17 16:20:57 -08:00 |
|
Rob Rix
|
c8b573cb33
|
Move Operation into its own file.
|
2015-11-17 15:14:57 -08:00 |
|
Rob Rix
|
5837cac53f
|
Print a string.
|
2015-11-17 14:54:16 -08:00 |
|
Rob Rix
|
e5b35fdc4a
|
I mean, sure.
|
2015-11-17 14:44:16 -08:00 |
|