Commit Graph

461 Commits

Author SHA1 Message Date
Jeroen Engels
4ad1d33d41 Make scope understand parameters 2019-11-27 00:17:14 +01:00
Jeroen Engels
0e70b851d3 Refactor: Rewrite registerVariable to not unbox for every operation 2019-11-26 23:13:05 +01:00
Jeroen Engels
776e6f8925 Simplify implementation of NonemptyList.mapHead 2019-11-26 20:42:39 +01:00
Jeroen Engels
4c9c79a132 Remove aliasing of NonemptyList 2019-11-25 20:37:29 +01:00
Jeroen Engels
095ed172c9 Remove unused code in Scope 2019-11-24 21:11:17 +01:00
Jeroen Engels
581b77fd17 Make Scope understand exposing(Foo(..)) 2019-11-24 20:29:05 +01:00
Jeroen Engels
45861e3de7 Rename setter and getter fields for scope 2019-11-24 20:28:41 +01:00
Jeroen Engels
b8b6c6758c Make scope understand the elm/core prelude 2019-11-24 20:28:41 +01:00
Jeroen Engels
f6b5b0c4c3 Add tests for Scope 2019-11-24 20:28:41 +01:00
Jeroen Engels
85bda9c1c9 Remove unused imports in Scope 2019-11-23 20:39:45 +01:00
Jeroen Engels
a7c4b86a12 Push a new scope when entering a let..in block 2019-11-23 20:22:42 +01:00
Jeroen Engels
688eb3a1d1 Add test to make sure visitors are called in the expected order 2019-11-23 20:22:42 +01:00
Jeroen Engels
97d45987bd Call multiple declaration and expression visitors in reverse order on exit 2019-11-23 20:22:42 +01:00
Jeroen Engels
003c38ef5d Rename unboxContext to mapInnerContext 2019-11-23 20:22:42 +01:00
Jeroen Engels
e0cf09b41e Allow a Rule to have several visitors of the same type 2019-11-23 20:22:42 +01:00
Jeroen Engels
ae30aaa02e Find a better API for Scope/Higher-Order rules 2019-11-22 00:00:23 +01:00
Jeroen Engels
28e9dfc401 Make scope register top level variables 2019-11-22 00:00:13 +01:00
Jeroen Engels
0a9a4d8853 Make Scope understand exposing (..) 2019-11-20 11:16:37 +01:00
Jeroen Engels
e3003128c5 Add way to access the dependencies from a Rule 2019-11-20 10:45:13 +01:00
Jeroen Engels
75bb616686 Make Scope understand the exposing part when importing a module 2019-11-20 09:48:57 +01:00
Jeroen Engels
fad39c1397 Start working on a scope module
This module should help to write rules that detect the use of a given
function.
2019-11-20 09:48:57 +01:00
Jeroen Engels
8f04e18994 Rename interfaces to modules 2019-11-20 09:47:09 +01:00
Jeroen Engels
c656670a79 Add comments on the documentation of Review.Project 2019-11-20 09:34:01 +01:00
Jeroen Engels
f303269978 Use Elm.Docs instead of custom made docs.json wrapper 2019-11-20 00:26:31 +01:00
Jeroen Engels
61ef16b345 Have Project store the dependencies of the project 2019-11-20 00:24:05 +01:00
Jeroen Engels
f8632c20bc Write down some thoughts on caching 2019-11-19 23:39:53 +01:00
Jeroen Engels
08df815a0f Add dependencies to the Review.Project data 2019-11-17 23:03:53 +01:00
Jeroen Engels
32ce34ce34 Write about dependency loading investigation 2019-11-17 22:50:04 +01:00
Jeroen Engels
ebeb25c8ed Write about new difficulties with multi-file rules 2019-11-17 22:50:04 +01:00
Jeroen Engels
5a985613c1 Sort errors in tests 2019-11-16 20:34:24 +01:00
Jeroen Engels
b45ee7eef5 Try renaming phantom type { multiFile : () } to a custom type 2019-11-04 01:01:50 +01:00
Jeroen Engels
ea62779091 Only run withElmJsonVisitor once per rule 2019-11-04 00:13:43 +01:00
Jeroen Engels
e0fc02de43 Fix dogfooding errors 2019-11-04 00:13:43 +01:00
Jeroen Engels
c1343b8c15 Use local source for review config 2019-11-04 00:13:43 +01:00
Jeroen Engels
6fdb85061b Add cache to rules
I think that multi-file runs will be quite slow, and therefore it is
worth optimizing. Rules will now remember the previous run result for
each file in a closure.
2019-11-04 00:13:43 +01:00
Jeroen Engels
1495445518 Remove the concept of Analyzer 2019-10-31 19:19:08 +01:00
Jeroen Engels
438b844926 Add reviewRawFiles and make demo/ and Review.Test use it and reviewFiles 2019-10-31 18:32:27 +01:00
Jeroen Engels
8553c5199d Make demo/ use local sources 2019-10-31 18:16:05 +01:00
Jeroen Engels
acbfe83f29 Bump demo to Elm 0.19.1 2019-10-31 17:29:27 +01:00
Jeroen Engels
4a931c9dde Remove Review.Error and use Review.Rule.Error instead 2019-10-31 13:00:43 +01:00
Jeroen Engels
9cd0a478ee Add the filePath to errors reported in the file traversal for a multi rule 2019-10-31 12:50:07 +01:00
Jeroen Engels
c1f752a486 Move ApiDesign.elm to documentation/design/multi-file.md 2019-10-31 12:37:07 +01:00
Jeroen Engels
a879710561 Finish 2019-10-30 19:51:57 +01:00
Jeroen Engels
841430be60 API design 2019-10-29 22:06:22 +01:00
Jeroen Engels
7576962a64 Finish first draft 2019-10-21 23:33:41 +02:00
Jeroen Engels
a8bbd06ae3 Continue exploring the multifile API 2019-10-21 23:33:24 +02:00
Jeroen Engels
894e3ac1c9 Start working on a design for multi-file rules 2019-10-21 23:33:24 +02:00
Jeroen Engels
76d7a785b3 Bump to 0.19.1 2019-10-21 23:31:18 +02:00
Jeroen Engels
ddad514b37 Typo: Remove extraneous parens 2019-10-20 14:31:18 +02:00
Jeroen Engels
2db0a50904 Update the example image for elm-review 2019-09-29 16:13:03 +02:00