-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathDebugConsoleSink.swift
More file actions
32 lines (28 loc) · 931 Bytes
/
Copy pathDebugConsoleSink.swift
File metadata and controls
32 lines (28 loc) · 931 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//
// DebugConsoleSink.swift
// XcodeLogger
//
/*
* Created by Razvan Tanase on 21/06/26.
* Copyright (c) 2026 Codebringers Software SRL. All rights reserved.
*/
public final class DebugConsoleSink: LoggerSink, LoggerConfigurableSink {
public var supportsANSIColors: Bool
public var deliveryMode: LoggerSinkDeliveryMode
public var policy: LoggerSinkPolicy
private let writer: @Sendable (String) -> Void
public init(
supportsANSIColors: Bool = true,
deliveryMode: LoggerSinkDeliveryMode = .synchronous,
policy: LoggerSinkPolicy = LoggerSinkPolicy(),
writer: @escaping @Sendable (String) -> Void = { print($0) }
) {
self.supportsANSIColors = supportsANSIColors
self.deliveryMode = deliveryMode
self.policy = policy
self.writer = writer
}
public func write(event: LogEvent, rendered: String) {
writer(rendered)
}
}