/
githubmirror
/
terraform
Обзор
Документация
Войти
/
githubmirror
/
terraform
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
internal/command/jsonformat/computed/renderers/string.go
59 строк
1 KB
Radek Simko
make copyrightfix
17 фев 2026, 16:56
17 фев 2026, 16:56
0fe906f
Код
Авторство
О чём код?
// Copyright IBM Corp. 2014, 2026 // SPDX-License-Identifier: BUSL-1.1 package renderers import ( "fmt" "strings" "github.com/hashicorp/terraform/internal/command/jsonformat/computed" "github.com/hashicorp/terraform/internal/command/jsonformat/structured" ) type evaluatedString struct { String string Json interface{} IsMultiline bool IsNull bool } func evaluatePrimitiveString(value interface{}, opts computed.RenderHumanOpts) evaluatedString { if value == nil { return evaluatedString{ String: opts.Colorize.Color("[dark_gray]null[reset]"), IsNull: true, } } str := value.(string) if strings.HasPrefix(str, "{") || strings.HasPrefix(str, "[") { jv, err := structured.ParseJson(strings.NewReader(str)) if err == nil { return evaluatedString{ String: str, Json: jv, } } } if strings.Contains(str, "\n") { return evaluatedString{ String: strings.TrimSpace(str), IsMultiline: true, } } return evaluatedString{ String: str, } } func (e evaluatedString) RenderSimple() string { if e.IsNull { return e.String } return fmt.Sprintf("%q", e.String) }