-
Notifications
You must be signed in to change notification settings - Fork 6
/
codelingo.yaml
39 lines (38 loc) · 1.36 KB
/
codelingo.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
tenets:
# Import effective Go bundle manually
- import: codelingo/effective-go/avoid-annotations-in-comments
- import: codelingo/effective-go/comment-first-word-as-subject
- import: codelingo/effective-go/good-package-name
- import: codelingo/effective-go/single-method-interface-name
- import: codelingo/effective-go/underscores-in-name
- import: codelingo/effective-go/unnecessary-else
- import: codelingo/code-review-comments/declare-empty-slice
- import: codelingo/effective-go/defer-close-file
- import: codelingo/effective-go/comment-first-word-when-empty
- name: missing-stop-ticker
actions:
codelingo/review:
comment: Add `defer {{varName}}.Stop()` to stop the ticker and release associated resources.
query: |
import codelingo/ast/go
go.func_decl(depth = any):
@review comment
go.assign_stmt(depth = any):
go.lhs:
go.ident:
sibling_order == 0
name as varName
go.rhs:
go.call_expr:
go.selector_expr:
go.ident:
name == "time"
go.ident:
name == "NewTicker"
exclude:
go.call_expr(depth = any):
go.selector_expr:
go.ident:
name == varName
go.ident:
name == "Stop"