On 28 Jun 2009, at 19:14, Stefan Bidigaray wrote:
As promised, here's the latest code. Feel free to poke as many
holes in it as possible. I'm going to use this, almost completely
unchanged, for NSSound.m. The bundle/plug-in stuff will go in 100%
unchanged.
Sorry that I just haven't found time to look at this.
But ... going back to the issue of avoiding changes to ivars breaking
ABI in future releases ... the approach I currently favor is having a
*single* ivar in the public class. This is a private id variable
referring to an instance of a private class which is used to hold the
real ivars.
So the implementation file contains this private class (whose ivars
are all declared public so that any code in the implementation file
can access them freely), and the -init and -dealloc methods of the
public class create/destroy an instance of the private class. Look at
the code for NSOperation.m in the current svn trunk version of the
base library for the simplest example around.
_______________________________________________
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev