105 |
die "need row argument" unless ($arg->{row}); |
die "need row argument" unless ($arg->{row}); |
106 |
die "need normalisation argument" unless ($arg->{rules}); |
die "need normalisation argument" unless ($arg->{rules}); |
107 |
|
|
|
no strict 'subs'; |
|
108 |
_set_lookup( $arg->{lookup} ) if defined($arg->{lookup}); |
_set_lookup( $arg->{lookup} ) if defined($arg->{lookup}); |
109 |
_set_ds( $arg->{row} ); |
_set_ds( $arg->{row} ); |
110 |
_set_config( $arg->{config} ) if defined($arg->{config}); |
_set_config( $arg->{config} ) if defined($arg->{config}); |
111 |
_clean_ds( %{ $arg } ); |
_clean_ds( %{ $arg } ); |
112 |
$load_row_coderef = $arg->{load_row_coderef}; |
$load_row_coderef = $arg->{load_row_coderef}; |
113 |
|
|
114 |
eval "$arg->{rules}"; |
no strict 'subs'; |
115 |
|
no warnings 'redefine'; |
116 |
|
eval "$arg->{rules};"; |
117 |
die "error evaling $arg->{rules}: $@\n" if ($@); |
die "error evaling $arg->{rules}: $@\n" if ($@); |
118 |
|
|
119 |
return _get_ds(); |
return _get_ds(); |