use strict; package Config::Once; use Config::Auto; our $Config; sub init { my ($inv, $config_path) = @_; my $class = ref ($inv) || $inv; my $config_varname = $class . '::Config'; no strict 'refs'; $$config_varname = Config::Auto::parse( $config_path ); return $$config_varname; } sub cfg { my ($inv, $param) = @_; my $class = ref ($inv) || $inv; my $config_varname = $class . '::Config'; no strict 'refs'; return $$config_varname->{$param} if (defined $param); return $$config_varname; } 1;