hclwrite: do not add space after a boolean NOT operator

This commit is contained in:
Varun Sivapalan 2020-12-03 01:10:12 +01:00 committed by GitHub
parent 6a747c8a53
commit 61e260fbae
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 0 deletions

View File

@ -263,6 +263,10 @@ func spaceAfterToken(subject, before, after *Token) bool {
case after.Type == hclsyntax.TokenOBrack && (subject.Type == hclsyntax.TokenIdent || subject.Type == hclsyntax.TokenNumberLit || tokenBracketChange(subject) < 0):
return false
case subject.Type == hclsyntax.TokenBang:
// No space after a bang
return false
case subject.Type == hclsyntax.TokenMinus:
// Since a minus can either be subtraction or negation, and the latter
// should _not_ have a space after it, we need to use some heuristics

View File

@ -67,6 +67,10 @@ func TestFormat(t *testing.T) {
`foo(a,b...)`,
`foo(a, b...)`,
},
{
`! true`,
`!true`,
},
{
`a="hello ${ name }"`,
`a = "hello ${name}"`,