Files
lambda/internal/cli/destination.go

28 lines
544 B
Go

package cli
import (
"fmt"
"os"
)
// A Destination is method of writing output to the user.
type Destination interface {
// Write data to this destination.
Write(data string) error
}
// An StdoutDestination writes to stdout.
type StdoutDestination struct{}
func (d StdoutDestination) Write(data string) error {
fmt.Println(data)
return nil
}
// A FileDestination writes to a file.
type FileDestination struct{ Path string }
func (d FileDestination) Write(data string) error {
return os.WriteFile(d.Path, []byte(data+"\n"), 0644)
}