Absolute hinky bare-bones implementation of multiformats in Perl
at main 60 lines 1.6 kB view raw
1package Multiformats; 2use strict; 3 4# ABSTRACT: Implementation of several multiformats as per https://multiformats.io/ for use with ATprotocol 5 6# VERSION 7 8# this package exists purely as a little placeholder for various abstracts and versions; as well as some 9# of the documentation 10 11=pod 12 13=head1 NAME 14 15Multiformats - A bare-bones multiformat implementation 16 17=head1 SYNOPSIS 18 19 use Multiformats::Multibase qw/multibase_encode/; 20 21 my $encoded = multibase_encode('base32upper', "my data that I would like encoded") 22 23 my $multibase = Multiformats::Multibase->new; 24 my $also_encoded = $multibase->encode('base32', "even more data I want encoded"); 25 26=head1 FUNCTIONAL/OO 27 28Every module can be used either in an OO fashion or purely functional. Please see the various modules that make up this package for more details. 29 30=head1 CODEC SUPPORT 31 32Not all codecs/hash functions/base encoders are supported, you will find out quick if they aren't because the various encode/decode functions will die when asked to encode or decode something with an unknown codec. CID only supports CIDv1, CIDv0 is not supported *at all*. 33 34=head1 SEE ALSO 35 36=over 37 38=item * L<Multiformats::CID> - CID handling 39 40=item * L<Multiformats::Multibase> - Multibase encoding/decoding 41 42=item * L<Multiformats::Multihash> - Multihash encoding/unwrapping 43 44=item * L<Multiformats::Multicodec> - Multicodec wrapping/unwrapping 45 46=item * L<Multiformats::Varint> - Varint encoding/decoding 47 48=back 49 50=head1 AUTHOR 51 52Ben van Staveren <madcat@cpan.org>, <ben@blockstackers.net> 53 54=head1 LICENSE 55 56This package is licensed under the same terms as Perl itself. 57 58=cut 59 601;