| // Copyright (c) HashiCorp, Inc. |
| // SPDX-License-Identifier: MPL-2.0 |
| |
| package configs |
| |
| import ( |
| "github.com/hashicorp/hcl/v2" |
| ) |
| |
| func decodeDependsOn(attr *hcl.Attribute) ([]hcl.Traversal, hcl.Diagnostics) { |
| var ret []hcl.Traversal |
| exprs, diags := hcl.ExprList(attr.Expr) |
| |
| for _, expr := range exprs { |
| expr, shimDiags := shimTraversalInString(expr, false) |
| diags = append(diags, shimDiags...) |
| |
| traversal, travDiags := hcl.AbsTraversalForExpr(expr) |
| diags = append(diags, travDiags...) |
| if len(traversal) != 0 { |
| ret = append(ret, traversal) |
| } |
| } |
| |
| return ret, diags |
| } |