opentofu/website/docs/configuration/expressions.html.md
2021-01-22 12:22:21 -08:00

3.9 KiB

layout page_title sidebar_current
language Expressions Landing Page - Configuration Language docs-config-expressions

Expressions Landing Page

To improve navigation, we've split the old Expressions page into several smaller pages.

Types and Values, Literal Expressions, Indices and Attributes

Terraform's types are string, number, bool, list, tuple, map, object, and null.

This information has moved to Types and Values.

References to Named Values (Resource Attributes, Variables, etc.)

You can refer to certain values by name, like var.some_variable or aws_instance.example.ami.

This information has moved to References to Values.

Arithmetic and Logical Operators

Operators are expressions that transform other expressions, like adding two numbers (+) or comparing two values to get a bool (==, >=, etc.).

This information has moved to Operators.

Conditional Expressions

The condition ? true_val : false_val expression chooses between two expressions based on a bool condition.

This information has moved to Conditional Expressions.

Function Calls

Terraform's functions can be called like function_name(arg1, arg2).

This information has moved to Function Calls.

for Expressions

Expressions like [for s in var.list : upper(s)] can transform a complex type value into another complex type value.

This information has moved to For Expressions.

Splat Expressions

Expressions like var.list[*].id can extract simpler collections from complex collections.

This information has moved to Splat Expressions.

dynamic Blocks

The special dynamic block type serves the same purpose as a for expression, except it creates multiple repeatable nested blocks instead of a complex value.

This information has moved to Dynamic Blocks.

String Literals and String Templates

Strings can be "double-quoted" or

<<EOT
heredocs
EOT

Strings can also include escape sequences like \n, interpolation sequences (${ ... }), and template sequences (%{ ... }).

This information has moved to Strings and Templates.