--- trunk/lib/Biblio/Isis.pm 2006/07/07 21:11:01 50 +++ trunk/lib/Biblio/Isis.pm 2006/07/07 23:45:12 54 @@ -117,7 +117,7 @@ =item debug -Dump a B of debugging output. +Dump a B of debugging output even at level 1. For even more increase level. =back @@ -385,6 +385,24 @@ return $self->{'record'}; } +=head2 mfn + +Returns current MFN position + + my $mfn = $isis->mfn; + +=cut + +# This function should be simple return $self->{current_mfn}, +# but if new is called with _hack_mfn it becomes setter. +# It's useful in tests when setting $isis->{record} directly + +sub mfn { + my $self = shift; + return $self->{current_mfn}; +}; + + =head2 to_ascii Returns ASCII output of record with specified MFN @@ -504,8 +522,13 @@ foreach my $t (split(/\^/,$l)) { next if (! $t); my ($sf,$v) = (substr($t,0,1), substr($t,1)); - warn "### $k^$sf:$v",$/ if ($self->{debug} > 1); + # FIXME make this option ! + next unless ($v); +# warn "### $k^$sf:$v",$/ if ($self->{debug} > 1); + + # FIXME array return optional, by default unroll to ' ; ' if (ref( $val->{$sf} ) eq 'ARRAY') { + push @{ $val->{$sf} }, $v; } elsif (defined( $val->{$sf} )) { # convert scalar field to array @@ -631,6 +654,18 @@ tested this against ouput of one C-based application, but I don't know any details about it's version. +=head1 VERSIONS + +You can find version dependencies documented here + +=over 8 + +=item 0.20 + +Added C<< $isis->mfn >> and support for repeatable subfields + +=back + =head1 AUTHOR Dobrica Pavlinusic