joshvera
5c4dde8d54
fix up test fixtures
...
Co-Authored-By: Rick Winfrey <rick.winfrey@gmail.com>
2018-11-15 13:24:46 -05:00
joshvera
8a4aa24889
Add a function call example
...
Co-Authored-By: Rick Winfrey <rick.winfrey@gmail.com>
2018-11-14 19:18:52 -05:00
joshvera
fb5e4400a1
modify test files
...
Co-Authored-By: Rick Winfrey <rick.winfrey@gmail.com>
2018-11-13 14:09:20 -05:00
joshvera
4fed5eb1e7
export baz in a.ts
2018-11-13 12:06:05 -05:00
joshvera
f9c6590f61
Remove baz export
...
Co-Authored-By: Rick Winfrey <rick.winfrey@gmail.com>
2018-11-09 13:05:48 -05:00
joshvera
4c02f11edc
add main3.ts
...
Co-Authored-By: Rick Winfrey <rick.winfrey@gmail.com>
2018-11-09 13:05:26 -05:00
Timothy Clem
8c0dd6d3b5
Just return the first line if function defs span multiple lines
2018-11-07 11:48:50 -08:00
Timothy Clem
343289f1c5
Merge remote-tracking branch 'origin/master' into docstrings-round2
2018-11-06 09:17:49 -08:00
Timothy Clem
e14f59b165
Re-generate test with addition of statements in python assignment
2018-11-05 13:12:50 -08:00
Timothy Clem
bdb7ee0430
More tests
2018-11-05 13:09:37 -08:00
Timothy Clem
d0fc88efee
Some python specs for tags
2018-11-05 12:33:23 -08:00
Patrick Thomson
7ea52dbfe3
Give Control.Matching API better ergonomics.
...
Given that @tclem and I have found the matcher API frustrating, I've
taken a stab at improving its ergonomics, and I've found some success
in separating composition of matchers from predicate-based narrowing
thereof.
The biggest change here is the elimination of the old `match`
combinator, which proved to be clumsy in that it complected narrowing
and composition. Top-down matching combinators are now written with
the `need` combinator and the `>>>` combinator, which is more readable
and more versatile. Here's a matcher that accepts functions with
Python docstrings:
```haskell
docstringMatcher :: ( Decl.Function :< fs
, [] :< fs
, Lit.TextElement :< fs
, term ~ Term (Sum fs) ann
) => Matcher term term
docstringMatcher = target <*
(need Decl.functionBody
>>> narrow @[]
>>> mhead
>>> narrow @Lit.TextElement
>>> ensure Lit.isTripleQuoted))
```
Pretty readable, right? Each step of the tree regular expression -
choosing function bodies, ensuring said bodies are lists, examining
the first element, and choosing only TextElements containing
triple-quoted strings - is made implicit. The old way would have
looked something like this:
```haskell
docstringMatcher = target <* match Decl.functionBody
$ narrow
$ matchM listToMaybe
$ target <* ensure Lit.isTripleQuoted
```
which is a good deal more disorganized and less flexible
in the quite-common case of applying functions during a
matching pass. Separating the act of composition from
function application is a big win here.
Further comments are inline.
2018-11-02 19:25:29 -04:00
Timothy Clem
0f56f33f24
Introduce some symbol/tags tests
2018-11-02 13:55:30 -07:00
Timothy Clem
018dc73af9
Python assignment: conditionally include annotation on functions
2018-11-02 12:39:38 -07:00
Timothy Clem
4ef4c63851
I changed functions in python that don't have annotations
2018-11-01 17:48:27 -07:00
Patrick Thomson
22cf72c20f
Merge branch 'master' into term-rewriting-mk2
2018-09-19 11:51:28 -04:00
Timothy Clem
a25e848c9f
Fix assigning comments with multiple elif in Python
2018-09-18 10:43:18 -07:00
Patrick Thomson
6e65f9060d
Merge remote-tracking branch 'origin/master' into term-rewriting-mk2
2018-09-18 13:31:58 -04:00
Timothy Clem
344873f0f7
Go corpus back the other way?
2018-09-17 11:26:47 -07:00
Timothy Clem
c97d43aaca
Refinement of types is Go
2018-09-17 09:56:31 -07:00
Timothy Clem
883d4586c0
TypeScript fixes for more type identifiers
2018-09-17 09:48:47 -07:00
Timothy Clem
80dfd75635
Ruby corpus changes
2018-09-17 09:30:03 -07:00
Patrick Thomson
ec7ee9da62
improve JSON formatting so the diff doesn't whine
2018-09-17 10:52:28 -04:00
Patrick Thomson
d1cc400dc0
add spec file
2018-09-14 13:10:22 -04:00
Timothy Clem
addc6a6c6f
Fix a few more go fixtures
2018-09-10 15:41:16 -07:00
Timothy Clem
ceed3b0ae4
Fix a few test fixtures due to structure changes
2018-09-10 11:15:34 -07:00
Timothy Clem
0931fc81f2
Add a simple roundtrip spec for python printing
2018-08-28 10:31:54 -07:00
Timothy Clem
68a93c6740
Python example code
2018-08-28 09:12:56 -07:00
Timothy Clem
9a347c9d27
Tokenize and print subtraction as well
2018-08-24 14:07:49 -07:00
Timothy Clem
1bb0e3c149
Handle printing binary multiplication with precedence!
2018-08-24 10:59:09 -07:00
Timothy Clem
e9e8edbebe
Dedicated util for rewriting
2018-08-24 10:35:38 -07:00
Patrick Thomson
0d4aaef985
Merge branch 'master' into source-aware-reprinter
2018-08-23 18:32:58 -04:00
Ayman Nadeem
4be365ddcb
add test
2018-08-23 11:25:20 -04:00
Timothy Clem
3214519718
Very basic test for ruby printing
2018-08-22 13:47:30 -07:00
Timothy Clem
945712bca6
Examples
2018-08-21 13:25:14 -07:00
Timothy Clem
1a9200b783
tokenizing for Ruby blocks (functions)
2018-08-21 13:17:13 -07:00
Timothy Clem
5ac0b5a900
Continue to refine tokenize api with Ruby as example
2018-08-21 11:16:39 -07:00
Timothy Clem
b0311ff77e
Ruby test hardness for ghci
2018-08-20 18:11:41 -07:00
Timothy Clem
cd3233549a
WIP, language translation as an additional step in pipeline
2018-08-17 15:17:14 -07:00
Ayman Nadeem
5891fe8510
add tests for lshift, rshift, unsignedRshift
2018-08-17 13:26:34 -04:00
Ayman Nadeem
a5c7010f85
add test file for bxor
2018-08-17 13:24:40 -04:00
Ayman Nadeem
c76948c76a
add test for bitwise and
2018-08-17 13:23:53 -04:00
Ayman Nadeem
18694f8143
add test for bitwise OR
2018-08-17 13:22:48 -04:00
Ayman Nadeem
0e8bb70dfd
Merge remote-tracking branch 'origin/master' into evaluatable-instances
2018-08-16 14:46:59 -04:00
Timothy Clem
b39721ec4f
Be consistent with 2 spaces for now
2018-08-15 14:01:53 -07:00
Timothy Clem
487c78b854
Merge remote-tracking branch 'origin/master' into source-aware-reprinter
2018-08-13 15:56:26 -07:00
Rick Winfrey
9e87ea9fc5
Update python fixtures
...
I think this got lost when merging in master
2018-08-13 12:48:47 -07:00
Ayman Nadeem
bb71c4543d
add evaluatable instance for await
2018-08-13 15:18:54 -04:00
Rick Winfrey
62fb9635e0
Merge branch 'master' into update-haskell-tree-sitter
2018-08-13 11:36:10 -07:00
Rick Winfrey
f0daabaf9a
Update go fixtures
2018-08-13 11:29:01 -07:00
Ayman Nadeem
d107446abf
re-generate ruby example
2018-08-13 10:43:44 -04:00
Ayman Nadeem
b54f175ebf
update examples
2018-08-13 10:20:13 -04:00
Rick Winfrey
686e1e6d09
Update fixtures
2018-08-10 14:33:39 -07:00
Rick Winfrey
bb23084035
Add future import statement test fixtures
2018-08-10 10:11:01 -07:00
Rick Winfrey
062fa896a4
Update test fixtures
2018-08-09 18:41:58 -07:00
Ayman Nadeem
a3c36b89ef
add evaluatable instance and test for delete
...
Co-Authored-By: Josh Vera <vera@github.com>
2018-08-09 17:55:59 -04:00
Ayman Nadeem
75aa8f7662
add tests for void
2018-08-09 16:41:29 -04:00
Ayman Nadeem
7ee4bad173
add sequence expression to test spec
...
Co-Authored-By: Josh Vera <vera@github.com>
2018-08-09 16:08:20 -04:00
Ayman Nadeem
29a49ca4fb
regenerate failing python tests
2018-08-09 15:29:31 -04:00
Patrick Thomson
805cea9000
a 'contextually' node exists
2018-08-07 14:09:50 -04:00
Charlie Somerville
6c7df4e5bc
remove TypeScript specific This syntax type
2018-08-02 16:00:21 +10:00
Charlie Somerville
7cc858acf0
Identifier -> This in test fixtures
2018-08-02 14:21:40 +10:00
Charlie Somerville
72ba35dd1d
regenerate diff fixtures
2018-08-02 14:15:50 +10:00
Charlie Somerville
6f472596a5
Merge branch 'master' into charliesome/context
2018-08-02 12:47:53 +10:00
Patrick Thomson
0a82d053d9
Found the bug: defaulting whenRefactored was wrong.
2018-08-01 12:13:10 -04:00
Charlie Somerville
b5f6edb942
fix self in ruby assignment
2018-08-01 15:01:12 +10:00
Patrick Thomson
88cd915ced
working reprinting tests
2018-07-30 20:05:44 -04:00
Patrick Thomson
a61fe301c4
Skeleton and initial test case
2018-07-30 16:00:09 -04:00
Rob Rix
05d2683012
Merge branch 'master' into test-java-assignment-part-2
2018-07-26 09:23:09 -04:00
Ayman Nadeem
8fdab3f08e
test class literal
2018-07-24 18:31:09 -04:00
Ayman Nadeem
c07120fcca
add wildcard
2018-07-24 18:24:50 -04:00
Ayman Nadeem
41e5165195
test while
2018-07-24 18:23:08 -04:00
Ayman Nadeem
7a7c9ba222
test variable declaration
2018-07-24 18:20:57 -04:00
Ayman Nadeem
632bf50506
test update expression
2018-07-24 18:18:59 -04:00
Ayman Nadeem
cc2cf50b98
test throws, trycatches and type argument
2018-07-24 18:17:42 -04:00
Ayman Nadeem
448999e68d
test try with resources statement
2018-07-24 18:12:47 -04:00
Ayman Nadeem
9fc621c9f4
test switch statement
2018-07-24 17:54:43 -04:00
Ayman Nadeem
794dbf82d4
test strings
2018-07-24 17:51:32 -04:00
Ayman Nadeem
562beec816
test spread parameter
2018-07-24 17:47:52 -04:00
Ayman Nadeem
32d6af0e9d
test scoped identifiers
2018-07-24 17:45:09 -04:00
Ayman Nadeem
6e82ab5410
llama expression
2018-07-24 17:31:50 -04:00
Ayman Nadeem
f524368c0b
interface declaration tests
2018-07-24 17:06:07 -04:00
Ayman Nadeem
533b72930b
test integers
2018-07-24 17:01:12 -04:00
Ayman Nadeem
9d2e734a77
Import statement
2018-07-24 16:56:38 -04:00
Ayman Nadeem
2e3755fdd8
test if statements
2018-07-24 16:53:08 -04:00
Ayman Nadeem
7d4ff71cff
test For loop
2018-07-24 16:51:48 -04:00
Ayman Nadeem
c5e5f0b97f
test float
2018-07-24 15:29:54 -04:00
Ayman Nadeem
a905e30e47
test field access
2018-07-24 12:53:35 -04:00
Ayman Nadeem
876ab5d11d
test EnumDeclaration
2018-07-24 12:43:13 -04:00
Ayman Nadeem
c0c2e2033b
test DoWhile
2018-07-24 12:42:44 -04:00
Ayman Nadeem
465a66ceca
test dims
2018-07-24 12:04:09 -04:00
Ayman Nadeem
31f44bdee6
test continue statement
2018-07-24 11:57:51 -04:00
Josh Vera
7b025c6e49
Merge branch 'master' into bump-tree-sitter
2018-07-23 19:55:21 -04:00
Ayman Nadeem
5a98bb68a5
test array access
2018-07-23 18:36:46 -04:00
Ayman Nadeem
6237546e10
test AssertStatement
2018-07-23 18:36:37 -04:00
Ayman Nadeem
5aabbddb8f
test binary expressions
2018-07-23 18:36:27 -04:00
Ayman Nadeem
52f0457979
test boolean
2018-07-23 18:36:10 -04:00
Ayman Nadeem
55dac7c93d
test char
2018-07-23 18:35:52 -04:00
Ayman Nadeem
d18c4a0d1c
classBody
2018-07-23 18:35:42 -04:00
Ayman Nadeem
e212840918
add comment tests
2018-07-23 18:32:13 -04:00