It'd be really nice if the tests could be split into smaller chunks.   
They are pretty intimidating to us regular people...

Anyway, below is a small addition (without tests) to Rose::DB::MySQL  
to add support for SET columns.

The paranoid "is it defined" tests were from the Informix version.    
In particular then it seems like the " && defined $set[0]" part  
should be taken out from both here and the Informix driver (at best  
it's just hiding the warning that the map {} would have given).


  - ask


package Rose::DB::MySQL;

sub parse_set {
     my($self) = shift;

     return $_[0]  if(ref $_[0]);
     return [ @_ ] if(@_ > 1);

     my $val = $_[0];

     return undef  unless(defined $val);

     my @set = split /,/, $val;

     return [EMAIL PROTECTED];
}

sub format_set {
     my($self) = shift;

     my @set = (ref $_[0]) ? @{$_[0]} : @_;

     return undef  unless(@set && defined $set[0]);

     return join(',', map {
         if(!defined $_)
           {
               Carp::croak 'Undefined value found in array or list  
passed to ',
                   __PACKAGE__, '::format_set()';
           }
         else {
             $_
         }
     } @set);
}


-- 
http://www.askbjoernhansen.com/



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Rose-db-object mailing list
Rose-db-object@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rose-db-object

Reply via email to