On Aug 14, 2014, at 1:51 AM, Gerriet M. Denkmann <[email protected]> wrote:
> Well, it should, but it does not. I still get the error: 'String' is not a
> subtype of 'AppDelegate'
Note the location of the error. The compiler is complaining that
myStatusHandler is the wrong type in this line:
> let someThing = SomeClass(statusHandler: myStatusHandler)
And it is the wrong type. myStatusHandler is a method of class
AppDelegate and only has meaning with respect to an instance of that
class. You may know that AppDelegate is intended to be a singleton,
but the compiler does. Assuming you really want to do this I think
you need to code it something like...
// because a class var isn't supported, yet.
var statusString : String?
class AppDelegate: NSObject
{
let someThing = SomeClass(statusHandler: AppDelegate.myStatusHandler)
class func myStatusHandler(s: String)
{
statusString = s
}
}
class SomeClass
{
var statusHandler: (String) -> Void
init( statusHandler: String -> Void)
{
self.statusHandler = statusHandler
}
}
_______________________________________________
Cocoa-dev mailing list ([email protected])
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to [email protected]