NAME
DTA::CAB::Utils - generic DTA::CAB utilities
SYNOPSIS
use
DTA::CAB::Utils;
##========================================================================
## Functions: XML strings
$safe
= xml_safe_string(
$str
);
##========================================================================
## Functions: Deep recoding
$decoded
= deep_decode(
$encoding
,
$thingy
,
%options
);
$encoded
= deep_encode(
$encoding
,
$thingy
,
%opts
);
$recoded
= deep_recode(
$from
,
$to
,
$thingy
,
%opts
);
$upgraded
= deep_utf8_upgrade(
$thingy
);
##========================================================================
## Functions: abstract data path value
$val_or_undef
= path_value(
$obj
,
@path
);
DESCRIPTION
Globals
- Variable: @EXPORT
-
No symbols are exported by default.
- Variable: %EXPORT_TAGS
-
Supports the following export tags:
:xml
##-- xml_safe_string
:data
##-- path_value
:encode
##-- deep_encode, deep_decode, deep_recode, deep_utf8_upgrade
Functions: XML strings
- xml_safe_string
-
$safe
= xml_safe_string(
$str
);
Returns a string $safe similar to the argument $str which can function as an element or attribute name in XML.
Functions: Deep recoding
- deep_decode
-
$decoded
= deep_decode(
$encoding
,
$thingy
,
%options
);
Perform recursive string decoding on all scalars in $thingy. Does NOT check for cyclic references.
%options:
force
=>
$bool
,
##-- decode even if the utf8 flag is set
skipvals
=> \
@vals
,
##-- don't decode (or recurse into) $val (overrides $force)
skiprefs
=> \
@refs
,
##-- don't decode (or recurse into) $$ref (overrides $force)
skippkgs
=> \
@pkgs
,
##-- don't decode (or recurse into) anything of package $pkg (overrides $force)
- deep_encode
-
$encoded
= deep_encode(
$encoding
,
$thingy
,
%opts
);
Perform recursive string encoding on all scalars in $thingy. Does NOT check for cyclic references.
%opts:
force
=>
$bool
,
##-- encode even if the utf8 flag is NOT set
skipvals
=> \
@vals
,
##-- don't encode (or recurse into) $val (overrides $force)
skiprefs
=> \
@refs
,
##-- don't encode (or recurse into) $$ref (overrides $force)
skippkgs
=> \
@pkgs
,
##-- don't encode (or recurse into) anything of package $pkg (overrides $force)
- deep_recode
-
$recoded
= deep_recode(
$from
,
$to
,
$thingy
,
%opts
);
Wrapper for:
deep_encode(
$to
,deep_decode(
$from
,
$thingy
,
%opts
),
%opts
);
- deep_utf8_upgrade
-
$upgraded
= deep_utf8_upgrade(
$thingy
);
Perform recursive utf_uprade() on all scalars in $thingy. Does NOT check for cyclic references.
Functions: abstract data path value
AUTHOR
Bryan Jurish <moocow@cpan.org>
COPYRIGHT AND LICENSE
Copyright (C) 2009-2019 by Bryan Jurish
This package is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.24.1 or, at your option, any later version of Perl 5 you may have available.