Skip to content

Commit 002ad8d

Browse files
authored
terraform_deprecated_index: improve perf for files with many expressions (#49)
1 parent d0162dd commit 002ad8d

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

rules/terraform_deprecated_index.go

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,20 +48,16 @@ func (r *TerraformDeprecatedIndexRule) Check(runner tflint.Runner) error {
4848
return nil
4949
}
5050

51-
diags := runner.WalkExpressions(tflint.ExprWalkFunc(func(expr hcl.Expression) hcl.Diagnostics {
52-
filename := expr.Range().Filename
53-
file, err := runner.GetFile(filename)
54-
if err != nil {
55-
return hcl.Diagnostics{
56-
{
57-
Severity: hcl.DiagError,
58-
Summary: "failed to call GetFile()",
59-
Detail: err.Error(),
60-
},
61-
}
62-
}
51+
files, err := runner.GetFiles()
52+
if err != nil {
53+
return err
54+
}
6355

56+
diags := runner.WalkExpressions(tflint.ExprWalkFunc(func(expr hcl.Expression) hcl.Diagnostics {
6457
for _, variable := range expr.Variables() {
58+
filename := expr.Range().Filename
59+
file := files[filename]
60+
6561
bytes := expr.Range().SliceBytes(file.Bytes)
6662

6763
tokens, diags := hclsyntax.LexExpression(bytes, filename, variable.SourceRange().Start)

0 commit comments

Comments
 (0)