この署名を持つ GData.ContactsContact.get_photo() を介して連絡先の写真を取得しようとしています:
get_photo(
GDataContactsContact *self,
GDataContactsService *service,
gsize *length, (out caller-allocates)
gchar **content_type, (out caller-allocates)
GCancellable *cancellable,
GError *error
)
ただし、変数をこれの「caller-allocate」として単純に宣言するか (例: )、長さlet length;
の新しい G_TYPE をインスタンス化すると、結果は常に次のようになります。
Gjs-Message: JS ERROR: Unsupported type guint64 for (out caller-allocates)
同様の問題の古い例をいくつか見つけることができましたが、それらはすべて注釈エラーを参照しています。
メソッドに不適切な注釈が付けられているようです。(out caller-allocates) (array length=length) である必要があります。
これは、回避策および/またはバグを報告できるイントロスペクションのバグですか、それとも Javascript での「out caller-allocates」の使用法を誤解していますか?