func Variables(expr Expression) []hcl.Traversal {
	var vars []hcl.Traversal
	walker := &variablesWalker{
		Callback: func(t hcl.Traversal) {
			vars = append(vars, t)
		},
	}
	Walk(expr, walker)
	return vars
}
Variables returns all of the variables referenced within a given experssion.

This is the implementation of the "Variables" method on every native
expression.
package hclsyntax
import (
	"github.com/hashicorp/hcl/v2"
)