[DGD] Auto and Driver objects
Ben Chambers
bjchamb at bellsouth.net
Sun May 25 20:49:15 CEST 2003
Ok. That's what I was wondering, thanks. Is there anyway to generate your
own errors that will cause an atomic function to rewind?
----- Original Message -----
From: "Felix A. Croes" <felix at dworkin.nl>
To: <dgd at list.imaginary.com>
Sent: Sunday, May 25, 2003 6:47 AM
Subject: Re: [DGD] Auto and Driver objects
> "Ben Chambers" <bjchamb at bellsouth.net> wrote:
>
> >[...]
> > Then to make a specific backpack or something I would want to inherit
both
> > the base object and the container object, but with the container
object's
> > versions of move from and move into overriding the versions defined in
the
> > base object. Would this be possible? Basically, the base version
provides
> > the default 'You can't move that from that to that' behavior, while the
> > container provides the you can move it, and the end object is the
specific
> > version of how this is done.
>
> By inheriting from two different objects that both define the same
> function, you introduce a conflict. That conflict must be resolved by
> masking the function in the inheriting object, like this:
>
> inherit base "/foo/bar/base";
> inherit container "/foo/bar/container";
>
> int MoveInto(object item)
> {
> return container::MoveInto(item);
> }
>
> int MoveFrom(object item)
> {
> return container::MoveFrom(item);
> }
>
> There are other ways in which this issue can be addressed. For instance,
> the container object could be made to inherit the base object, in which
> case its functions would automatically override those of the base object.
> Should another object then inherit both, the compiler will understand
> that the container functions are meant to mask those of the base object,
> and no conflict will ensue.
>
> Regards,
> Dworkin
> _________________________________________________________________
> List config page: http://list.imaginary.com/mailman/listinfo/dgd
>
_________________________________________________________________
List config page: http://list.imaginary.com/mailman/listinfo/dgd
More information about the DGD
mailing list