These new methods both take into account the possibility of there being
unknown keys, which will be useful for the expression evaluator to decide
whether it can return a specific type or not.
Now that Expander can support unknown expansions for modules and resource
instances, we'll need some placeholders to use when evaluating the
configurations of those objects to predict as much as possible what the
final configurations of all of their instances will look like.
This is a similar problem to checking whether a not-yet-expanded object
has valid configuration during the "validate" phase: we're essentially
asking what configuration all instances of the object will have in common,
and leaving unknown anything that might vary between instances.
Nothing is using these yet, but uses will follow in later commits.
This is part of a general effort to move all of Terraform's non-library
package surface under internal in order to reinforce that these are for
internal use within Terraform only.
If you were previously importing packages under this prefix into an
external codebase, you could pin to an earlier release tag as an interim
solution until you've make a plan to achieve the same functionality some
other way.
2021-05-17 14:09:07 -07:00
Renamed from instances/instance_key_data.go (Browse further)