Rob Rix
|
9114c91d82
|
Dedent.
|
2015-10-29 15:39:26 -04:00 |
|
Rob Rix
|
e208e81e63
|
Guard clauses for the other paths.
|
2015-10-29 15:39:12 -04:00 |
|
Rob Rix
|
59da5ac57c
|
Rename the other files.
|
2015-10-29 15:38:35 -04:00 |
|
Rob Rix
|
d2439b85f4
|
Read the files directly.
|
2015-10-29 15:38:06 -04:00 |
|
Rob Rix
|
a16e0ede56
|
Pull the URLs into guard clauses.
|
2015-10-29 15:36:42 -04:00 |
|
Rob Rix
|
7f0d18934c
|
Use the language we got.
|
2015-10-29 15:34:00 -04:00 |
|
Rob Rix
|
1d077f60d5
|
Get the language out of the table.
|
2015-10-29 15:33:52 -04:00 |
|
Rob Rix
|
aa78a266dd
|
Capture the extensions.
|
2015-10-29 15:33:28 -04:00 |
|
Rob Rix
|
10a38fcff0
|
Guard against comparisons we can’t make.
|
2015-10-29 15:31:50 -04:00 |
|
Rob Rix
|
8c354ef30e
|
Get the paths as URLs.
|
2015-10-29 15:28:26 -04:00 |
|
Rob Rix
|
e51729aae6
|
termWithInput takes a language.
|
2015-10-29 15:20:59 -04:00 |
|
Rob Rix
|
c2fa2ff621
|
Capture a temporary holding the parser.
|
2015-10-29 15:20:31 -04:00 |
|
Rob Rix
|
c5dcd9dbd9
|
Capture the originating paths.
|
2015-10-29 15:19:35 -04:00 |
|
Rob Rix
|
bcb6cb5dc2
|
Merge branch 'master' into parse-c-sources
|
2015-10-29 15:17:30 -04:00 |
|
Rob Rix
|
2e76f541eb
|
Match against the predicate.
|
2015-10-29 15:12:16 -04:00 |
|
Rob Rix
|
2930932479
|
Add a set of productions to treat as Fixed.
|
2015-10-29 15:11:52 -04:00 |
|
Rob Rix
|
0fe57c4ccf
|
Match against the predicate.
|
2015-10-29 15:10:37 -04:00 |
|
Rob Rix
|
49efa1e952
|
Add a set of productions to treat as Keyed.
|
2015-10-29 15:10:30 -04:00 |
|
Rob Rix
|
c48a141418
|
Document the operator.
|
2015-10-29 15:09:57 -04:00 |
|
Rob Rix
|
7dc2c9e1a2
|
Add a ~= overload allowing predicates to appear in case clauses.
|
2015-10-29 15:09:52 -04:00 |
|
Rob Rix
|
a68de637c0
|
Add the C language to the table.
|
2015-10-29 15:00:07 -04:00 |
|
Rob Rix
|
e3042f5930
|
Bridge the C language to Swift.
|
2015-10-29 14:59:51 -04:00 |
|
Rob Rix
|
e89a745c31
|
Add a table of languages by file extension.
|
2015-10-29 14:59:18 -04:00 |
|
Rob Rix
|
4534dd4028
|
Add a TSLanguage typealias.
|
2015-10-29 14:58:07 -04:00 |
|
Josh Vera
|
f662d36721
|
Merge pull request #188 from github/several-dozen-fewer-klocs-of-c
Several dozen fewer klocs of C
|
2015-10-29 14:45:31 -04:00 |
|
Rob Rix
|
d67471524c
|
Extract Info into its own file.
|
2015-10-29 13:52:21 -04:00 |
|
Rob Rix
|
0307508daa
|
Group the parsers together logically.
|
2015-10-29 13:48:32 -04:00 |
|
Rob Rix
|
2d422ee92b
|
Add groups for the parsers.
This insulates us from accidentally selecting them and causing Xcode to
throw a fit.
|
2015-10-29 13:48:18 -04:00 |
|
Rob Rix
|
8117173ec8
|
Compile in the C parser.
|
2015-10-29 13:47:23 -04:00 |
|
Rob Rix
|
fc37264af2
|
Add the C parser as a submodule.
|
2015-10-29 13:45:09 -04:00 |
|
Rob Rix
|
7b1ece59fd
|
Replace the JS parser with the one from the submodule.
|
2015-10-29 13:32:48 -04:00 |
|
Rob Rix
|
62d589c27f
|
Add the JS grammar as a submodule.
|
2015-10-29 13:30:20 -04:00 |
|
Josh Vera
|
7acb9aaec4
|
Merge pull request #186 from github/optimize-ses-for-equal-terms
Short-circuit cost computations for equal terms.
|
2015-10-29 13:29:48 -04:00 |
|
Rob Rix
|
73f094cc29
|
Document the early return.
|
2015-10-29 13:16:16 -04:00 |
|
Rob Rix
|
17d0582331
|
Short-circuit cost computations for equal terms.
This is an optimization for SES allowing it to short-circuit cost
computations when it encounters equal terms.
|
2015-10-29 11:23:25 -04:00 |
|
Rob Rix
|
6b86defdf8
|
Only compute the substring when we’re going to use it.
|
2015-10-29 10:10:13 -04:00 |
|
Rob Rix
|
69cb807c98
|
Comments in objects use their substrings as their keys.
|
2015-10-29 10:09:46 -04:00 |
|
Rob Rix
|
68ca3f8e36
|
Patch.sum gives better results than Patch.difference.
|
2015-10-29 10:05:30 -04:00 |
|
Rob Rix
|
364a79a8fb
|
Construct leaves with their corresponding substring.
|
2015-10-29 10:04:38 -04:00 |
|
Rob Rix
|
cea790eeb1
|
Use the substring convenience.
|
2015-10-29 10:03:53 -04:00 |
|
Rob Rix
|
54a577abc4
|
Add a convenience method to get the substring.
|
2015-10-29 10:03:11 -04:00 |
|
Rob Rix
|
297be40c2d
|
Key, not name.
|
2015-10-29 10:03:02 -04:00 |
|
Rob Rix
|
8aa18d8263
|
Use the UTF16 integer range subscript.
|
2015-10-29 10:01:31 -04:00 |
|
Rob Rix
|
0b2f363c29
|
Subscript UTF16 views with integer ranges.
|
2015-10-29 10:00:56 -04:00 |
|
Rob Rix
|
5dfd596b72
|
Remove the anonymous error type.
|
2015-10-28 18:51:10 -04:00 |
|
Rob Rix
|
a3d72521d8
|
Delete the custom range function.
|
2015-10-28 18:49:28 -04:00 |
|
Rob Rix
|
1ed4b68378
|
Restrict comparisons by category.
|
2015-10-28 18:45:50 -04:00 |
|
Rob Rix
|
b0f6854460
|
Lots of other things can be fixed.
|
2015-10-28 18:42:10 -04:00 |
|
Rob Rix
|
2b4f665ae0
|
Describe why there’s a default case.
|
2015-10-28 18:33:04 -04:00 |
|
Rob Rix
|
746723963c
|
Deal with comments inside object literals.
|
2015-10-28 18:32:34 -04:00 |
|
Rob Rix
|
dc148e31cb
|
Don’t bother erasing the children collection.
|
2015-10-28 18:23:58 -04:00 |
|
Rob Rix
|
e2e37a011d
|
Compute the count eagerly.
|
2015-10-28 18:22:53 -04:00 |
|
Rob Rix
|
8d4bc19dc1
|
Throw a string when we can’t make a String for a node name.
|
2015-10-28 18:17:16 -04:00 |
|
Rob Rix
|
b933d3ce0d
|
String is an adequate ErrorType.
|
2015-10-28 18:17:01 -04:00 |
|
Rob Rix
|
b004a800b9
|
Terms’ annotations are Info s.
|
2015-10-28 18:12:16 -04:00 |
|
Rob Rix
|
08120cb79f
|
Use the range’s JSON property.
|
2015-10-28 18:11:22 -04:00 |
|
Rob Rix
|
ba33e1c4a3
|
Ranges have a JSON property.
|
2015-10-28 18:11:01 -04:00 |
|
Rob Rix
|
ae6ecef9c2
|
Try constructing explicitly.
Maybe Xcode 7.0 will like this one better.
|
2015-10-28 18:07:04 -04:00 |
|
Rob Rix
|
04eaeffb1b
|
Info has a set of string categories.
|
2015-10-28 17:51:54 -04:00 |
|
Rob Rix
|
ef7ce734d7
|
Arrays of CustomJSONConvertible elements have a JSON property.
|
2015-10-28 17:51:27 -04:00 |
|
Rob Rix
|
6688f223fe
|
Use strings for the categories.
|
2015-10-28 17:48:51 -04:00 |
|
Rob Rix
|
f7f45444e0
|
Try to compute the name from the contents of the string.
|
2015-10-28 17:41:02 -04:00 |
|
Rob Rix
|
28ddedb967
|
Use the range property.
|
2015-10-28 17:36:29 -04:00 |
|
Rob Rix
|
06de75a3be
|
Add a range property.
|
2015-10-28 17:36:23 -04:00 |
|
Rob Rix
|
6135553861
|
Find the correct keys within objects.
|
2015-10-28 17:32:11 -04:00 |
|
Rob Rix
|
691030332a
|
Correct how names and categories are found.
|
2015-10-28 17:28:58 -04:00 |
|
Rob Rix
|
b13d3f7d59
|
Use the category method.
|
2015-10-28 17:24:41 -04:00 |
|
Rob Rix
|
90caa11870
|
Factor the private error type out.
|
2015-10-28 17:23:31 -04:00 |
|
Rob Rix
|
fac848e452
|
Compute nodes’ categories.
|
2015-10-28 17:23:06 -04:00 |
|
Rob Rix
|
fa137b30d8
|
Use the name accessor.
|
2015-10-28 16:56:00 -04:00 |
|
Rob Rix
|
56a87154de
|
Add a method returning the node’s name as a Swift string.
|
2015-10-28 16:55:42 -04:00 |
|
Rob Rix
|
3b757bd1e7
|
Add a TSDocument typealias.
|
2015-10-28 16:55:28 -04:00 |
|
Rob Rix
|
a87434c683
|
Move the collection to the bottom.
|
2015-10-28 16:28:37 -04:00 |
|
Rob Rix
|
bd900197bc
|
Note that the object map is incorrect.
|
2015-10-28 16:21:17 -04:00 |
|
Rob Rix
|
cdca67f8eb
|
Handle pairs as Fixed.
|
2015-10-28 16:20:39 -04:00 |
|
Rob Rix
|
9d52d02214
|
Object literals are keyed.
|
2015-10-28 16:18:38 -04:00 |
|
Rob Rix
|
2a42c9554d
|
Use the namedChildren collection’s count.
|
2015-10-28 15:38:20 -04:00 |
|
Rob Rix
|
156fb463f9
|
Map over the named child collection.
|
2015-10-28 15:31:08 -04:00 |
|
Rob Rix
|
5532001d94
|
Add a collection of named children.
|
2015-10-28 15:27:20 -04:00 |
|
Rob Rix
|
a674548395
|
Add a collection of children.
|
2015-10-28 15:22:29 -04:00 |
|
Rob Rix
|
1f9be9ecac
|
Add a private collection type for node children.
|
2015-10-28 15:22:21 -04:00 |
|
Rob Rix
|
5f121471b5
|
Switch on the category.
|
2015-10-28 15:05:25 -04:00 |
|
Rob Rix
|
a40edc906d
|
Revert "Terms are annotated with Info ."
This reverts commit d5f4e70140a5ca808ed23ca4e4e2f4204c84e537.
|
2015-10-28 14:55:45 -04:00 |
|
Rob Rix
|
ab7c0d172c
|
Terms are annotated with Info .
|
2015-10-28 14:41:13 -04:00 |
|
Rob Rix
|
9d0805c228
|
Revert "Revert "Don’t constrain the type to the protocol, pass it in directly.""
This reverts commit c813e703e4ee963d94c1d45e7c935731a4eb0c7e.
|
2015-10-28 14:38:56 -04:00 |
|
Rob Rix
|
a4da6cd33c
|
Revert "Revert "Add a constructor to JSON which takes a CustomJSONConvertible.""
This reverts commit 6ea523a327bed0ce54e8d56373604f1a64c83200.
|
2015-10-28 14:38:51 -04:00 |
|
Rob Rix
|
502696a992
|
Info is Categorizable.
|
2015-10-28 14:38:17 -04:00 |
|
Rob Rix
|
0371c51340
|
Revert "Add a constructor to JSON which takes a CustomJSONConvertible."
This reverts commit 9e0d4208bed25824275ccc34092b8659fa316a2b.
|
2015-10-28 14:37:12 -04:00 |
|
Rob Rix
|
cdf4848357
|
Revert "Don’t constrain the type to the protocol, pass it in directly."
This reverts commit fb68f0c0ba30c0691c72170efa5c5204a027c8aa.
|
2015-10-28 14:37:08 -04:00 |
|
Rob Rix
|
4b47650de6
|
Revert "Can construct JSON from array literals of CustomJSONConvertible."
This reverts commit cabc221180851e236d39c717db2eefa9edc9f312.
|
2015-10-28 14:37:04 -04:00 |
|
Rob Rix
|
4f2e61054e
|
Can construct JSON from array literals of CustomJSONConvertible.
|
2015-10-28 14:34:44 -04:00 |
|
Rob Rix
|
51dc49f3e0
|
Don’t constrain the type to the protocol, pass it in directly.
|
2015-10-28 14:34:16 -04:00 |
|
Rob Rix
|
04a782b5d0
|
Clean up the range function.
|
2015-10-28 14:32:59 -04:00 |
|
Rob Rix
|
5d6e10e25a
|
Add a constructor to JSON which takes a CustomJSONConvertible.
|
2015-10-28 14:31:20 -04:00 |
|
Rob Rix
|
53217d03e5
|
Info is CustomJSONConvertible.
|
2015-10-28 14:27:52 -04:00 |
|
Rob Rix
|
039ada73bf
|
Info is Equatable.
|
2015-10-28 14:23:58 -04:00 |
|
Rob Rix
|
a0e8d918dc
|
Move Category into Info.
|
2015-10-28 14:22:55 -04:00 |
|
Rob Rix
|
2ea54805f1
|
Add an Info structure.
|
2015-10-28 14:22:07 -04:00 |
|
Rob Rix
|
83328cc0d0
|
Compute the categories for each node.
|
2015-10-28 14:20:46 -04:00 |
|
Rob Rix
|
c5685aa586
|
Add a Category type for the syntactic categories in a grammar under TSNode .
|
2015-10-28 14:13:41 -04:00 |
|
Rob Rix
|
173eb068a1
|
Compute histograms for both terms.
|
2015-10-28 14:03:53 -04:00 |
|
Rob Rix
|
a89657250b
|
Throw an error and return nil if we can’t make a Swift string from some node’s name.
|
2015-10-28 12:33:03 -04:00 |
|
Rob Rix
|
f2c1cf871b
|
Extract the name into a temporary.
|
2015-10-28 12:21:34 -04:00 |
|
Rob Rix
|
4d1d7d62e8
|
Patch.difference rethrows errors.
|
2015-10-28 12:15:36 -04:00 |
|
Rob Rix
|
89cd067c8f
|
Patch.sum rethrows errors.
|
2015-10-28 12:15:18 -04:00 |
|
Rob Rix
|
c36b1df02b
|
Patch.difference ’s argument does not escape.
|
2015-10-28 12:14:58 -04:00 |
|
Rob Rix
|
5c44771b02
|
Patch.sum ’s argument does not escape.
|
2015-10-28 12:14:43 -04:00 |
|
Rob Rix
|
0f7d7b2770
|
Patch.map rethrows errors.
|
2015-10-28 12:14:15 -04:00 |
|
Rob Rix
|
c03871468e
|
CofreeType.ana rethrows errors.
|
2015-10-28 12:11:41 -04:00 |
|
Rob Rix
|
b28038cb63
|
CofreeType.ana ’s argument does not escape.
|
2015-10-28 12:11:02 -04:00 |
|
Rob Rix
|
79dce9ba64
|
Implement CofreeType.ana without composition or application operators.
Once again, Swift doesn’t understand its own transitivity.
|
2015-10-28 12:10:37 -04:00 |
|
Rob Rix
|
010f45c15e
|
Cofree.map rethrows errors.
|
2015-10-28 12:09:04 -04:00 |
|
Rob Rix
|
29e8a7598b
|
Cofree.map ’s argument does not escape.
|
2015-10-28 12:08:27 -04:00 |
|
Rob Rix
|
17987eff80
|
Free.ana rethrows errors.
|
2015-10-28 12:07:23 -04:00 |
|
Rob Rix
|
33bd0c5644
|
Free.ana ’s argument does not escape.
|
2015-10-28 12:06:30 -04:00 |
|
Rob Rix
|
f469b4f691
|
Implement Free.ana without application or composition operators.
Swift can’t trace `noescape` or `rethrows` transitively through them.
|
2015-10-28 12:05:40 -04:00 |
|
Rob Rix
|
8ca7cf7599
|
Free.merge ’s argument does not escape.
|
2015-10-28 12:04:56 -04:00 |
|
Rob Rix
|
d7eb23d291
|
Free.cata rethrows errors.
|
2015-10-28 11:58:13 -04:00 |
|
Rob Rix
|
9228031f5d
|
Free.flatMap rethrows errors.
|
2015-10-28 11:57:29 -04:00 |
|
Rob Rix
|
feabaa01a7
|
Free.map rethrows errors.
|
2015-10-28 11:56:49 -04:00 |
|
Rob Rix
|
abab6f3c7b
|
Free.sum ’s cost function does not escape.
|
2015-10-28 11:55:38 -04:00 |
|
Rob Rix
|
9f60616f8b
|
Free.reduce ’s combining function does not escape.
|
2015-10-28 11:55:06 -04:00 |
|
Rob Rix
|
2252f8dbe6
|
Free.analysis rethrows errors.
|
2015-10-28 11:54:40 -04:00 |
|
Rob Rix
|
11a2d2700a
|
Free.cata ’s argument does not escape.
|
2015-10-28 11:53:47 -04:00 |
|
Rob Rix
|
d4aaf2eb55
|
Syntax.map rethrows errors.
|
2015-10-28 11:51:43 -04:00 |
|
Rob Rix
|
602522dd21
|
A few MB less whitespace.
|
2015-10-27 19:31:33 -04:00 |
|
Rob Rix
|
3bb61d1cc1
|
Ignore all JSON files in the UI folder.
|
2015-10-27 18:59:03 -04:00 |
|
Rob Rix
|
4f1c52ac24
|
Use a different JSON output for doubt-difftool.
|
2015-10-27 18:58:35 -04:00 |
|
Rob Rix
|
c129fbcdcd
|
Load the JSON from the queried path or diff.json.
|
2015-10-27 18:57:08 -04:00 |
|
Rob Rix
|
74b2099a02
|
Add a query with the path to the JSON.
|
2015-10-27 18:56:53 -04:00 |
|
Rob Rix
|
8fbc71270e
|
Open the URL of the UI.
|
2015-10-27 18:53:48 -04:00 |
|
Rob Rix
|
bf5b5616d5
|
Pass the UI page to the difftool.
|
2015-10-27 18:53:40 -04:00 |
|
Rob Rix
|
e64f01bf03
|
Load the fixtures and write out the diff to a given path.
|
2015-10-27 18:46:16 -04:00 |
|
Rob Rix
|
19eb676e8e
|
Add before/after fixtures.
|
2015-10-27 18:45:26 -04:00 |
|
Rob Rix
|
c3c391f2cf
|
Write the output to the third path.
|
2015-10-27 18:39:11 -04:00 |
|
Rob Rix
|
d120a5dac5
|
Serialize the diff to JSON.
|
2015-10-27 18:38:31 -04:00 |
|
Rob Rix
|
33de066844
|
Diff two terms.
|
2015-10-27 18:38:25 -04:00 |
|
Rob Rix
|
abfe582247
|
Use the Term typealias.
|
2015-10-27 18:37:59 -04:00 |
|
Rob Rix
|
1df957877e
|
Add a typealias for Terms.
|
2015-10-27 18:37:34 -04:00 |
|
Rob Rix
|
db01456d8d
|
Remove the POSIX file reading stuff.
|
2015-10-27 18:30:02 -04:00 |
|
Rob Rix
|
dfbbabd898
|
Load files into strings.
|
2015-10-27 18:29:44 -04:00 |
|
Rob Rix
|
9af1cb41a8
|
Add a readFile function.
|
2015-10-27 18:29:27 -04:00 |
|
Rob Rix
|
0eb13e39c0
|
Extract a function to parse a term.
|
2015-10-27 18:26:39 -04:00 |
|
Rob Rix
|
c14d82d737
|
Check that we have a valid file in the TSInput constructor.
|
2015-10-27 18:23:26 -04:00 |
|
Rob Rix
|
8615eec2c6
|
Only collect the named children.
|
2015-10-27 18:20:21 -04:00 |
|
Rob Rix
|
06185b9b4f
|
Merge branch 'master' into parse-with-tree-sitter
Conflicts:
prototype/Doubt.xcodeproj/project.pbxproj
|
2015-10-27 18:15:53 -04:00 |
|
Rob Rix
|
97a7a105d2
|
Map to source ranges.
|
2015-10-27 18:13:49 -04:00 |
|
Rob Rix
|
76a67a7d8e
|
Reformat.
|
2015-10-27 18:10:17 -04:00 |
|
Rob Rix
|
3f61255915
|
Capture node names, not strings.
|
2015-10-27 18:09:30 -04:00 |
|
Rob Rix
|
52a63856a8
|
Produce indexed nodes.
|
2015-10-27 18:09:23 -04:00 |
|