public struct ThrowingPythonObject
Un wrapper PythonObject
qui permet de lancer des appels de méthode. Les exceptions produites par les fonctions Python sont reflétées sous forme d'erreurs Swift et levées.
Note
Il est intentionnel queThrowingPythonObject
n'ait pas l'attribut @dynamicCallable
car la syntaxe d'appel n'est pas intuitive : x.throwing(arg1, arg2, ...)
. Les méthodes seront toujours nommées dynamicallyCall
jusqu'à discussion/conception ultérieure. Appelez
self
avec les arguments de position spécifiés. Si l'appel échoue pour une raison quelconque,PythonError.invalidCall
est lancé.Condition préalable
self
doit être un appelable en Python.Déclaration
@discardableResult public func dynamicallyCall( withArguments args: PythonConvertible...) throws -> PythonObject
Paramètres
args
Arguments positionnels pour l'appelable Python.
Appelez
self
avec les arguments de position spécifiés. Si l'appel échoue pour une raison quelconque,PythonError.invalidCall
est lancé.Condition préalable
self
doit être un appelable en Python.Déclaration
@discardableResult public func dynamicallyCall( withArguments args: [PythonConvertible] = []) throws -> PythonObject
Paramètres
args
Arguments positionnels pour l'appelable Python.
Appelez
self
avec les arguments spécifiés. Si l'appel échoue pour une raison quelconque,PythonError.invalidCall
est lancé.Condition préalable
self
doit être un appelable en Python.Déclaration
@discardableResult public func dynamicallyCall( withKeywordArguments args: KeyValuePairs<String, PythonConvertible> = [:]) throws -> PythonObject
Paramètres
args
Arguments de position ou de mot-clé pour l'appelable Python.
Se convertit en 2-tuples, si possible.
Déclaration
public var tuple2: (PythonObject, PythonObject)? { get }
Se convertit en 3-tuples, si possible.
Déclaration
public var tuple3: (PythonObject, PythonObject, PythonObject)? { get }
Se convertit en 4-tuples, si possible.
Déclaration
public var tuple4: (PythonObject, PythonObject, PythonObject, PythonObject)? { get }