Macintoshプラットフォームで利用できます。
aepack モジュールは、Python 変数から AppleEvent ディスクリプ タへの変換(パック)と、その逆に変換(アンパック)する関数を定義しています。 Python 内では AppleEvent ディスクリプタは、組み込み型である AEDesc の Python オブジェクトとして扱われます。AEDesc は Carbon.AE モジュールで定義されています。
aepack モジュールは次の関数を定義しています。
x[, forcetype]) |
Python 値 x を変換した値を保持する AEDesc オブジェクトを返しま す。forcetype が与えることで、結果のディスクリプタ型を指定できま す。それ以外では、Python 型から Apple Eventディスクリプタ型へのデフォ ルトのマッピングが使われます。マッピングは次の通りとなります。
Python type | descriptor type |
---|---|
FSSpec | typeFSS |
FSRef | typeFSRef |
Alias | typeAlias |
integer | typeLong (32 bit integer) |
float | typeFloat (64 bit floating point) |
string | typeText |
unicode | typeUnicodeText |
list | typeAEList |
dictionary | typeAERecord |
instance | see below |
x がPythonインスタンスなら、この関数は __aepack__() メ ソッドを呼びだそうとします。このメソッドは AEDesc オブジェ クトを返します。
x の変換が上で定義されていない場合は、この関数は、テキストディス クリプタとしてエンコードされた、値の(repr()関数による)Python文字列表現 が返されます。
x[, formodulename]) |
x は AEDesc タイプのオブジェクトでなければいけません。
この関数は、Apple Eventディスクリプタ x のデータのPythonオブジェ
クト表現を返します。単純なAppleEventデータ型(整数、テキスト、浮動少
数点数)の、対応するPython型が返されます。Apple EventリストはPythonリ
ストとして返され、リストの要素は再帰的にアンパックされます。
formodulename
の指定がない場合、オブジェクト参照
(例:line 3 of document 1
)が、aetypes.ObjectSpecifier のインスタ
ンスとして返されます。ディスクリプタ型がtypeFSSであるAppleEventディ
スクリプタが、FSSpec オブジェクトとして返されます。
AppleEventレコードディスクリプタが、再帰的にアンパックされた、型の4
文字キーと要素を持つPython辞書として返されます。
オプションの formodulename
引数は gensuitemodule よ
り作成されるスタブパッケージにより利用され、オブジェクト指定子のため
の OSA クラスをモジュールの中で見つけられることを保証します。これは、
例えば、ファインダがウィンドウに対してオブジェクト指定子を返す場合、
Finder.Window
のインスタンスが得られ、aetypes.Window
が得られないことを保証します。前者は、ファインダ上のウィンドウが持っ
ている、すべての特性および要素のことを知っています。一方、後者のもの
はそれらのことを知りません。
参考: