當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Swift Never exportingCondition(_:)用法及代碼示例

實例方法

exportingCondition(_:)

如果項目滿足提供的條件,則阻止係統導出項目。

聲明

func exportingCondition(_ condition: @escaping (Self.Item) -> Bool) -> _ConditionalTransferRepresentation<Self>

參數

condition

確定項目是否可導出的閉包。

詳述

模型類型的某些實例可能具有使它們不適合導出的 state-dependent 條件。例如,Archive 結構僅在具有兼容內容時才支持逗號分隔的文本表示:


struct Archive {
    var supportsCSV: Bool
    func csvData() -> Data
    init(csvData: Data)
}


extension Archive: Transferable {
    static var transferRepresentation: some TransferRepresentation {
        DataRepresentation(contentType: .commaSeparatedText) { archive in
            archive.csvData()
        } importing: { data in Archive(csvData: data) }
            .exportingCondition { archive in archive.supportsCSV }
    }
}

可用版本

iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+

相關用法


注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 Never exportingCondition(_:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。