ios - Swift Function Error: 'Float' is not convertible to 'Void' -
i have following function, generates quick nsurlconnection request , returns contents of page. function gives me error on return line 'float' not convertible 'void'
func getdji(year: int, month: int, day: int) -> float { let baseurl = "http://geo.crox.net/djia" var request = nsmutableurlrequest(url: nsurl(string: string(format:"%@/%02d/%02d/%02d",baseurl, year, month, day))!) httpget(request){ (data, error) -> void in if error != nil { println(error) } else { return (data nsstring).floatvalue } } } what going wrong?
there 2 problems here.
first, you've got closure supposed return void , you're trying return float it, , second, you've got function supposed return float, never return it.
what might make sense outer function return void, , accept closure expects float , returns void:
func getdji(year: int, month: int, day: int, completion:(float)->void) -> void { let baseurl = "http://geo.crox.net/djia" var request = nsmutableurlrequest(url: nsurl(string: string(format:"%@/%02d/%02d/%02d",baseurl, year, month, day))!) httpget(request){ (data, error) -> void in if error != nil { println(error) } else { completion((data nsstring).floatvalue) } } } and record... (data nsstring).floatvalue looks pretty suspicious me...
Comments
Post a Comment