[Cuis-dev] question about Compiler evaluate:
Weslleymberg Lisboa
weslleym.lisboa at gmail.com
Fri Jan 17 10:46:40 PST 2025
Hi, Mark
I found 'is Undeclared' in UndeclaredVariableWarning>>defaultAction
which seems to match what you see in the transcript.
I was able to get rid of the transcript error message by doing:
expression := '1 + x'.
[ Compiler evaluate: expression ] on: UndeclaredVariableWarning do: [:ex
| ex resume: false] on: Error do: [:ex | ex inspect ]
To give a little context, I searched for references to the class
UndeclaredVariableWarning. One of the results was Encoder>>#undeclared:
where the comments mention how to disable the warning.
Em 17/01/2025 09:40, Mark Volkmann via Cuis-dev escreveu:
> In a Workspace, if I "Do It" the first expression below and "Print It"
> the second expression, it prints 3 as expected.
>
> expression := '1 + 2'.
> [ Compiler evaluate: expression ] on: Error do: [ :ex | ex inspect ].
>
> Now if I change the 2 in expression to x and repeat, it prints
> the following:
>
> MessageNotUnderstood: UndefinedObject>>adaptToNumber:andSend:
>
> It also writes the following to the Transcript:
>
> UndefinedObject>>DoIt (x is Undeclared)
>
> Looking in the Inspect window I see that none of the instance variables
> contain "x is Undeclared". I really want to get that string. I've
> searched the Compiler methods and haven't found a way to do this. Does
> anyone know how I could access that error message?
>
> I'd also like to prevent the error message from being written to the
> Transcript so I can completely handle it in my code.
>
> --
> R. Mark Volkmann
> Object Computing, Inc.
>
--
Wéslleymberg Lisboa
Graduado em Sistemas de Informação
Docente no IFFluminense - Campus Itaboraí
More information about the Cuis-dev
mailing list