From 802e6afa34de7f6124157153b0bde4ac25d7b363 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Sat, 27 Sep 2025 19:53:43 +0900 Subject: container/output: move global output to msg Signed-off-by: Ophestra --- container/msg.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'container/msg.go') diff --git a/container/msg.go b/container/msg.go index 4be0fd2d..1512a583 100644 --- a/container/msg.go +++ b/container/msg.go @@ -50,3 +50,18 @@ func (msg *DefaultMsg) Verbosef(format string, v ...any) { func (msg *DefaultMsg) Suspend() { msg.inactive.Store(true) } func (msg *DefaultMsg) Resume() bool { return msg.inactive.CompareAndSwap(true, false) } func (msg *DefaultMsg) BeforeExit() {} + +// msg is the [Msg] implemented used by all exported [container] functions. +var msg Msg = new(DefaultMsg) + +// GetOutput returns the current active [Msg] implementation. +func GetOutput() Msg { return msg } + +// SetOutput replaces the current active [Msg] implementation. +func SetOutput(v Msg) { + if v == nil { + msg = new(DefaultMsg) + } else { + msg = v + } +} -- cgit v1.3.1