Ham-ADIF

 view release on metacpan or  search on metacpan

lib/Ham/ADIF/ADI.pm  view on Meta::CPAN

    }
  }

  return $recs;
}

sub _process_record {
  my ($self, $rec) = @_;

  my $struct = {};
  for my $tag (split m{[\r\n<]+}smx, $rec) {
    if(!$tag) {
      next;
    }

    my ($tagname, $length, $type, $value) = $tag =~ m{(.*?):(\d+)(:D)?>(.*?)\s*$}smix;
    if(!$tagname) {
      next;
    }

    $struct->{lc $tagname} = $value;
  }

  return $struct;
}

sub _process_header {
  my ($self, $header) = @_;

  my $struct = {};
  for my $tag (split m{[\r\n]+}smx, $header) {
    if(!$tag) {
      next;
    }

    my ($tagname, $length, $datatype, $value, $enum) = $tag =~ m{<(.*?):(\d+)(?::(.*?))?>(.*?)(?:,[{](.*?)[}])?$}smix;
    if(!$tagname) {
      next;
    }

    $struct->{lc $tagname} = $value;



( run in 0.570 second using v1.01-cache-2.11-cpan-71847e10f99 )