#!/usr/bin/perl --
use strict;
use warnings;
use Data::Dump qw/ dd /;
my $raw = q{
[section_name]
okkey=okvalue
RANDOM.txt
};
dd( MyReader->read_string( $raw ) );
dd( Config::INI::Reader->read_string( $raw ) );
BEGIN {
package MyReader;
use parent qw/ Config::INI::Reader /;
$INC{'MyReader.pm'}=__FILE__;
sub parse_boolean {
my( $self, $line ) = @_;
return $1 if $line =~ /^(\S+\.\w+)$/m;
return;
}
sub handle_unparsed_line {
my ($self, $handle, $line) = @_;
if( my( $boolean ) = $self->parse_boolean( $line ) ){
## die if already have boolean, or whateverlogicyouwant
return $self->set_value('boolean', $boolean );
}
$self->SUPER::handle_unparsed_line($handle,$line);
}
1;
}
__END__
{ section_name => { boolean => "RANDOM.txt", okkey => "okvalue" } }
Syntax error at line 4: 'RANDOM.txt
' at - line 11.
|