VERSION
version 2.087SYNOPSIS
use Config::Model ;
# define configuration tree object
my $model = Config::Model->new ;
$model ->create_config_class (
name => "MyClass",
element => [
[qw/foo bar/] => {
type => 'leaf',
value_type => 'string'
},
baz => {
type => 'hash',
index_type => 'string' ,
cargo => {
type => 'leaf',
value_type => 'string',
},
},
],
) ;
my $inst = $model->instance(root_class_name => 'MyClass' );
my $root = $inst->config_root ;
my $steps = 'baz:fr=bonjour baz:hr="dobar dan" foo="journalled"';
$root->load( steps => $steps ) ;
my @result = $root->tree_searcher(type => 'value')->search('jour');
print join("\n",@result),"\n" ;
# print
# baz:fr
# foo
DESCRIPTION
This class provides a way to search the content of a configuration tree. Given a keyword or a pattern, the search method scans the tree to find a value, a description or anything that match the given pattern (or keyword).Constructor
new (type => [ value | description ... ] )
Creates a new searcher object. The "type" parameter can be:- element
- value
- key
- summary
- description
- help
- all
- Search in all the items above
Methods
search(keyword)
Search the keyword or pattern in the tree. The search is done in a case insensitive manner. Returns a list of path pointing to the matching tree element. See ``grab(...)'' in Config::Model::AnyThing for details on the path syntax.BUGS
Creating a class with just one search method may be overkill. OTOH, it may be extended later to provide iterative search.AUTHOR
Dominique Dumont, (ddumont at cpan dot org)AUTHOR
Dominique DumontCOPYRIGHT AND LICENSE
This software is Copyright (c) 2005-2016 by Dominique Dumont.This is free software, licensed under:
The GNU Lesser General Public License, Version 2.1, February 1999