1
1
mirror of https://github.com/github/semantic.git synced 2024-12-22 14:21:31 +03:00
Commit Graph

6656 Commits

Author SHA1 Message Date
Rob Rix
13d6b313cb Document how tokens are skipped. 2017-05-04 13:11:09 -04:00
Rob Rix
d62b6170e6 Document optional. 2017-05-04 13:04:54 -04:00
Rob Rix
64ada1c6c2 Document some/many repetitions. 2017-05-04 13:03:46 -04:00
Rob Rix
da158b4a12 Document committed choice. 2017-05-04 12:58:00 -04:00
Rob Rix
7467fabfa4 Document combining assignments with the various instances. 2017-05-04 12:25:05 -04:00
Rob Rix
a30769167c Document 'pure' assignments. 2017-05-04 11:29:44 -04:00
Rob Rix
9644561a8d Document the basic primitives. 2017-05-04 11:27:43 -04:00
Rob Rix
dde29370de Simplify the initial discussion of Assignments. 2017-05-04 11:06:25 -04:00
Rob Rix
838262df2d Clarify the assignment-context bit. 2017-05-04 11:04:42 -04:00
Rob Rix
aed82c030d Merge branch 'master' into opt-in-anonymous-nodes 2017-05-04 11:02:30 -04:00
Rob Rix
a656a94664 Merge branch 'master' into diffs-a-la-carte 2017-05-04 11:02:22 -04:00
Rob Rix
9d5b040c42 Merge remote-tracking branch 'origin/master' into assignment-best-practices 2017-05-04 11:01:31 -04:00
Rob Rix
68b813d51b Merge branch 'master' into 🔥-split-renderer 2017-05-04 10:59:21 -04:00
Rob Rix
a14093bf06 Correct the usage for the -o flag. 2017-05-04 10:56:28 -04:00
Rob Rix
32a6901d38 📝 the module a bit. 2017-05-04 10:55:12 -04:00
Rob Rix
9c2b7dfbe0 🔥 Renderer.Split. 2017-05-04 10:10:45 -04:00
Rob Rix
d085b11789 🔥 the split diff renderer. 2017-05-04 10:09:29 -04:00
Rob Rix
d5e0cd5693 🔥 the split diff arguments constructor. 2017-05-04 10:09:19 -04:00
Rob Rix
f385a6e54f 🔥 the --split renderer flag. 2017-05-04 10:09:02 -04:00
Timothy Clem
31c01c0092 Give sExpressions output a trailing newline again 2017-05-03 14:11:37 -07:00
Timothy Clem
69b6c6b21e Let reading from /dev/null throw - need emptySourceBlob for this case 2017-05-03 14:11:02 -07:00
Rob Rix
d10ca290b9 Use diffMaybe instead of maybeLinearly. 2017-05-03 16:58:43 -04:00
Rob Rix
45406c5c81 Define a combinator for diffing in Maybe. 2017-05-03 16:56:15 -04:00
Rob Rix
a0df4f8845 Skip wrapping in Maybe. 2017-05-03 16:52:56 -04:00
Rob Rix
8a2725f524 Merge branch 'master' into diffs-a-la-carte 2017-05-03 16:38:09 -04:00
Rob Rix
d524fa05bb Define Align-based GAlign instances for [] and Maybe. 2017-05-03 16:24:05 -04:00
Timothy Clem
c9f69c32b5 ++haskell-tree-sitter to use halt_on_error 2017-05-03 13:22:46 -07:00
Rob Rix
116e5b0e08 Derive GAlign instances for all of the à la carte syntax types. 2017-05-03 16:05:27 -04:00
Rob Rix
c189e786c5 Define a GAlign instance for Identity. 2017-05-03 16:00:13 -04:00
Rob Rix
1f6d044994 Define GAlign instances for Unions. 2017-05-03 15:58:27 -04:00
Rob Rix
ce50d2da71 🔥 the Functor context for GAlign. 2017-05-03 15:56:16 -04:00
Rob Rix
eb18e2ef6e Move the GAlign instance for Syntax into Syntax’ module. 2017-05-03 15:45:07 -04:00
Rob Rix
028d760190 Revert "Reuse the canCompare parameter."
This reverts commit 2f4f50e8e41f64721f6e7cd887d22c16263b3e52.
2017-05-03 15:37:19 -04:00
Rob Rix
be3937cc42 Reuse the canCompare parameter. 2017-05-03 15:24:05 -04:00
Rob Rix
22e7e8ca3e Generalize decompose over the general term-diffing algorithm computation. 2017-05-03 15:17:59 -04:00
Rob Rix
a212fc628d s/cont/yield/. 2017-05-03 14:58:48 -04:00
Rob Rix
2e825ec90b Generalize runAlgorithm and runAlgorithmSteps to arbitrary functors in Freer. 2017-05-03 14:54:41 -04:00
Rob Rix
744f8cfe2e Generalize the algorithm running functions over arbitrary term/diff types. 2017-05-03 14:51:58 -04:00
Rob Rix
b7d5f03a1b 🔥 runAlgorithmStep. 2017-05-03 14:50:23 -04:00
Rob Rix
34807f26bb runAlgorithmSteps is parameterized by the decomposition operation. 2017-05-03 14:50:10 -04:00
Rob Rix
2e2ff9d614 runAlgorithm is parameterized by the decomposition operation. 2017-05-03 14:45:46 -04:00
Rob Rix
77bdda7b7e s/run/runAlgorithm/. 2017-05-03 14:38:11 -04:00
Rob Rix
cb7a5a7b57 runStep returns the continuation without wrapping in Either. 2017-05-03 14:35:54 -04:00
Rob Rix
459616e543 Merge branch 'master' into opt-in-anonymous-nodes 2017-05-03 14:27:03 -04:00
Rob Rix
11ca3a902b 🔥 a redundant constraint. 2017-05-03 13:55:18 -04:00
Rob Rix
363d21b607 Generalize s-expression rendering to arbitrary Foldables. 2017-05-03 13:43:32 -04:00
Rob Rix
1d024aafc9 Assign regular = assignments. 2017-05-03 11:52:38 -04:00
Rob Rix
8cc0526b23 Move assignment out into a separate top-level binding. 2017-05-03 11:51:22 -04:00
Rob Rix
159cf5772b Assign ^=. 2017-05-03 11:50:01 -04:00
Rob Rix
53fde0b91b Assign <<=. 2017-05-03 11:49:16 -04:00
Rob Rix
64dc3c7ff4 Assign >>=. 2017-05-03 11:49:00 -04:00
Rob Rix
96fabf70d4 Assign %=. 2017-05-03 11:48:22 -04:00
Rob Rix
b2ae6515f6 Assign &=. 2017-05-03 11:47:36 -04:00
Rob Rix
05be6e2f98 Assign &&=. 2017-05-03 11:47:14 -04:00
Rob Rix
175ac88ac4 Reformat a bit. 2017-05-03 11:43:36 -04:00
Rob Rix
feb99c9d3a Assign |=. 2017-05-03 11:42:35 -04:00
Rob Rix
d215d0b597 Assign ||=. 2017-05-03 11:41:17 -04:00
Rob Rix
4b01c83fe3 Define bitwise operator syntax. 2017-05-03 11:40:14 -04:00
Rob Rix
82d2a73cf2 Define the modulus operation. 2017-05-03 11:38:18 -04:00
Rob Rix
417b990d00 Represent boolean operations with a single type. 2017-05-03 11:37:43 -04:00
Rob Rix
3db7c5ff4f Assign /=. 2017-05-03 11:35:36 -04:00
Rob Rix
7790ff6441 Represent arithmetic operations with a single type. 2017-05-03 11:35:00 -04:00
Rob Rix
f408214d85 Assign **=. 2017-05-03 11:31:36 -04:00
Rob Rix
6e51415cfb Assign *=. 2017-05-03 11:28:47 -04:00
Rob Rix
3b54a4ebf3 Assign -=. 2017-05-03 11:27:03 -04:00
Rob Rix
b8bd18e742 Define binary subtraction syntax. 2017-05-03 11:26:53 -04:00
Rob Rix
2b9fb8552a Only drop anonymous nodes for choices where all symbols are regular. 2017-05-03 11:15:54 -04:00
Rob Rix
927ec1b2dc 🔥 stateTypes. 2017-05-03 10:55:52 -04:00
Rob Rix
acb8e7d693 Drop non-Regular symbols. 2017-05-03 10:50:36 -04:00
Rob Rix
4c5a5b56c6 🔥 withTokens. 2017-05-03 10:50:22 -04:00
Rob Rix
2a841a672b Don’t drop anonymous nodes for choices including anonymous symbols. 2017-05-03 10:50:11 -04:00
Rob Rix
56aee672a9 Merge branch 'master' into opt-in-anonymous-nodes 2017-05-03 10:41:36 -04:00
Rob Rix
1893d61eda Assign a += b assignments as a = a + b. 2017-05-03 10:37:29 -04:00
Rob Rix
33cdb49619 Define a combinator to assign without dropping token nodes. 2017-05-03 10:13:23 -04:00
Rob Rix
ab1e7ac9e0 Give a list of symbol types to consider. 2017-05-03 10:03:02 -04:00
Rob Rix
3ff041adcd Define a helper to construct starting states. 2017-05-03 09:36:35 -04:00
Rob Rix
ae9fc6ea4f Add a section header for the instances. 2017-05-03 09:35:51 -04:00
Rob Rix
14c12b3582 📝s. 2017-05-02 15:21:29 -04:00
Rob Rix
cefd3e0a6a Rename go to ifElsif. 2017-05-02 15:03:30 -04:00
Rob Rix
8a506e5efa Define a convenience for parsing straight to a term, logging errors. 2017-05-02 14:55:05 -04:00
Rob Rix
496c009379 Don’t pass the source through. 2017-05-02 14:53:07 -04:00
Rob Rix
73d1b83737 Rename assignAll to assign, taking a single root node. 2017-05-02 12:07:24 -04:00
Rob Rix
dd2ee0a669 Use the leaf helper to assign symbols. 2017-05-02 11:33:51 -04:00
Rob Rix
137b26d203 Define addition expression syntax. 2017-05-02 11:31:37 -04:00
Rob Rix
2246580687 Define assignment syntax. 2017-05-02 11:26:02 -04:00
Rob Rix
492b8e895e 🔥 redundant parens. 2017-05-02 11:25:48 -04:00
Rob Rix
40b0ff3a7b Derive an IsString instance for Source. 2017-05-02 09:37:02 -04:00
Rob Rix
5ddd0995d0 Sort imports. 2017-05-02 09:35:42 -04:00
Rob Rix
0b96eb7c0f Assign symbol literals. 2017-05-01 17:22:35 -04:00
Rob Rix
d025774908 Rename the SymbolLiteral constructor to Symbol. 2017-05-01 17:20:36 -04:00
Rob Rix
19c0abc218 Move the control flow modifiers into the normal variations. 2017-05-01 17:15:25 -04:00
Rob Rix
0519f658ea Note some more literals. 2017-05-01 17:07:51 -04:00
Rob Rix
366a77ade4 Note a potential direction for numeric literals. 2017-05-01 17:06:38 -04:00
Rob Rix
ea2ccec784 Note that we don’t differentiate between line/block comments yet. 2017-05-01 16:59:04 -04:00
Rob Rix
051e87a3b2 Note that redo/retry aren’t yet handled. 2017-05-01 16:54:30 -04:00
Rob Rix
5881bae111 Note that we don’t discriminate between .. and ... yet. 2017-05-01 16:50:41 -04:00
Rob Rix
87f779af46 Assign range literals. 2017-05-01 16:50:00 -04:00
Rob Rix
202f31fa96 Assign for each bindings as identifiers. 2017-05-01 16:47:11 -04:00
Rob Rix
ae56675e3b Assign for statements. 2017-05-01 16:44:52 -04:00
Rob Rix
20109d2705 Assign until modifiers. 2017-05-01 16:38:35 -04:00
Rob Rix
8aad196202 Assign until statements. 2017-05-01 16:37:13 -04:00
Rob Rix
5ab78c37b9 Assign while modifiers. 2017-05-01 15:59:08 -04:00
Rob Rix
173c0ecef6 Assign while statements. 2017-05-01 15:57:09 -04:00
Rob Rix
90b07663ed Avoid producing extra errors when we have one already. 2017-05-01 15:53:00 -04:00
Rob Rix
b1ef673d86 Errors point at the start of the current node where possible. 2017-05-01 11:21:07 -04:00
Rob Rix
f709375805 Unpack the actual symbol explicitly. 2017-05-01 11:19:30 -04:00
Rob Rix
50758e0f7e Number the lines in the error message output. 2017-05-01 11:16:08 -04:00
Rob Rix
1dabf3c9d3 Show up to three lines of context. 2017-05-01 11:04:49 -04:00
Rob Rix
91e9e59488 📝 showError. 2017-05-01 10:52:59 -04:00
Rob Rix
c0dd99a5a4 Pull the context into the where clause. 2017-05-01 10:52:29 -04:00
Rob Rix
e33da12d1b Show the source of the error with a clang-style error message. 2017-05-01 10:51:12 -04:00
Rob Rix
434adf3eca Show the expectation with a helper. 2017-05-01 10:33:21 -04:00
Rob Rix
5662b9cead Define a function to show an Error. 2017-05-01 10:32:25 -04:00
Rob Rix
9593416367 Define a helper to show a comma-separated list of symbols.
Complications due to the Oxford comma.
2017-05-01 10:32:07 -04:00
Rob Rix
c1ac705f54 Define a helper to show a SourcePos. 2017-05-01 10:31:46 -04:00
Rob Rix
7fcd50b512 Merge branch 'master' into better-error-reporting-for-repetitions 2017-05-01 10:06:01 -04:00
Rob Rix
e9385c99e6 🔥 indexing. 2017-05-01 09:52:34 -04:00
Rob Rix
a7574b685a 🔥 the --debug flag. 2017-05-01 09:51:40 -04:00
Rob Rix
0bf52e3dde Result has field selectors. 2017-04-28 15:54:34 -04:00
Rob Rix
8872a7ec6a Errors record the symbol of the current node (if any). 2017-04-28 15:49:00 -04:00
Rob Rix
0168773814 Results hold errors instead of text. 2017-04-28 15:45:13 -04:00
Rob Rix
3d1e74bf4e Define an Error datatype. 2017-04-28 15:34:18 -04:00
Rob Rix
250d095598 Result only has one case. 2017-04-28 15:31:23 -04:00
Rob Rix
a988d54ed6 Propagate errors from alternations. 2017-04-28 15:26:19 -04:00
Rob Rix
eb089bb571 Successful results can hold errors. 2017-04-28 15:24:42 -04:00
Rob Rix
ec8be238d1 Children assignments continue after the last child assignment. 2017-04-28 15:19:55 -04:00
Rob Rix
ca0d4328ff Return the final state from assignAllFrom. 2017-04-28 15:18:33 -04:00
Rob Rix
743935b098 Include all nodes in indices. 2017-04-28 14:35:04 -04:00
Rob Rix
da22bee49e Group SourceSpan fields together. 2017-04-28 11:35:50 -04:00
Rob Rix
f0f4ca393c Merge branch 'master' into simplified-json-rendering-path 2017-04-28 09:51:07 -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
66d611b460 Handle debug rendering for indices. 2017-04-27 19:24:41 -04:00
Rob Rix
c014c75b0e Handle debug rendering for parse trees. 2017-04-27 19:23:31 -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
5267ff4bb5 🔥 redundant parens. 2017-04-27 19:13:06 -04:00
Rob Rix
4394c2e833 🔥 the ToJSON instances for Data.Record. 2017-04-27 18:56:53 -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
d1b088eda5 Work around the lack of Show1 for IntMap in lts. 2017-04-26 18:39:39 -04:00
Rob Rix
d6b7e408e3 Don’t add a newline after the caret. 2017-04-26 15:27:30 -04:00
Rob Rix
f991988eea Show the source of errors. 2017-04-26 14:54:29 -04:00
Rob Rix
d9d7f98921 Consolidate error reporting. 2017-04-26 14:37:07 -04:00
Rob Rix
dfab45dc65 Tidy up handling of Empty rules. 2017-04-26 13:50:45 -04:00
Rob Rix
59be638d70 🔥 the unlawful Monad instance for Result. 2017-04-26 13:40:03 -04:00
Rob Rix
52aa3800b7 Don’t use Result’s Monad instance for Children rules. 2017-04-26 13:39:42 -04:00
Rob Rix
d2da6e1ad7 Move the Alt rule down to reflect constructor order. 2017-04-26 13:37:48 -04:00
Rob Rix
89b30a5124 Pull the Choose case up a level. 2017-04-26 13:36:57 -04:00
Rob Rix
095e279380 Pull the Children case up a level. 2017-04-26 13:35:21 -04:00
Rob Rix
a6b5fa0634 Pull the Source case up a level. 2017-04-26 13:33:52 -04:00
Rob Rix
f781118abb Move the location at end case up. 2017-04-26 13:32:24 -04:00
Rob Rix
2db005505e Pull the Location case up a level. 2017-04-26 13:31:26 -04:00
Rob Rix
3de156447f Match against the nodes. 2017-04-26 13:30:07 -04:00
Rob Rix
e9bff3be5a Use the where clause’s binding for the source. 2017-04-26 13:28:34 -04:00
Rob Rix
4103936ca2 Use the where clause’s binding for the offset. 2017-04-26 13:28:04 -04:00
Rob Rix
b392c9d6b7 Bind the post-drop state in the where clause. 2017-04-26 13:24:04 -04:00
Rob Rix
a430b444f5 Pull the runAssignment iterator into the where clause. 2017-04-26 13:23:07 -04:00
Rob Rix
e67f5a9398 Guard terms with symbols. 2017-04-26 13:19:10 -04:00
Rob Rix
296717777d Rearrange leaf to put the fmap first. 2017-04-26 13:18:40 -04:00
Rob Rix
b9027441e2 Use the leaf combinator to assign constants and identifiers. 2017-04-26 12:37:13 -04:00
Rob Rix
34e945d1fa Use the leaf combinator to assign literals & comments. 2017-04-26 12:34:34 -04:00
Rob Rix
620b1ebd49 Flip leaf’s argument order. 2017-04-26 12:33:51 -04:00
Rob Rix
860138fe19 🔥 an extra space. 2017-04-26 12:33:37 -04:00
Rob Rix
129d962041 Add a leaf combinator. 2017-04-26 12:31:00 -04:00
Rob Rix
c2df871607 Replace Symbol with a unary Choose. 2017-04-26 12:17:43 -04:00
Rob Rix
d583b3cfcc Prevent forgetting to shadow the initial state. 2017-04-26 12:11:03 -04:00
Rob Rix
677031daaa Choices’ errors note the choice. 2017-04-26 12:07:33 -04:00
Rob Rix
77fe6aff31 empty is the left- and right-identity of <|>. 2017-04-26 12:05:49 -04:00
Rob Rix
ffe7b2ff66 Handle alternations of choices on both sides. 2017-04-26 12:04:34 -04:00
Rob Rix
38a92b7eda Handle alternations of choices on the right. 2017-04-26 12:00:51 -04:00
Rob Rix
c85081ea6b Show the symbol when choice fails. 2017-04-26 11:58:03 -04:00
Rob Rix
ffbca016db Avoid revisiting anonymous nodes. 2017-04-26 11:47:53 -04:00
Rob Rix
d57df3f5fb Show a better error for symbol rules. 2017-04-26 11:44:53 -04:00
Rob Rix
61b3e3c71f Show a better error for symbol rules at end of input. 2017-04-26 11:40:59 -04:00
Rob Rix
6010bcb439 Show a better error for committed choice at end of input. 2017-04-26 11:39:32 -04:00
Rob Rix
b7d84470fb Extract how we show choices into the where clause. 2017-04-26 11:37:00 -04:00
Rob Rix
b7899248d5 🔥 a redundant FIXME. 2017-04-26 11:34:43 -04:00
Rob Rix
2154e4a4ad Construct committed choices using the Alternative interface. 2017-04-26 11:29:24 -04:00
Rob Rix
447412be86 Define committed choice as a map of alternatives. 2017-04-26 11:29:13 -04:00
Rob Rix
122558da3b Stub in a combinator for committed choice. 2017-04-26 10:44:06 -04:00
Rob Rix
1fe76ee24c Show the rest of assignments following Symbol rules. 2017-04-26 09:33:36 -04:00
Rob Rix
49f5e007da 🔥 Get assignment. 2017-04-25 15:09:41 -04:00
Rob Rix
7be5f34a38 🔥 range/sourceSpan. 2017-04-25 15:09:34 -04:00
Rob Rix
71515d73ae Reintroduce Symbol assignment. 2017-04-25 15:08:23 -04:00
Rob Rix
335cb3194f 🔥 State assignment. 2017-04-25 15:05:04 -04:00
Rob Rix
d5797eba16 Define location assignment. 2017-04-25 15:04:08 -04:00
Rob Rix
c2607ffc4c 📝 Union’s constructors. 2017-04-25 13:53:18 -04:00
Rob Rix
03c57f2ef4 Merge branch 'master' into a-la-carte-folds 2017-04-25 12:47:47 -04:00
Rob Rix
8e2c1ffd5f Correct the docs of identifierAlg. 2017-04-25 12:39:05 -04:00
Rob Rix
4644bcc2ef Use Traversable as shorthand for Functor + Foldable.
This is not generally a good idea, but we strictly control these unions & syntax types, and it’s hard to imagine non-`Traversable` syntax.
2017-04-25 12:35:49 -04:00
Rob Rix
b6723c56f2 Panic! Our system. 2017-04-25 12:33:41 -04:00
Rob Rix
0db2c73a1e Replace the identifiable algebra with an identifier algebra. 2017-04-25 12:30:36 -04:00
Rob Rix
69bbc13da3 Methods must be part of the syntax. 2017-04-25 12:27:42 -04:00
Rob Rix
30e72f3344 Methods are declarations, not statements. 2017-04-25 12:27:27 -04:00
Rob Rix
00200d7822 📝 some cases cyclomaticComplexityAlg doesn’t handle. 2017-04-25 12:17:17 -04:00
Rob Rix
a00ff68f32 Control exits methods at least once. 2017-04-25 12:15:28 -04:00
Rob Rix
390297aa56 📝 cyclomaticComplexityAlg. 2017-04-25 12:13:33 -04:00
Rob Rix
91366b0ba4 📝 CyclomaticComplexity. 2017-04-25 12:11:57 -04:00
Rob Rix
42d8b42f60 Merge branch 'a-la-carte-folds' of https://github.com/github/semantic-diff into a-la-carte-folds 2017-04-25 12:10:56 -04:00
Rob Rix
7bf60eb2ff 🔥 CVAlgebra handling.
We run the risk of making paramorphisms quadratic if we use histomorphisms to decorate, so we compromise on the added flexibility.
2017-04-25 12:10:48 -04:00
Rob Rix
2b703d1f31 Generalize decoratorWithAlgebra to take an R-algebra. 2017-04-25 12:09:10 -04:00
Timothy Clem
975304097c Remove TODO and leave readFile behavior alone for now 2017-04-25 09:07:51 -07:00
Timothy Clem
6be9b9c3cd 🔥 concurrently 2017-04-25 09:05:48 -07:00
Timothy Clem
12948181c5 Merge remote-tracking branch 'origin/master' into clean-parse-and-diff-interface 2017-04-25 09:02:41 -07:00
Rob Rix
68e5042155 Merge branch 'master' into a-la-carte-folds 2017-04-25 10:55:26 -04:00
Rob Rix
6c38ec2b77 Correct the deprecation pragma. 2017-04-24 19:16:50 -04:00
Rob Rix
22ac1e3441 Add a deprecation notice to rToCV. 2017-04-24 18:42:35 -04:00
Rob Rix
7e21c167e1 Define an adaptor from F-algebras to CV-algebras. 2017-04-24 18:35:22 -04:00
Rob Rix
22be6c30f0 Factor Base out of the algebra type synonyms to avoid ambiguity. 2017-04-24 18:34:28 -04:00
Rob Rix
5b32f9d1b6 Note the awful complexity of rToCV. 2017-04-24 16:09:49 -04:00
Rob Rix
440cc2e792 📝 rToCV. 2017-04-24 16:00:06 -04:00
Rob Rix
4ac68417a2 Define the promotion of R-algebras into CV-algebras. 2017-04-24 15:58:29 -04:00
Rob Rix
bee4b4b06e Define a type synonym for course-of-value algebras. 2017-04-24 15:55:09 -04:00
joshvera
7395e88ab0 Remove Data.RandomWalkSimilarity 2017-04-24 15:53:11 -04:00
Rob Rix
bc3fc4b4af 📝 fToR. 2017-04-24 15:46:51 -04:00
Rob Rix
d6cb7890b9 Define a function to promote F-algebras into R-algebras. 2017-04-24 15:45:50 -04:00
Rob Rix
953034ccb3 Define FAlgebra in terms of the Base of some type. 2017-04-24 15:44:46 -04:00
Rob Rix
c53076b071 Replace identifiable with its R-algebra. 2017-04-24 15:43:29 -04:00
Rob Rix
d429d77b15 Define a type synonym for R-algebras. 2017-04-24 15:43:22 -04:00
Rob Rix
fa520d6089 Move the definition of FAlgebra up. 2017-04-24 15:41:17 -04:00
Rob Rix
82a40d19ff cyclomaticComplexityAlg is an F-algebra. 2017-04-24 15:40:31 -04:00
Rob Rix
46c044d448 Replace cyclomaticComplexity with its algebra. 2017-04-24 15:39:46 -04:00
Rob Rix
1e40f9b823 📝 decoratorWithAlgebra’s parameters. 2017-04-24 15:38:34 -04:00
Rob Rix
292969a5df Reformat decoratorWithAlgebra’s signature. 2017-04-24 15:38:22 -04:00
Rob Rix
0a6555351b 📝 decoratorWithAlgebra. 2017-04-24 15:35:47 -04:00
Rob Rix
5201cb3f46 📝 FAlgebra. 2017-04-24 15:35:19 -04:00
Rob Rix
07c13859e2 Define a function lifting an algebra into a decorator. 2017-04-24 15:34:28 -04:00
Rob Rix
8b7d416164 Simplify the cyclomatic complexity computation to just the value. 2017-04-24 15:28:21 -04:00
Rob Rix
c4393ace0b Define a cyclomatic complexity decorator. 2017-04-24 15:23:21 -04:00
Rob Rix
90737f6e5f Generalize identifiable over the union. 2017-04-24 15:07:19 -04:00