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

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