On Jul 31, 2008, at 11:36 AM, Mark Sanvitale wrote:
I have a formal protocol that declares two methods. I have a class that adopts this protocol. This class implements one of the protocol methods. This class inherits from another class. This super class actually implements a method matching the signature of the second method declared in the protocol. Everything runs just fine, however, the compiler insists something is wrong by warning me "incomplete implementation of class X", "method definition for '<method-name>' not found", and class 'X' does not fully implement the 'Y' protocol".

I think the compiler is wrong. Or is this "by design" according to some strict rule(s) of Objective-C? Am I expected to redefine the method I inherit from my super class if the method is part of a protocol I adopt?

The compiler has no way of knowing that the protocol's contract was fulfilled by the superclass unless you also declare the second method in the superclass's public interface.

If you don't want to expose the method's declaration, declare it in a private header.

b.bum

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to