1
1
mirror of https://github.com/github/semantic.git synced 2024-12-26 08:25:19 +03:00
Commit Graph

102 Commits

Author SHA1 Message Date
Rob Rix
62196878fa Merge branch 'master' into ghc8
# Conflicts:
#	semantic-diff.cabal
#	src/Diff.hs
#	src/Term.hs
#	src/Term/Arbitrary.hs
#	stack.yaml
#	tools/semantic-git-diff/src/SemanticDiff.hs
2016-09-14 16:12:47 -04:00
Rob Rix
2b933904c9 Add specializations of Term/TermF/Diff/DiffF/SplitDiff over Syntax/Record. 2016-09-12 13:40:22 -04:00
Rob Rix
98637ad656 Generalize Term/TermF & Diff/DiffF over the functor. 2016-09-09 14:46:50 -04:00
joshvera
2df90eada7 Account for false positive close terms
Improve nearestUnmapped by looking up the nearest unmapped term which is not a false positive. We look up the nearest unmapped terms closest to the query term, then sort by the constant time edit distance between the query term and the intersecting terms. Finally, we select the first term that has the lowest edit distance.
2016-08-17 16:34:58 -04:00
Rob Rix
9e9622ef10 🔥 a redundant import. 2016-07-14 14:25:49 -04:00
Rick Winfrey
177af03bd3 Merge branch 'master' into syntax-redux 2016-07-12 17:03:35 -05:00
Rob Rix
63832980ba Non-parameter fields are only zipped if equal. 2016-07-11 15:37:48 -04:00
Rob Rix
ce500a822f Define zipTerms using galign. 2016-07-11 15:13:16 -04:00
Rob Rix
b1b9806e61 📝 alignCofreeWith’s parameters. 2016-07-11 14:41:59 -04:00
Rob Rix
c830c818f4 📝 alignCofreeWith. 2016-07-11 14:33:51 -04:00
Rob Rix
2870cdf1dd Add a function parameter contrasting two terms into e.g. a patch. 2016-07-11 14:33:05 -04:00
Rob Rix
b4c6d92301 Rename c to combined. 2016-07-11 14:29:57 -04:00
Rob Rix
d9c5411568 Rename contrast to compare. 2016-07-11 14:27:38 -04:00
Rob Rix
42f18e9b4f Use the getters instead of destructuring. 2016-07-11 14:03:54 -04:00
Rob Rix
26757185d9 Use a more efficient pattern of recursion. 2016-07-11 14:03:05 -04:00
Rob Rix
40df2f9576 Add an annotation-combining function to alignCofreeWith. 2016-07-11 14:01:45 -04:00
Rob Rix
e23fa323db Rename some type parameters for tidiness’ sake. 2016-07-11 14:00:36 -04:00
Rob Rix
921d0d9356 Clean up the language extensions for the Term module. 2016-07-11 13:59:27 -04:00
Rob Rix
d1219d04f2 🔥 a redundant import. 2016-07-11 13:58:28 -04:00
Rob Rix
a9577a2037 🔥 the hand-rolled alignSyntax' function. 2016-07-11 13:57:53 -04:00
Rob Rix
ee260949ea Move GAlign into its own module. 2016-07-11 13:57:11 -04:00
Rob Rix
119c2350d4 Use the Data.Align instances for generic alignment of lists and ordered maps. 2016-07-11 13:54:04 -04:00
Rob Rix
f1f542cc2c Add an instance for Syntax. 2016-07-11 12:21:40 -04:00
Rob Rix
796aa327f0 Tidy up the GAlign instance over sums. 2016-07-11 12:20:47 -04:00
Rob Rix
d9e5a633b8 🔥 galignDefault. 2016-07-11 12:20:09 -04:00
Rob Rix
2e15957f01 Just use the default galign definition. 2016-07-11 12:19:58 -04:00
Rob Rix
03871b56be Give a default signature and definition of galign. 2016-07-11 12:19:28 -04:00
Rob Rix
b7a1609845 Add a GAlign instance for OrderedMap. 2016-07-11 12:18:32 -04:00
Rob Rix
05a2266aca Implement alignment over compositions of functors. 2016-07-11 12:18:00 -04:00
Rob Rix
8b7bbc5195 Try defining GAlign over pairs. 2016-07-11 12:13:17 -04:00
Rob Rix
6b7f315987 Make generic alignment explicitly partial instead. 2016-07-11 11:57:46 -04:00
Rob Rix
fa88b23fdc Contrast sums. 2016-07-11 11:54:16 -04:00
Rob Rix
57cfaa3e36 GAlign implies Functor. 2016-07-11 11:54:11 -04:00
Rob Rix
bf98d23d8f The contrasting function takes functors. 2016-07-11 11:54:03 -04:00
Rob Rix
c597a8cfa6 Pass a contrasting function around. 2016-07-11 11:47:16 -04:00
Rob Rix
dd4c1d9fde Replace alignF with a typeclass for alignment. 2016-07-11 11:39:02 -04:00
Rob Rix
5ffecda63c Pretty sure that guard is redundant to the one in alignM. 2016-07-08 18:00:28 -04:00
Rob Rix
6c2948e317 Try to implement alignment over functors. Try, and fail miserably. 2016-07-08 17:59:54 -04:00
joshvera
847465c1b5 Add more remaining symmetric cases to zipUnwrap 2016-07-08 15:48:12 -04:00
Rob Rix
15a0022152 The contrasting function must be polymorphic. 2016-07-08 14:04:16 -04:00
Rob Rix
f6ba2f8408 Implement a partial alignment function for Syntax. 2016-07-08 14:01:09 -04:00
Rob Rix
59bc42b731 Don’t attempt to align non-overlapping terms. 2016-07-08 14:00:07 -04:00
Rob Rix
032dcb047b Pass both the syntaxes to the helper function directly. 2016-07-08 13:57:25 -04:00
Rob Rix
9242d2fe7c Add an alignment function over Cofree f a. 2016-07-08 13:44:29 -04:00
joshvera
772575dffd Add zipUnwrap cases for Comment and Commented 2016-07-08 13:27:41 -04:00
joshvera
73afe7d1e9 Add zipTerms to Pairs 2016-07-08 13:16:06 -04:00
joshvera
99b05ebdc1 Object takes a list of f now 2016-07-08 11:17:46 -04:00
joshvera
1efd68d122 Merge remote-tracking branch 'origin/master' into syntax-redux 2016-07-06 16:22:25 -04:00
Rob Rix
e914685790 Don’t warn of orphans so much. 2016-06-30 12:59:26 -04:00
joshvera
9973343364 Map dictionary literals to objects 2016-06-28 16:38:06 -04:00