# Functions
ImpliedProviderForUnqualifiedType represents the rules for inferring what provider FQN a user intended when only a naked type name is available.
InstanceKeyLess returns true if the first given instance key i should sort before the second key j, and false otherwise.
IsProviderPartNormalized compares a given string to the result of ParseProviderPart(string).
MustParseProviderPart is a wrapper around ParseProviderPart that panics if it returns an error.
MustParseProviderSourceString is a wrapper around ParseProviderSourceString that panics if it returns an error.
NewBuiltInProvider returns the address of a "built-in" provider.
NewDefaultProvider returns the default address of a HashiCorp-maintained, Registry-hosted provider.
NewLegacyProvider returns a mock address for a provider.
NewProvider constructs a provider address from its parts, and normalizes the namespace and type parts to lowercase using unicode case folding rules so that resulting addrs.Provider values can be compared using standard Go equality rules (==).
ParseAbsProviderConfig parses the given traversal as an absolute provider address.
ParseAbsProviderConfigStr is a helper wrapper around ParseAbsProviderConfig that takes a string and parses it with the HCL native syntax traversal parser before interpreting it.
ParseAbsResourceInstance attempts to interpret the given traversal as an absolute resource instance address, using the same syntax as expected by ParseTarget.
ParseAbsResourceInstanceStr is a helper wrapper around ParseAbsResourceInstance that takes a string and parses it with the HCL native syntax traversal parser before interpreting it.
ParseInstanceKey returns the instance key corresponding to the given value, which must be known and non-null.
No description provided by the author
ParseModuleInstanceStr is a helper wrapper around ParseModuleInstance that takes a string and parses it with the HCL native syntax traversal parser before interpreting it.
ParseProviderConfigCompact parses the given absolute traversal as a relative provider address in compact form.
ParseProviderConfigCompactStr is a helper wrapper around ParseProviderConfigCompact that takes a string and parses it with the HCL native syntax traversal parser before interpreting it.
ParseProviderPart processes an addrs.Provider namespace or type string provided by an end-user, producing a normalized version if possible or an error if the string contains invalid characters.
ParseProviderSourceString parses the source attribute and returns a provider.
ParseRef attempts to extract a referencable address from the prefix of the given traversal, which must be an absolute traversal or this function will panic.
ParseRefStr is a helper wrapper around ParseRef that takes a string and parses it with the HCL native syntax traversal parser before interpreting it.
ParseTarget attempts to interpret the given traversal as a targetable address.
ParseTargetStr is a helper wrapper around ParseTarget that takes a string and parses it with the HCL native syntax traversal parser before interpreting it.
# Constants
BuiltInProviderHost is the pseudo-hostname used for the "built-in" provider namespace.
BuiltInProviderNamespace is the provider namespace used for "built-in" providers.
DataResourceMode indicates a data resource, as defined by "data" blocks in configuration.
DefaultRegistryHost is the hostname used for provider addresses that do not have an explicit hostname.
No description provided by the author
InvalidResourceMode is the zero value of ResourceMode and is not a valid resource mode.
LegacyProviderNamespace is the special string used in the Namespace field of type Provider to mark a legacy provider address.
ManagedResourceMode indicates a managed resource, as defined by "resource" blocks in configuration.
No description provided by the author
ResourceInstancePhaseDestroy represents the "destroy" phase of a resource instance.
ResourceInstancePhaseDestroyCBD is similar to ResourceInstancePhaseDestroy but is used for resources that have "create_before_destroy" set, thus requiring a different dependency ordering.
Self is the address of the special object "self" that behaves as an alias for a containing object currently in scope.
No description provided by the author
# Variables
NoKey represents the absense of an InstanceKey, for the single instance of a configuration object that does not use "count" or "for_each" at all.
RootModuleInstance is the module instance address representing the root module, which is also the zero value of ModuleInstance.
# Structs
AbsInputVariableInstance is the address of an input variable within a particular module instance.
AbsLocalValue is the absolute address of a local value within a module instance.
AbsOutputValue is the absolute address of an output value within a module instance.
AbsProviderConfig is the absolute address of a provider configuration within a particular module instance.
AbsResource is an absolute address for a resource under a given module path.
AbsResourceInstance is an absolute address for a resource instance under a given module path.
CountAttr is the address of an attribute of the "count" object in the interpolation scope, like "count.index".
ForEachAttr is the address of an attribute referencing the current "for_each" object in the interpolation scope, addressed using the "each" keyword, ex.
InputVariable is the address of an input variable.
LocalValue is the address of a local value.
ModuleCall is the address of a call from the current module to a child module.
ModuleCallInstance is the address of one instance of a module created from a module call, which might create multiple instances using "count" or "for_each" arguments.
ModuleCallOutput is the address of a particular named output produced by an instance of a module call.
ModuleInstanceStep is a single traversal step through the dynamic module tree.
OutputValue is the address of an output value, in the context of the module that is defining it.
PathAttr is the address of an attribute of the "path" object in the interpolation scope, like "path.module".
Provider encapsulates a single provider type.
ProviderConfig is the address of a provider configuration.
ProviderType encapsulates a single provider type.
Reference describes a reference to an address with source location information.
Resource is an address for a resource block within configuration, which contains potentially-multiple resource instances if that configuration block uses "count" or "for_each".
ResourceInstance is an address for a specific instance of a resource.
ResourceInstancePhase is a special kind of reference used only internally during graph building to represent resource instances that are in a non-primary state.
ResourcePhase is a special kind of reference used only internally during graph building to represent resources that are in a non-primary state.
Target describes a targeted address with source location information.
TerraformAttr is the address of an attribute of the "terraform" object in the interpolation scope, like "terraform.workspace".
# Interfaces
InstanceKey represents the key of an instance within an object that contains multiple instances due to using "count" or "for_each" arguments in configuration.
Referenceable is an interface implemented by all address types that can appear as references in configuration language expressions.
Targetable is an interface implemented by all address types that can be used as "targets" for selecting sub-graphs of a graph.
# Type aliases
InstanceKeyType represents the different types of instance key that are supported.
IntKey is the InstanceKey representation representing integer indices, as used when the "count" argument is specified or if for_each is used with a sequence type.
Module is an address for a module call within configuration.
ModuleInstance is an address for a particular module instance within the dynamic module tree.
ResourceInstancePhaseType is an enumeration used with ResourceInstancePhase.
ResourceMode defines which lifecycle applies to a given resource.
StringKey is the InstanceKey representation representing string indices, as used when the "for_each" argument is specified with a map or object type.