MCPcopy Create free account
hub / github.com/compose-spec/compose-go / setDefaults

Function setDefaults

transform/defaults.go:49–75  ·  view source on GitHub ↗
(data any, p tree.Path)

Source from the content-addressed store, hash-verified

47}
48
49func setDefaults(data any, p tree.Path) (any, error) {
50 for pattern, transformer := range DefaultValues {
51 if p.Matches(pattern) {
52 t, err := transformer(data, p, false)
53 if err != nil {
54 return nil, err
55 }
56 return t, nil
57 }
58 }
59 switch v := data.(type) {
60 case map[string]any:
61 a, err := setDefaultsMapping(v, p)
62 if err != nil {
63 return a, err
64 }
65 return v, nil
66 case []any:
67 a, err := setDefaultsSequence(v, p)
68 if err != nil {
69 return a, err
70 }
71 return v, nil
72 default:
73 return data, nil
74 }
75}
76
77func setDefaultsSequence(v []any, p tree.Path) ([]any, error) {
78 for i, e := range v {

Callers 3

SetDefaultValuesFunction · 0.85
setDefaultsSequenceFunction · 0.85
setDefaultsMappingFunction · 0.85

Calls 3

setDefaultsMappingFunction · 0.85
setDefaultsSequenceFunction · 0.85
MatchesMethod · 0.80

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…