From: Rasputin Date: 2004-01-06T21:01:55+09:00 Subject: Re: proc question and instance_methods Jamis Buck wrote: > GGarramuno wrote: > >> 1) I assume the question will be no, but is it possible to evaluate a >> piece of proc code for syntax errors? That is, I have a construct of >> the form: >> >> text = "some text coming from somewhere" >> code = proc { text } >> >> I'd like to know whether text is valid ruby code (syntactically), >> without having to run the proc. In perl, this would be done by >> running eval on the code, as perl compiles to bytecode the proc even >> if not running it. >> But in ruby, it seems the proc is not "compiled" until run. Is there >> any work-around for this? > > If you pass the code to eval, you can then test for a SyntaxError > exception, like so: > > text = "some text coming from somewhere" > begin > eval "text" > rescue SyntaxError => e > # do something when it has a syntax error > end > But that would execute the code, wouldn't it?