Files
SellyCloudSDK_demo/Example/Pods/CocoaLumberjack/Sources/CocoaLumberjackSwift/DDAssert.swift
caleb 72bfbb5cdf 优化RTMP播放器重连和稳定性
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 15:59:58 +08:00

150 lines
5.7 KiB
Swift

// Software License Agreement (BSD License)
//
// Copyright (c) 2010-2026, Deusty, LLC
// All rights reserved.
//
// Redistribution and use of this software in source and binary forms,
// with or without modification, are permitted provided that the following conditions are met:
//
// * Redistributions of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer.
//
// * Neither the name of Deusty nor the names of its contributors may be used
// to endorse or promote products derived from this software without specific
// prior written permission of Deusty, LLC.
#if SWIFT_PACKAGE
public import CocoaLumberjack
public import CocoaLumberjackSwiftSupport
#endif
/**
* Replacement for Swift's `assert` function that will output a log message even when assertions
* are disabled.
*
* - Parameters:
* - condition: The condition to test. Unlike `Swift.assert`, `condition` is always evaluated,
* even when assertions are disabled.
* - message: A string to log (using `DDLogError`) if `condition` evaluates to `false`.
* The default is an empty string.
*/
@inlinable
public func DDAssert(_ condition: @autoclosure () -> Bool,
_ message: @autoclosure () -> DDLogMessageFormat = "",
level: DDLogLevel = DDDefaultLogLevel,
context: Int = 0,
file: StaticString = #file,
function: StaticString = #function,
line: UInt = #line,
tag: Any? = nil,
asynchronous async: Bool? = nil,
ddlog: DDLog = DDLog.sharedInstance) {
if !condition() {
DDLogError(message(),
level: level,
context: context,
file: file,
function: function,
line: line,
tag: tag,
asynchronous: async,
ddlog: ddlog)
Swift.assertionFailure(message().formatted, file: file, line: line)
}
}
/**
* Replacement for Swift's `assertionFailure` function that will output a log message even
* when assertions are disabled.
*
* - Parameters:
* - message: A string to log (using `DDLogError`). The default is an empty string.
*/
@inlinable
public func DDAssertionFailure(_ message: @autoclosure () -> DDLogMessageFormat = "",
level: DDLogLevel = DDDefaultLogLevel,
context: Int = 0,
file: StaticString = #file,
function: StaticString = #function,
line: UInt = #line,
tag: Any? = nil,
asynchronous async: Bool? = nil,
ddlog: DDLog = DDLog.sharedInstance) {
DDLogError(message(),
level: level,
context: context,
file: file,
function: function,
line: line,
tag: tag,
asynchronous: async,
ddlog: ddlog)
Swift.assertionFailure(message().formatted, file: file, line: line)
}
/**
* Replacement for Swift's `assert` function that will output a log message even when assertions
* are disabled.
*
* - Parameters:
* - condition: The condition to test. Unlike `Swift.assert`, `condition` is always evaluated,
* even when assertions are disabled.
* - message: A string to log (using `DDLogError`) if `condition` evaluates to `false`.
* The default is an empty string.
*/
@inlinable
@available(*, deprecated, message: "Use an interpolated message.")
public func DDAssert(_ condition: @autoclosure () -> Bool,
_ message: @autoclosure () -> String = "",
level: DDLogLevel = DDDefaultLogLevel,
context: Int = 0,
file: StaticString = #file,
function: StaticString = #function,
line: UInt = #line,
tag: Any? = nil,
asynchronous async: Bool? = nil,
ddlog: DDLog = DDLog.sharedInstance) {
if !condition() {
DDLogError(message(),
level: level,
context: context,
file: file,
function: function,
line: line,
tag: tag,
asynchronous: async,
ddlog: ddlog)
Swift.assertionFailure(message(), file: file, line: line)
}
}
/**
* Replacement for Swift's `assertionFailure` function that will output a log message even
* when assertions are disabled.
*
* - Parameters:
* - message: A string to log (using `DDLogError`). The default is an empty string.
*/
@inlinable
@available(*, deprecated, message: "Use an interpolated message.")
public func DDAssertionFailure(_ message: @autoclosure () -> String = "",
level: DDLogLevel = DDDefaultLogLevel,
context: Int = 0,
file: StaticString = #file,
function: StaticString = #function,
line: UInt = #line,
tag: Any? = nil,
asynchronous async: Bool? = nil,
ddlog: DDLog = DDLog.sharedInstance) {
DDLogError(message(),
level: level,
context: context,
file: file,
function: function,
line: line,
tag: tag,
asynchronous: async,
ddlog: ddlog)
Swift.assertionFailure(message(), file: file, line: line)
}