Re: Return values from gtk2 widget (void) methods
- From: "Peter Haworth" <pmh edison ioppublishing com>
- To: gtk-perl-list gnome org
- Subject: Re: Return values from gtk2 widget (void) methods
- Date: Wed, 23 Oct 2002 11:06:13 +0100
On Tue, 22 Oct 2002 15:51:23 +0100, Dermot Musgrove wrote:
goran kirra net wrote:
2. On the other hand it would be nice to have a consistant
return value scheme like "0 (zero)"=failed, "not 0"=success
so we could do perlish things like:
$obj->set_label('xx') && $obj->show;
I reckon that undef is better for failure as it is not the same as 0.
eg 0 is returned by gtk_window_get_resizable when the window is not
resizable (false) - but it represents a successful function call.
Unfortunately, 0 and undef are both false. The DBI gets around this by
returning undef on failure (which is false), and '0E0' on zero-valued
success (which is true, but zero in numeric context). If you're only
returning a success/fail value without any different success values,
then stick to Perl's 1/'' (or 1/undef) values. There are even &PL_sv_yes
and &PL_sv_no values available in C code for this purpose, and
XSRETURN_YES/XSRETURN_NO macros for XS code.
Peter Haworth pmh edison ioppublishing com
"For example, I could be a sentient PERL script.
That pretty much assumes that someone brilliant enough to write me
was also stupid enough to program in PERL. Not a likely explanation."
-- Terry Lambert
] [Thread Prev