terraform/website/layouts
Martin Atkins cec4578005 lang/funcs: Experimental "defaults" function
This is a new part of the existing module_variable_optional_attrs
experiment, because it's intended to complement the ability to declare
an input variable whose type constraint is an object type with optional
attributes. Module authors can use this to replace null values (that were
either explicitly set or implied by attribute omission) with other
non-null values of the same type.

This function is a bit more type-fussy than our functions typically are
because it's intended for use primarily with input variables that have
fully-specified type constraints, and thus it uses that type information
to help inform how the defaults data structure should be interpreted.

Other uses of this function will probably be harder today because it takes
a lot of extra annotation to build a value of a specific type if it isn't
passing through a variable type constraint. Perhaps later language
features for more general type conversion will make this more applicable,
but for now the more general form of this problem is better solved other
ways.
2020-11-13 17:27:20 -08:00
..
docs.erb website: Add new Language sidebar, repurpose docs.erb as CLI sidebar 2020-11-11 19:11:29 -08:00
downloads.erb website: Initial docs about the APT/Yum repositories 2020-11-11 09:50:22 -08:00
intro.erb website: Decommission derelict "guides" section, move some content to "intro" 2020-10-26 18:21:29 -07:00
language.erb lang/funcs: Experimental "defaults" function 2020-11-13 17:27:20 -08:00
registry.erb website: Add wandering Plugin Signing page to publishing sidebar 2020-10-26 18:21:29 -07:00
terraform.erb provider/terraform: reorganize for merge into core 2017-11-02 10:46:31 -07:00