2016-08-01 19 views
2

Wie würde eine einfache Funktion wie index(of:) in einer schnellen 3 Erweiterung implementiert werden. Bitte geben Sie ein Beispiel mit den Praktiken, die zur Implementierung des Beispiels erforderlich sind.Erweiterung von Array in Swift 3

+3

https://github.com/apple/swift/blob/master/stdlib/public/core/CollectionAlgorithms.swift.gyb: 'öffentlichen func Index (des Elements: $ {IElement}) -> Index ? ' –

+1

Klonen Sie den Quellcode (Anweisungen unter https://github.com/apple/swift) und verwenden Sie dann Ihren Favoriten Ritus-Werkzeug (z.B. "grep -r"), um zu finden, was Sie suchen :) –

Antwort

0

Wenn Sie für die Syntax einer Erweiterung von Array in Swift 3 hier suchen, ist es

extension Array { 
    func foo() { } 
} 

Sie können auch die Erweiterung beschränken nur verfügbar sein, wo das Element des Arrays zu einem gewissen Protokoll nicht entspricht

extension Array where Element : Equatable { 
    func foo() { } 
} 
+0

Ich suche ein Beispiel für diese Syntax in der Praxis, wie die Implementierung von 'index (of:)' möglich mit einer Erklärung dessen, was beim Schreiben zu suchen Erweiterungen im Zusammenhang mit dem Beispiel. Martin R hat ein Beispiel gegeben, aber ich würde mich über eine Erklärung der Praktiken freuen, die dabei helfen. – oneofone

+0

@oneofone Offizielle Apple Docs: https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Extensions.html – redent84