logo       

RE: Exception hacks (was Re: Changing error message): msg#00203

lang.smalltalk.squeak.beginners

Subject: RE: Exception hacks (was Re: Changing error message)

Thanks Bert,

That is a very nice addition.

Learn something every day!

Ron Teitelbaum

> -----Original Message-----
> From: beginners-bounces@xxxxxxxxxxxxxxxxxxxxxxxxxx [mailto:beginners-
> bounces@xxxxxxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Bert Freudenberg
> Sent: Tuesday, August 22, 2006 5:33 AM
> To: A friendly place to get answers to even the most basic questions
> aboutSqueak.
> Subject: Exception hacks (was Re: [Newbies] Changing error message)
>
> Ron Teitelbaum schrieb:
>
> > In order to not break your regular code you will need to wrap the normal
> > call to saleItem:price:taxRate: with:
> >
> > on: GetSaleDateError do: [:ex | ex resume: Date today].
>
> Actually there is no need to wrap any regular code, if you do it
> properly ;-)
>
> You should not call this GetSaleDateError but, say, SaleDateHack and
> make it a Notification subclass. Unlike Error subclasses, Notification
> subclasses work fine even without an on:do: exception handler. That's
> because their #defaultAction simply answers nil instead of opening the
> debugger.
>
> If there is no handler, "SaleDateHack signal" will simply answer nil, so
> you can replace your original "Date today" code with
>
> date := SaleDateHack signal ifNil: [Date today].
>
> (this is even better design-wise than implementing your notification's
> #defaultAction as "self resume: Date today" because you see the default
> value right where it is used, rather than hidden in the notifiction class)
>
> > (Don't tell anyone I mentioned this !^)
>
> Don't tell anyone I replied to this on the *newbies* list - I'd consider
> this well advanced. It's fun stuff anyway ;-)
>
> - Bert -
> _______________________________________________
> Beginners mailing list
> Beginners@xxxxxxxxxxxxxxxxxxxxxxxxxx
> http://lists.squeakfoundation.org/mailman/listinfo/beginners


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise