NémPythonĐối Tượng

public struct ThrowingPythonObject

Trình bao bọc PythonObject cho phép thực hiện các lệnh gọi phương thức. Các ngoại lệ do các hàm Python tạo ra được phản ánh dưới dạng lỗi Swift và bị ném ra.

Ghi chú

Việc ThrowingPythonObject cố ý không có thuộc tính @dynamicCallable vì cú pháp cuộc gọi không trực quan: x.throwing(arg1, arg2, ...) . Các phương thức sẽ vẫn được đặt tên dynamicallyCall cho đến khi thảo luận/thiết kế thêm.
  • Gọi self với các đối số vị trí được chỉ định. Nếu cuộc gọi không thành công vì lý do nào đó, PythonError.invalidCall sẽ bị ném.

    điều kiện tiên quyết

    self phải là một Python có thể gọi được.

    Tuyên ngôn

    @discardableResult
    public func dynamicallyCall(
        withArguments args: PythonConvertible...) throws -> PythonObject

    Thông số

    args

    Đối số vị trí cho Python có thể gọi được.

  • Gọi self với các đối số vị trí được chỉ định. Nếu cuộc gọi không thành công vì lý do nào đó, PythonError.invalidCall sẽ bị ném.

    điều kiện tiên quyết

    self phải là một Python có thể gọi được.

    Tuyên ngôn

    @discardableResult
    public func dynamicallyCall(
        withArguments args: [PythonConvertible] = []) throws -> PythonObject

    Thông số

    args

    Đối số vị trí cho Python có thể gọi được.

  • Gọi self với các đối số được chỉ định. Nếu cuộc gọi không thành công vì lý do nào đó, PythonError.invalidCall sẽ bị ném.

    điều kiện tiên quyết

    self phải là một Python có thể gọi được.

    Tuyên ngôn

    @discardableResult
    public func dynamicallyCall(
        withKeywordArguments args:
        KeyValuePairs<String, PythonConvertible> = [:]) throws -> PythonObject

    Thông số

    args

    Đối số vị trí hoặc từ khóa cho Python có thể gọi được.

  • Chuyển đổi thành 2 tuple, nếu có thể.

    Tuyên ngôn

    public var tuple2: (PythonObject, PythonObject)? { get }
  • Chuyển đổi thành 3 tuple, nếu có thể.

    Tuyên ngôn

    public var tuple3: (PythonObject, PythonObject, PythonObject)? { get }
  • Chuyển đổi thành 4 tuple, nếu có thể.

    Tuyên ngôn

    public var tuple4: (PythonObject, PythonObject, PythonObject, PythonObject)? { get }