(arg ref.Val, locale string)
| 80 | } |
| 81 | |
| 82 | func formatList(arg ref.Val, locale string) (string, error) { |
| 83 | argList := arg.(traits.Lister) |
| 84 | argIterator := argList.Iterator() |
| 85 | var listStrBuilder strings.Builder |
| 86 | _, err := listStrBuilder.WriteRune('[') |
| 87 | if err != nil { |
| 88 | return "", fmt.Errorf("error writing to list string: %w", err) |
| 89 | } |
| 90 | for argIterator.HasNext() == types.True { |
| 91 | member := argIterator.Next() |
| 92 | memberFormat, err := clauseForType(member.Type()) |
| 93 | if err != nil { |
| 94 | return "", err |
| 95 | } |
| 96 | unquotedStr, err := memberFormat(member, locale) |
| 97 | if err != nil { |
| 98 | return "", err |
| 99 | } |
| 100 | str := quoteForCEL(member, unquotedStr) |
| 101 | _, err = listStrBuilder.WriteString(str) |
| 102 | if err != nil { |
| 103 | return "", fmt.Errorf("error writing to list string: %w", err) |
| 104 | } |
| 105 | if argIterator.HasNext() == types.True { |
| 106 | _, err = listStrBuilder.WriteString(", ") |
| 107 | if err != nil { |
| 108 | return "", fmt.Errorf("error writing to list string: %w", err) |
| 109 | } |
| 110 | } |
| 111 | } |
| 112 | _, err = listStrBuilder.WriteRune(']') |
| 113 | if err != nil { |
| 114 | return "", fmt.Errorf("error writing to list string: %w", err) |
| 115 | } |
| 116 | return listStrBuilder.String(), nil |
| 117 | } |
| 118 | |
| 119 | func formatMap(arg ref.Val, locale string) (string, error) { |
| 120 | argMap := arg.(traits.Mapper) |
no test coverage detected