Pythonオブジェクトを投げる

public struct ThrowingPythonObject

メソッド呼び出しのスローを可能にするPythonObjectラッパー。 Python 関数によって生成された例外は、Swift エラーとして反映され、スローされます。

注記

呼び出し構文x.throwing(arg1, arg2, ...)直感的ではないため、 ThrowingPythonObject@dynamicCallable属性がないのは意図的です。さらなる議論/設計が行われるまで、メソッドの名前は引き続きdynamicallyCallとなります。
  • 指定された位置引数を使用してselfを呼び出します。何らかの理由で呼び出しが失敗した場合、 PythonError.invalidCallがスローされます。

    前提条件

    self Python 呼び出し可能である必要があります。

    宣言

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

    パラメーター

    args

    Python 呼び出し可能オブジェクトの位置引数。

  • 指定された位置引数を使用してselfを呼び出します。何らかの理由で呼び出しが失敗した場合、 PythonError.invalidCallがスローされます。

    前提条件

    self Python 呼び出し可能である必要があります。

    宣言

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

    パラメーター

    args

    Python 呼び出し可能オブジェクトの位置引数。

  • 引数を指定してselfを呼び出します。何らかの理由で呼び出しが失敗した場合、 PythonError.invalidCallがスローされます。

    前提条件

    self Python 呼び出し可能である必要があります。

    宣言

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

    パラメーター

    args

    Python 呼び出し可能オブジェクトの位置引数またはキーワード引数。

  • 可能であれば、2 タプルに変換します。

    宣言

    public var tuple2: (PythonObject, PythonObject)? { get }
  • 可能であれば、3 タプルに変換します。

    宣言

    public var tuple3: (PythonObject, PythonObject, PythonObject)? { get }
  • 可能であれば、4 タプルに変換します。

    宣言

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