/[webpac2]/trunk/lib/WebPAC/Normalize.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/WebPAC/Normalize.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1066 by dpavlin, Tue Nov 27 22:31:09 2007 UTC revision 1210 by dpavlin, Sat May 30 15:26:25 2009 UTC
# Line 21  our @EXPORT = qw/ Line 21  our @EXPORT = qw/
21          get set          get set
22          count          count
23    
24            row
25            rec_array
26    
27  /;  /;
28    
29  use warnings;  use warnings;
# Line 47  push @EXPORT, ( qw/ Line 50  push @EXPORT, ( qw/
50          marc_template          marc_template
51  /);  /);
52    
53    use Storable qw/dclone/;
54    
55  =head1 NAME  =head1 NAME
56    
57  WebPAC::Normalize - describe normalisaton rules using sets  WebPAC::Normalize - describe normalisaton rules using sets
# Line 148  sub _set_ds { Line 153  sub _set_ds {
153    
154  sub _get_rec { $rec };  sub _get_rec { $rec };
155    
156    sub rec_array {
157            my $d = $rec->{ $_[0] };
158            return @$d if ref($d) eq 'ARRAY';
159            die "field $_[0] not array: ",dump( $d );
160    }
161    
162  =head2 _set_config  =head2 _set_config
163    
164  Set current config hash  Set current config hash
# Line 344  Insert into lists which will be automati Line 355  Insert into lists which will be automati
355    
356  sub sorted { to( 'sorted', @_ ) }  sub sorted { to( 'sorted', @_ ) }
357    
358    =head2 row
359    
360    Insert new row of data into output module
361    
362      row( column => 'foo', column2 => 'bar' );
363    
364    =cut
365    
366    use Data::Dump qw/dump/;
367    
368    sub row {
369            die "array doesn't have odd number of elements but $#_: ",dump( @_ ) if $#_ % 2 == 1;
370            my $table = shift @_;
371            push @{ $out->{'_rows'}->{$table} }, {@_};
372    }
373    
374    
375  =head1 Functions to extract data from input  =head1 Functions to extract data from input
376    
# Line 364  sub _pack_subfields_hash { Line 391  sub _pack_subfields_hash {
391    
392          warn "## _pack_subfields_hash( ",dump(@_), " )\n" if ($debug > 1);          warn "## _pack_subfields_hash( ",dump(@_), " )\n" if ($debug > 1);
393    
394          my ($h,$include_subfields) = @_;          my ($hash,$include_subfields) = @_;
395    
396          # sanity and ease of use          # sanity and ease of use
397          return $h if (ref($h) ne 'HASH');          return $hash if (ref($hash) ne 'HASH');
398    
399            my $h = dclone( $hash );
400    
401          if ( defined($h->{subfields}) ) {          if ( defined($h->{subfields}) ) {
402                  my $sfs = delete $h->{subfields} || die "no subfields?";                  my $sfs = delete $h->{subfields} || die "no subfields?";

Legend:
Removed from v.1066  
changed lines
  Added in v.1210

  ViewVC Help
Powered by ViewVC 1.1.26