NAME

Data::Hive::Store::Param

DESCRIPTION

CGI-like param() store for Data::Hive.

METHODS

new

# use default method name 'param'
my $store = Data::Hive::Store::Param->new($obj);

# use different method name 'info'
my $store = Data::Hive::Store::Param->new($obj, { method => 'info' });

# escape certain characters in keys
my $store = Data::Hive::Store::Param->new($obj, { escape => './!' });

Return a new param() store.

Several interesting arguments can be passed in a hashref after the first (mandatory) object argument.

  • method

    Use a different method name on the object (default is 'param').

  • escape

    List of characters to escape (prepend '\' to) in keys.

    Defaults to the separator.

  • separator

    String to join path segments together with; defaults to either the first character of the escape option (if given) or '.'.

  • exists

    Coderef that describes how to see if a given parameter name (separator-joined path) exists. The default is to treat the object like a hashref and look inside it.

  • delete

    Coderef that describes how to delete a given parameter name. The default is to treat the object like a hashref and call delete on it.

new

my $store = Data::Hive::Store::Param->new($obj, \%arg);

get

Join the path together with the separator and get it from the object.

set

See "get".

name

Join path together with separator and return it.

exists

Return true if the name of this hive is a parameter.

delete

Delete the entry for the name of this hive and return its old value.