Rob Rix
8d8fa78b47
Simplify summarizable.
2017-05-05 16:34:16 -04:00
Rob Rix
0c7af370f7
Define termToDiffInfo as a paramorphism.
2017-05-05 16:28:46 -04:00
Rob Rix
c73a79eb83
No need to qualify sourceSpan.
2017-05-05 16:19:49 -04:00
Rob Rix
a55b97b017
Use the named field accessor.
2017-05-05 16:08:51 -04:00
Rob Rix
2491dde0f9
Don’t bind the individual info functions.
2017-05-05 16:00:52 -04:00
Rob Rix
e667657d94
Bind the diff info functions at the top level.
2017-05-05 16:00:10 -04:00
Rob Rix
b6cc1cfac1
🔥 redundant parens.
2017-05-05 15:56:15 -04:00
Rob Rix
628bf46ed3
Don’t bind syntax.
2017-05-05 15:56:04 -04:00
Rob Rix
274095720b
Tighten up diffToTOCSummaries.
2017-05-05 15:54:38 -04:00
Rob Rix
f820af4f5a
Factor the application of toLeafInfos out.
2017-05-05 15:48:54 -04:00
Rob Rix
c3f510f83d
Rename toLeafInfos' to toLeafInfos.
2017-05-05 15:45:51 -04:00
Rob Rix
c6b49cba94
Simplify the termToDiffInfo definition by closing over the source.
2017-05-05 15:44:37 -04:00
Rob Rix
0ab53b002a
Flatten toTOCSummaries.
2017-05-05 15:33:16 -04:00
Rob Rix
8cd74f6ea2
afterOrBefore always returns a value.
2017-05-05 15:26:26 -04:00
Timothy Clem
1959301204
Use a list to simplify json output concatenation
2017-05-05 09:09:45 -07:00
Timothy Clem
2b4d4a0e85
Bring back original json structure with 'sourceRange' and identifier only on specific nodes
2017-05-05 09:08:58 -07:00
Rob Rix
f14cd97cae
Merge branch 'master' into generalize-alignment-over-the-syntax-functor
2017-05-05 10:56:23 -04:00
Timothy Clem
e53a8342a3
Missing one case for this monoid instance to be associative
2017-05-05 07:52:14 -07:00
Rob Rix
bee7d1ee6a
Merge branch 'master' into fix-json-output
2017-05-05 09:06:30 -04:00
Timothy Clem
bea5d66f3f
Bit more nuanced of a monoid instance for Value
2017-05-04 14:56:53 -07:00
Timothy Clem
477165a4c2
Collapse up and remove unused language extensions
2017-05-04 14:56:08 -07:00
Rob Rix
231abd6cb5
Generalize alignment over the syntax functor.
2017-05-04 17:31:45 -04:00
Rob Rix
68b813d51b
Merge branch 'master' into 🔥 -split-renderer
2017-05-04 10:59:21 -04:00
Rob Rix
9c2b7dfbe0
🔥 Renderer.Split.
2017-05-04 10:10:45 -04:00
Timothy Clem
31c01c0092
Give sExpressions output a trailing newline again
2017-05-03 14:11:37 -07:00
Rob Rix
363d21b607
Generalize s-expression rendering to arbitrary Foldables.
2017-05-03 13:43:32 -04:00
Rob Rix
da22bee49e
Group SourceSpan fields together.
2017-04-28 11:35:50 -04:00
Rob Rix
285fb8f3a7
🔥 the unused ToJSON instances for Category and Range.
2017-04-28 09:25:12 -04:00
Rob Rix
026f855f0b
Move indexing out of the JSON renderer.
2017-04-27 19:42:55 -04:00
Rob Rix
4334e24aa4
Replace the indexing renderer with an indexing operation.
2017-04-27 19:40:54 -04:00
Rob Rix
6ed683f9be
🔥 jsonParseTree.
2017-04-27 19:38:18 -04:00
Rob Rix
4975dc61fe
Move decoration of terms out of the JSON renderer.
2017-04-27 19:36:35 -04:00
Rob Rix
013d998ef3
Extract a common handler for path-annotated rendering.
2017-04-27 19:27:03 -04:00
Rob Rix
9944b32d9f
Define a ToJSONFields instance for SourceText.
2017-04-27 19:22:22 -04:00
Rob Rix
59735e5dac
Don’t pass the debug flags to the renderers.
2017-04-27 19:13:18 -04:00
Rob Rix
63b30ac1a3
Render parse trees/indices’ records to JSON.
2017-04-27 18:56:41 -04:00
Rob Rix
862fb3654b
Define a ToJSONFields instance for SourceSpan.
2017-04-27 18:51:41 -04:00
Rob Rix
70dd381f26
Simplify the ToJSONFields instance for Syntax.
2017-04-27 18:28:52 -04:00
Rob Rix
fed06ff0e1
Define ToJSONFields instances for Free & FreeF.
2017-04-27 18:23:10 -04:00
Rob Rix
3bf4f63e0c
Define a ToJSONFields instance for CofreeF.
2017-04-27 18:17:05 -04:00
Rob Rix
607d4f0398
Define a ToJSONFields instance for SplitPatch.
2017-04-27 18:10:31 -04:00
Rob Rix
1520fb0c2b
Replace syntaxToTermField with a ToJSONFields instance.
2017-04-27 18:10:12 -04:00
Rob Rix
43a5580bf5
Define a ToJSONFields instance for Terms.
2017-04-27 18:05:08 -04:00
Rob Rix
5afd5b8fa6
Distribute ToJSONFields through Maybe.
2017-04-27 17:56:24 -04:00
Rob Rix
5beff62cbc
Define ToJSONFields instances for Range and Category.
2017-04-27 17:53:36 -04:00
Rob Rix
adf868e5c8
Add a class to produce JSON fields for a type.
2017-04-27 17:49:37 -04:00
Rob Rix
17d413d267
Get all the fields uniformly.
2017-04-27 16:58:39 -04:00
Rob Rix
a5a86b33ea
Don’t pass the syntax around.
2017-04-27 16:58:13 -04:00
Rob Rix
96d2ccf92e
Decorate the term with the identifier algebraically.
2017-04-27 16:57:47 -04:00
Rob Rix
4abace2490
🔥 an unnecessary Functor constraint.
2017-04-27 16:47:08 -04:00
Rob Rix
f0b89c508c
🔥 parseDecorator.
2017-04-27 16:21:06 -04:00
Rob Rix
9dac0260e3
🔥 Identifier.
2017-04-27 16:18:11 -04:00
Rob Rix
76513638a6
Merge branch 'master' into clean-parse-and-diff-interface
2017-04-24 14:56:06 -04:00
Timothy Clem
77b9b6f909
Few doc fixes
2017-04-24 09:17:28 -07:00
Timothy Clem
779b6afde2
No longer need printTerms
2017-04-21 17:54:58 -07:00
Timothy Clem
78d376e256
Pair down command to just fs and git operations
2017-04-21 13:56:19 -07:00
Rob Rix
b99944556c
Merge branch 'master' into run-assignment-with-source
2017-04-21 16:18:16 -04:00
Rob Rix
e3192150e2
Define take & drop functions for Source.
2017-04-21 13:36:41 -04:00
Timothy Clem
19e87dd523
Put both diff and parse rendering back together
2017-04-20 15:13:28 -07:00
Timothy Clem
389bfaf220
WIP - new renderer achitecture
2017-04-20 11:00:02 -07:00
Timothy Clem
04f7f4b1f5
Start to build new interface for semantic
2017-04-19 16:33:27 -07:00
Timothy Clem
e9edb42e53
Remove render formats and use render/encode functions directly
2017-04-10 15:10:24 -07:00
Rob Rix
fbb899250a
Replace the summaries maps with Summaries.
2017-04-03 17:15:58 -04:00
Rob Rix
4c24cdf1ad
🔥 TOC’s dependency on Renderer.
2017-03-31 16:48:06 -04:00
Rob Rix
b30c19e68b
🔥 JSON’s dependency on Renderer.
2017-03-31 16:37:16 -04:00
Rob Rix
45b34c7444
🔥 Summary’s dependency on Renderer.
2017-03-31 16:37:08 -04:00
Rob Rix
5ee44d4642
🔥 Patch’s dependency on Renderer.
2017-03-31 16:20:48 -04:00
Rob Rix
fd2b24b714
🔥 Split’s dependency on Renderer.
2017-03-31 16:17:20 -04:00
Rob Rix
92092f6136
SExpression does not import Renderer.
2017-03-31 16:12:26 -04:00
Rob Rix
f52894d2e8
Rename DefaultFields to HasDefaultFields.
2017-03-31 15:18:27 -04:00
Rob Rix
46fe5ed705
Move DefaultFields into Info.hs.
2017-03-31 15:17:43 -04:00
joshvera
81e178fc61
Keep track of clauses before a Method identifier
2017-03-30 18:00:13 -04:00
joshvera
b5f9938279
Remove ty from Method and throw every part of a call signature into a list
2017-03-29 16:24:54 -04:00
joshvera
cdbd260b0f
Remove type from Function and unpack call signatures
2017-03-29 12:36:05 -04:00
joshvera
461b1c665b
Merge remote-tracking branch 'origin/master' into typescript
2017-03-29 10:17:53 -04:00
joshvera
ad68312273
Allow type parameters in function and method calls
2017-03-28 18:55:57 -04:00
joshvera
0058c371ec
Map template_chars in JS and add missing Interface cases
2017-03-28 16:10:37 -04:00
joshvera
9c5e73897b
Add interfaces
2017-03-28 15:54:31 -04:00
joshvera
f86d43a6e5
Add namespace mapping
2017-03-28 15:43:21 -04:00
Rob Rix
a8410e8829
🔥 various uses of LambdaCase.
2017-03-28 15:32:45 -04:00
joshvera
01a8087b0a
Map public_field_definition to FieldDecl and fix up VarDecl and VarAssignment mappings
2017-03-28 13:00:15 -04:00
joshvera
d05e297084
Relax VarDecl and VarAssignment constraints
2017-03-27 16:28:37 -04:00
joshvera
129da112b3
Map yield expression, lexical declaration and assignment pattern
2017-03-16 16:36:19 -04:00
Rick Winfrey
d0c66f1921
Add newline to end of output in one place
2017-03-13 10:52:00 -07:00
Timothy Clem
569fdd031b
Construct sexpression output with ByteString
2017-03-08 11:40:37 -08:00
Timothy Clem
3647e740f7
Render sexpression output as ByteString
2017-03-07 14:08:32 -08:00
Timothy Clem
dcfdcf78d3
Fold DiffSummary into Renderer.Summary
2017-02-28 14:09:57 -08:00
Timothy Clem
e3bdb6b95b
Extract SemanticDiff.IO and clearly delineate program commands
2017-02-28 13:43:01 -08:00
Timothy Clem
0cf38c583c
Assert to summary json output
2017-02-22 20:05:48 -08:00
Timothy Clem
f9c26b3ae4
Merge remote-tracking branch 'origin/master' into sexpression-text-based-testing
2017-02-22 15:08:14 -08:00
Timothy Clem
a3331c08e7
Assert parsing
2017-02-22 08:34:31 -08:00
Timothy Clem
6165a6dd02
Allow printing only tree of sexpression output
2017-02-22 08:34:31 -08:00
Rob Rix
67b162895c
🔥 costs from Split output.
2017-02-21 14:48:03 -05:00
Timothy Clem
9910f8dd16
Add friendly category name now that we have singleton methods
2017-02-17 14:57:29 -08:00
Timothy Clem
6e718a7804
No opening linebreak if first node is a patch
2017-02-17 13:54:20 -08:00
Josh Vera
696e4f6a8c
Merge branch 'master' into ruby-singleton-methods
2017-02-17 15:02:32 -05:00
Josh Vera
d0af7a2f40
Merge branch 'master' into it-slices,-it-dices
2017-02-17 14:52:42 -05:00
Timothy Clem
91c650ee9c
Minor fix for sexpression padding on the Pure side
2017-02-17 11:36:50 -08:00
Timothy Clem
a10bc515c0
++tree-sitter-ruby and parse singleton methods to fix ambiguity
2017-02-17 11:34:47 -08:00
Rob Rix
75d3fc5079
🔥 stale hiding of fromList.
2017-02-16 14:28:32 -05:00
Rob Rix
a7bfbb72f4
Rename characterRange to byteRange.
2017-02-16 11:58:26 -05:00
Timothy Clem
70c8e2a57b
Property test that toc summarizes methods and functions
2017-02-15 16:13:34 -08:00
Timothy Clem
b34c71dcc5
Merge branch 'master' into dedupe-added-removed-methods
2017-02-15 08:14:21 -08:00
Timothy Clem
09337e21d8
Merge remote-tracking branch 'origin/master' into go-receiver-toc-iteration
2017-02-14 13:13:11 -08:00
Timothy Clem
1facca0b50
Add failing toc summary test and refactor removeDupes
2017-02-14 11:29:24 -08:00
Timothy Clem
8bc4da76c9
Have to check parentInfo for duplicates
2017-02-14 08:27:00 -08:00
Timothy Clem
2770540191
Make sure we have a real Summarizable to replace with
2017-02-13 17:30:33 -08:00
Timothy Clem
d68633f643
WIP - identify similar methods/functions
2017-02-13 17:18:25 -08:00
Timothy Clem
31519dda42
Remove dups, including matching method names
2017-02-13 16:15:38 -08:00
Timothy Clem
cb611a4aa6
Pass in parentOffset to toTermName
2017-02-13 12:53:20 -08:00
Rob Rix
52025ac5e5
Don’t trim the source for recursive calls into termToDiffInfo.
2017-02-13 15:19:06 -05:00
Rob Rix
24722c3fb6
Render Text.
2017-02-13 09:39:33 -05:00
Rob Rix
00c14e403a
Revert "Source carries its Range."
...
This reverts commit 6e075787935c10b0bd7256673a5623cb5d1a4945.
2017-02-10 16:44:09 -05:00
Rob Rix
672ff179ed
Source carries its Range.
2017-02-10 15:33:41 -05:00
Rob Rix
2a30f6d462
Pre-slice in termToDiffInfo.
2017-02-10 14:23:42 -05:00
Rob Rix
5134595525
Rename blob to source.
2017-02-10 14:18:55 -05:00
Rob Rix
bc2a29d84e
Source is no longer parametric in the character type.
2017-02-10 11:21:24 -05:00
Rob Rix
35c39e8b56
Change subtractRange to offsetRange.
...
This has slightly clearer semantics.
2017-02-10 11:11:25 -05:00
Timothy Clem
7ba739a508
Properly calculate range for subterms
2017-02-09 14:47:35 -08:00
Rob Rix
ac4df9a7b3
Remove the Foldable instance for Source.
2017-02-09 17:10:16 -05:00
Rob Rix
fe22126059
Pre-slice the source.
2017-02-09 16:33:33 -05:00
Timothy Clem
a3a895d107
Another iterator for go method toc summaries
2017-02-08 10:57:13 -08:00
Timothy Clem
ded960356a
Remove S.MemberAccess case entirely since it's now handled above
2017-02-07 15:20:27 -08:00
Timothy Clem
2f230a485e
Add receiver to Syntax.Method
2017-02-07 14:53:15 -08:00
Timothy Clem
85afbd6df4
Handle termAssignment for Ruby singleton method defs
2017-02-07 11:59:18 -08:00
joshvera
0503fc9555
Flatten BranchInfo patches
2017-01-26 15:07:18 -05:00
joshvera
386fa47ae6
s/Error/ParseError
2017-01-26 12:48:03 -05:00
joshvera
69cf915bf7
Only export toc
2017-01-26 12:46:28 -05:00
Josh Vera
36804a8686
Merge branch 'master' into table-of-contents
2017-01-26 12:07:08 -05:00
Rob Rix
41a10c977f
Merge remote-tracking branch 'origin/master' into consolidate-common-term-assignment-patterns
2017-01-25 20:44:58 -05:00
joshvera
3ab42ca794
add a param
2017-01-25 18:26:03 -05:00
Josh Vera
b9f9dff1c6
Merge branch 'master' into table-of-contents
2017-01-25 18:19:40 -05:00
Timothy Clem
3d4f6fe48b
Remove need to qualify patch
2017-01-25 10:45:56 -08:00
Timothy Clem
a8fed91deb
No need for HideInfo constructor b/c we only surface functions/methods
2017-01-25 08:47:50 -08:00
Timothy Clem
2b0363e031
Remove comments and API sketching
2017-01-25 08:46:45 -08:00
joshvera
bd5b2a4c93
Add optional type to Syntax.Function
2017-01-25 11:41:09 -05:00
Rob Rix
2929fb3cb4
Rename Syntax.Error to ParseError.
2017-01-25 03:09:53 -05:00
Rob Rix
296c53f187
Rename Category.Error to ParseError.
2017-01-25 03:08:06 -05:00
joshvera
dd6a5d3a20
Rename sourceSpan keys to span
2017-01-24 17:20:22 -05:00
joshvera
348d5ae699
Move patchType to Patch
2017-01-24 16:00:25 -05:00
joshvera
e3da60eada
Add afterOrBefore function to Patch.hs
2017-01-24 15:58:17 -05:00
Timothy Clem
e53ae6a88a
Catch (and hide) NotSummarizable leaves
2017-01-24 11:25:44 -08:00
Timothy Clem
f49fc1910d
Don't print method arguments
2017-01-24 11:18:59 -08:00
Timothy Clem
9ec2262b38
Refactor names and handling of what's summarizable
2017-01-24 11:16:22 -08:00
joshvera
3f34bcec46
Expand toTermName to summarize methods and functions
2017-01-24 12:14:14 -05:00
joshvera
acb277e32c
remove duplicates
2017-01-24 12:13:59 -05:00
joshvera
1fe58a5c48
Panic in toJSON if we see a None
2017-01-24 12:13:22 -05:00
joshvera
b3bbff3f45
Output term, category, sourceSpan
2017-01-23 17:46:29 -05:00
joshvera
c35d7e8089
Summarize functions and methods to ExpressionInfo
2017-01-23 17:26:43 -05:00
joshvera
3177a565a7
Append parent annotations to summaries
2017-01-23 16:59:47 -05:00
joshvera
cc4cc5efc6
Add ParentInfo to carry information about parent or expression information
2017-01-23 16:33:07 -05:00
joshvera
261f374fb5
Parameterize JSONSummary with term context info types
2017-01-23 15:58:20 -05:00
Timothy Clem
381549c045
Structure to produce toc summaries
2017-01-23 11:13:11 -08:00
joshvera
f8ecbf9286
WIP stub TOC renderer
2017-01-23 12:16:59 -05:00
joshvera
18c8a0124d
Add a stub TOC renderer
2017-01-23 11:22:51 -05:00
Rob Rix
cd5a51aa7a
Disable -Wdeprecations on files pattern matching against Category.
...
We can’t 🔥 RescueModifier yet because of RWS instability. See also #778 .
2017-01-19 14:01:48 -05:00
Rob Rix
eb8c09f2b5
Revert " 🔥 RescueModifier."
...
This reverts commit 9eda5f256678287b9252a7c654ffcaf486b22c21.
2017-01-19 13:51:24 -05:00
Rob Rix
21dabbe077
🔥 RescueModifier.
2017-01-19 13:13:57 -05:00
Rob Rix
408ad2ecc5
Add Modifier categories.
...
These are used when a normal syntactic category is attached as a modifier instead of as a statement, e.g.:
```ruby
if foo then bar end
```
vs.
```ruby
bar if foo
```
2017-01-19 12:55:06 -05:00
joshvera
7f396dd7b7
Rename Default to DefaultCase
2017-01-18 14:06:45 -05:00
joshvera
d34b8e2354
Parse methods
2017-01-18 13:38:31 -05:00
joshvera
496e95a41f
fix rune tests
2017-01-17 18:55:59 -05:00
joshvera
c3201ed689
Map var declarations to VarDecl
2017-01-17 14:56:59 -05:00
joshvera
a95d57c8cf
Parse struct type declarations
2017-01-17 12:23:56 -05:00
joshvera
52c4f1a7b4
Add tag to FieldDecl
2017-01-17 11:53:44 -05:00
Rick Winfrey
e0983245d2
Add missing category
2017-01-13 16:46:24 -08:00
Rick Winfrey
4fcd80a6fe
Add qualified identifiers for Go
2017-01-13 16:46:16 -08:00
Rick Winfrey
27196d8f6b
Add Go support for increment / decrement statements
2017-01-13 15:03:42 -08:00
Rick Winfrey
25c79a31de
Merge branch 'more-go-terms' of github.com:github/semantic-diff into more-go-terms
2017-01-12 15:59:00 -08:00
Rick Winfrey
86a456b285
Merge remote
2017-01-12 15:54:14 -08:00
joshvera
2dd0f2c609
add missing send statement case in Renderer.Split
2017-01-12 18:53:20 -05:00
joshvera
e3505286ba
Add function types
2017-01-12 18:52:11 -05:00
joshvera
20ead53d1c
Add send statements
2017-01-12 18:39:09 -05:00
joshvera
45fe48b1ad
Map channel types
2017-01-12 18:33:13 -05:00
joshvera
98f2407677
Add Ty syntax
2017-01-12 17:56:41 -05:00
Rick Winfrey
2563a26a8a
Add Literal category
2017-01-12 11:59:38 -08:00
Rick Winfrey
7cd5da6ea6
Add SliceTy and Element to Split renderer
2017-01-12 11:47:29 -08:00
Rick Winfrey
3a7259503d
Add FieldDecl renderer entries
2017-01-11 15:26:56 -08:00
joshvera
ccdaf8f663
Add PointerTy category
2017-01-11 17:45:31 -05:00
joshvera
d1ed9fd7ba
totality our old friend
2017-01-10 18:17:48 -05:00
joshvera
5d1e105dc3
Parse type declarations
2017-01-10 18:04:34 -05:00
joshvera
6d42df94ec
Add missing Default cases
2017-01-10 16:19:15 -05:00
joshvera
3d95799fc7
Handle parameter declarations
2017-01-10 15:09:09 -05:00
joshvera
ae40908cd2
Update go tests
2017-01-05 17:08:28 -05:00
Timothy Clem
91721682a6
Give BEGIN/END their own Syntax
2016-12-12 15:26:26 -08:00
Timothy Clem
005a5f43d0
Parse BEGIN/END {} for Ruby
2016-12-12 13:41:55 -08:00
Timothy Clem
7fcc5ab88f
Merge branch 'master' into ruby-parse-fixes
2016-12-12 09:15:01 -08:00
Timothy Clem
5b10012466
Parse Ruby scope operator
2016-12-12 08:30:43 -08:00
Timothy Clem
1741cef639
Parse Ruby range expressions
2016-12-11 08:36:26 -08:00
Timothy Clem
e9f8014e50
Add singleton_class category to Split
2016-12-09 16:15:49 -08:00
Timothy Clem
5db5376d93
Remove some unused imports
2016-12-09 14:52:36 -08:00
Timothy Clem
fcff364131
Remove old cata approach
2016-12-09 14:47:35 -08:00
Timothy Clem
d84537ec42
Add some style to these guards
2016-12-09 14:47:00 -08:00
Timothy Clem
df7e016c60
Collapse up parse to product json and sexp output
2016-12-09 14:32:22 -08:00
Timothy Clem
772265e0bb
Rename s/test/sexpression
2016-12-09 11:42:32 -08:00
Timothy Clem
2ef173b934
Sexpr diffs show source spans and pad/indent properly
2016-12-09 11:30:41 -08:00
Timothy Clem
b16b8ecb87
Rework as top down recursion to print diff trees
2016-12-09 09:47:51 -08:00
Timothy Clem
686b0dffff
Add new sexp style test output for diffs
2016-12-09 08:31:13 -08:00
Timothy Clem
aa26c5472e
Properly parse classes (with new tree-sitter trees)
2016-12-07 10:45:55 -08:00
joshvera
076afb77ec
update tests
2016-12-07 13:26:31 -05:00