github.com/terramate-io/tf@v0.0.0-20230830114523-fce866b4dfcd/addrs/doc.go (about) 1 // Copyright (c) HashiCorp, Inc. 2 // SPDX-License-Identifier: MPL-2.0 3 4 // Package addrs contains types that represent "addresses", which are 5 // references to specific objects within a Terraform configuration or 6 // state. 7 // 8 // All addresses have string representations based on HCL traversal syntax 9 // which should be used in the user-interface, and also in-memory 10 // representations that can be used internally. 11 // 12 // For object types that exist within Terraform modules a pair of types is 13 // used. The "local" part of the address is represented by a type, and then 14 // an absolute path to that object in the context of its module is represented 15 // by a type of the same name with an "Abs" prefix added, for "absolute". 16 // 17 // All types within this package should be treated as immutable, even if this 18 // is not enforced by the Go compiler. It is always an implementation error 19 // to modify an address object in-place after it is initially constructed. 20 package addrs