github.com/hashicorp/terraform-plugin-sdk@v1.17.2/internal/addrs/referenceable.go (about) 1 package addrs 2 3 // Referenceable is an interface implemented by all address types that can 4 // appear as references in configuration language expressions. 5 type Referenceable interface { 6 // All implementations of this interface must be covered by the type switch 7 // in lang.Scope.buildEvalContext. 8 referenceableSigil() 9 10 // String produces a string representation of the address that could be 11 // parsed as a HCL traversal and passed to ParseRef to produce an identical 12 // result. 13 String() string 14 } 15 16 type referenceable struct { 17 } 18 19 func (r referenceable) referenceableSigil() { 20 }