ETPropertyDescription problem

View: New views
3 Messages — Rating Filter:   Alert me  

ETPropertyDescription problem

by David Chisnall :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I'm getting this failure building LanguageKit:

LKMessageSend.m:77: warning: multiple methods named '-setParent:' found
/usr/home/theraven/etoile/Etoile/Build/EtoileFoundation/
ETPropertyDescription.h:55: warning: using '-(void)setParent:
(BOOL)isParent'
LKAST.h:50: warning: also found '-(void)setParent:(LKAST *)aNode'
/usr/home/theraven/etoile/Etoile/Build/EtoileXML/ETXMLParserDelegate.h:
116: warning: also found '-(void)setParent:(id)newParent'
/usr/home/theraven/etoile/Etoile/Build/EtoileFoundation/
ETEntityDescription.h:71: warning: also found '-(void)setParent:
(ETEntityDescription *)parentDescription'
LKMessageSend.m:77: warning: passing argument 1 of 'setParent:' makes  
integer from pointer without a cast

This is now generating the wrong code, because it is using the version  
that takes a BOOL.n

It appears that a recent commit introduced both ETEntityDescription  
and ETPropertyDescription, which both declare a -setParent: method  
with different arguments.  Please can we rename the version in  
ETPropertyDescription?  I've worked around this in LanguageKit for  
now, but introducing polymorphic selectors is something we really need  
to avoid, especially among classes in the same framework.

David

_______________________________________________
Etoile-dev mailing list
Etoile-dev@...
https://mail.gna.org/listinfo/etoile-dev

Re: ETPropertyDescription problem

by Eric Wasylishen-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Sorry about that, I renamed it.
The API of these new classes is still unstable, maybe I should leave  
them out of EtoileFoundation.h for now

Eric
On 23-Jul-09, at 5:46 PM, David Chisnall wrote:

> I'm getting this failure building LanguageKit:
>
> LKMessageSend.m:77: warning: multiple methods named '-setParent:'  
> found
> /usr/home/theraven/etoile/Etoile/Build/EtoileFoundation/
> ETPropertyDescription.h:55: warning: using '-(void)setParent:
> (BOOL)isParent'
> LKAST.h:50: warning: also found '-(void)setParent:(LKAST *)aNode'
> /usr/home/theraven/etoile/Etoile/Build/EtoileXML/
> ETXMLParserDelegate.h:
> 116: warning: also found '-(void)setParent:(id)newParent'
> /usr/home/theraven/etoile/Etoile/Build/EtoileFoundation/
> ETEntityDescription.h:71: warning: also found '-(void)setParent:
> (ETEntityDescription *)parentDescription'
> LKMessageSend.m:77: warning: passing argument 1 of 'setParent:' makes
> integer from pointer without a cast
>
> This is now generating the wrong code, because it is using the version
> that takes a BOOL.n
>
> It appears that a recent commit introduced both ETEntityDescription
> and ETPropertyDescription, which both declare a -setParent: method
> with different arguments.  Please can we rename the version in
> ETPropertyDescription?  I've worked around this in LanguageKit for
> now, but introducing polymorphic selectors is something we really need
> to avoid, especially among classes in the same framework.
>
> David
>
> _______________________________________________
> Etoile-dev mailing list
> Etoile-dev@...
> https://mail.gna.org/listinfo/etoile-dev


_______________________________________________
Etoile-dev mailing list
Etoile-dev@...
https://mail.gna.org/listinfo/etoile-dev

Re: ETPropertyDescription problem

by Quentin Mathé-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Le 24 juil. 09 à 02:16, Eric Wasylishen a écrit :

> Sorry about that, I renamed it.
> The API of these new classes is still unstable, maybe I should leave
> them out of EtoileFoundation.h for now
>
> Eric
> On 23-Jul-09, at 5:46 PM, David Chisnall wrote:
>
>> [snip]
>> It appears that a recent commit introduced both ETEntityDescription
>> and ETPropertyDescription, which both declare a -setParent: method
>> with different arguments.  Please can we rename the version in
>> ETPropertyDescription?  I've worked around this in LanguageKit for
>> now, but introducing polymorphic selectors is something we really  
>> need
>> to avoid, especially among classes in the same framework.

I think this method should be named -setIsParent: or -setIsContainer:  
to make clear the expected argument is not an object but a boolean,  
and eliminate potential conflicts with existing or future API.
For example, Cocoa has methods such as -setIsPaneSplitter: or -
setIsAllDay:.

Cheers,
Quentin.
_______________________________________________
Etoile-dev mailing list
Etoile-dev@...
https://mail.gna.org/listinfo/etoile-dev