Re: Abort computation on any message
- To: mathgroup at smc.vnet.net
- Subject: [mg124937] Re: Abort computation on any message
- From: David Bailey <dave at removedbailey.co.uk>
- Date: Mon, 13 Feb 2012 03:39:30 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <jh2ti3$tc$1@smc.vnet.net> <jh82hg$oen$1@smc.vnet.net>
On 12/02/2012 09:59, David Bailey wrote: > Unprotect[Message]; > pass = False; > Message[mes_MessageName, args___] := > Block[{pass = True}, Message[mes, args]; > Abort[]] /; (Head[mes] === MessageName&& ! pass); > Protect[Message]; I discovered after posting this that this version will abort inside Quiet - here is a better version: Unprotect[Message]; pass = False; Message[mes_MessageName, args___] := Block[{pass = True}, Message[mes, args]; Abort[]] /; (Head[mes] === MessageName && ! pass); Protect[Message]; Unprotect[Quiet]; Quiet[x___]:=Block[{pass=True},Quiet[x]]/;(!pass); Protect[Quiet]; David Bailey http://www.dbaileyconsultancy.co.uk