aboutsummaryrefslogtreecommitdiffhomepage
path: root/container/msg.go
diff options
context:
space:
mode:
Diffstat (limited to 'container/msg.go')
-rw-r--r--container/msg.go15
1 files changed, 15 insertions, 0 deletions
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
+ }
+}