github.com/buildpacks/pack@v0.33.3-0.20240516162812-884dd1837311/internal/inspectimage/writer/yaml.go (about)

     1  package writer
     2  
     3  import (
     4  	"bytes"
     5  
     6  	"gopkg.in/yaml.v3"
     7  )
     8  
     9  type YAML struct {
    10  	StructuredFormat
    11  }
    12  
    13  func NewYAML() *YAML {
    14  	return &YAML{
    15  		StructuredFormat: StructuredFormat{
    16  			MarshalFunc: func(i interface{}) ([]byte, error) {
    17  				buf := bytes.NewBuffer(nil)
    18  				if err := yaml.NewEncoder(buf).Encode(i); err != nil {
    19  					return []byte{}, err
    20  				}
    21  				return buf.Bytes(), nil
    22  			},
    23  		},
    24  	}
    25  }