功能

@dynamicMemberLookup
@frozen
public struct Functions : Sendable

提供接口的结构,以便使用提供的名称和参数调用 Atlas App Services 函数。

user.functions.sum([1, 2, 3, 4, 5]) { sum, error in
    guard case let .int64(value) = sum else {
        print(error?.localizedDescription)
    }

    assert(value == 15)
}

动态成员名称(上例中为sum )与函数名称直接关联。 第一个参数是要提供给函数的BSONArray参数。 第二个也是最后一个参数是函数调用完成时要调用的完成处理程序。 此处理程序在非主全局DispatchQueue上执行。