hcl/hcl
Martin Atkins bafa0c5ace hcl/hclsyntax: Accept single-line block definitions
This relaxes our previous spec to include a special form from HCL 1:

    foo { bar = baz }

Although we normally require each argument to be on a line of its own, as
a special case we allow a block to be defined with a single nested
argument all on one line.

Only one nested argument definition is allowed, and a nested block
definition like "foo { bar {} }" is also disallowed in order to force the
more-readable split of bar {} onto a line of its own.

This is a pragmatic addition for broader compatibility with HCL 1-oriented
input. This single-line usage is not considered idiomatic HCL 2 and may
in future be undone by the formatter, though for now it is left as-is
aside from the spacing around the braces.

This also changes the behavior of the source code formatter to include
spaces on both sides of braces. This mimicks the formatting behavior of
HCL 1 for this situation, and (subjectively) reads better even for other
one-line braced expressions like object constructors and object for
expressions.
2018-12-14 13:45:03 -08:00
..
hclsyntax hcl/hclsyntax: Accept single-line block definitions 2018-12-14 13:45:03 -08:00
integrationtest hclsyntax: "null", "true", "false" AbsTraversalForExpr 2018-02-26 08:38:35 -08:00
json hcl/json: Detect variable references in property names 2018-12-12 16:49:01 -08:00
spectests hcl/spectests: run the spec testsuite as part of "go test" 2018-08-12 18:22:10 -07:00
diagnostic_text_test.go hcl: Include variable values in rendered diagnostics messages 2018-07-28 14:42:53 -07:00
diagnostic_text.go hcl: Deduplicate symbols when printing diagnostic messages 2018-07-28 15:44:15 -07:00
diagnostic.go hcl: Include Expression reference in diagnostics 2018-07-28 13:36:55 -07:00
didyoumean.go Move the zcl package and its two parsing subpackages to "hcl" names 2017-09-11 16:40:37 -07:00
doc.go Move the zcl package and its two parsing subpackages to "hcl" names 2017-09-11 16:40:37 -07:00
eval_context.go Move the zcl package and its two parsing subpackages to "hcl" names 2017-09-11 16:40:37 -07:00
expr_call.go hcl: ExprCall function 2018-03-04 14:04:54 -08:00
expr_list.go hcl: UnwrapExpression and UnwrapExpressionUntil 2018-01-27 09:10:18 -08:00
expr_map.go hcl: ExprMap function 2018-02-23 08:41:58 -08:00
expr_unwrap.go hcl: UnwrapExpression and UnwrapExpressionUntil 2018-01-27 09:10:18 -08:00
merged_test.go go fmt updates 2018-12-11 16:49:03 -08:00
merged.go hcl: Fix PartialContent used on MergeBody result 2018-12-11 15:23:12 -08:00
ops.go hcl: update stale references to "zcl" 2018-01-27 11:03:05 -08:00
pos_scanner_test.go hcl: RangeScanner helper 2018-01-14 11:24:19 -08:00
pos_scanner.go hcl: RangeScanner helper 2018-01-14 11:24:19 -08:00
pos_test.go hcl: SourceRange.PartitionAround 2018-01-14 11:51:05 -08:00
pos.go hcl: Best-effort "what's at this position" helpers 2018-07-28 13:17:51 -07:00
schema.go Move the zcl package and its two parsing subpackages to "hcl" names 2017-09-11 16:40:37 -07:00
spec.md Fix spec typos 2018-07-01 19:35:20 +02:00
static_expr.go hcl: StaticExpr function for making synthetic expressions 2017-09-20 16:22:05 -07:00
structure_at_pos.go hcl: Best-effort "what's at this position" helpers 2018-07-28 13:17:51 -07:00
structure.go More miscellaneous renaming of ZCL to HCL. 2017-09-11 18:36:56 -07:00
traversal_for_expr_test.go hcl: ExprAsKeyword function 2018-02-03 08:55:50 -08:00
traversal_for_expr.go hcl: ExprAsKeyword function 2018-02-03 08:55:50 -08:00
traversal.go hcl: Export the source range for a Traversal 2018-01-13 23:01:11 -08:00