Andy Wardley > Badger-0.09 > Badger::Codec::Unicode

Download:
Badger-0.09.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  1
Open  0
View/Report Bugs
Source  

NAME ^

Badger::Codec::Unicode - encode/decode Unicode

SYNOPSIS ^

    use Badger::Codec::Unicode;
    my $codec   = Badger::Codec::Unicode->new();
    my $uncoded = "...some Unicode data...";
    my $encoded = $codec->encode($uncoded);
    my $decoded = $codec->decode($encoded);

DESCRIPTION ^

This module is a subclass of Badger::Codec implementing a very thin wrapper around the Encode module for encoding and decoding Unicode.

A Badger::Codec::Unicode object provides the encode() and decode() methods for encoding and decoding Unicode.

    use Badger::Codec::Unicode;
    my $codec   = Badger::Codec::Unicode->new();
    my $uncoded = "...some Unicode data...";
    my $encoded = $codec->encode($uncoded);
    my $decoded = $codec->decode($encoded);

You can also call encode() and decode() as class methods.

    my $encoded = Badger::Code::Unicode->encode($uncoded);
    my $decoded = Badger::Code::Unicode->decode($encoded);

You can also use a codec via the Badger::Codecs module.

    use Badger::Codecs 
        codec => 'unicode';

This exports the encode() and decode() subroutines.

    my $uncoded  = "...some Unicode data...";
    my $encoded  = encode($uncoded);
    my $decoded  = decode($encoded)

METHODS ^

encode($encoding, $data)

Method for encoding Unicode data. If two arguments are provided then the first is the encoding and the second the data to encode.

    $encoded = $codec->encode( utf8 => $data );

If one argument is provided then the encoding defaults to UTF-8.

    $utf8 = $codec->encode($data);

decode($encoding, $data)

Method for decoding Unicode data. If two arguments are provided then the first is the encoding and the second the data to decode.

    $decoded = $codec->decode( utf8 => $encoded );

If one argument is provided then the method will look for a Byte Order Mark (BOM) to determine the encoding. If a BOM isn't present, or if the BOM doesn't match a supported Unicode BOM (any of UTF-8, UTF-32BE UTF-32LE, UTF-16BE or UTF-16LE) then the data will not be decoded as Unicode.

    $decoded = $codec->decode($encoded);    # use BOM to detect encoding

encoder()

This method returns a subroutine reference which can be called to encode Unicode data. Internally it calls the encode() method.

    my $encoder = $codec->encode;
    $encoded = $encoder->($data);

decoder()

This method returns a suboroutine reference which can be called to decode Unicode data. Internally it calls the decode() method.

    my $decoder = $codec->decode;
    $decoded = $decoder->($data);

AUTHOR ^

Andy Wardley http://wardley.org/

COPYRIGHT ^

Copyright (C) 2005-2009 Andy Wardley. All rights reserved.

SEE ALSO ^

Encode, Badger::Codec::Encode, Badger::Codecs, Badger::Codec.

syntax highlighting: