You're looking at documentation for Terraform v1.1 and earlier. Click here to view the latest content.
A new platform for documentation and tutorials is launching soon.
We are migrating Terraform documentation into HashiCorp Developer, our new developer experience.
toset converts its argument to a set value.
Explicit type conversions are rarely necessary in Terraform because it will convert types automatically where required. Use the explicit type conversion functions only to normalize types returned in module outputs.
Pass a list value to
toset to convert it to a set, which will remove any
duplicate elements and discard the ordering of the elements.
> toset(["a", "b", "c"]) [ "a", "b", "c", ]
Since Terraform's concept of a set requires all of the elements to be of the same type, mixed-typed elements will be converted to the most general type:
> toset(["a", "b", 3]) [ "a", "b", "3", ]
Set collections are unordered and cannot contain duplicate values, so the ordering of the argument elements is lost and any duplicate values are coalesced:
> toset(["c", "b", "b"]) [ "b", "c", ]