Reputation: 123
I have one project that write with swift 1 but now I run with Xcode 7.2 (swift 2) but I don't know why I got many errors.
I can fix one problem in my previous question but I have big problem and I so tired.
this is my code :
public func generate() -> AnyGenerator <(String, JSON)> {
switch self.type {
case .Array:
let array_ = object as! [AnyObject]
var generate_ = array_.generate()
var index_: Int = 0
return AnyGenerator<(String, JSON)> {
if let element_: AnyObject = generate_.next() {
return ("\(index_++)", JSON(element_))
} else {
return nil
}
}
case .Dictionary:
let dictionary_ = object as! [String : AnyObject]
var generate_ = dictionary_.generate()
return AnyGenerator<(String, JSON)> {
if let (key_, value_) = generate_.next() {
return (key_, JSON(value_))
} else {
return nil
}
}
default:
return AnyGenerator<(String, JSON)> {
return nil
}
}
}
please guide me about these errors!!!
Upvotes: 0
Views: 241
Reputation: 540135
In Swift 2, the global function
public func anyGenerator<Element>(body: () -> Element?) -> AnyGenerator<Element>
is used to create a (type-erased) generator from a given closure:
public func generate() -> AnyGenerator <(String, JSON)> {
// ...
return anyGenerator {
if let element_: AnyObject = generate_.next() {
return ("\(index_++)", JSON(element_))
} else {
return nil
}
}
}
Upvotes: 0