NAME
Hash::KeyMorpher
DESCRIPTION
Deeply change the nameing conventions for keys in hash structures, or simply change strings between naming conventions. Converts to CamelCase, mixedCamel, delimited_string, UPPER, LOWER
SYNOPSYS
use Hash::KeyMorpher; # import all, or
use Hash::KeyMorpher qw (key_morph to_camel to_mixed to_under to_delim); # import specific subs
# To use the string converters:
$res = to_camel('my_string'); # MyString
$res = to_mixed('my_string'); # myString
$res = to_under('myString'); # my_string
$res = to_delim('myString','-'); # my-string
# To morph keys in a hash, key_morph($hash,$method,$delim);
# method is one of camel,mixed,under,delim,upper,lower
$h1 = { 'level_one' => { 'LevelTwo' => 'foo' } };
$mixed = key_morph($h1,'mixed'); # { 'levelOne' => { 'levelTwo' => 'foo' } };
$delim = key_morph($h1,'delim','-'); # { 'level-one' => { 'level-two' => 'foo' } };
# To morph acceccor keys
$obj = Hash::Accessor->new(qw /CamelCase mixedCase delim_str UPPER lower/);
$camel = key_morph($obj,'camel');
EXPORT
This module exports key_morph, to_camel, to_mixed, to_under and to_delim. You will probably only need key_morph unless you really want the others.
FUNCTIONS
_split_words($str)
Splits a string into words, identifying boundaries using Capital Letters or Underscores etc. This sub is not exported
key_morph($hash,$method,$delim)
$method can be one of (camel, mixed, delim, upper, lower). $delim should be specified if using the delim method; by default its an empty string.
to_camel($str)
Convers string to CamelCase
to_mixed($str)
Convers string to mixedCamelCase
to_under($str)
Convers string to underscore_separated
to_delim($str,$delim)
Convers string to custom delimited-string (delimited by second parameter)
to_upper($str)
Returns the uppercase version of the rejoined string (removes undescores etc)
to_lower($str)
Returns the lowercase version of the rejoined string (removes undescores etc)
AUTHOR AND SUPPORT
Copyright (c) Michael Holloway 2013 , <michael@thedarkwinter.com>
COPYRIGHT
Perl Arstistic License