2010-06-19 8 views

Odpowiedz

6

Dobre pytanie ... wygląda na to, że nie jest to dobrze udokumentowane.

Oto co znalazłem:

Aktualizacja:

Z dodatkiem App Extensions, Apple zawiera więcej przykładów podzapytania, ponieważ są one wymagane do kompleksowej logiki dopasowania.


Zasadniczo każdy SUBQUERY odpowiada filter Swift. I ANY jest odpowiednikiem contains.

Więc biorąc ten przykład jeszcze raz:

SUBQUERY (
    extensionItems, 
    $extensionItem, 
    SUBQUERY (
     $extensionItem.attachments, 
     $attachment, 
     ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "com.adobe.pdf" 
    )[email protected] == [email protected] 
)[email protected] == 1 

To byłby podobny do tego w Swift:

extensionItems.filter { 
    $0.attachments.filter { 
    $0.registeredTypeIdentifiers.contains { 
     $0.utiConformsTo("com.adobe.pdf") 
    } 
    }.count == $0.attachments.count 
}.count == 1 
+0

Rzeczywiście wydaje się, że ta funkcja jest całkowicie nieudokumentowane. Co za szkoda - wydaje się być takie fajne. Mogę się jedynie domyślać: Obawiają się, że ludzie nadużywają tego, ponieważ wydaje się, że jest to coś naprawdę ciężkiego. – dontWatchMyProfile

+1

Albo zbyt mało osób zebrało radar z jabłkiem, aby było wystarczająco ważne, aby go udokumentować. Jeśli chcesz zobaczyć dokumentację dotyczącą tej funkcji, zgłoś radar. –

Powiązane problemy