mirror of https://github.com/Wilfred/difftastic/
96 lines
1.7 KiB
HCL
96 lines
1.7 KiB
HCL
resource "example" "literals" {
|
|
attr1 = "val1"
|
|
tupl1 = [ 1, 2, 3.4, "foo" ]
|
|
tupl2 = []
|
|
obj1 = { foo = "bar", baz = quz }
|
|
null1 = null
|
|
bool1 = true
|
|
bool2 = false
|
|
esc1 = "\" \t \UFF11FF22 \uFFFF \n"
|
|
esc2 = "$${} %%{}"
|
|
num1 = 2
|
|
num2 = 2.112
|
|
num3 = 2.112e-12
|
|
num4 = 2.112e+12
|
|
num5 = 2.112E+12
|
|
num6 = 2.112E-12
|
|
num7 = 0x21FF
|
|
}
|
|
|
|
resource "example" "comments" {
|
|
// comment
|
|
# comment
|
|
/*
|
|
comment
|
|
*/
|
|
}
|
|
|
|
resource "example" "splat_expressions" {
|
|
splat1 = foo.*.bar.baz[0]
|
|
splat2 = foo[*].bar.baz[0]
|
|
}
|
|
|
|
resource "example" "for_expressions" {
|
|
for1 = { for i, v in ["a", "a", "b"] : v => i... }
|
|
for2 = [ for k, v in x : "${k}-${v}" ]
|
|
for3 = { for k, v in x: k => v }
|
|
for4 = [ for v in x : v ]
|
|
for5 = { for v in x : v => v }
|
|
for6 = [ for v in x : v if v < 3 ]
|
|
}
|
|
|
|
resource "example" "function_expressions" {
|
|
func1 = is_number("123")
|
|
func2 = multiline(
|
|
arg1,
|
|
arg2,
|
|
arg3...
|
|
)
|
|
func3 = withobject({
|
|
"foo" : 2,
|
|
"bar" : baz,
|
|
key : val,
|
|
fizz : buzz,
|
|
})
|
|
}
|
|
|
|
resource "example" "binary_expressions" {
|
|
cond1 = (1 == 2) ? 1 : "foobar"
|
|
bin1 = ((1+2)%3)*4
|
|
}
|
|
|
|
resource "example" "template_expressions" {
|
|
tpl1 = "prefix-${var.bar}"
|
|
tpl2 = "prefix-${func("bar")}"
|
|
tpl3 = "prefix-${func("nested-${var.bar}")}"
|
|
|
|
tpl4 = <<EOF
|
|
%{ for a in f(b) ~}
|
|
${func("foo${ a }")}
|
|
%{ endfor ~}
|
|
EOF
|
|
|
|
tpl5 = <<-EOF
|
|
%{~if cond~}
|
|
"foo"
|
|
%{~else~}
|
|
4
|
|
%{~endif~}
|
|
EOF
|
|
|
|
tpl6 = <<-EOF
|
|
%{ for a in f(b) ~}
|
|
%{~if a~} "true" %{~else~} "false" %{~endif~}
|
|
%{ endfor ~}
|
|
EOF
|
|
}
|
|
|
|
resource "example" "nested_blocks" {
|
|
nested_block "first" {
|
|
attr1 = "foo"
|
|
nested_block "second" {
|
|
attr1 = "bar"
|
|
}
|
|
}
|
|
}
|