github.com/pulumi/terraform@v1.4.0/pkg/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 // All Referenceable address types must have unique keys. 11 UniqueKeyer 12 13 // String produces a string representation of the address that could be 14 // parsed as a HCL traversal and passed to ParseRef to produce an identical 15 // result. 16 String() string 17 } 18 19 type referenceable struct { 20 } 21 22 func (r referenceable) referenceableSigil() { 23 }