MCPcopy Create free account
hub / github.com/aws-cloudformation/rain / parseSubString

Function parseSubString

cft/graph/util.go:15–41  ·  view source on GitHub ↗
(refs []string, substr string)

Source from the content-addressed store, hash-verified

13}
14
15func parseSubString(refs []string, substr string) []string {
16 words, err := parse.ParseSub(substr, false)
17 if err != nil {
18 config.Debugf("Unable to parse Sub %s: %v", substr, err)
19 return refs
20 }
21
22 for _, word := range words {
23 switch word.T {
24 case parse.AWS:
25 refs = append(refs, fmt.Sprintf("AWS::%s", word.W))
26 case parse.REF:
27 refs = append(refs, word.W)
28 case parse.GETATT:
29 left, _, found := strings.Cut(word.W, ".")
30 if !found {
31 config.Debugf("unexpected GetAtt %s", word.W)
32 } else {
33 refs = append(refs, left)
34 }
35 }
36 }
37
38 config.Debugf("After parsing Sub, refs is now: %v", refs)
39
40 return refs
41}
42
43func findRefs(t map[string]interface{}) []string {
44 refs := make([]string, 0)

Callers 1

findRefsFunction · 0.85

Calls 2

ParseSubFunction · 0.92
DebugfFunction · 0.92

Tested by

no test coverage detected