projects
/
text-levenshtein-edlib.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
CIGAR format
[text-levenshtein-edlib.git]
/
lib
/
Text
/
Levenshtein
/
Edlib.pm
diff --git
a/lib/Text/Levenshtein/Edlib.pm
b/lib/Text/Levenshtein/Edlib.pm
index 9274517a6efbdc153c5102f8485c1285a3a33e96..2948818c84d5708f7be0b20ebd67cd689461d97f 100644
(file)
--- a/
lib/Text/Levenshtein/Edlib.pm
+++ b/
lib/Text/Levenshtein/Edlib.pm
@@
-24,7
+24,7
@@
my @constants =
EDLIB_TASK_PATH/;
our %EXPORT_TAGS =
EDLIB_TASK_PATH/;
our %EXPORT_TAGS =
- (all => [ @constants, qw/align distance/ ], constants => \@constants);
+ (all => [ @constants, qw/align distance
to_cigar
/ ], constants => \@constants);
our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
our @EXPORT = ( @{ $EXPORT_TAGS{'constants'} } );
our $VERSION = '0.001';
our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
our @EXPORT = ( @{ $EXPORT_TAGS{'constants'} } );
our $VERSION = '0.001';
@@
-71,6
+71,13
@@
sub distance {
align($q, $t, $k)->{editDistance}
}
align($q, $t, $k)->{editDistance}
}
+sub to_cigar {
+ my ($align, $format) = @_;
+ $align = pack 'C*', @$align;
+ $format //= EDLIB_CIGAR_STANDARD();
+ edlibAlignmentToCigar($align, $format);
+}
+
1;
__END__
1;
__END__
@@
-95,7
+102,9
@@
Text::Levenshtein::Edlib - XS edit distance and optimal alignment path calculati
say "Start locations are: @{$align->{startLocations}}";
say "End locations are: @{$align->{endLocations}}";
say "Alignment path is: @{$align->{alignment}}";
say "Start locations are: @{$align->{startLocations}}";
say "End locations are: @{$align->{endLocations}}";
say "Alignment path is: @{$align->{alignment}}";
-
+ say "Alignment path (in CIGAR format): ", to_cigar $align->{alignment};
+ say "Alignment path (in extended CIGAR format): ",
+ to_cigar $align->{alignment}, EDLIB_CIGAR_EXTENDED;
=head1 DESCRIPTION
=head1 DESCRIPTION
This page took
0.010781 seconds
and
4
git commands to generate.