github.com/YousefHaggyHeroku/pack@v1.5.5/internal/builder/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() BuilderWriter { 14 return &TOML{ 15 StructuredFormat: StructuredFormat{ 16 MarshalFunc: func(v interface{}) ([]byte, error) { 17 buf := bytes.NewBuffer(nil) 18 err := toml.NewEncoder(buf).Order(toml.OrderPreserve).PromoteAnonymous(false).Encode(v) 19 if err != nil { 20 return []byte{}, err 21 } 22 return buf.Bytes(), nil 23 }, 24 }, 25 } 26 }