in resources/resources.go [78:100]
func (ks KernelSpecs) MarshalJSON() ([]byte, error) {
rawFields := make(map[string]any)
for k, v := range ks.rawFields {
rawFields[k] = v
}
if len(ks.Default) > 0 {
rawFields["default"] = ks.Default
}
specMap := make(map[string]any)
rawFields["kernelspecs"] = specMap
for name, spec := range ks.KernelSpecs {
specBytes, err := json.Marshal(spec)
if err != nil {
return nil, fmt.Errorf("failure unmarshalling a nested `spec` field: %w", err)
}
spec := make(map[string]any)
if err := json.Unmarshal(specBytes, &spec); err != nil {
return nil, fmt.Errorf("failure unmarshalling a nested `spec` field: %w", err)
}
specMap[name] = spec
}
return json.Marshal(rawFields)
}