FunctionCallable

@dynamicCallable
public struct FunctionCallable : Sendable

사용자 기능에 대해 다음 구문을 활성화하는 구조입니다.

guard case let .int32(sum) = try await user.functions.sum([1, 2, 3, 4, 5]) else {
   return
}

동적 멤버 이름(위 예제에서는 sum )은 함수 이름과 직접 연결된 @dynamicMemberLookup 에서 제공합니다.

  • Future<AnyBSON, Error> 콜러블 반환을 허용하는 @dynamicCallable의 구현입니다.

    let cancellable = user.functions.sum(1, 2, 3, 4, 5)
       .sink(receiveCompletion: { result in
    }, receiveValue: { value in
       // Returned value from function
    })
    

    선언

    Swift

    @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    public func dynamicallyCall(withArguments args: [AnyBSON]) -> Future<AnyBSON, Error>
  • async await 콜러블 반환을 허용하는 @dynamicMemberLookup의 구현 입니다.

    guard case let .int32(sum) = try await user.functions.sum(1, 2, 3, 4, 5) else {
       return
    }
    

    선언

    Swift

    public func dynamicallyCall(withArguments args: [AnyBSON]) async throws -> AnyBSON