NAME
Mojo::File::Role::Digest - A role for Mojo::File to calculate digests
SYNOPSIS
# single file
use Mojo::File 'path';
my $file = path($path)->with_roles('+Digest');
# modified file class
use Mojo::File;
my $class = Mojo::File->with_roles('+Digest');
my $file = $class->new($path);
$file->md5_sum;
$file->quickxor_hash; # requires Digest::QuickXor
$file->sha1_sum;
$file->sha256_sum;
DESCRIPTION
Mojo::File::Role::Digest is a role for Mojo::File to calculate MD5, SHA1, SHA256, and QuickXor digests.
If the path isn't an existing file, all methods return an empty string ''
.
APPLY ROLE
use Mojo::File 'path';
my $file = path($path);
my $file_with_digest = $file->with_roles('+Digest');
Apply to a single Mojo::File object. See "with_roles" in Mojo::Base.
use Mojo::File;
my $class = Mojo::File->with_roles('+Digest');
my $file1 = $class->new($path1);
my $file2 = $class->new($path2);
Create a modified file class with applied digest role.
METHODS
md5_sum
$string = $file->md5_sum;
Returns the MD5 sum of the file in hexadecimal form. See "hexdigest" in Digest::MD5.
quickxor_hash
$string = $file->quickxor_hash;
Returns the base64 encoded QuickXorHash of the file. See "b64digest" in Digest::QuickXor. Requires Digest::QuickXor 0.03 or higher.
sha1_sum
$string = $file->sha1_sum;
Returns the SHA1 sum of the file in hexadecimal form. See "hexdigest" in Digest::SHA.
sha256_sum
$string = $file->sha256_sum;
Returns the SHA256 sum of the file in hexadecimal form. See "hexdigest" in Digest::SHA.
AUTHOR & COPYRIGHT
© 2019–2020 by Tekki (Rolf Stöckli).
This program is free software, you can redistribute it and/or modify it under the terms of the Artistic License version 2.0.
SEE ALSO
Mojo::File, Mojo::Base, Role::Tiny, Digest::MD5, Digest::QuickXor, Digest::SHA.