Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
MooX::ConfigFromFile::User(Contributed Perl DocumMooX::ConfigFromFile::Role(3)

NAME
       MooX::ConfigFromFile::Role - Moo	eXtension for initializing objects
       from config file

DESCRIPTION
       This role adds a	initializing sub around	BUILDARGS and puts all what
       could read from config files into the hash which	will be	used to
       construct the final object.

       While it	does that, it internally calls it's own	_build_* methods
       (_build_config_prefix, _build_config_files and _build_loaded_config)
       unless the appropriate attributes are already in	$params.

ATTRIBUTES
       This role uses following	attributes which might be suitable customized
       by overloading the appropriate builder or pass defaults in construction
       arguments.

       Be sure to read "ATTRIBUTES" in MooX::File::ConfigDir, especially
       "config_identifier" in MooX::File::ConfigDir to understand how the
       "config_dirs" are build.

       When you	miss a directory - see "plug_dir_source" in File::ConfigDir
       and File::ConfigDir::Plack.

   config_prefix
       This attribute is a string and defaults to FindBin's $Script. It's
       interpreted as the basename of the config file name to use.

   config_prefixes
       This attribute is an array of strings and defaults to "<[ config_prefix
       ]">.

   config_prefix_map_separator
       This attribute is a string and contains the character which is used
       building	config_prefix_map from config_prefixes.

   config_prefix_map
       This attribute is an array of strings containing	all config-prefixes
       joint together "($0, $0.$1, $0.$1.$2, ...)" using
       config_prefix_map_separator.

   config_files_pattern
       This attribute contains a cross-product of config_prefix_map and
       config_extensions. Both are concatenated	using the shell	wildcard '*'.

   config_dirs
       This attribute is consumed from MooX::File::ConfigDir.  It might	not be
       smart to	override - but possible. Use with caution.

   config_extensions
       This attribute defaults to list of extensions from Config::Any.

   config_files
       This attribute contains the list	of existing files in config_dirs
       matching	config_prefix .	config_extensions.  Search is operated by
       File::Find::Rule.

   raw_loaded_config
       This attribute contains the config as loaded from file system in	an
       array of	"filename => \%content".

   sorted_loaded_config
       This attribute contains the loaded files	from filesystem	sorted by
       string in the same format as raw_loaded_config (array of	"filename =>
       \%content").

       The default algorithm is	sorted by filename (mind: '-' <	'.').

   loaded_config
       This attribute contains the config loaded and transformed while
       constructing the	instance. Construction is done from
       sorted_loaded_config, ignoring the filename part.

       For classes set up using

	 use MooX::ConfigFromFile config_singleton = 1;

       this attribute is cached	from the very first construction and fed by
       overwritten builder. The	content	of this	attribute is passed to lower
       BUILDARGS.

AUTHOR
       Jens Rehsack, "<rehsack at cpan.org>"

ACKNOWLEDGEMENTS
       Toby Inkster suggested to rely on BUILDARGS instead of intercepting
       object creation with nasty hacks. He also taught	me a bit more how
       Moo(se) works.

LICENSE	AND COPYRIGHT
       Copyright 2013-2018 Jens	Rehsack.

       This program is free software; you can redistribute it and/or modify it
       under the terms of either: the GNU General Public License as published
       by the Free Software Foundation;	or the Artistic	License.

       See <http://dev.perl.org/licenses/> for more information.

perl v5.32.0			  2018-05-01	 MooX::ConfigFromFile::Role(3)

NAME | DESCRIPTION | ATTRIBUTES | AUTHOR | ACKNOWLEDGEMENTS | LICENSE AND COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=MooX::ConfigFromFile::Role&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help