代码之家  ›  专栏  ›  技术社区  ›  Ratul Sharker

在Swift[关闭]中,“<”是什么意思?

  •  -2
  • Ratul Sharker  · 技术社区  · 5 年前

    我有个密码 Marshal .

    class MediaModel: Unmarshaling {
        var id: Int64
        var videoUrl: String?
        var text: String?
    
        required init(object: MarshaledObject) throws {
            id =        try object <| "id"
            videoUrl =  try? object <| "videos.original_url"
            text =      try? object <| "text"
        }
    }
    

    什么? <| 代表这里?

    事先谢谢。

    1 回复  |  直到 5 年前
        1
  •  8
  •   Ahmet Sina Ustem    5 年前

    如果你看这个 Marshal source code 你可以看到它代表什么。已写入自定义运算符。 此自定义运算符用于按键从MarshaledObject字典获取值。

    // MARK: - <| Operator
    
    infix operator <|
    
    public func <| <A: ValueType>(dictionary: MarshaledObject, key: String) throws -> A {
        return try dictionary.value(for: key)
    }