On Mon, 25 Sep 2006, Alexander Larsson wrote:

> On Sun, 2006-09-24 at 14:33 +0200, Philip Van Hoof wrote:
>> On Wed, 2006-09-20 at 12:31 +0200, Alexander Larsson wrote:
>>
>> Hey Alex,
>>
>> Great that you are planning to redesign the VFS.
>>
>>> Here is my current GInputStream:
>>>
>>> struct _GInputStreamClass
>>> {
>>>   GObjectClass parent_class;
>>
>> Using GTypeInterfaceClass here would make it much more easy to let
>> library and application developers implement the GInputStream interface
>> in a for-their needs suitable way.
>
> I'm well aware of interfaces. In fact my initial version used an
> interface for this. However, there are other aspects of the equation
> that has to be taken into account to. For instance, using a base class
> means you can inherit functionallity from the baseclass. This makes it
> much easier to implement things, because we can do the fallback async
> wrapper in the base class, and it makes it much easier to do wrapping of
> streams.

not taking side on the interface vs. object issue here. however note, that
you can provide default implementations for interfaces with GType, simply
by hooking up class function pointers in the class_init function passed
when registering the interface type, i.e. just like with object type
registration.

> In fact, if you look at Java and .Net you will see that their streams
> are objects too, not interfaces.
>
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> Alexander Larsson                                            Red Hat, Inc
>                   [EMAIL PROTECTED]    [EMAIL PROTECTED]

---
ciaoTJ
_______________________________________________
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list

Reply via email to