Changeset 219
- Timestamp:
- 03/20/06 16:03:51 (6 years ago)
- Files:
-
- 1 modified
-
namazu-p/trunk/DB_Namazu_Field.pm (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
namazu-p/trunk/DB_Namazu_Field.pm
r218 r219 2 2 # 3 3 4 package DB_Namazu_Fi leld;4 package DB_Namazu_Field; 5 5 use Carp; 6 6 use strict; 7 7 use IO::File; 8 use Tie::Array; 9 our @ISA = ('Tie::Array'); 10 11 sub new { 12 my $proto = shift; 13 my $class = ref($proto) || $proto; 14 my $self = {}; 15 bless($self, $class); 16 return $self; 17 } 8 18 9 19 sub TIEARRAY { 10 20 my $class = shift; 11 21 my $basefile = shift; 12 my $self = {};22 my $self = $class->new(); 13 23 $self->{basefile} = new IO::File " <$basefile"; 14 24 $self->{ptrfile} = new IO::File "< ${basefile}.i"; … … 22 32 my $self = shift; 23 33 my $index = shift; 24 $self->{ptrfile}->seek($index );34 $self->{ptrfile}->seek($index, SEEK_SET); 25 35 my $ptr; 26 36 $self->{ptrfile}->read($ptr, 4); 27 37 $ptr = unpack("N", $ptr); 28 $self->{basefile}->seek($ptr );38 $self->{basefile}->seek($ptr, SEEK_SET); 29 39 return $self->{basefile}->getline; 30 40 }
