Skip to content

tokuhirom/p5-data-recursive-encode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAME

Data::Recursive::Encode - Encode/Decode Values In A Structure

SYNOPSIS

use Data::Recursive::Encode;

Data::Recursive::Encode->decode('euc-jp', $data);
Data::Recursive::Encode->encode('euc-jp', $data);
Data::Recursive::Encode->decode_utf8($data);
Data::Recursive::Encode->encode_utf8($data);
Data::Recursive::Encode->from_to($data, $from_enc, $to_enc[, $check]);

DESCRIPTION

Data::Recursive::Encode visits each node of a structure, and returns a new structure with each node's encoding (or similar action). If you ever wished to do a bulk encode/decode of the contents of a structure, then this module may help you.

VALIABLES

  • $Data::Recursive::Encode::DO_NOT_PROCESS_NUMERIC_VALUE

    do not process numeric value.

      use JSON;
      use Data::Recursive::Encode;
    
      my $data = { int => 1 };
    
      is encode_json( Data::Recursive::Encode->encode_utf8($data) ); #=> '{"int":"1"}'
    
      local $Data::Recursive::Encode::DO_NOT_PROCESS_NUMERIC_VALUE = 1;
      is encode_json( Data::Recursive::Encode->encode_utf8($data) ); #=> '{"int":1}'
    

METHODS

  • decode

      my $ret = Data::Recursive::Encode->decode($encoding, $data, [CHECK]);
    

    Returns a structure containing nodes which are decoded from the specified encoding.

  • encode

      my $ret = Data::Recursive::Encode->encode($encoding, $data, [CHECK]);
    

    Returns a structure containing nodes which are encoded to the specified encoding.

  • decode_utf8

      my $ret = Data::Recursive::Encode->decode_utf8($data, [CHECK]);
    

    Returns a structure containing nodes which have been processed through decode_utf8.

  • encode_utf8

      my $ret = Data::Recursive::Encode->encode_utf8($data);
    

    Returns a structure containing nodes which have been processed through encode_utf8.

  • from_to

      my $ret = Data::Recursive::Encode->from_to($data, FROM_ENC, TO_ENC[, CHECK]);
    

    Returns a structure containing nodes which have been processed through from_to.

AUTHOR

Tokuhiro Matsuno <tokuhirom AAJKLFJEF GMAIL COM>

gfx

SEE ALSO

This module is inspired from Data::Visitor::Encode, but this module depended to too much modules. I want to use this module in pure-perl, but Data::Visitor::Encode depend to XS modules.

Unicode::RecursiveDowngrade does not supports perl5's Unicode way correctly.

LICENSE

Copyright (C) 2010 Tokuhiro Matsuno All rights reserved.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

About

Data::Recursive::Encode repo.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages