Skip to content

Commit 383396a

Browse files
committed
trailingSpace in buildForExpr
1 parent 0ef8321 commit 383396a

File tree

3 files changed

+23
-19
lines changed

3 files changed

+23
-19
lines changed

internal/convert/adv2v2.go

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -166,8 +166,8 @@ func processDynamicRepSpecsWithoutConfig(dSpec dynamicBlock, diskSizeGB hclwrite
166166

167167
func buildDynamicRepSpecsWithShards(dSpec dynamicBlock, numShardsAttr *hclwrite.Attribute) (hclwrite.Tokens, error) {
168168
numShardsExpr := replaceDynamicBlockReferences(hcl.GetAttrExpr(numShardsAttr), nRepSpecs, nSpec)
169-
outerFor := buildForExpr(nSpec, hcl.GetAttrExpr(dSpec.forEach))
170-
innerFor := buildForExpr("i", fmt.Sprintf("range(%s)", numShardsExpr))
169+
outerFor := buildForExpr(nSpec, hcl.GetAttrExpr(dSpec.forEach), false)
170+
innerFor := buildForExpr("i", fmt.Sprintf("range(%s)", numShardsExpr), false)
171171
forExpr := fmt.Sprintf("%s [\n %s ", outerFor, innerFor)
172172
tokens := hcl.TokensFromExpr(forExpr)
173173
tokens = append(tokens, hcl.TokensObject(dSpec.content.Body())...)
@@ -176,7 +176,7 @@ func buildDynamicRepSpecsWithShards(dSpec dynamicBlock, numShardsAttr *hclwrite.
176176
}
177177

178178
func buildSimpleDynamicRepSpecs(dSpec dynamicBlock) (hclwrite.Tokens, error) {
179-
forExpr := buildForExpr(nSpec, hcl.GetAttrExpr(dSpec.forEach))
179+
forExpr := buildForExpr(nSpec, hcl.GetAttrExpr(dSpec.forEach), false)
180180
tokens := hcl.TokensFromExpr(forExpr)
181181
tokens = append(tokens, hcl.TokensObject(dSpec.content.Body())...)
182182
return hcl.EncloseBracketsNewLines(tokens), nil
@@ -211,7 +211,7 @@ func buildRegionConfigBody(dConfig dynamicBlock, diskSizeGB hclwrite.Tokens) *hc
211211

212212
func buildRegionForExpr(spec string, regionConfigBody *hclwrite.Body) hclwrite.Tokens {
213213
configForEach := fmt.Sprintf("%s.%s", spec, nConfig)
214-
regionForExpr := buildForExpr(nRegion, configForEach)
214+
regionForExpr := buildForExpr(nRegion, configForEach, false)
215215
regionTokens := hcl.TokensFromExpr(regionForExpr)
216216
return append(regionTokens, hcl.TokensObject(regionConfigBody)...)
217217
}
@@ -228,14 +228,14 @@ func buildRepSpecBody(dSpec dynamicBlock, regionTokens hclwrite.Tokens) *hclwrit
228228
}
229229

230230
func buildInnerForExpr(numShardsExpr string, repSpecBody *hclwrite.Body) hclwrite.Tokens {
231-
innerForExpr := buildForExpr("i", fmt.Sprintf("range(%s)", numShardsExpr))
231+
innerForExpr := buildForExpr("i", fmt.Sprintf("range(%s)", numShardsExpr), false)
232232
innerTokens := hcl.TokensFromExpr(innerForExpr)
233233
return append(innerTokens, hcl.TokensObject(repSpecBody)...)
234234
}
235235

236236
func buildOuterForExpr(dSpec dynamicBlock, innerTokens hclwrite.Tokens) hclwrite.Tokens {
237-
outerForExpr := buildForExpr(nSpec, hcl.GetAttrExpr(dSpec.forEach))
238-
outerTokens := hcl.TokensFromExpr(fmt.Sprintf("%s ", outerForExpr))
237+
outerForExpr := buildForExpr(nSpec, hcl.GetAttrExpr(dSpec.forEach), true)
238+
outerTokens := hcl.TokensFromExpr(outerForExpr)
239239
return append(outerTokens, hcl.EncloseBracketsNewLines(innerTokens)...)
240240
}
241241

@@ -298,12 +298,12 @@ func convertDynamicRepSpecsWithoutNumShards(resourceb *hclwrite.Body, dSpec, dCo
298298
}
299299
processAllSpecs(configb, diskSizeGB)
300300
configForEach := fmt.Sprintf("%s.%s", nSpec, nConfig)
301-
regionForExpr := buildForExpr(nRegion, configForEach)
301+
regionForExpr := buildForExpr(nRegion, configForEach, false)
302302
regionTokens := hcl.TokensFromExpr(regionForExpr)
303303
regionTokens = append(regionTokens, hcl.TokensObject(configb)...)
304304
repSpecb.SetAttributeRaw(nConfig, hcl.EncloseBracketsNewLines(regionTokens))
305-
forExpr := buildForExpr(nSpec, hcl.GetAttrExpr(dSpec.forEach))
306-
innerTokens := hcl.TokensFromExpr(fmt.Sprintf("%s ", forExpr))
305+
forExpr := buildForExpr(nSpec, hcl.GetAttrExpr(dSpec.forEach), true)
306+
innerTokens := hcl.TokensFromExpr(forExpr)
307307
innerTokens = append(innerTokens, hcl.TokensArraySingle(repSpecb)...)
308308
tokens := hcl.TokensFuncFlatten(innerTokens)
309309
resourceb.RemoveBlock(dSpec.block)
@@ -342,7 +342,7 @@ func convertDynamicConfig(repSpecs *hclwrite.Body, dConfig dynamicBlock, diskSiz
342342
blockName := getResourceName(dConfig.block)
343343
transformDynamicBlockReferencesRecursive(dConfig.content.Body(), blockName, nRegion)
344344
processAllSpecs(dConfig.content.Body(), diskSizeGB)
345-
forExpr := buildForExpr(nRegion, hcl.GetAttrExpr(dConfig.forEach))
345+
forExpr := buildForExpr(nRegion, hcl.GetAttrExpr(dConfig.forEach), false)
346346
tokens := hcl.TokensFromExpr(forExpr)
347347
tokens = append(tokens, hcl.TokensObject(dConfig.content.Body())...)
348348
tokens = hcl.EncloseBracketsNewLines(tokens)

internal/convert/clu2adv.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,7 @@ func fillReplicationSpecsWithDynamicBlock(resourceb *hclwrite.Body, root attrVal
281281
if err != nil {
282282
return dynamicBlock{}, err
283283
}
284-
forSpec := hcl.TokensFromExpr(fmt.Sprintf("%s ", buildForExpr(nSpec, hcl.GetAttrExpr(dSpec.forEach))))
284+
forSpec := hcl.TokensFromExpr(buildForExpr(nSpec, hcl.GetAttrExpr(dSpec.forEach), true))
285285
forSpec = append(forSpec, dConfig.tokens...)
286286
tokens := hcl.TokensFuncFlatten(forSpec)
287287
dSpec.tokens = tokens
@@ -307,17 +307,17 @@ func fillWithDynamicRegionConfigs(specbSrc *hclwrite.Body, root attrVals, change
307307
if err != nil {
308308
return dynamicBlock{}, err
309309
}
310-
priorityForStr := buildForExpr(nPriority, fmt.Sprintf("range(%d, %d, -1)", valMaxPriority, valMinPriority))
310+
priorityForStr := buildForExpr(nPriority, fmt.Sprintf("range(%d, %d, -1)", valMaxPriority, valMinPriority), true)
311311
priorityFor := hcl.TokensComment(commentPriorityFor)
312-
priorityFor = append(priorityFor, hcl.TokensFromExpr(fmt.Sprintf("%s ", priorityForStr))...)
312+
priorityFor = append(priorityFor, hcl.TokensFromExpr(priorityForStr)...)
313313
priorityFor = append(priorityFor, regionFor...)
314314
repSpecb.SetAttributeRaw(nConfig, hcl.TokensFuncFlatten(priorityFor))
315315

316316
shards := specbSrc.GetAttribute(nNumShards)
317317
if shards == nil {
318318
return dynamicBlock{}, fmt.Errorf("%s: %s not found", errRepSpecs, nNumShards)
319319
}
320-
tokens := hcl.TokensFromExpr(buildForExpr("i", fmt.Sprintf("range(%s)", hcl.GetAttrExpr(shards))))
320+
tokens := hcl.TokensFromExpr(buildForExpr("i", fmt.Sprintf("range(%s)", hcl.GetAttrExpr(shards)), false))
321321
tokens = append(tokens, hcl.EncloseBraces(repSpec.BuildTokens(nil), true)...)
322322
d.tokens = hcl.EncloseBracketsNewLines(tokens)
323323
return d, nil
@@ -473,7 +473,7 @@ func getDynamicBlockRegionArray(forEach string, configSrc *hclwrite.Block, root
473473
if err != nil {
474474
return nil, err
475475
}
476-
tokens := hcl.TokensFromExpr(buildForExpr(nRegion, forEach))
476+
tokens := hcl.TokensFromExpr(buildForExpr(nRegion, forEach, false))
477477
tokens = append(tokens, hcl.EncloseBraces(region.BuildTokens(nil), true)...)
478478
tokens = append(tokens, hcl.TokensFromExpr(fmt.Sprintf("if %s == %s", nPriority, priorityStr))...)
479479
return hcl.EncloseBracketsNewLines(tokens), nil

internal/convert/shared.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ func processNumShards(shardsAttr *hclwrite.Attribute, processedBody *hclwrite.Bo
3535
return hcl.TokensArray(bodies), nil
3636
}
3737
shardsExpr := hcl.GetAttrExpr(shardsAttr)
38-
tokens := hcl.TokensFromExpr(buildForExpr("i", fmt.Sprintf("range(%s)", shardsExpr)))
38+
tokens := hcl.TokensFromExpr(buildForExpr("i", fmt.Sprintf("range(%s)", shardsExpr), false))
3939
tokens = append(tokens, hcl.TokensObject(processedBody)...)
4040
return hcl.EncloseBracketsNewLines(tokens), nil
4141
}
@@ -204,6 +204,10 @@ func fillSpecOpt(resourceb *hclwrite.Body, name string, diskSizeGBTokens hclwrit
204204
}
205205

206206
// buildForExpr builds a for expression with the given variable and collection
207-
func buildForExpr(varName, collection string) string {
208-
return fmt.Sprintf("for %s in %s :", varName, collection)
207+
func buildForExpr(varName, collection string, trailingSpace bool) string {
208+
expr := fmt.Sprintf("for %s in %s :", varName, collection)
209+
if trailingSpace {
210+
expr += " "
211+
}
212+
return expr
209213
}

0 commit comments

Comments
 (0)