NAME
ProjectBuilder::Conf, part of the project-builder.org - module dealing
with configuration files
DESCRIPTION
This modules provides functions dealing with configuration files.
SYNOPSIS
use ProjectBuilder::Conf;
#
# Read hash codes of values from a configuration file and return table of pointers
#
my ($k1, $k2) = pb_conf_read_if("$ENV{'HOME'}/.pbrc","key1","key2");
my ($k) = pb_conf_read("$ENV{'HOME'}/.pbrc","key");
USAGE
pb_conf_init
This function setup the environment pb for project-builder function
usage from other projects. The first parameter is the project name. It
sets up environment variables (pb)
pb_conf_add
This function adds the configuration file to the list last.
pb_conf_read_if
This function returns a table of pointers on hashes corresponding to
the keys in a configuration file passed in parameter. If that file
doesn't exist, it returns undef.
The format of the configuration file is as follows:
key tag = value1,value2,...
Supposing the file is called "$ENV{'HOME'}/.pbrc", containing the
following:
$ cat $HOME/.pbrc
pbver pb = 3
pbver default = 1
pblist pb = 12,25
calling it like this:
my ($k1, $k2) = pb_conf_read_if("$ENV{'HOME'}/.pbrc","pbver","pblist");
will allow to get the mapping:
$k1->{'pb'} contains 3
$k1->{'default'} contains 1
$k2->{'pb'} contains 12,25
Valid chars for keys and tags are letters, numbers, '-' and '_'.
pb_conf_read
This function is similar to pb_conf_read_if except that it dies when
the file in parameter doesn't exist.
pb_conf_get_if
This function returns a table, corresponding to a set of values
queried in the conf files or undef if it doen't exist. It takes a
table of keys as an input parameter.
The format of the configurations file is as follows:
key tag = value1,value2,...
It will gather the values from all the configurations files passed to
pb_conf_add, and return the values for the keys, taking in account the
order of conf files, to manage overloading.
$ cat $HOME/.pbrc
pbver pb = 1
pblist pb = 4
$ cat $HOME/.pbrc2
pbver pb = 3
pblist default = 5
calling it like this:
pb_conf_add("$HOME/.pbrc","$HOME/.pbrc2");
my ($k1, $k2) = pb_conf_get_if("pbver","pblist");
will allow to get the mapping:
$k1->{'pb'} contains 3
$k2->{'pb'} contains 4
Valid chars for keys and tags are letters, numbers, '-' and '_'.
pb_conf_fromfile_if
This function returns a pointer on a table, corresponding to a merge
of values queried in the conf file and the pointer on another table
passed as parameter. It takes a table of keys as last input parameter.
my ($k1) = pb_conf_fromfile_if("$HOME/.pbrc",undef,"pbver","pblist");
my ($k2) = pb_conf_fromfile_if("$HOME/.pbrc3",$k1,"pbver","pblist");
It is used internally by pb_conf_get_if and is not exported yet.
pb_conf_get
This function is the same pb_conf_get_if, except that it tests each
returned value as they need to exist in that case.
WEB SITES
The main Web site of the project is available at
. Bug reports should be filled using the
trac instance of the project at .
USER MAILING LIST
None exists for the moment.
AUTHORS
The Project-Builder.org team lead by
Bruno Cornec .
COPYRIGHT
Project-Builder.org is distributed under the GPL v2.0 license described in
the file "COPYING" included with the distribution.