1 // Package configs contains types that represent Terraform configurations and
2 // the different elements thereof.
4 // The functionality in this package can be used for some static analyses of
5 // Terraform configurations, but this package generally exposes representations
6 // of the configuration source code rather than the result of evaluating these
7 // objects. The sibling package "lang" deals with evaluation of structures
8 // and expressions in the configuration.
10 // Due to its close relationship with HCL, this package makes frequent use
11 // of types from the HCL API, including raw HCL diagnostic messages. Such
12 // diagnostics can be converted into Terraform-flavored diagnostics, if needed,
13 // using functions in the sibling package tfdiags.
15 // The Parser type is the main entry-point into this package. The LoadConfigDir
16 // method can be used to load a single module directory, and then a full
17 // configuration (including any descendent modules) can be produced using
18 // the top-level BuildConfig method.