Tim Bunce wrote: > > On Fri, Oct 24, 2003 at 11:00:55AM +0200, Steffen Goeldner wrote: > > Is there any value in returning a value (pun intended) > > from STORE? E.g.: > > > > sub STORE { > > ... > > return 1; > > > > For dbd_db_STORE_attrib(), DBI::DBD states: > > > > The return value is TRUE if you have handled the > > attribute or FALSE otherwise. > > That's needed so the Driver.xst code knows if it should > then call SUPER::STORE. > > > Does the same rule apply to STORE()? If so, where > > is the returned value used? > > The only way for an application to get the return value is by calling > STORE explicitly. I guess that might be useful in some situations.
Three cases cross my mind: 1) Return nothing (or an arbitrary value), i.e. the caller shouldn't use that value. 2) Return a boolean value, indicating success or failure. 3) Return the new value. Tim, can you settle on one of these cases? If so, I'd like to include your recommendation into DBI::DBD. BTW: Case 1, something like that: sub STORE { ... $dbh->SUPER::STORE($attr, $val); return; } seems to collide with current practice: sub begin_work { ... $dbh->STORE('BegunWork', 1); } $rc = $dbh->begin_work or die $dbh->errstr; Steffen P.S.: Funny, a similar question entered the p5p mailing-list <http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2003-10/msg01249.html>